毫無疑問,如果讓攻擊者已經(jīng)順利進(jìn)展到了這個(gè)階段,問題已經(jīng)很嚴(yán)重了,但是你仍然有機(jī)會(huì),F(xiàn)在,攻擊者已經(jīng)傳送了附有惡意附件的電子郵件,如果成功的話,攻擊者將能夠利用你企業(yè)使用的軟件中的漏洞。而如果漏洞利用成功的話,你的系統(tǒng)將受到感染。然而,攻擊者在攻破你的防御后,可能會(huì)制造一些動(dòng)靜。如果是這樣,關(guān)于他們攻擊方法和攻擊類型的證據(jù)可能位于網(wǎng)絡(luò)或系統(tǒng)日志中。另外,你的各種安全事件監(jiān)控器中可能包含攻擊的證據(jù)。
如果攻擊者的漏洞利用沒有被發(fā)現(xiàn),你的勝算就會(huì)變的更小。據(jù)2013年Verizon數(shù)據(jù)泄漏調(diào)查顯示,66%的數(shù)據(jù)泄漏保持幾個(gè)月甚至更長時(shí)間都未被發(fā)現(xiàn)。即使泄漏事故被發(fā)現(xiàn),也主要是因?yàn)闊o關(guān)的第三方曝光。
在漏洞利用后,攻擊者需要建立一個(gè)立足點(diǎn),也就是安裝,也就大多數(shù)端點(diǎn)保護(hù)的關(guān)注點(diǎn)。攻擊者通常是通過在感染主機(jī)上安裝額外的工具來獲得立足點(diǎn)。
攻擊者可能從初始切入點(diǎn)進(jìn)入網(wǎng)絡(luò)中的其他系統(tǒng)或服務(wù)器。這種支點(diǎn)攻擊(Pivoting)能夠幫助攻擊者完成其總體目標(biāo),并確保他們不被發(fā)現(xiàn)。
通常情況下,支點(diǎn)攻擊的成功是因?yàn)閷?duì)網(wǎng)絡(luò)政策的漏洞利用,讓攻擊者能夠直接訪問一些系統(tǒng),這樣,他們就不需要利用另一個(gè)漏洞或惡意軟件。
事件響應(yīng)計(jì)劃主要用來攻擊者活動(dòng)的安裝階段。因?yàn)榉烙胧┮呀?jīng)失敗,所以響應(yīng)是唯一的選擇了。然而,只有在檢測到攻擊,才可能進(jìn)行事件響應(yīng)。假設(shè)漏洞利用階段沒有被檢測到,而攻擊者成功安裝惡意軟件后,該怎么辦?如果你幸運(yùn)的話,你可以檢測到一些攻擊的證據(jù),并利用它們來推動(dòng)事件響應(yīng)過程。
企業(yè)經(jīng)常忽視感染指標(biāo)(Indicators of Compromise,IOC),因?yàn)樗鼈兺ǔk[藏在海量日志記錄數(shù)據(jù)中。沒有人有時(shí)間讀取數(shù)百或數(shù)千條數(shù)據(jù),這也是為什么經(jīng)常需要幾個(gè)星期或幾個(gè)月檢測到數(shù)據(jù)泄漏事故的原因。
假設(shè)攻擊者瞄準(zhǔn)一名員工,并攻擊了企業(yè)系統(tǒng),為了檢測到這種攻擊,關(guān)鍵是尋找異常情況,尋找似乎格格不入的東西。
另一個(gè)例子是尋找隨機(jī)的意想不到的DNS請(qǐng)求。攻擊者往往會(huì)回調(diào)以利用其他工具,或者他們的有效載荷會(huì)發(fā)出外部請(qǐng)求。將DNS請(qǐng)求與已知惡意服務(wù)器、名聲不好的IP地址列表進(jìn)行匹配,這樣做通常能夠檢測到攻擊,因?yàn)槁┒蠢秒A段是攻擊者可能制造動(dòng)靜的時(shí)期。
那么,對(duì)于水坑攻擊呢?什么算是很好的IOC呢?這也將需要讀取大量日志數(shù)據(jù),但如果Web服務(wù)器日志充斥著500錯(cuò)誤、權(quán)限錯(cuò)誤或路徑錯(cuò)誤,問題就嚴(yán)重了。因?yàn)檫@可能意味著SQL注入和跨站腳本攻擊等;蛘,500錯(cuò)誤也可能是良性的。但當(dāng)它們與數(shù)據(jù)庫錯(cuò)誤同時(shí)出現(xiàn),或者來自單個(gè)應(yīng)用程序或資源,則可能意味著攻擊。
同樣地,觀察404錯(cuò)誤,看看這些錯(cuò)誤是如何被觸發(fā)。在很多情況下,web漏洞掃描儀或探測應(yīng)用程序的機(jī)器人觸發(fā)了這些事件。最后,如果你發(fā)現(xiàn) shell腳本(例如r57或c99),通常是因?yàn)槟阋呀?jīng)注意到了日志中的隨機(jī)GET或POST請(qǐng)求,這是很明顯的IOC。事實(shí)上,web服務(wù)器上的 shell是最糟糕的發(fā)現(xiàn),表明已經(jīng)出現(xiàn)數(shù)據(jù)泄漏。因?yàn)閟hell意味著攻擊者已經(jīng)控制著一切。
在緩解措施方面,很多簽名提到的保護(hù)層仍然適用。事實(shí)上,其中一些保護(hù)層很適合于漏洞利用階段。例如,數(shù)據(jù)執(zhí)行保護(hù)(DEP)可以很好地防止惡意軟件在被感染主機(jī)上運(yùn)行。
雖然攻擊者可能能夠傳送惡意軟件,當(dāng)受害者嘗試執(zhí)行它時(shí),DEP將會(huì)阻止它。然而,還有大量惡意軟件變種和軟件漏洞利用會(huì)瞄準(zhǔn)DEP,所以你不能僅僅依靠這種保護(hù)。
白名單是另一個(gè)很好的緩解措施,但這種辦法有可能攔截合法(白名單)應(yīng)用程序,也就是說,白名單也不能作為防止漏洞利用的唯一來源。
反病毒控制(例如針對(duì)IP地址和軟件的聲譽(yù)檢查)是很好的防御措施,因?yàn)榇蠖鄶?shù)AV軟件提供行為檢測。但AV并不是完美的解決方案,如果漏洞利用階段使用了未知的東西,AV可能會(huì)完全沒用;谥鳈C(jī)的IDS同樣是如此,但如果沒有部署這些技術(shù),情況會(huì)更糟。
最后,對(duì)操作系統(tǒng)和第三方程序保持軟件更新和補(bǔ)丁修復(fù),能夠很好地防止漏洞利用,并且能夠控制權(quán)限。最小特權(quán)原則是IT內(nèi)經(jīng)常忽視的工具,但這是個(gè)很好的工具。
這些緩解措施的重點(diǎn)是,它們都不能完全阻止漏洞利用和安裝階段,但如果結(jié)合使用,防止嚴(yán)重攻擊的幾率將會(huì)增加。