簡要分析Hacking Team 遠程控制系統

綠盟科技 · 2015/07/09 22:37html

0x00 前言


7月5日晚,一家意大利遠程控制軟件廠商HackingTeam的內部數據被泄露出來,其影響力不亞於斯洛登事件及維基解密事件,綠盟科技威脅響應中心隨即啓動應急響應工做。linux

6日,威脅響應中心啓動應急分析工做,綠盟TAC產品攔截到Flash 0Day漏洞攻擊;android

6日夜,相關信息及初步建議,第一時間告知客戶關注;web

7日,在官網網站發佈緊急通告,建議廣大用戶關注事件進展。分析工做進展進展中;chrome

9日,發佈Hacking Team遠程控制系統簡要分析報告;數據庫

這是一份快速報告,以便簡要分析其中的核心內容,Hacking Team RCS(遠程控制系統)。macos

0x01 泄露:Hacking Team


7月5日晚,一家意大利軟件廠商被攻擊,其掌握的400GB漏洞(包括0day)數據泄露出來,由此可能引起的動盪,引發了業界一片譁然。數據包中主要包含幾個大的部分:windows

  • 遠程控制軟件源碼,也是其核心,暫且稱之爲 Hacking Team RCS
  • 反查殺分析工具及相關討論文檔
  • 0Day、漏洞及相關入侵工具
  • 入侵項目相關信息,包括帳戶密碼、數據及音像資料
  • 辦公文檔、郵件及圖片
  • 其餘

0x02 Hacking Team


Hacking Team在乎大利米蘭註冊了一家軟件公司,主要向各國政府及法律機構銷售入侵及監視功能的軟件。其遠程控制系統能夠監測互聯網用戶的通信、解密用戶的加密文件及電子郵件,記錄Skype及其餘VoIP通訊,也能夠遠程激活用戶的麥克風及攝像頭。其總部在乎大利,僱員40多人,並在安納波利斯和新加坡擁有分支機構,其產品在幾十個國家使用。api

0x03 分析:遠程控制系統


你們知道IT運維管理中經常用到遠程控制軟件,好比Dameware,但Hacking Team RCS相比市面上常見的遠程控制軟件而言,主要區別以下:瀏覽器

  • 系統化管理該軟件從入侵到目標信息收集分析,有完整的體系架構,這個架構中有不一樣的功能模塊,彼此之間相互配合,完成入侵、安裝、信息蒐集、監控、集中管理等功能。
  • 收集信息該軟件在後臺收集並上傳目標用戶的信息,包括各種數據、圖片、影音等
  • 入侵工具配合該軟件有各類漏洞、利用手段及自動化工具,以便在目標上強制安裝Agent
  • 適應能力強桌面OS從Windows到MacOs X,手機OS基本覆蓋了市場上流行的系統
  • 反追蹤該軟件本地及傳播過程數據均加密,讓追蹤者難以找到攻擊者
  • 反卸載反查殺該軟件Agent不提供卸載方式,並採用各類手段躲避殺毒軟件

0x04 Hacking Team RCS系統架構


RCS (Remote Control System)系統是一套用於政府攔截的黑客套件,實現了全平臺的監控系統。

RCS主要組件

enter image description here

每一塊組件具體的功能以下,

  • Front-End:接收運行在被截取設備上的代理,做爲Back-End的隔離屏障,保證RCS安裝的安全性。系統要求是Windows 2003 or 2008。
  • Back-end: 是整個設施的核心,它存儲全部從代理收集到的數據同時處理從管理控制檯傳來的請求。全部的RCS數據存儲裏面一個標準的關係型數據庫,所以該服務還提供額外的功能,好比根據客戶的要求實現自動備份和定製數據挖掘。系統要求是Windows 2003 or 2008。
  • Management console:RCS的控制檯是用於訪問和控制全部的遠程控制系統(RCS)功能的應用程序。Operators能夠授予系統不一樣等級的訪問權限:Admin能夠建立用戶和組,授予權限,管理調查,審覈系統;Technician是建立目標感染、配置/從新配置代理行爲的載體;Viewer瀏覽來自target的信息,對其進行分類或者輸出。系統要求是Windows, MacOS X or Linux。
  • Target:RCS Agent是監視目標計算機或智能手機上的軟件組件。一旦安裝成功,Agent將會經過設備的網絡將收集到的數據傳送到Front-End,這些數據有不少種類,好比屏幕截圖、電話呼叫等。

RCS Agent有兩種安裝方式:本地以及遠程。本地安裝主要是經過桌面系統的CD和USB存儲設備來引導,或者是智能手機的usb。遠程安裝則經過Melting tool、Exploit portal、Network Injector以及Remote Mobile Installation。並且每一個RCS Agent均可以經過遠程命令卸載。

RCS Agents的系統要求:

Windows XP, Vista, 7 (32/64 bit)

MacOs X 10.6 Snow Leopard, 10.7 Lion

Windows Mobile 6, 6.5

iOS 3, 4 (iPhone/iPad)

Symbian S60 3rd and 5th edition
複製代碼

BlackBerry 4.5 or newer Anonymizers目的是隱藏Front End真實IP地址,因爲Anonymizers之間的鏈接數據被徹底加密並且沒有解密數據,因此能夠被放置在任何非信任的網絡和國家。

Collection Node 信息蒐集功能是經過Collection Node來完成的客戶端上傳信息的蒐集,而且容許客戶端從服務器上下載新的配置和插件,這個節點是經過提供ASP服務完成交互的。這個節點是整個控制系統惟一能從外部進行訪問的節點,所以對它的保護也很是關鍵,好比使用防火牆等措施進行必定的隔離,也須要使用到Anonymizer 鏈來對ASP真實的IP地址進行隱藏。

RSSM(Mobile Collection Node)做爲Collection Node的一個補充,經過藍牙等手段完成Collection Node的功能,而且該節點也會和Collection Node完成同步的過程。

Log Repository Log Repository(RCSDB)是RCS系統的存儲部件,存儲信息包括:

訪問過的網站
文件操做
鍵盤記錄
文檔和圖片信息
VoIP電話監控(例如skype)
程序執行信息
音頻監視
Web攝像頭監視
截屏
即時通訊(Skype、WindowsLiveMessenge、Wechat等)
剪貼板的信息
密碼信息(email帳戶、WindowsLive帳戶等)
發送和接收郵件
電話錄音
GPS位置
聯繫人信息
複製代碼

從上面的分析能夠看出來,這一次泄露的Hacking Team的各類程序中,比較完整的涵蓋了實施攻擊各個階段須要用到的一些控制和利用工具,針對其中的一些較爲經典的代碼,咱們通過研究,給出這些工具包的功能,對使用範圍作了大體的描述。在這一套RCS裏,針對電話、pc、網絡均進行了控制和信息蒐集。

0x05 Hacking Team RCS基本功能


電話監控

針對電話監控,開發了針對不一樣平臺的agent程序,下面是一份列表

  • core-winphone:針對 Windows Phone 移動平臺的遠程控制木馬客戶端,用於實時收集目標系統狀態信息,GPS,通信錄,通話短信記錄,日曆日程安排等隱私信息,還能夠執行錄音,截取手機屏幕等定時任務,具備遠程打開手機攝像頭,開啓話筒等功能。
  • core-winmobile:針對已通過時的 Windows Mobile 移動平臺的遠程控制木馬客戶端。也是用於收集目標隱私信息,且具備遠程控制收集錄音,截屏等功能。
  • core-symbian:針對 Symbian 移動平臺的遠控木馬代理,用於收集GPS位置,通信記錄,短消息等敏感記錄,並可遠程實時監聽話筒等功能。
  • core-android-audiocapture:安卓平臺下的語音監聽工具,經過注入AudioFlinger相關進程達到記錄麥克和聽筒音頻的功能。整個工具包含注入工具hijack、被注入的庫libt.so,注入後會記錄音頻信息到dump文件,黑客經過decoder.py腳本能夠將dump文件還原成wav文件。能夠在安卓3.x到4.x下運行。
  • core-android:一個安卓下的RCS應用,應該是功能比較完善的工具,能夠收集社交軟件的信息,應用中還打包了許多利用工具
  • core-blackberry:是黑莓下的RCS軟件。

桌面系統監控

  • core-macos:其中包含一個用於Max OS X 平臺可執行文件 macho 文件的加殼加密混淆程序。同時還包含針對 Mac OS X 平臺的遠程控制木馬客戶端程序,用於收集目標系統網絡鏈接,文件系統等信息,還能夠竊取iMessage,Skype,剪貼板等應用的敏感信息,同時還能夠鍵盤記錄,截屏,打開攝像頭等。
  • core-win32:windows平臺木馬,主要功能包括:1.竊取主流瀏覽器如Chrome、FireFox和IE 的Cookies等信息2.對用戶GMail、Outlook、Facebook、Twitter、MSN、Skype、ICQ、Yahoo、Google Talk、Mozilla Thunderbird等使用進行監控,收集相關信息收集如:賬號信息、相關聯繫人信息等。監控的MSN版本從6.0到2011,Yahoo Messager版本從7.x到10.x,ICQ Messenger v7.x 3.對麥克風和攝像頭進行監控
  • core-win64:和core-win32對應,一樣是windows平臺木馬,但項目只是包含了64位系統特有的api hook框架.
  • soldier-win:windows平臺木馬,功能包括:獲取目標計算機基本信息竊取瀏覽器chrome、firefox、IE密碼和cookies竊取facebook、gmail、twitter、Yahoo相關信息屏幕監控、攝像頭監控等
  • scout-win:windows平臺木馬,功能相對簡單:screenshot、獲取目標計算機的基本信息如:CPU,內存,用戶名等信息。具備少許簡單的反檢測機制,如AntiVM、動態獲取API地址、黑名單等。子項目VMProtectDumper是針對某一版本VMProtect的脫殼機

輔助入侵功能

爲了在target上安裝受控端軟件並獲取主機控制權,還有提供了一些必要的功能

  • driver-macos:包含一個 Mac OS X 平臺的內核級 Rootkit ,具備用戶進程隱藏,文件系統隱藏等功能,還能夠 hook 系統調用, mach_trap_table ,並實時追蹤用戶空間後門的運行狀態。
  • core-packer:用於Windows 平臺 PE 可執行文件的加殼,加密混淆程序。
  • core-android-market:應該是安卓下的相似推送新聞的應用,包括一個名爲org.benews.BeNews的安卓端的apk應用和本地運行的server,通信數據爲bson格式。apk應用具備自啓動功能,會啓動推送服務
  • core-android-native:卓相關利用工具的集合,包含了全部安卓4.1版本之前的利用工具,包括了put_user_exploit、towelroot中的利用工具、selinux的利用工具等
  • vector-ipa:ipa是 Injection Proxy Appliance 的縮寫, Injection Proxy Appliance是RCS系統一部分。

RCS Injection Proxy Appliance (RCS IPA)是用於攻擊的安全設備,使用中間人攻擊技術和streamline injection機制,它能夠在不一樣的網絡狀況下透明地進行操做,不管是在局域網仍是內部交換機上。

IPA 可從監控的網絡流量中檢測HTTP鏈接,進行中間人攻擊,主要有三種攻擊方式:注入EXE, 注入html和替換攻擊。當監控的HTTP鏈接命中預先設置的規則時,IPA 將執行注入攻擊。IPA 能夠設置須要注入的用戶(如IP地址),資源(如可執行文件)等規則。

  • driver-win32:core-win32對應的內核驅動模塊,提供功能諸如:權限提高、操做敏感註冊表、恢復SSDT等。

  • driver-win64:相對32位版本的驅動,只是註釋掉了不少功能代碼。

  • vector-silent:木馬輔助程序:Dropper和depacker

  • vector-applet:應該是用於掛馬的Java Applet。使用的有多是未知漏洞,漏洞在twostage和weaponized文件夾下的readme中油描述,」經過XMLDecoder獲取一個Bridge實例的引用,從而致使一個類混淆」。

  • vector-edk:Intel UEFI(統一可擴展固件接口)BIOS後門植入工具

  • vector-offline2:離線安裝RCS工具包,可在物理接觸時植入RCS後門。 可將離線安裝工具刻錄在CD-DVD/USB等可引導介質上,當可物理訪問到計算機系統時,可利用該介質啓動系統,將後門直接植入計算機中的操做系統中。目前支持對Linux/OS X/Windows系統的離線安裝。提供了友好的圖形界面,可自動識別計算機上存在的不一樣操做系統,並可識別每一個操做系統上存在的用戶,而後可針對不一樣用戶分別植入不一樣類型的後門。

  • vector-offline:Windows版的離線安裝工具源碼。

  • vector-recover:一個Windows版的下載器。下載器自己會修改圖標和版本信息,將本身假裝成東芝的藍牙助手工具:btassist.exe。下載器自己會循環訪問兩個地址的固定URL:GET /gh/3735928545/deadbee2判斷下載數據的前32字節是不是」3j9WmmDgBqyU270FTid3719g64bP4s52″,若是是的話會從第33字節開始保存後續數據到臨時目錄下的msupd64.exe文件中,而後執行該文件。
  • vector-rmi:一個發送WAP PUSH信息的命令行工具,能夠將連接以短信形式發送到支持WAP PUSH功能的手機上。可自定義各類參數。

0x06 Hacking Team RCS入侵手段


Hacking Team RCS軟件入侵目標,主要經過以下三種方式:

感染移動介質

與不少木馬、病毒及流氓軟件的傳播方式同樣,該軟件首先仍是採起這種低成本的方式進行,感染一些可以接觸目標的移動媒體,好比CD-ROM、USB等,即使是OS 或者BIOS設置了密碼也同樣能夠感染,從而獲取一些環境數據,好比電腦是否能夠上網等,爲後續的動做提供參考依據。

代理攻擊

採用軟件或硬件的系統,可以在網絡會話過程當中修改和注入數據,在某些狀況下,能夠注入到系統並難以被檢測到。同時,也可以感染Windows平臺上的可執行文件,若是目標電腦從網站上下載並執行這些可執行文件時,Agent將在後臺自動安裝,用戶不會知曉。

APT

如上兩種方式都沒法奏效的時候,就會採用多種形式組合入侵,採用相關的漏洞、入侵工具及更多利用手段,詳細的分析及防禦方案,在後續的報告中呈現。

0x07 Hacking Team RCS信息上傳


用於蒐集客戶端蒐集信息的上傳通道,是一個強加密和須要認證的通訊過程,同時整個上傳通道的設計是基於複雜網絡環境的,考慮到防火牆、帶有域認證功能的代理等等,會經過模仿一個正經常使用戶瀏覽web的過程來進行這一些操做。

信息蒐集功能是經過Collection Node來完成的客戶端上傳信息的蒐集,而且容許客戶端從服務器上下載新的配置和插件,這個節點是經過提供ASP服務完成交互的。這個節點是整個控制系統惟一能從外部進行訪問的節點,所以對它的保護也很是關鍵,好比使用防火牆等措施進行必定的隔離,也須要使用到Anonymizer 鏈來對ASP真實的IP地址進行隱藏。

RSSM(Mobile Collection Node)做爲Collection Node的一個補充,經過藍牙等手段完成Collection Node的功能,而且該節點也會和Collection Node完成同步的過程。

相關文章
相關標籤/搜索