隨著各種網(wǎng)絡技術不斷發(fā)展,黑客對于網(wǎng)站攻擊也總是不斷變換策略以及通過互相之間的交流來改進攻擊技術。而事實上就目前網(wǎng)站安全方面,面臨的挑戰(zhàn)主要也正是來自于攻擊技術不斷的演進,使得防御也需不斷升級。在之前也發(fā)布過《惡意軟件新玩法:隱匿在Pastebin上的后門》,而這一次,我們將展示一種新的攻擊方法,是通過結合上述的技術,使用偽造的jquery Pastebin文件來進行惡意軟件傳播。 FreeBuf百科:PastebinPastebin,官網(wǎng)地址為http://,在PasteBin上的可以將代碼、文本進行粘貼并存儲好,比如在Paste文本框內(nèi)貼好文本、代碼,并選擇類型,比如截圖中的css,再點擊submit,就會自動上傳并獲得分享地址。通過這種方式,我們可以很好地進行代碼或者其他文本的分享。 惡意鏈接的發(fā)現(xiàn)早在幾個星期之前,SuCuri安全團隊通過SiteCheck開始檢測掃描WordPress的站點,但在通過逆向分析某個WordPress網(wǎng)站的/wp-includes/js/jquery/jquery.js以及/wp-includes/js/jquery/jquery-migrate.min.js文件中的JavaScript代碼時發(fā)現(xiàn),出現(xiàn)某些不屬于原始文件的代碼,我們可以在下面檢測到受感染的jquery文件的截圖中看到,相應的URL其實是被寫在 payload里面的。 從上面的分析結果來看(其中 war/moc.nibetsap//:ptth反過來過來的網(wǎng)址是http:///raw),上述的兩個文件被注入了從 Pastebin加載進來的惡意腳本。在之前,我們在infected Magento sites的案例中也有了解到類似的攻擊方式。那么,從某種程度上來說,這兩個攻擊案例是相關聯(lián)的。不過,這個WordPress的感染方式更加有趣,所以也讓我們仔細看看先前檢測到的Pastebin鏈接。 成對出現(xiàn)的Pastejquery.js 和 jquery-migrate.min.js這兩個文件是WordPress的核心文件。一般來說,黑客在獲得訪問網(wǎng)站的訪問權限后,有時會選擇將上述文件的內(nèi)容替換成惡意代碼,實現(xiàn)跨站攻擊。 在這個案例中,我們可以發(fā)現(xiàn), 1、攻擊者向 jquery.js文件嵌入的惡意腳本是從以下網(wǎng)址加載的(成對出現(xiàn)),
2、向jquery-migrate.min.js文件嵌入的惡意腳本則是通過以下網(wǎng)址加載的,
現(xiàn)在我們對于這些成對的Pastebin鏈接可能會產(chǎn)生一些問題。
以上的問題我們將在下面通過分析來找到答案。 鏈接中的 Pastebin內(nèi)容讓我們先剖析下每對 Pastebin鏈接的內(nèi)容,
那現(xiàn)在我們了解了,在此案例中,黑客獲取訪問權限后,會將jQuery庫文件移除,而在每一個感染 WordPress jQuery文件的腳本中,第一個感染的Pastebin腳本是用于補充此前移除的 jQuery原始代碼,而第二個腳本則用于植入惡意程序。 目前尚不清楚為何攻擊者要先移除現(xiàn)有的代碼,再從Pastebin加載進去。比較有可能的是,這樣會使得惡意程序的感染以及二次感染更容易。攻擊者在實施攻擊時還是需要檢查是否 .js文件已經(jīng)感染成功,而通過將全部代碼都更換,來確保惡意程序的成功感染。因為jQuery代碼被嵌入到攻擊的腳本中的話,會導致攻擊腳本會相當長,所以攻擊者想到了通過將 jQuery庫文件保存在 Pastebin上,然后只提供一個額外的調(diào)用。 Pastebin用戶信息經(jīng)過對pastebin上的paste內(nèi)容的追蹤,我們發(fā)現(xiàn),上述調(diào)用的paste所屬的用戶并不是匿名的,有兩個用戶是跟它有關聯(lián)的。
再經(jīng)過研究發(fā)現(xiàn),兩個用戶都只有兩個paste, 而其中Emonostin的pastes是用于加載到 jquery-migrate.min.js文件中,而Jstoolshope的pastes是用于加載到 jquery.js文件的。 那么到這里,我們也會產(chǎn)生疑問,為什么攻擊者會選擇使用經(jīng)過注冊的用戶賬戶來進行文件的加載。首先,因為這樣會顯得更靈活,攻擊者可以針對自己的pastes內(nèi)容進行隨時更換。比如,如果黑客需要重定向URL,那么就可以直接在paste里面的代碼做。下圖為惡意程序在上的修改時間, 其實在Pastebin上,針對每一個paste 也提供了關于瀏覽次數(shù)的統(tǒng)計信息。我們看到,jquery.js 的兩個paste的瀏覽次數(shù)均為20,000+,而 jquery-migrate.min.js的兩個相關的paste則有接近 40,000的瀏覽量。乍一看,這種情況似乎又很合乎邏輯,上述提到的兩個成對的paste瀏覽量都是接近的。到這里,我們也會猜測,是不是植入惡意程序的.js腳本在paste有瀏覽記錄的同時也會被下載。但是,從 pastebin FAQ社區(qū)的回復說,關于Pastebin上paste的瀏覽統(tǒng)計量,并不僅僅只是針對paste下載的次數(shù)。所以從Pastebin的計數(shù)數(shù)據(jù)來看,并不能準確評估攻擊的次數(shù)。但為了獲取更加可靠的統(tǒng)計數(shù)據(jù),我們可以看的重定向情況。 惡意代碼
現(xiàn)在讓我們看回惡意代碼,經(jīng)過具體的分析,我們發(fā)現(xiàn)它會檢查 “tmid_no_session”(在一個版本中)以及“tmid_no_check”(另外一個版本) cookie 的狀態(tài)。如果 cookie中的狀態(tài)是設置為“1”,那么則不會返回信息給到訪問者。但接著腳本會將cookie狀態(tài)設置為“3”,并將訪問者重定向到第三方網(wǎng)址。 在本案例中,在jquery-migrate.min.js 的惡意腳本會將Windows用戶重定向到hxxp://get .adobe .com .flashplayer .frogsland .com/flashplayer_20ga/,其它系統(tǒng)用戶則重定向到hxxps://goo .gl/54Miz5。而jquery.js中的惡意腳本則將Windows系統(tǒng)和非Windows系統(tǒng)的用戶重定向到hxxps://goo .gl/54Miz5。 而Windows重定向的URL是偽造的。我們可以看到其被偽裝成Flash player的升級頁面。但其實該網(wǎng)址已經(jīng)被Google列入釣魚網(wǎng)站的黑名單中了。 以下鏈接是VirusTotal針對該網(wǎng)址提供升級并下載的惡意程序的分析報告,大家有興趣可以看看。 惡意廣告的植入另外一個重定向網(wǎng)址“hxxps://goo .gl/54Miz5”,則指向“hxxps://go .padsdel .com/afu.php?id=473791“。這是一個隸屬于廣告聯(lián)盟的網(wǎng)址。 從實際情況來看,將訪問流量從被攻擊的網(wǎng)站重定向到廣告聯(lián)盟鏈接是2015年較為常用的攻擊方式。而我們也看到越來越多的攻擊者從中獲利。攻擊者一般在此類攻擊中將廣告聯(lián)盟鏈接嵌入其中,并利用這種方式從廣告商那里獲利。這些廣告商往往愿意出價的原因是通過重定向的網(wǎng)站,誘騙訪問者去安裝惡意軟件和垃圾軟件(UWS)。而這些惡意軟件可以劫持瀏覽器,用以顯示更多的垃圾和惡意廣告。(這看起來似乎像是一個遞歸的惡意廣告投入模式) 廣告和惡意軟件一般都是并行的,在本次“jquery pastebin”攻擊案例中,攻擊者有兩種操作模式:一個是針對垃圾廣告,另外一個是針對惡意軟件。而這種模式也逐漸在黑市中形成“盈利”產(chǎn)業(yè)鏈條。 Goo.gl鏈接統(tǒng)計Goo.gl鏈接一般都較為明顯,我們可以看到任意短鏈接的使用統(tǒng)計數(shù)量。比如,以下是重定向的網(wǎng)址 https:///#analytics//54Miz5/month的使用數(shù)據(jù)。 我們可以看到攻擊者開始使用重定向網(wǎng)址”hxxps://goo .gl/54Miz5” 是在12月15日。經(jīng)過對其監(jiān)測,該網(wǎng)址平均每天有接近1萬的訪問量(即重定向次數(shù)),而在12月29日則到達頂峰,有超過3萬訪問量。這些數(shù)字同時也代表了被重定向的訪問者的數(shù)量,因為惡意軟件通過cookie設置不會對已知的訪問者進行重定向。 防護措施從影響來看,這種攻擊會比較令人頭疼。而一種相對麻煩的解決方式是對.js文件中的惡意代碼進行清除,但這樣做卻是存在可能會因為不小心清空代碼造成網(wǎng)站不可用的風險,所以如果采用這種方法還請注意。 另外一種較為容易的解決方式是:
http://core.svn./tags/4.4/wp-includes/js/jquery/jquery.js http://core.svn./tags/4.4/wp-includes/js/jquery/jquery-migrate.min.js 與此同時,僅僅只是清除惡意代碼對于網(wǎng)站的安全保障來說還是不夠的,用戶最好能夠全面掃描下服務器,檢查是否存在后門,并修補發(fā)現(xiàn)的安全漏洞。同時,在平時應該利用工具或者其他方式,對網(wǎng)站進行實時監(jiān)控,確保能在攻擊發(fā)生時,管理員可以及時作出反應。 * 參考來源:sucuri,F(xiàn)B小編troy編譯,轉載請注明來自FreeBuf黑客與極客(FreeBuf.COM) |
|
來自: 創(chuàng)客迷 > 《web安全》