談談魚叉式網路釣魚黑箱粉碎機
*
本文原創作者:apathy,本文屬FreeBuf原創獎勵計劃,未經許可禁止轉載美國加州大學伯克利分校和勞倫斯伯克利國家實驗室(LBNL)的幾位安全研究人員開發了魚叉式網路釣魚黑箱粉碎機,通過分析魚叉式網路釣魚攻擊的根本特點設計了一組新的信譽特徵。該組特徵對應於魚叉式網路釣魚攻擊的兩個關鍵階段,隨後引入新的異常檢測技術(DAS),以非參數的方式運行,不需要任何標記的訓練數據,利用信譽特徵來檢測攻擊。研究人員與LBNL的安全團隊進行合作,評估了近4年的電子郵件數據(約3.7億個電子郵件)以及相關的HTTP日誌,驗證其具有檢測憑證魚叉式網路釣魚攻擊的功能。強勢圍觀後來談談這一魚叉式網路釣魚黑箱粉碎機的強大功能。
什麼是魚叉式網路釣魚?
網路釣魚是「社會工程攻擊」的一種形式,攻擊者向用戶發送貌似來自合法企業或機構的欺騙性電子郵件,引誘用戶回復個人身份數據或財務賬戶憑證,或單擊電子郵件中的鏈接訪問偽造的網站、下載惡意軟體,屬於犯罪欺詐行為。
魚叉式網路釣魚不同於其他的廣撒網式的網路釣魚,攻擊者發送有針對性的欺騙性電子郵件,欺騙受害者執行危險操作。從攻擊者的角度來看,魚叉式網路釣魚需要很少的技術複雜性,不依賴於任何特定的漏洞,躲開了技術防禦,並且常常成功;從防守者的角度來看,由於電子郵件為受害者「量身定做」,受害者容易受到欺騙,而攻擊者有意地將他們的攻擊郵件做成合法的手段,傳統信譽和垃圾郵件過濾往往檢測不出其中包含的惡意內容,所以魚叉式網路釣魚很難抵擋。
魚叉式網路釣魚攻擊有幾種形式:
1. 試圖欺騙收件人打開惡意附件,但是在論文中的實驗環境(LBNL)下實現成功攻擊的很少;
2. 憑證魚叉式網路釣魚,通過惡意電子郵件誘導收件人點擊鏈接,然後在生成的網頁上輸入憑證。
憑證竊取為研究人員的研究重點,因為這一攻擊相對漏洞利用類攻擊要容易。如果涉及惡意軟體,即便目標已經中招,積極修復和其他安全機制會提供防護,而一旦憑證被找到,就只需誘使目標暴露出數據。
魚叉式網路釣魚黑箱粉碎機的原理
魚叉式網路釣魚黑箱粉碎機是研究人員在企業環境中提出緩解魚叉式網路釣魚風險的新方法,利用網路流量日誌和機器學習的一套系統,可以在用戶點擊嵌入電子郵件中的可疑URL時,實時觸發警報。
魚叉式網路釣魚的攻擊對象不同於常規網路釣魚的任意用戶,而是專門針對擁有某種特權訪問或能力的用戶。根據這種選擇性的目標和動機研究人員提出了一種分類法,在兩個維度上表徵魚叉式網路釣魚攻擊,這兩個維度也對應於攻擊的兩個關鍵階段:
1.誘惑階段(lure),攻擊者冒充受信任的身份發送電子郵件來說服收信人的階段;
2.利用階段(exploit),攻擊者獲得信任後,利用這種信任誘導收信人執行危險操作的階段。
誘惑階段攻擊者的攻擊方式有四種:
1. 冒用電子郵件地址(address spoofer),利用受信任個人的電子郵件地址作為攻擊電子郵件的「發件人」;
2. 冒用電郵名稱欄位(name spoofer),偽造看起來可信的名稱而不偽造電子郵件地址,這種方式規避了DKIM和DMARC;
3. 未知攻擊者(previously unseen attacker),偽造名稱和電子郵件地址,看起來類似於真實用戶和真實地址;
4. 橫向攻擊者(lateral attacker),從被黑受信賬戶向其他用戶發送釣魚郵件。
第一種攻擊方式研究人員不予考慮,因為域名密鑰識別郵件標準(DKIM)和域名消息驗證報告一致性協議(DMARC)之類的電子郵件安全機制會處理,剩下的三種攻擊方式為研究重點。
魚叉式網路釣魚黑箱粉碎機對網路釣魚攻擊的兩個關鍵階段制定了兩類特徵:
1. 發信人信譽特徵(domain reputation features),描述了該電子郵件的發送者是否屬於上述攻擊方式之一,反映了發信人的可信程度,可以利用該特徵捕獲誘惑階段(lure)的特徵向量;
2. 域名信譽特徵(domain reputation features),描述了用戶根據域名訪問該URL的可能性,反映了域名的可信程度,可以利用該特徵捕獲利用階段(exploit)的特徵向量。
魚叉式網路釣魚黑箱粉碎機利用的數據為網路流量日誌,包括LBNL的SMTP日誌、NIDS日誌和LDAP日誌,其中,SMTP日誌記錄LBNL有關組織員工(包括兩名員工之間的電子郵件)發送的所有電子郵件的信息;NIDS日誌記錄有關HTTP GET和POST請求的信息,包括訪問的完整URL;LDAP日誌記錄用戶在公司的電子郵件地址,登錄時間以及用戶進行身份驗證的IP地址。
因為攻擊者採用不同的攻擊方式,發信人的信譽特徵也不同,魚叉式網路釣魚黑箱粉碎機根據三種攻擊方式採用三個子探測器(sub-detector),每個子檢測器使用包含四個標量值(兩個用於域名信譽,兩個用於發信人信譽)的一個特徵向量。
魚叉式網路釣魚黑箱粉碎機引入了定向異常評分(DAS,Directed Anomaly Scoring)技術,用於從未標記的數據集中自動選擇最可疑的事件,DAS按照事件的可疑性來對事件進行評分,再按照評分進行排序,所有的事件排序完成後,DAS只選擇N個最可疑(排名最高的)的事件,其中N是安全團隊的警報預算(即能接受的預計警報數)。
魚叉式網路釣魚黑箱粉碎機的總設計如圖1,分為三個部分:
1. 特徵提取部分(feature extraction stage),利用來自LBNL的SMTP日誌、NIDS日誌和LDAP日誌為郵件中的每個URL提取和保存三個特徵向量(FV,feature vectors)(每個子探測器有一個FV),使用網路流量日誌,記錄在電子郵件中的URL上的所有點擊。
2. 夜間評分(nightly scoring stage),每天晚上,收集每個子探測器過去一個月的點擊URL事件,並對其特徵向量FV進行異常評分(DAS),將該月份最可疑FV存儲在ComparisonSet集合中;
3. 實時報警生成(real-timealert generation stage),觀察實時網路流量,查看點擊的電子郵件URL,將每個子探測器的實時點擊特徵向量FV與ComparisonSet進行比較,並根據需要為安全團隊生成警報。
圖1 魚叉式網路釣魚黑箱粉碎機設計圖
魚叉式網路釣魚黑箱粉碎機的應用情況
魚叉式網路釣魚檢測的難點,在於此類攻擊比較少見,在研究人員的實驗環境下,企業數據集包含3.7億電子郵件——約4年的量,但只有10例已知的魚叉式網路釣魚案例。魚叉式網路釣魚樣本的相對稀少性,也使機器學習技術缺少了創建可靠訓練模型所需的大量數據。研究人員在LBNL中應用魚叉式網路釣魚黑箱粉碎機時,配置警報預算為10個,從LBNL的3.7億個電子郵件數據集中對其進行了評估,成功識別了19個釣魚活動中的17個,佔89%,平均假陽性率(false positive rate)為0.004%。
在應用的過程中,魚叉式網路釣魚黑箱粉碎機具有一定局限性,對於攻擊者在高信譽網站上託管釣魚網頁和超出網路監視器的可見性這兩種情況無法檢測到,但是在手動分析子檢測器檢測到的FV可以發現其中存在矛盾。
魚叉式網路釣魚黑箱粉碎機與傳統檢測方法的對比
對於網路釣魚攻擊的傳統檢測方法有如下幾種:
1.手動閾值(Manual Threshold),手動設置每個特徵的閾值,如果所有特徵值都低於閾值,則生成警報;
2. 有監督學習(Supervised Learning),基於大量關於攻擊檢測的文獻,或從垃圾郵件分類得到先前的魚叉式網路攻擊,需要一個標記的訓練數據集;
3. 標準異常檢測(Standard Anomaly Detection),包括密度估計技術,如高斯混合模型(GMM);聚類和基於距離的技術,如k-最近鄰(kNN)分類演算法的。
傳統檢測方法有以下局限性:
1.對於魚叉式網路釣魚攻擊的特徵值的真實分布情況並不能確定,參數的選擇也具有盲目性,手動設置特徵閾值會導致錯過攻擊;
2. 魚叉式網路釣魚樣本的相對稀少,很難集合成一個足夠大的訓練集,並且在惡意樣本和良性樣本的分類上高度不平衡,不利於有監督學習;
3. 在許多安全設置中,標量特徵通常具有其數值的方向性,例如,一個域的訪問次數越少,越是可疑,而標準異常檢測技術不能將不對稱或方向性的概念納入其計算;
4. 事件即使只有一個或幾個的特徵是統計學異常的,標準異常檢測技術就將該事件視為攻擊,造成警報預算的浪費。
局限性和發展方向
魚叉式網路釣魚黑箱粉碎機可以檢測已知的和以前未被發現的遠程攻擊,但對於對手可能會採取限制和逃避策略具有局限性,體現在如下方面:
1.有限的可見性,在LBNL網路邊界之外進行的電子郵件和網路活動不會記錄在NIDS日誌中,LBNL不通過HTTPS提供的中間人流量,導致錯過電子郵件鏈接到HTTPS網站的攻擊;
2.有限的報警預算,設置的報警預算嘗試滿足產生的警報數量的上限,但是如果攻擊在一天內爆發,可能受報警預算限制而錯過一些攻擊;
3. 逃避策略,攻擊者可能通過說服高訪問量的網站,並利用其來託管釣魚網站從而提高鏈接的域名聲譽特徵,這種情況只能發現矛盾,不能產生報警;
4. 歷史數據限制,隨著歷史日誌數據的減少,魚叉式網路釣魚黑箱粉碎機質量可能降低,當只有1個月的歷史數據時,無法檢測到任何攻擊;
5. 未來的工作可以探索如何設計有效的預警機制,作為預防性防禦的一部分。
*本文原創作者:apathy,本文屬FreeBuf原創獎勵計劃,未經許可禁止轉載


※特別企劃 | 網路空間「列國志」:安全領域的政治風雲
※如何通過Python實現自動填寫調查問卷
※用Mitmproxy輔助Sqlmap自動化利用特殊漏洞
※FICO報告:2017年借記卡物理欺詐案件比去年同期數量上升39%
TAG:FreeBuf |