286 字
1 分鐘
【網路安全實務與社會實踐】作業三

作業三 Write-up by owl_d#

Let me in REVENGE#

登入頁面的sqli 可以先試試 '-- 發現會噴錯

基本上都會有information_schema.tables這個table 所以先試試這個payload: username=%27+UNION+SELECT+NULL+from+information_schema.tables#&password= image 發現有噴關於column數量的error,代表方向是對的了

多試幾個column數量就出來了 payload: username=%27+UNION+SELECT+NULL,+NULL,+NULL+from+information_schema.tables#&password=

意外發現這個也會過: payload: username=%27+UNION+SELECT+@@version,+NULL,+NULL#&password=

所以應該只要欄位對了就進去了 試試看 ' ORDER BY 3 可以過 ' ORDER BY 4 就會報錯 所以其實 ' UNION SELECT NULL, NULL, NULL' 應該是最快的解法


sqli union REVENGE#

先試試上一題的payload: %27+UNION+SELECT+NULL+from+information_schema.tables 試了幾遍發現不管怎麼送都一直跳一樣的error image 後來再仔細看來一下source code image debug出來了,一個引號不夠用,所以要塞數字或兩個引號

然後就可以開始測 ORDER BY 了, 發現 4 會報錯,代表欄位是 3,

把所有 table 都先 dump 出來 image

發現flag的table了 image 接著看一下columns

最終payload: image


dig-waf-1#

先試一下 ‘`ls /`’ image 發現 flag 了

image 要記得flag這個字眼會被過濾掉

image 改成用 * 來代替就過了

【網路安全實務與社會實踐】作業三
https://owld.tw/posts/網路安全實務與社會實踐作業三/
作者
owl_d
發佈於
2025-03-27
許可協議
CC BY-NC-SA 4.0