2012年11月1日

FB詐騙--釣魚、應用程式授權、SMTP協定所造成的杯具


這個畫面,大家應該都不陌生。
最近詐騙集團越來越猖獗。從以前的e-mail釣魚盜取使用者帳號密碼,發展到最近的臉書詐騙簡訊。只能說這個年代,想要以不正當的手段去騙人的小屁孩越來越多了。

這篇文章主要是在分析這種新型態的FB詐騙技巧。


先從網路釣魚開始說起好了。網路釣魚,主要是利用e-mail或是其他方式,假借是官方網站,騙取不知情的使用者帳號、密碼、或個人資料。




上圖是一個很典型的例子。臉書或其他網站(ex:博客來網路書店)都會使用e-mail通知使用者一些事件。上圖是臉書通知使用者「這個月有某某朋友生日」的email。

攻擊者可以偽裝成FB或其他網站,發送類似這種通知型態的mail給使用者。若使用者未經查證,點選信內連結後,就有可能連結到攻擊者的網站。接著,使用者順理成章的輸入帳號、密碼,或是其他資料。然後攻擊者就可以進入使用者的臉書,偽造使用者去發IM訊息請他朋友幫忙收簡訊。

這種釣魚式攻擊,只要注意連結是否為真的server domin就能避免大多數的杯具發生。但是,我在最近出現的「幫我朋友投個票吧」詐騙個案中,發現其實存取受害者FB聊天室,並不需要那麼大費周章的搞釣魚。

攻擊者只需要準備兩個東西:
1.  FB應用程式
2.  SMTP server

是的,就這麼簡單。攻擊者根本不需要受害者的帳號、密碼。也不需要登入受害者的FB,就能用受害者的名義發IM訊息給受害者的朋友。


那我們就來實作一次吧。
情境模擬:
受害者--Nick
受害者的朋友--Steve

在這個case,攻擊者不用得到Nick的FB密碼,就能以Nick名義發IM訊息給Steve,請Steve去攝影網站投票。

然後攻擊者的網站就不知道為何被黑掉了XDDD
畢竟Steve身邊的強者朋友那麼多,攻擊者的釣魚網站被黑掉真的不意外。
不過那又是另外一個故事了...

繼續攻擊情境模擬。
首先,攻擊者必須弄一個FB的應用程式。然後以各種手段讓Nick按下同意授權FB應用程式的存取權限。如何使用FB API不在此文章的討論範圍,總之攻擊者的目的是為了拿到Nick的e-mail。



如上圖。Nick會有一個主要的email address。攻擊者取得此email address後,就可以假扮是Nick發IM給Steve了。就這麼簡單。

接著,攻擊者會以FB API取得Nick的好友列表。同樣的,這個部分我就不教學了,請自行google。



然後,攻擊者利用FB API取得Steve的FB email address (username)。提醒一下,這個address是FB給Steve的email address,並不是Steve註冊FB的email address。


那攻擊者要怎麼偽造Nick發IM給Steve呢?答案是,用Nick的email address發信給Steve的FB email address就可以了。

也就是說,攻擊者只要用nickxxx@gmail.com (Nick的信箱)發信到steve.xxx.ooo@facebook.com (Steve的FB信箱),Steve的FB就會彈出Nick發送給Steve的IM訊息了。




可是,攻擊者並沒有nickxxx@gmail.com這個信箱的密碼,要怎麼使用這個mail發信呢?剛剛在前面有提過,攻擊者可以自己架一個SMTP server,然後用這個server發信。寄件人的信箱地址就能改成nickxxx@gmail.com了,夠簡單吧。

利用這招,攻擊者就可以用Nick的名義請Steve去攻擊者自己架設的攝影網站用簡訊投票了。至於Steve跑去攻擊者精心設計的簡訊投票的網站後,會發生什麼事呢?


先別管這個了。
我只知道,這是一個FB應用程式授權跟SMTP協定所造成的杯具。寫這篇文章,主要是要把FB的安全問題拿出來討論。還有,不要亂授權怪怪的FB應用程式。有時候,根本不是你的FB帳號被盜,或是所謂的中毒或電腦被植入木馬。而是你在不知不覺中授權了惡意FB程式。這種破壞力是跨平台的,不管你是不是用Windows都有可能會中獎。

提醒:這不是教學文,請不要手癢去try朋友的臉書。這篇文章的意義是在公開可能的FB安全性問題而已。雖然搞這個東西的門檻相對其他的惡搞低很多,但還是強烈建議不要亂玩比較好。

3 則留言:

  1. 我對於「攻擊者的網站被黑掉」比較有興趣 ˊ,_>ˋ

    回覆刪除
  2. 回覆
    1. 我也是,最近三不五時被冒用帳號,很煩
      好文推!

      刪除