技術文章

2019-05-01Image Spam的詭計與阻擋技術
從Image Spam洪潮看目前Antispam產品的問題
圖片型垃圾郵件(Image Spam)急速成長,預測將在2007年開始大行其道。為此資安業者紛紛祭出辨識這類垃圾信的防範機制,與垃圾郵件發送者展開一場技術大戰。 根據資安公司統計垃圾郵件約佔所有傳送訊息的90%,而圖片式垃圾郵件則佔了所有垃圾郵件類型的40%,而未來數年內將以扭曲影像垃郵(Wrap image spam)將成未來主流。
  1. 圖像式垃圾郵件的比重約佔整體垃圾郵件流量的 40% , 2007年來自SMTP應用層的垃圾郵件比例略升至 70% 。
  2. 圖像式垃圾郵件出現模糊手法新型技術:加入傾斜扭曲式文字(Slant and warp text)檔案技巧。
  3. 扭曲式圖像式垃圾郵變形大法: 利用影像扭曲、傾斜、交錯、對比、切割、加噪、位移、比例、色彩或是特效等的扭曲影像垃郵。
  4. 目前Antispam面臨的問題與解決之道為何? 針對內容過濾的Image Spam該如何防範呢?
  1. 圖像式垃圾郵件(Image Spam)的由來:
    傾斜與扭曲文字(Slanted and Warped text)的新手法,藉由傾斜或扭曲圖片中的全部文字,以逃過光學文字辨識技術(Optical Character Recognition、OCR)等垃圾郵件過濾機制的檢查,降低垃圾郵件被攔截的機會。圖像式垃圾郵件傾斜與扭曲文字的作法,其原始idea來自網路上常見用來避免Bot程式大量自動註冊帳號、留言的CAPTCHA(Completely Automated Public Turing test to tell Computers and Humans Apart)技術。
    CAPTCHA的做法是,藉由顯示一張含有文字,但卻被加入雜訊(Noise)或扭曲、傾斜的圖片,並要求使用者輸入圖片所顯示的文字,由於目前的技術尚難以自動辨識出這些被「干擾」的文字,使得CAPTCHA技術得以避免程式自動判讀,進而能確保其使用者真的是「Human」而非「Machine」。
    ▲ 網路應用上常見的CHPTCHA
    ▲ Image spam 的範例
  2. OCR對抗Image Spam有用嗎?
    越來越多圖像式郵件藉由加入雜訊、改變文字顏色、對比、扭曲變形等方式,提高了判讀難度,為因應圖像垃圾郵件氾濫,資安公司也先後推出「特徵比對偵測」、「光學字元辨識」、「邊緣偵測手法」 (Edge detection) ,「圖片空間偵測」等多項防堵機制,不過一些垃圾郵件散發者,開始將圖像式的垃圾郵件內容,放到一些既有的商業新聞訊息(Newsletter)或是合法廣告中,或夾入一段格言或聖經,並以這多種格式發布,企圖蒙騙spam filter的偵測。例如修改一些現成的新聞EDM中,加入賣藥或非法軟體的廣告,藉此〝愚弄〞(fool) filter對垃圾郵件的內容或特徵比對偵測,使垃圾郵件過濾器將這種垃圾郵件誤判為合法郵件。
    「根據調查,對於圖像式垃圾郵件,泰半以上的資安廠商多半採OCR(光學文字辨識)技術來處理,」一般做法即利用OCR軟體把圖像轉成文字,再依文字內容進行比對,利用OCR法除對系統會造成很大的負擔、效率太差;況且只要簡單加入一些Noise或扭曲內容,如當前氾濫的扭曲圖像(利用影像扭曲、傾斜、交錯、對比、切割、加噪、位移...)垃圾郵件,我們不禁質疑「OCR辨視後判讀得出來嗎?」,「OCR辨視判讀正確就有效嗎?
    ▲ 網路應用上常見的CHPTCHA
    ▲ Image spam 的範例
  3. Contents filter(內容過濾)的問題 VS. Spammer變形大法:
    其實回到最原點去看,這個應該是目前市場一般以貝式分析(Bayesian filter)等內容過濾(Contents filter)為主流的Antispam 所產生的問題,我們看看以下Spammer 變形大法的發展舉例說明:
    我們簡單從Viagra 一個字舉例,聰明的spammer為了躲過一些Spam filter(尤其以內容為主)的攔截開始對內容變形(愚弄機器:人讀文章,機器讀的是Code)
    VIAGRA!
    以下開此變形----->
    V1agra!
    以相似字型騙過 spam filters
    Via<!--hi-->gra
    用HTML comments (人看不到<!--hi--> ,機器卻看得到,用來愚弄spam filter)
    V1agr@!
    多重相似字型(帶符號)騙過 spam filters
    Vi<asdf>ag<asdf>ra
    用 Bad HTML (人眼看不見,用來愚弄filter again!)
    V’ 1ag^r”a (或V.i.a.gr.a 或 V-i-aGr.a 或 V/i/a/g/ra ......等)
    關鍵字中加入Noise 以愚弄filter
    Vi <b>ag</b> ra
    用 HTML語法夾帶方式讓Viagra(看起來是 Vi ag ra ) 躲過filter
    文字模式下的愚弄contents filter的變形大法
    從上述的例子我們可以簡單看出,Spammer的技術發展就是針對藉著『愚弄』內容過濾(Contents Filter)式的spam filter 的行為方法,因為其最大的問題是抵擋Spam的技術是用『內容』來過濾,從上例我們可以簡單發現若以"內容"過濾為主要核心技術來抵擋Spam的話,只要將內容扭曲變形 - 將內容『我變、我變、我變變變』,無論你的contents filter加入千百條rule都無法抵檔spammer的內容扭曲變形!
  4. Image Spam的變形技術:
    隨著技術的進步,雖然spam filter可以透過學習(machine learning)可以慢慢看懂上述技倆,但所謂道高一尺,魔高一丈,spammer也在思考如何避開過濾成功滲透(其實多為閃躲內容過濾),聰明的spammer發現內容過濾的盲點-“濾內容” ,於是乎用『以子之矛,攻子之盾』的方法,乾脆把所有內容裡的文字改成圖像吧,看看你怎麼濾? 於是乎圖片式垃圾郵件產生。
    因為郵件的廣告內容全部做成圖片,這樣一來就能避開那些使用內容過濾文本內容的防堵軟體的偵測,這也算是一種視破吧?! (內容過濾的罩門被視穿因此就破功了...)於是乎使用內容過濾技術的防堵軟體廠商,紛紛出來為自家的產品解套,為內容過濾找尋一個讓人可以接受的出路-OCR,廠商宣稱可以將圖片內容使用OCR(光學辨識技術)將圖片內的文字圖形轉換成文字,再進一步加以過濾。這個推論看似沒錯(實際上謬誤百出),但實質上只是製造話題來誤導了大眾針對問題核心的注意,當垃圾郵件內容改以圖片表示時,筆者相信圖片裡的文字並不會"規規矩矩"的放在圖片裡,讓OCR很精準的辨識出文字,多加幾個簡單的步驟,比如將影像扭曲、傾斜、交錯、對比、切割、位移、比例、色彩或是特效,就能讓OCR的辨識效果大為下降,這些步驟並不難,影像處理軟體幾個命令就解決了。
    再看看下面的例子吧....以下列出幾種圖片式文字(graphical images of text)的應用
    還有一種方式是,放在郵件本文裡的圖片非一整張,而是加以切割成各小圖片,再用HTML table拼起來,當然切割的單位愈小,就愈能避開OCR的辨識。
    影像切割後再用HTML table 組合的image spam
    除了以上舉例,還有編排、背景...等因素,將所有變因加在一起,就可以產生出超過百萬種的組合效果,那麼如果仍想藉由內容過濾來偵測,相信對於過濾效果沒有太大助益。如以Viagra與下列image spam為例,透過上述技術就可以變形。
    更容易內容扭曲的Image spam-我變,我變,我變變變
  5. 剖析Spammer的特性與Image spam的詭計:
    綜合以上論述,使用OCR技術真的能解決圖片式垃圾郵件的問題??? 各位看倌到此是否不禁會心一笑呢? 如果真的用OCR技術去對抗Image Spam的話 ,最後MIS會不會搞到變成 Orz ? 被公司同仁罵到 囧rz ??.........
    垃圾郵件最折煞人的地方,在於它會不斷變形,以適應各種新的攔阻方法。資安業者每推出一種打擊垃圾郵件的方式,Spammer業者就能找到一種避開攻擊的方法。這種垃圾郵件軍備競賽,使得雙方不斷共同演化,而且變得越來越加複雜。
    在國外的一份研究報告指出-『95%的spammer使用造假行為發信,90%惡意信件是使用造假行為發送,70%的垃圾信是屬於first spam(one time spam)』新型態的spammer利用繞道、跳板或偽造等等造假技術或甚至透過Zombie(僵屍網路)發動大規模的image spam,發了就跑(讓你抓不到) ,不斷變形(內容變形、行為造假等…) ,一變再變,用一般的傳統的antispam技術(ORBL、RBL、黑名單、DNS反查、DCC、內容過濾等..),是難以阻攔的。
    簡言之,Spammer特徵歸納:
    造假,發了就跑,內容不斷變形,透過hacked 的ZombieNet 發信。
    簡單一句話就是造假:來源造假、行為造假、內容造假
    就傳統坊間的antispam技術來看,不外乎幾類『查表法-RBL、ORBL 、Safelist 、黑白名單、IP blocklist』, 『溯源法-DNS正反查、sendback challenge、SPF,Domainkey』,『比對法-關鍵字、Spam signature 、fingerprint 、FuzzyOCR,』, 『貝式分析法-Rule based scoring 、SCL、SRL等…』…筆者長期跟一些MIS人員談即到有關antispam的議題,不禁感嘆目前的防垃郵解決方案真是治標不治本的作法,比如說:
    『查表法』、『溯源法』-對來源造假,發了就跑的one time spam跟本無可奈何。
    『比對法』、『內容過濾,貝式法』-對內容不斷變形造假的spam也無法抵擋。
    所謂『Image spam』不過也就是使用spammer最擅長的造假行為之一種:『內容造假』吧,spammer 發明這種image spam不外乎是針對坊間的spam filter ,90%多為內容過濾式設計的吧,也就是針對『內容過濾』這個大盲點(內容一直變,看你如何濾)而攻擊的。
  6. 目前已知可有效阻擋Image Spam的方法介紹:
    最後看倌不禁會問,那要如何有效抵擋Image Spam的攻擊呢? 所謂『百變不離其心,萬法不離其宗』-我們可以發現一個天律就是- 『垃圾郵件與正常郵件最大的分野在『行為』不在『內容』,其特徵是『造假』』
    根據垃圾信件這個最主要特徵-『造假』,一般垃圾信發信軟體為躲避過濾軟體的偵測,多會用各種造假的技術,甚至同一垃圾信造假成多個不同版本,但彼此仍存有相當程度的相似度,因此,只要設計一個過濾軟體可把垃圾信集合起來,比較其來源、送信者、內容、標題、是否大量發送、相似度,就可以發現其是否造假,再把造假的垃圾信攔截起來就很安全。
    目前有業者利用其在搜尋引擎、近似比對、multi-pattern比對,Similarity Clustering Analysis、Relational analysis 等研究專長與成果,利用搜尋引擎技術,以近似比對、相似性分析與造假分行為分析提出『Anti-Faking technology』、來偵測垃圾郵件,並發展出「個人郵際關係分析」(relational closure analysis)技術來保護使用者正常郵件免於誤殺的困擾,並將誤殺率降至最低,相較目前Bayesian Filter的內容過濾技術,實為更安全、嶄新而有效率的過濾技術。
  7. 未來antispam發展的技術方向與結論:
    不管垃圾郵件技術如何進展(從關鍵字、內文->文字扭曲->圖型->圖型扭曲),我們可以發現spammer,百變不離其心是其從『內容扭曲』上發展(也就是針對內容過濾的spam filter發展的),所以這也是目前市面上90%以上的產品以內容過濾、貝式分析(Bayesian filter)等contents filter之antispam產品最大的問題所在,若吾輩對抗spam 還是從內容上去作研究,如OCR、圖型特徵碼(image signature),邊緣偵測手法 (Edge detection)、圖片空間偵測、Fingerprint、三度空間分析等等……這無疑是被image spam導入萬劫不復生的死胡同裡,只要透過上述的變形技術-將內容『我變,我變,我變變變』,無論你的contents filter加入千百條rule都無法抵檔spammer的內容扭曲變形,怎麼攔也攔不掉啊!
    要解決spam mail常治久安的方法唯有洞悉Spammer的特徵-『造假』,並從造假分析著手,除上述介紹的『Anti-faking technology』外,尚有業者提出『Spoofing intention analysis』、『Sender spoofing predicting』等等…,以統計Internet上發信者的行為,如分析濫發郵件的單一IP,寄送大量無效信件的sender,分析大量攻擊癱瘓性行為等….以『偵假-Faking intention detection』行為去防範spam mail,才是真正預防與有效阻攔spam的技術方向。

原文出處:網管人Netadmin 7月號
作者:陳兆寧larry@green-computing.com
任職於綠色運算

Top