一、介紹
暗鏈也稱黑鏈,即隱蔽鏈接,是黑帽SEO的作弊手法之一,其目的就是利用高權重網站外鏈來提升自身站點排名。 一般來說,暗鏈是由攻擊者入侵網站后植入的,暗鏈在網頁頁面上不可見或者極易被忽略,但是搜索引擎仍然可以通過分析網頁的源代碼收錄這些鏈接,如果有大量網站甚至一些高權重的網站都鏈向它們,積少成多,可以迅速提高權重,獲得高額流量。暗鏈指向的網站絕大多數是博彩、非法游戲私服、虛假醫療、辦證等黑灰色產業,其中博彩類域名數量最多。而暗鏈宿主往往是權重較高的網頁,例如政府網站、教育網站等。

正常的網站首頁
查看源代碼

隱藏了黑鏈的源代碼
二、暗鏈隱藏方式
暗鏈主要利用CSS、JS來控制鏈接的隱藏方式,通過對大量樣本的分析,本文總結了幾種常用掛暗鏈的手法。
1、 鏈接位于頁面可見范圍之外。可以將position位置屬性設置成負數,則鏈接無法顯示在可見頁面之內。
divstyle="position:absolute;left:expression_r(1-900);top:expression_r(3-999);">a href="暗鏈">關鍵詞a>div>
div style="position:absolute; top:-999px;right:-999px;">a herf="暗鏈">關鍵詞a>div>
div style="text-indent:-9999em; display:block;float:left">aherf="暗鏈">關鍵詞a>div> 元素向前縮進為負值,即在可見范圍之外
2、鏈接顏色與背景色相同,鏈接文字使用低像素。
a herf=# style="color:#FFFFFF; ">關鍵詞a>
a herf=# style="font-size:1px;">關鍵詞a>
a herf=# style="line-height:1px;">關鍵詞a>
3、利用跑馬燈marquee屬性,鏈接以跑馬燈形式迅速閃現,跑馬燈的長寬設置很小,同時將閃現的頻率設置很大,使得查看頁面時不會有任何影響。
marquee height=1width=4 scrollamount=3000scrolldelay=20000>a href= "暗鏈">關鍵字a>marquee>
4、利用display:none和visibility:hidden隱藏區域里的內容。
divstyle="display:none;">a href="暗鏈">關鍵字 a>div>
div style="visibility:hidden;">a href="暗鏈">關鍵字 a>div>
以上四種是慣用的掛暗鏈的方法,但目前的搜索引擎也開始對這些方法進行識別和打擊,如果代碼沒有任何處理的話,那么這些外鏈將有可能全部被降權。即便如此,這幾種仍然是目前最常見的暗鏈隱藏方法。為了不被搜索引擎識別,攻擊者利用JS向頁面中寫入ccs樣式,并設置其屬性,見5,6。由于搜索引擎對這種JS代碼的內部實質意義還無法識別,因此也成為了掛暗鏈的一種常見形式。
5、利用JS向頁面中寫入ccs樣式。
script language="javascript" type="text/javascript">
document.write("");script>div>ahref= "暗鏈">關鍵字 a>script language="javascript" type="text/javascript">
document.write("");script>
注:除了設置display:none屬性外,也可以設置前面我們提到的其他隱藏方法。
6、利用JS修改樣式屬性
div id="anlian"> a href="暗鏈">關鍵字a>div>script language=javascript>
document.getElementById("anlian").style.display="n"+"one"script>
7、利用遮擋層隱藏暗鏈。z-index屬性可以設置元素的堆疊順序,z-index值越小其堆疊順序越靠后,因此可以利用其它層來遮擋暗鏈。
divclass="father" style="position:relative">
div class="topLever" style="position:absolute;left:0;top:0;z-index:999; width:90%;height:100px;"> 遮擋層:可以放圖片等 div>
div class="hideDontent">隱蔽層:可以放暗鏈div>
div>
8、利用iframe創建隱藏的內聯框架
marginWidth=0 marginHeight=0src="暗鏈 " frameBorder=0width="226" scrolling=no height=3 name="haitan">
marginWidth,marginHeight為0 則無法顯示內聯框,可隱藏暗鏈。
9、利用重定向機制。在跳轉之前的頁面寫入不相關的鏈接,通過快速跳轉到正常頁面,使用戶無法察覺。
script> setTimeout("window.location= "index.html",0.1); script>
body leftMargin=0 topMargin=0 scroll=no>div> a href=“暗鏈”>關鍵字 div>body>
利用setTimeout 在跳轉到正常頁面index.html之前有0.1s停留在當前頁面,頁面中的暗鏈不易被察覺。
script language="javascript" type="text/javascript">
window.location.href="lianjie";
script>
10、利用標簽插入鏈接。位于網頁html源碼頭部內的標簽,提供有關頁面的元信息,是搜索引擎判定網頁內容的主要根據, 攻擊者可以在標簽中插入大量與網頁不相關的詞語以及鏈接。
meta http-equiv="refresh" content="1"; url="暗鏈" />
meta name="xxxx"content="黑鏈及描述">
三、總結
以上總結了掛暗鏈的常用手法,相信還有一些其他方式被攻擊者利用,不難發現凡是可以隱藏文本信息的地方都可以掛暗鏈,比如我們可以通過創建下拉菜單,將非法鏈接混合在合法菜單之中,如果菜單足夠長或者沒人去點擊的話,也很難察覺。被植入暗鏈的網頁不僅對于網站本身的信譽形象產生負面影響,更嚴重擾亂了搜索引擎排名機制。為了防止網站被掛黑鏈,我們還需加強對網站的監管,采取一些防范措施,比如定期查看網站的源代碼,使用站長工作檢查黑鏈、死鏈,定期進行網站漏洞檢測、漏洞修復、后門檢測等,提高網站安全性等。
|