AI與安全的恩怨情仇五部曲「1」:Misuse AI
*本文原創作者:薇拉vera,本文屬於FreeBuf原創獎勵計劃,未經許可禁止轉載
寫在前面
隨著AI軍備戰進入白熱化狀態,越來越多的行業開始被AI帶來的浪潮所影響,甚至顛覆。安全作為和眾多行業交叉的一個領域,同樣無法避免這樣的浪潮。
但和其他領域不同的是,安全和AI之間其實是一個 相互作用和碰撞 的過程——
黑客可以利用AI發起攻擊。如攻破驗證碼機制、自動化釣魚攻擊、實現漏洞的自動挖掘等。
黑客可以對AI發起攻擊。如用資料中毒或逃逸攻擊干擾模型結果,或是用模型萃取的方法竊取模型或訓練集等。
安全研究員可以利用AI進行防守。如對釣魚郵件從行為和文字上進行檢測、利用圖的時候挖掘惡意團伙、對C&C伺服器進行檢測等。
安全研究員需要對AI進行保護。如面對惡意機器流量,如何搭建機器流量防控體系,以及旨在保護模型機密性和資料安全的隱私保護技術等。
基於此,本文考慮對AI與安全的恩怨情仇進行一些簡單的提綱挈領式的梳理和思考,拋磚引玉。
具體而言,我將AI與安全的關係劃分為了五個部分,前四個部分分別從【黑客利用AI進行攻擊】、【黑客攻擊AI模型】、【安全人員利用AI進行防守】、【安全人員對AI進行保護】角度進行分篇介紹,最後在【Do we need all in AI ?】部分,給出自己對當前安全現狀的一點思考。
整個系列文章的大綱如下圖所示,因為字數較多,因此我會將五部曲分為五篇文章,依次進行介紹,歡迎大家共同交流。
Misuse AI
Misuse AI字如其意,即指黑客對AI技術的“誤用”。
黑客的攻擊行為大多追求規模效應,因此會試圖攻擊儘可能多的目標使用者,同時降低自身的風險。這與AI的思想不謀而合,因此AI便成為了他們實現目標的完美工具。
這裡我們主要對以下5種情形進行簡單介紹——
驗證碼自動識別
自動化魚叉式釣魚攻擊
自動化惡意軟體樣本生成
自動化漏洞挖掘
通過輿情分析和精準廣告投放來影響政治事件
00×1 驗證碼自動識別
驗證碼識別可能是大家第一反應會想到的一個應用場景,畢竟這個技術幾乎自驗證碼誕生的第一天起就同時誕生了,並一直和驗證碼纏鬥至今。
目前市面上的常見驗證碼與其對應的攻擊手段如下——
1. 輸入識別出的字元類驗證碼
這類實際上主要涉及到的就是影象識別。一般分為 分割字元 和 不分割字元 兩種處理手段。
分割字元手段的步驟:
1.圖片預處理,包括二值化,降噪等
2.圖片分割
3.提取特徵
4.訓練分類模型,識別字符
這種方法的難點:
背景噪聲難以去除,例如字型上有橫線等;
圖片粘在一起,難以切割;
文字有旋轉,扭曲等變形。
在樣本數量不是很大的情況下,這三種情況都會對準確率造成影響,當然如果樣本足夠多,這些也不是問題
不分割字元的方法:
字元固定:考慮CNN
字元不固定:考慮RNN/LSTM/GRU + CTC。只要資料量足夠,準確率就能達到很高的水準。
2. 點選類驗證碼
這類可以利用目標檢測的方法,先從影象中檢測出文字,再對文字分類。具體實現可以參照這篇: ofollow,noindex" target="_blank">https://zhuanlan.zhihu.com/p/34186397
3. 拖動滑塊到指定位置的驗證碼
這類驗證碼一般不需要打碼做訓練,只需要找到缺口的位置,並模擬運動軌跡就可以了。具體針對各個平臺的破解騷操作的話,可以參考這個知乎回答: 滑塊驗證碼(滑動驗證碼)相比圖形驗證碼,破解難度如何?——知乎
自動化魚叉式釣魚攻擊
隨著0day成本的升高,黑客們越來越愛用釣魚來對使用者進行攻擊。而對於一些“重點目標”,更是會採用一種名為 魚叉式釣魚(spear phishing) 的辦法來定製化處理。攻擊者會花時間瞭解攻擊目標,包括姓名、郵箱地址、社交媒體賬號或者任何在網上參與過的內容等。攻擊目標不是一般個人,而是特定的公司或者組織的成員,竊取的資料也並非個人的資料,而是其他高度敏感性資料。在Black Hat USA 2016年的議題 Twitter-wp.pdf" rel="nofollow,noindex" target="_blank">“Weaponizing data science for social engineering: Automated E2E spear phishing on Twitter” 裡,研究員嘗試用 SNAP_R (SocialNetwork Automated Phishing with Reconnaissance)遞迴神經網路模型來向特定使用者(即攻擊目標)傳送釣魚推文。該模型採用魚叉式網路釣魚滲透測試資料進行訓練,為提升點選成功率,還動態嵌入了從目標使用者和轉發或關注使用者處抽取的話題,並在傳送推文時@攻擊目標。
該自動化魚叉式釣魚攻擊主要包括兩部分:
1.尋找釣魚攻擊目標物件
首先,利用TwitterStreaming API收集使用者名稱,根據使用者個人資訊描述和推文情況衡量釣魚成功概率,使用者個人資訊包括使用者名稱、轉發/響應的推文的頻率/時間、對某主題的態度、位置資訊、行為模式、已參加或者將要參加的大型活動等,也包括工作、職位頭銜、知名度等反映使用者價值大小的資訊。然後,按照釣魚成功的概率大小將使用者進行分類。
攻擊者從Firehose(Twitter使用者傳送訊息的輸出口)中挑選使用者,並判斷該使用者屬於剛才所說分類方法中的具體類別。如果使用者的釣魚成功的概率比較高,就選取該使用者作為攻擊目標,向其傳送嵌有釣魚連結的虛假推文。
2.自動化魚叉釣魚
選取攻擊目標後,攻擊者利用SNAP_R遞迴神經網路模型抽取目標感興趣話題以及該目標傳送推文或者回復推文的情況以便於產生釣魚推文內容。除介詞等停止詞之外,最頻繁出現的推文內容都可以用於構造推文內容,推文內容會選擇使用者經常傳送或轉推推文的時間進行傳送。
在SNAP_R模型中,採用了馬爾可夫模型和長短期記憶LSTM(LongShort-Term Memory)遞迴神經網路構造推文內容。馬爾可夫模型根據文字同時出現的概率來推測文字的內容,比如說——
如果訓練集包含短語the cat in the hat的次數比較多,當模型出現the時,則下一個內容很可能是cat 或者hat。但是由馬爾科夫模型產生的內容通常是沒有意義的,只是出現頻率比較高的詞語的組合體而已。而LSTM適合於處理和預測時間序列中間隔和延遲非常長的重要事件,與馬爾可夫模型的區別在於,LSTM能結合語境判斷下一個可能出現的詞語。兩者結合構造更接近於人類撰寫的推文內容。
通過對90名使用者進行測試發現:該自動化魚叉式網路釣魚框架的成功率為 30%~60% ;大規模手動魚叉式網路釣魚傳統上的成功率為45%,而廣撒網式釣魚只有5%到14%的成功率。測試結果說明該自動化魚叉式釣魚方法 極其有效 。
資料連結:
Black Hat USA 2016介紹地址: https://www.blackhat.com/us-16/briefings/schedule/#weaponizing-data-science-for-social-engineering-automated-e2e-spear-phishing-on-twitter-3759
00×2 自動化惡意軟體樣本生成
論文 Generating Adversarial Malware Examples for Black-Box Attacks Based on GAN 利用GAN生成對抗惡意軟體樣本。最終的實驗證明,MalGAN能夠將實際中的惡意軟體檢測率降低到接近零,同時,讓defence策略難以起作用。
其實這一點主要涉及的是對抗樣本生成的知識,由於其和第二篇「2」Attack AI 裡涉及到的知識點有部分重疊,所以在這裡我們先跳過,把這部分內容放到「2」裡來講~
00×3 自動化漏洞挖掘
2016年的Defcon CTF上,一支名為 Mayhem 的機器CTF戰隊與另外十四支人類頂尖CTF戰隊上演了資訊保安領域首次人機黑客對戰, 並一度超過兩隻人類戰隊 。而 Mayhem 的來歷,要從美國國防部先進專案研究局(DARPA,Defense Advanced Research Projects Agency)舉辦的網路超級挑戰賽(CGC,Cyber Grand Challenge)說起。
CGC是DARPA於2013年發起的全球性網路安全挑戰賽,旨在推進自動化網路防禦技術發展,即實時識別系統缺陷、漏洞,並自動完成打補丁和系統防禦,最終實現全自動的網路安全攻防系統。參賽隊伍全部由計算機組成,無任何人為干預。所以,CGC是機器之間的CTF比賽,目標是推進全自動的網路安全攻防系統。
在比賽之前,每支參賽團隊需要開發一套全自動的網路推理系統CRS(Cyber Reasoning System),需要可對Linux二進位制程式進行全自動化的分析和發現其中的漏洞,並自動生成能夠觸發漏洞的驗證程式碼,自動對程式漏洞進行修補。
最終,來自卡內基梅隆大學的ForAllSecure團隊研製的Mayhem 系統獲得了冠軍,並參加了2016年的Defcon CTF。
Defcon CTF上的分數(Mayhem有些可惜,比賽前兩天似乎是收到的流量有問題。後來才發現DEF CON CTF Finals用的平臺和CGC CFE不同,第三天收到流量,據說9個CB找出了7個exploit、修補了6個。如果來場公平的較量也許能碾壓人類。)
00×4 通過輿情分析和精準營銷來影響政治事件
前面提到的幾個點,主要還是從傳統的安全場景上來進行描述的。但如果黑客想,同樣可以利用機器學習技術來影響到更深遠的安全領域,比如說國家安全。
在特朗普當選美國總統之後,Cambridge Analytica這家公司便被推到了風口浪尖。這家公司的負責人主動公開宣稱Cambridge Analytica非法獲取超過500萬Facebook個人賬戶資訊,然後使用這些資料構建演算法,分析Facebook使用者個性資料,並將這些資訊與他們的投票行為關聯起來,從而使得競選團隊能夠準確識別在兩位候選人之間搖擺不定的選民,並有針對性地製作和投放廣告。
如上面這個叫做LGBT United的賬號中為威斯特布路浸信會反抗運動打廣告。元資料顯示,這支廣告花了賬號持有者3000多盧布,並且它針對的是堪薩斯州的LGBT群體以及那些對希拉里·克林頓或伯尼·桑德斯(民主黨競選人)感興趣的人。
一家大資料公司尚且如此,那麼捲入了干涉美國大選和英國脫歐罪名的俄羅斯呢?
References
[1] Doug Drinkwater. 6 ways hackers will use machine learning to launch attacks.
[2] Seymour J, Tully P. Weaponizing data science for social engineering: Automated E2E spear phishing on Twitter[J]. Black Hat USA, 2016, 37.
[3] Hu W, Tan Y. Generating adversarial malware examples for black-box attacks based on GAN[J]. arXiv preprint arXiv:1702.05983, 2017.
[4] Nick Penzenstadler, Brad Heath, Jessica Guynn. We read every one of the 3,517 Facebook ads bought by Russians. Here’s what we found. USA TODAY.
[5] 科技與少女. 驗證碼識別綜述.
*本文原創作者:薇拉vera,本文屬於FreeBuf原創獎勵計劃,未經許可禁止轉載