QQ被盜引發的思考-DNS域名欺騙

文章來自【位元組脈搏社區】 作者-Jadore

0x01事件起因

某日下午13:16分,我正躺在床上休息,昨天生病,今天精神才好了點,然而依舊是無精打采,睡也睡不著,便打開了兩天沒上的QQ,發現寂靜了許久的同鄉會QQ群里有同學發了一個群成員聚會通知的鏈接,如下:

開始我以為是同鄉會舉辦的活動,便沒多大在意,但是7分鐘之後:

這立刻引起了我的警覺,於是便開始深入挖掘這背後的原因。

0x02調查與分析

首先說說DNS域名欺騙,即:DNS域名欺騙通俗地說就是攻擊者將某網站的域名映射到攻擊者自己的IP上,受害者看到的只是域名而看不到IP地址,從而攻擊者可以構造釣魚頁面誘騙受害者登錄,此時受害者無法判斷釣魚頁面的真實性便進行登錄用戶名密碼等敏感操作,導致資訊泄露,從而為攻擊者下一步攻擊提供了基礎。

這次案例其實不算域名欺騙,只是我最後將其拓展延伸出來,因為我在將其解析出來後看到的是IP地址,也就是說,攻擊者僅僅是修改了頁面內容就讓受害者上鉤,可見利用手法之簡單,這裡其實也利用了在手機QQ上打開網頁時沒有顯示網址的缺點,如下圖:

我打開了那個寫著騰訊文檔的網站,發現確實是騰訊的官方網址,但是裡面的內容確是個二維碼,如圖:

然後我對其進行解析,發現其指向一個IP地址:

接著我打開這個網址,發現:

原來如此,此時事情已經有眉目了,於是我去挖掘這個IP地址的資訊,看看能不能挖掘到有用的東西,發現其架設在騰訊雲上,如圖:

假:

真:

假:

真:

1.左上角的網址圖標,假的沒有,真的有

2.登錄狀態,假的沒有,真的有

3.檢測安全的資訊不同,假的直接顯示在此網頁上輸入的登錄資訊可能會泄露,真的是部分內容不安全

4.假的在點擊忘了密碼時不會做任何操作,而真的在點擊後會觸發事件跳轉到找回密碼的網址

可見攻擊者還是做了一定的美化的,很用心,但難免會有紕漏,接著我向假網站中隨便輸入賬戶密碼,如圖:

點擊登錄之後頁面閃了一下,最後跳轉到真正的網站:

該網站用nginx容器作為伺服器框架,暗地裡將受害者的用戶名密碼提交到2018.php

以下程式碼即為驗證,可以看到用戶名密碼被以明文的形式傳入2018.php

POST /2018.php HTTP/1.1

Host: 1*******9

User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:69.0) Gecko/20100101 Firefox/69.0

Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8

Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2

Accept-Encoding: gzip, deflate

Content-Type: application/x-www-form-urlencoded

Content-Length: 35

Connection: close

Referer: http://1********9/

Cookie: PHPSESSID=0000000000000000000000

Upgrade-Insecure-Requests: 1

user=1******&pass=123456789&submit=

基於此,我對該網站進行舉報

0x03實驗復現攻擊流程

接著,我自己做了個小實驗復現上述攻擊流程並加以完善,同時將域名劫持為m.mail.qq.com並搭配ARP毒化進行中間人攻擊

所使用的工具:

kali Linux,windowxp,ettercap,setoolkit

攻擊者IP:[10.10.10.128]

受害者IP:[10.10.10.129]

進行主機掃描,發現受害者IP:[10.10.10.129]

指定攻擊目標開始ARP欺騙

回到受害者主機,發現已經欺騙成功

開始DNS域名欺騙,未欺騙前,先檢測是否可達到真實網址,如下顯示網址可達,注意這裡的IP地址為[59.37.96.184],欺騙後會發生變化

進行域名欺騙

劫持成功,m.mail.qq.com已經被劫持從而映射到攻擊者的IP,此時ping的該域名,IP地址卻是[10.10.10.128]

開始使用setoolkit進行社會工程學攻擊,偽造網頁,利用各種方法誘騙受害者進行登錄,盡你所能,上面的案例就是使用二維碼的方式

依次選擇

1) Social-Engineering Attacks//社會工程學攻擊

2) Website Attack Vectors//Web站點攻擊載荷

3) Credential Harvester Attack Method//憑證收割機攻擊方式

4) Site Cloner//站點克隆

接著輸入IP地址和想要克隆的網址即可

此時受害者打開該網站進行登錄,由於域名m.mail.qq.com已經被劫持到10.10.10.128,因此該頁面為偽造的頁面。

攻擊者這邊已經嗅探到受害者登錄

由於時間有限,這裡我沒有構造截取密碼的程式碼,其實只是一個簡單的php提交表單,將受害者輸入的賬戶密碼截取下來保存至指定位置,類似部分表單程式碼如下:

//html程式碼

<html> <body> <form method="post" action="2018.php" target="_blank"> <input type="text" placeholder="請輸入用戶名" name="username"/> <br /> <input type="password" placeholder="請輸入登錄密碼" name="password"/> <br /> <input type="submit" name="submit" value="登錄"/> <input type="reset" name="reset" value="撤銷"/> </form> </body> </html>

//php程式碼 <?php $username=$_REQUEST[『username』];//接收帳號 $password=$_REQUEST[『password』];//接收密碼

……

很明顯的,受害者的憑證已經被收集,如果登錄沒有進行限制則QQ可被任意登錄並執行各種惡意操作:

防禦方法:

1.非安全環境下勿點擊來歷不明的鏈接

2.QQ賬戶,以及涉及到資金財產的賬戶應該加手機驗證碼驗證登錄

3.學習網路安全知識,多看網路安全書籍,網路時代,資訊泄露泛濫成災,這其中「人」是主要因素,因此,提升安全意識迫在眉睫。

4.伺服器提供方應當仔細審核上線的網站是否存在欺詐之類的違法行為並及時予以封停。

0x04最終結果

第二天我就收到了Tencent方面的郵件,告知已經對其進行攔截並同步到合作廠商