banner
毅种循环

毅种循环

头顶铁锅接收宇宙能量

Telegram會話劫持

2018 年 5 月 16 日,Talos 發表了關於Telegrab的一篇文章,介紹了可以劫持 Telegram 會話的惡意軟體。原理非常簡單:如果攻擊者可以複製桌面使用者的會話令牌(session token),那麼就能劫持會話。除了本地儲存的資訊外,攻擊者不需要其他任何資訊。無論資訊是否經過加密都不重要,只要複製這個資訊,攻擊者就能使用該新資訊建立一個影子會話(shadow session)。#

實戰環境#

有的時候,迫於一些目的,當有目標 PC 機權限的時候,需要對該目標的個人通訊進行持續的監控獲取更多的有利資訊,那麼就有了 session hijacking 的需求。

目錄結構#

Telegram 使用者資料一般存放在與 telegram.exe 同目錄下的 tdata 資料夾內。
一個有效的 telegram 登入使用者的目錄結構如下:
image
關鍵幾個檔案如下:
settingss 檔案主要儲存了使用者頁面相關的配置,包括背景圖片,顏色,語言包等配置資訊。
D877F783D5D3EF8Cs 檔案主要儲存了使用者的 userId,以及與 telegram 雲端進行資料通訊時所使用到的加密密鑰。
D877F783D5D3EF8C/maps檔案中 lskSelfSerialized 欄位儲存了使用者的基本資訊,包括使用者 id,頭像,姓名,註冊電話,上次在線時間等資訊。而其他欄位主要儲存的是一些配置或者資源檔案的檔案名稱,並且與文章開頭列舉的 D877F783D5D3EF8C 資料夾下的檔案一一對應。
D877F783D5D3EF8C/configs
configs 檔案主要儲存了使用者聊天,與 telegram 雲端進行通訊時的一些基礎配置,包括 telegram 雲端的 ip 和端口,撤回訊息的時長限制等配置資訊。

TG 具體怎麼加密保存這些資訊的,能力有限也不去分析了。

session hijacking 流程#

眾所周知,telegram 預設是支援多端登入的,多端之間沒有設備交叉驗證來獲取密鑰解密,所以這種特性就造成了就變成了劫持 session 的最完美的前置條件,僅僅只需要你得 tdata 資料夾。
現在流傳在網上的 session 劫持方法都是通過複製整個 tdata 資料夾進行 session 的劫持,但對於一個使用了較長時間的 telegram 來說,tdata 的體積會變得十分龐大(MB,甚至 GB 的量級),這在實戰的過程中會有很大的局限性。
在強隱蔽的情況下,動大動作去拖取上 GB 的做法是十分不理智的。
現在我們已經有解讀大部分 tdata 檔案的能力,因此可以選取最關鍵(保存 session)的檔案,減小拖取檔案的體積,從而更方便於 session 的劫持。
能夠成功進行 session 劫持的關鍵檔案有:

  • tdata/key_datas
  • tdata/D877F783D5D3EF8Cs
  • tdata/D877F783D5D3EF8C

key_datas 是保存密鑰的,D877F783D5D3EF8Cs 保存的雲端拉取資訊的通訊密鑰,而 D877F783D5D3EF8C 則是保存了使用者的基礎資訊。
image

session hijacking start#

獲取了上述的三個檔案之後,我分別用兩個不同的虛擬機來完成此次的劫持過程。

從 192.168.59.129 這台機器導出目標的三個資源檔案,然後在 192.168.59.138 這台機器的 TG 存入這三個資源檔案,然後打開 138 的 TG。
image
複製機,第二台機。
訊息記錄成功同步拉取。
image
第一台機。

兩台機器之間的訊息記錄能夠同步,並且新發訊息也能收到,在手機上查看當前登入設備也沒有多餘可疑設備,說明影子帳戶成功,session 劫持成功。
image

passcode 情況下的 劫持#

注:
如果開啟了本地密碼認證成功,此會話劫持之後依然要輸入密碼。
且此本地密鑰是不和雲端同步的,所以只能想其他辦法獲得此密鑰。
image

如下圖所示:
image

遇到這種情況只有另想辦法,比如在 PC 機器上做鍵盤記錄。

參考#

https://www.anquanke.com/post/id/167866 針對 WhatsApp、Telegram 及 Signal 應用的側信道攻擊技術研究
https://www.dongzt.cn/archives/514.html Windows 下 Telegram Desktop 的身份憑證竊取
http://www.ctfiot.com/23645.html Telegram session 劫持探索

載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。