2007/1/30

讀書心得:Symantec Spam Report ( Jan 2007)

Symantec 推出了一份 2007年關於Spam的報告,摘錄重點如下:

  1. Image Spam 達到 spam 數量的35%。
  2. Spam 佔了所有E-mail信件的80%。
  3. Captcha technology (圖片辨識碼) 應用到 image spam,藉以迴避 OCR technology的偵測。
  4. 以合法掩護非法,利用正常E-mail夾帶Spam訊息。
Spam 產出大國仍是North america、其次是europe,接下來才是asia喔!

New Spam Techniques:Captcha Image Spam
用來阻擋blogspam的技術 Captcha,果然如小弟先前在 blog 所預料的,被用來當成 spam 的技術。

Newsletter and Advertisement "Injection"
在 internet security area常見到的 SQL Injection也出現了,被拿來將Spam content插入 Newsletter / Advertisement 之中。

文件下載:[PDF] The State of Spam , A Monthly Report – January 2007

2007/1/16

使用心得:BigString 世界上最酷的郵件服務(支援自我刪除)

HEMiDEMi 看到一篇有趣的文章:「BigString 世界上最酷的郵件服務(支援自我刪除)」。

BigString是一家提供 E-mail 服務的公司,除了基本郵件服務的功能之外。還支援了許多在「Mission Impossible」電影情節才看得到的功能,例如:郵件自我摧毀、防止列印、避免轉寄、郵件追蹤…等等許多的功能。如下圖所列的支援項目:


BigString_0

申請方法很簡單,直接到官方網址註冊一組新的帳號即可。待註冊完了,當然就是先來相關的測試囉。

首先登入 BigString 的Webmail介面,點選左上方的「Compose」,實際寫一封信件來測試一下。

  1. 測試 BigString 是否支援中文:在「Subject」與「mail body」的部份,各自填入了中文字與英文字。
  2. 測試 BigString 是否會處理附檔或是圖片的內容。因此插入了一張圖片與一份純文字檔。

BigString_1

在寄信畫面的右手邊有「Message Type」可供選擇。除了正常信件之外,還能追蹤此封信件、取消信件,以及提供郵件開啟30秒、1分鐘、2分鐘後,進行自我摧毀的任務。此次測試我選擇「Quick Destruct: 2 Minutes」來進行測試。

確認一切無誤後,將信件直接寄出囉!

BigString_0_0

此次測試以 Seednet Webmail 為收件者的信箱,支援 Big5/GB18030/UTF-8 編碼。並且提供了網站會員免費的 E-mail 帳號,提供500MB的空間與免費 anti-spam 的服務。

如下圖,由 BigString 寄出的信件,在主旨部份出現亂碼,可見其不支援中文字。

BigString_2

接著點選該封信件,觀看其內容。
除不支援中文之外,BigString也處理過郵件的內容。圖片的品質明顯比原圖差上許多。
為什麼會造成此種情況呢?在本文的最後會做個說明。

BigString_3


測試郵件原圖如下(取自 Yahoo 購物中心 白鳥花子)
st-444514-14

嘿嘿,記得之前在 BigString 所選擇的「Message Type」是「Quick Destruct: 2 Minutes」。因此等了2分鐘後,郵件內容(含圖片)被AAAAAAAA字元給遮避了。這應該就是 BigString 所提供的 Destruct 的功能吧,自我摧毀的確沒令我有驚訝的感覺。

BigString_4


由於 Seednet Webmail 可以直接觀看郵件原始檔。因此我節錄了該封郵件 source code 的部份片段。

BigString_6

其實也蠻有意思的,整封郵件的內容都是以圖片的方法所呈現。整個 Quick Destruct的手法,推測如下:
  1. 開啟郵件。郵件的內容以圖片呈現,因此連結到 http://recallable.bigstring.com 的伺服器。
  2. recallable server 根據寄信人所設定的 message type,觸發相關的規則。
  3. 以本例而言,當使用者開啟郵件時間超過2分鐘時。recallable server自動更換圖片,以達到遮避郵件內容的目的。
如下圖所示,以 BigString 寄送的郵件內容是一張張的圖片。也因此可以利用圖片替換的方法來達到郵件自我摧毀的動作。



小弟所觀察發現 BigString 的運作流程如上,若是有錯誤的話,歡迎各位指正。

2007/1/15

關於BT下載錯誤區塊數明顯偏高的問題

閒逛 PCZONE 論壇時,看到有網友反應 BT 下載的錯誤區塊數比往常明顯偏高的問題。由於工作內容部份與此相關,因此經由主管的提示,利用「rubbish data」為關鍵字向 google 大神尋求問題的解答。

其中有二篇分析很仔細的文章:「BT中的垃圾數據(rubbish data)和幕後故事」、「騎驢看唱本,隔牆有耳」。

騎驢看唱本,隔牆有耳」對於「間諜伺服器」的說明節錄如下:

間諜服務器是RIAA(Recording Industry Association of America,美國唱片工業協會)和MPAA(Motion Picture Association of America,美國電影工業協會)共同成立名為 MediaSentry 的組織,專門打擊網路盜版。MediaSentry建立了一系列fake server,看似性能優良的ED2K服務器,有幾十M文件幾十M用戶,但實際上是假的。你一連上它就開始偵測你共享了什麼文件,而且不幸的是,在 ED2K裡,你的IP是暴露的,所以MediaSentry能找到你,告你。
由於筆者並未具有法律背景,但以台灣目前的法令而言,違法的下載行為,極有可能判判。
依該文章的作者所論,將 fake server 設為黑名單,同時將可信賴主機設定為白名單。


而「BT中的垃圾數據(rubbish data)和幕後故事」一文則著墨在 BT 下載為主。節錄原作者的一段話:
當我兩週前開始下載HBO的熱門劇集《羅馬》的時候,我發現了我下載了大約5倍於正常數據的垃圾數據。
看來熱門的電影檔案,比較容易發生被 fake peer 塞垃圾數據,也就是在BT Client見到的「hash value error驗證碼錯誤,已丟棄的封包」。引述 windix 所述:
垃圾數據就是你的BT客戶端所丟棄的數據。
當收取到的數據未能通過hash檢查時,就會被作為垃圾數據所丟棄。或者當你的客戶端向某一用戶請求數據,但在該數據塊未抵達前,客戶端已經從另一個用戶處取得了該數據塊,那麼之前的數據塊就將成為垃圾數據。
解決的方法:1.) 選擇可信賴的發佈站(tracker) 2.) 過濾發送過量垃圾數據的peer,目前已有部份BT client支援。 3.) 使用 IPFfiter過濾黑名單 IP Address。

看完了相關的文章,是不是覺得這類的反制手法也蠻新奇的呢?以其人之道、還治其人之身。
再者,專門發送垃圾數據也能成為一門行業,天下事真是無奇不有。行行也能出狀元。

倘若沒有相關法律的強制規定,再好的反制手法,也會有被破解的一天。資訊科技的技術永遠是你追我跑,此消彼長,從不會有消失的一天。

2007/1/14

具有自動化註冊、破解圖形驗證碼 ( CAPTCHA )、啟用帳號後多執行緒的垃圾訊息張貼工具:「Scary Blogspam Automation Tools」

Blogger反制令人困擾的BlogSpam,常見有下列幾種方法:

  1. 需註冊帳號,方可允許登入發佈個人意見。
  2. 利用圖形辨識碼的方法。
最近有一篇文章「Scary Blogsam Automation Tools」。如「潛艦」所提到的:「具有自動化註冊、破解圖形驗證碼 ( CAPTCHA )、啟用帳號後多執行緒的垃圾訊息張貼工具。

觀看demo video,請點我。(需安裝Marcomedia Flash Player)

筆者有一個想法:

因為anti-spam最近用來對抗圖像形垃圾郵件,是使用光學字元辨認(OCR)的方法。假使 BlogSpammer,利用相同的技術,在Blog頁面找尋圖形辨識碼的標籤,並自動分析其圖像內所隱藏的內容。並藉此分析出來的結果,用來發佈BlogSpam。如此一來,圖形驗證碼的技術…終有被淘汰的一天。

2007/1/13

Spamassassin plugin --> FuzzyOCR 偵測圖像式垃圾郵件

垃圾郵件無所不在,由早期文字形態的信件,進化到圖文並貌的HTML格式。而由於anti-spam技術的進步,幾乎可達到九成的攔阻率。但「道高一尺、魔高一丈」,spammer開始大量運用圖片形態的方式來寄送郵件。圖像式垃圾郵件在圖片內容加入大量的雜訊資料(noisy data),藉以迴避掃描引擎的偵測。

以目前anti-spam市場所推出的產品,若是缺少掃描圖像式垃圾郵件的功能,相信也無法在市場上生存,例如:IronPortSophos PureMessage等廠商皆推出具備相,關功能的產品。

中正大學 吳昇教授的研究團隊推出了「無痛式垃圾郵件過濾系統: Nopam」,其設計理念是「垃圾郵件與正常郵件最大的分野在於行為而非內容。」。等於是利用行為模式進行垃圾郵件的偵測,不知是否能有效判別圖像式垃圾郵件呢?

當然,開放源碼的SpamAssassin也不能在此一功能上缺席,也出現了不少相對應的solution,例如:OcrPlugin

而此篇文章所要介紹的 FuzzyOCR,是一套修改自OcrPlugin的Spamassassin plugin。同樣是利用光學字元辨認(OCR)的方式,來識別圖像式郵件所包含的「文字訊息」,並利用Fuzzy word matching演算法判斷辨識出來的文字。

主要具備了下列的功能:

  • Optical Character Recognition using different engines and settings
  • Fuzzy word matching algorithm applied to OCR results
  • Image hashing system to learn unique properties of known spam images
  • Dimension, size and integrity checking of images
  • Content-Type verification for the containing email
Matching and learning techniques
  1. 可彈性支援不同的OCR interface,並利用fuzzy word matching演算法來處理辨識的結果。
  2. 支援DB,可將處理過的圖片,以feature vectors的形態儲存在資料庫。因此相同或是類似的圖片,便可以利用儲存在DB的特徵向量來處理。
  3. 能檢測不同維度、size與整合性的測試。
  4. 郵件內容檢測。
Resource saving techniques

  1. 僅掃描郵件,而非辨認該封信件是否為垃圾信件。信件的分類仍交由spamassassin所判別的分數高低來決定。
  2. 對於已達到spam分數門檻的郵件,FuzzyOCR在處理該封郵件時會忽略該封信件而不進行掃描,進而減輕系統負載。(3.5版之後提供)
  3. 藉由比對儲存於DB的feature vectors(dimensions and file size)。若比對成功,則忽略該封信件,而不再進行OCR辨識與處理。
Safety measures
  1. 可設定掃描郵件timeout的時間,藉以避免Denial of Service的攻擊。
  2. 使用word sets取代simple lists,避免FuzzyOCR錯判的可能。


列出幾張FuzzyOCR網站的範例圖片供各位參考:

An animated gif is scanned for the first time
normal_result

The same gif is scanned a second time
known_hash

Various tricks of Image Spammers
broken

FuzzyOcr Debug output when running SpamAssassin with -D (or enabling debug mode in the config)
debug

BitTornado 封鎖所有 BitComet User Connection 的心得

最近在測試 P2P cache 的設備,其中使用了二套 bt client:BitComet比特精靈(BitSpirit)

由於之前都是使用BitComet,所以想測試一下其他套bt client software的效能如何!

但據同事測試的結果,上述二套bt client捉取檔案的速度,的確如「BitTornado Bans All BitComet Users」所提到的,BitComet比較快。

BitTornado Bans All BitComet Users」一文提到,BitComet使用了欺騙系統的方法,來盜取用放寶貴的網路頻寬。並且還有利用super seeding的原理來增快BitComet user的下載速度。但相對的,卻使得其他非屬BitComet的User降低了下載的速度。

因此,Shad0w決定要ban掉所有使用BitComet Client連線到 BitTornado Client的connection。
同時也呼籲BitComet developer能拿到那些惡意的code。

P2P下載,本來就該遵循一套規則,互謀其利的分享方式。現在BitComet破壞規則,想利用一些小手段,讓使用BitComet的使用者能獲得較快的下載速度。但卻拖慢了其他BT Client的下載速度,這不僅是侵犯了non-BitComet的使用權益,更是破壞了BT下載的體制真是令人髮指。

但是在台灣,BitComet仍擁有一群為數不少的擁護者。筆者僅能建議各位能選擇一個適合自己的BT Client。

2007/1/8

搬家公告:由Xuite搬家到BlogSpot

測試BlogSpot一段時間了,由之前的beta版本,一直到正式版推出。

BlogSpot提供使用者較大的客製化空間,也內建了許多基本的功能,其中筆者認為最有用的便是HTML/JavaScript的模塊。

之前使用的 BSP(Blog Service Provider) 是 Xuite ,該平台所提供的功能還算完整,但由於 Xuite 日誌沒有提供 blog 文章備份的機制。等於是間接綁架使用者所發佈的文章。

加上,前陣子也發生幾件 BSP 的大事,像是「Yam樂多天空部落」、「有名大站」,造成了許多 blogger 出走的事件。在在都顯示了,一個穩定的blog分享平台的重要性。

因此將 BSP 轉移到 Google BlogSpot

BlogSpot平台,有搜尋引擎龍頭--> Google 的加持,相信能提供十分穩定的服務。

期間也servey了 Wordpress 的免費空間,但由於提供客製化的程度不高,因此測試了 BlogSpot 一段時間,就決定將新家設在 BlogSpot

最重要的是再也不用擔心無法備份blog資料的問題了。

也趁著此次Blog搬家的機會,把之前貼在 Xuite 上,一些對我比較有意義的文章給轉貼到BlogSpot

這些文章主要是筆者就讀研究所時,所做的相關研究的一些心得。像是 LIBSVM、Intrusion Detection、model selection、parameter selection…等。伴隨筆者渡過許多既充實又痛苦的日子。