APT攻擊背后的秘密:攻擊時的武器與手段
在之前的兩篇文章中《APT攻擊背后的秘密:攻擊前的"敵情"偵察》《APT攻擊背后的秘密:攻擊性質及特征分析》,我們介紹了APT攻擊的性質、特征,以及攻擊前的"敵情"偵察。本篇文章,我們將繼續介紹APT攻擊時使用的武器和手段,這是真正開始發動攻擊的階段,也是攻擊者需要通過的第一道"關卡"。
正如在前面文章我們提到的,APT攻擊和普通攻擊之間的區別是目的,或者說背后操作者的具體目標,而不是工具、策略或流程。
一般的攻擊主要依賴于數量,攻擊者會成百上千次的發送相同的鏈接或是惡意軟件,在大多數情況下,這個過程是自動化的,攻擊者使用機器人或基于web腳本來推動攻擊,如果攻擊了大量的潛在受害者,那么攻擊者可能獲得已經獲得了一半的成功。而APT攻擊則會使用多個鏈接、不同類型的惡意軟件,并控制攻擊量,因此,APT攻擊很難被傳統的安全防御手段所發現。
啟動攻擊
在偵察階段,攻擊者會收集盡可能多的關于目標的信息,這些信息在攻擊開始階段將發揮重要作用。這些信息可以讓攻擊者能夠設計和開發一個惡意有效載荷,并選擇最好的方法來傳送。
對于攻擊工具包,有很多低成本的選擇,并且還可以隨后添加自定義模塊或功能。這些工具可以托管在任何位置,但攻擊者通常會將它們放在有著良好聲譽的合法域名,利用路過式下載攻擊。
水坑攻擊通常采用兩種攻擊方式。一種方式是通過網絡釣魚電子郵件將目標帶到攻擊者的利用工具包。
另一種方式是瞄準共享資源。這些資源通常對于目標有著一定價值,并有良好的聲譽。對于這種這種方式來說,攻擊者沒有直接瞄準目標,而是感染目標將要訪問的網站,等著目標被感染。
我們需要了解水坑攻擊和路過式下載攻擊的區別,其中一種可用于發起一般攻擊,而這種攻擊很容易被發現,另一種則更加隱蔽。
攻擊者還會利用零日漏洞,但并非總是如此。當使用零日漏洞時,主要原因是攻擊者攻擊目標實現概率增加。這些目標可能是安裝Paid-Per-Install惡意軟件、信息竊取、構建僵尸網絡或間諜活動。然而,利用現有漏洞要比零日漏洞更加容易,因為企業和個人用戶經常沒有修復系統和第三方軟件的漏洞。
回顧在偵察階段,還有一些其他信息可能幫助攻擊者展開攻擊。假設攻擊者發現可信業務合作伙伴網站中的漏洞,或者目標企業的漏洞,攻擊將變得更加容易,因為攻擊者既可以利用水坑攻擊,也可以利用單一的可信資源。在這種情況下,SQL注入、跨站腳本(XSS)等常見漏洞都可以攻擊者的切入點,默認或有漏洞的服務器配置同樣如此。
此外,攻擊者會將精力集中在容易實現的目標上,因此,內部開發的有漏洞的應用程序或添加到公司博客或內網的第三方腳本,都可能用來發動攻擊。最后,如果目標企業使用的CMS或主機平臺已經過時或未修復,這也會成為攻擊的關注點。
選擇目標
一旦攻擊者確定了攻擊向量(其中包括有漏洞的平臺和攻擊類型),他們將需要選擇一個受害者。在很多情況下,受害者其實已經確定。但有時候,受害者是誰并不重要,攻擊者會攻擊盡可能多的目標以提高其成功率。假設受害者還沒有選定,整體目標是一個企業,那么,來自偵察階段的數據再次會變得有用。
請記住,攻擊者首先會瞄準容易攻擊的目標,企業內最容易的目標是服務臺工作人員,或者提供支付服務的員工,例如客戶服務代表或行政助理。因為這些人能夠訪問或聯系企業內的其他人。在偵察階段,攻擊者能夠獲得這些人的信息,包括他們正在使用的軟件和硬件類型、社交網絡信息、公開的報告或其他工作、愛好或他們的個人信息。
企業內的其他人也可能成為目標,這主要是因為他們在企業內的訪問權限和影響力。這些包括:首席執行官、首席財務官、IT部門、QA和開發團隊、銷售、營銷和公共關系團隊。
傳送有效載荷
在建立有效載荷、選定攻擊目標后,攻擊者需要開始傳送惡意載荷到目標,他們選擇的傳送方法包括:
1. 路過式下載攻擊: 這種傳送方法讓攻擊者可以瞄準更廣泛的受害者。這是一般犯罪的常用方法,例如信息竊取惡意軟件或僵尸網絡構建惡意軟件。犯罪工具包是典型的傳送工具,因為它們可以利用多個漏洞。
任何具有可利用漏洞的網站都可能受這種攻擊的影響。請記住,SQL注入攻擊可用于訪問存儲數據,也可以訪問感染數據庫中的身份驗證詳細信息,進一步推動攻擊。此外,跨站腳本和文件包含漏洞將讓攻擊蔓延。當惡意代碼注入到網站,攻擊者只需要等待受害者。在文件包含漏洞的情況下,如果攻擊者獲取對web服務器本身的控制,他們就可以攻擊其他區域以及服務器上的數據。
注意: 這就是分離和保護網段的原因。這能夠幫助降低數據泄漏期間連帶效應的風險。如果對一個區域的訪問允許訪問所有其他區域,攻擊者的工作就變得更加容易了。
2. 水坑攻擊: 細粒度水坑攻擊不同于一般攻擊。雖然整個攻擊活動可能讓其他不相關的人成為受害者,攻擊者對選定的一組人或特定人更感興趣。
這種攻擊的目標可能是開發人員、QA、IT或銷售人員,因為這些人更可能使用論壇或其他社交環境來與同行交流或尋求協助。 SQL注入、文件包含和跨站腳本漏洞都將是主要切入點。如果攻擊者可以控制直接綁定到目標網絡的服務器,那么,攻擊員工就成為了次要目標。
3. 網絡釣魚(一般): 一般網絡釣魚攻擊會瞄準廣泛受害者。攻擊者可以通過這種方式散布大量惡意軟件,既快速又便宜,而且不需要太費功夫。如果潛在受害者打開郵件附件,或者點擊惡意鏈接,在有效載荷安裝后,就說明攻擊成功了。網絡釣魚被用來傳播財務惡意軟件,而一般惡意軟件被用來竊取數據和構建僵尸網絡,而這又被用來發送更多的垃圾郵件。
網絡釣魚活動中使用的電子郵件地址可能來自各種來源,包括在偵察階段收集的數據,同時也可能來自數據庫泄漏事故公開披露的數據。一般網絡釣魚的目的是玩數字游戲,如果攻擊者發送惡意郵件到100萬地址,而安裝了1000個惡意軟件,那么,這將被視為一個巨大的成功。
4. 網絡釣魚(重點): 重點網絡釣魚攻擊,或者說魚叉式網絡釣魚,工作原理與一般網絡釣魚攻擊差不多,只是潛在受害者范圍小得多。魚叉式釣魚攻擊很適合于攻擊一個人或者一個小組,因為在偵察階段收集的數據能說服受害者做一些操作,例如打開惡意附件或點擊鏈接。
魚叉式網絡釣魚活動很難被發現,特別是對于被動的反垃圾郵件技術。魚叉式網絡釣魚獲得成功是因為,受害者相信郵件中包含的信息,而且大多數人都認為反垃圾郵件保護會抵御這種威脅。
總結
將APT攻擊阻止在萌芽時期很關鍵,因為如果你能在這個階段阻止攻擊,那么,戰斗已經贏了。然而,犯罪分子沒有這么容易對付。除非你部署了分層防御措施,完全阻止這種攻擊,說起來比做起來容易。下面我們看看抵御攻擊的方法:
入侵檢測系統(IDS)和入侵防御系統(IPS)是很好的保護層。然而,大多數只是部署了其中一個,而沒有都部署,最好的辦法就是同時部署這兩者。
IDS產品提供了可視性,但只有當數據泄漏事故發生后才有效。如果企業能夠即時對IDS警報采取行動,損失和損害可以得到緩解。在另一方面,IPS產品能夠有效發現和識別已知攻擊,但缺乏可視性。這兩個解決方案的缺點是它們所依賴的簽名。如果沒有更新簽名,你可能無法檢測攻擊者部署的最新攻擊技術。
反病毒保護通常能夠檢測很多漏洞利用工具包安裝的惡意軟件。但單靠AV簽名并沒什么用,所有AV產品都需要依賴于簽名保護。雖然AV供應商提供各種保護,包括白名單和基于主機的IDS,但這些功能需要啟用和使用。
垃圾郵件過濾也是檢測和阻止大部分攻擊必不可少的方法,但企業不能只依賴反垃圾郵件保護。它們很容易出現誤報,無法阻擋一切攻擊,特別是當攻擊者偽裝成白名單中的域名時。
補丁管理是另一個關鍵保護層,因為它能夠應對攻擊者最強的工具之一—漏洞利用工具包。然而,修復操作系統并不夠,還需要定期修復第三方軟件。
最后,還需要安全意識培訓。企業應該對用戶進行培訓來抵御最明顯的威脅,包括網絡釣魚攻擊。安全意識培訓是持續的舉措,能夠直接解決企業面臨的風險。