本篇文章給大家分享的是有關(guān)高度復(fù)雜的間諜軟件Mandrake怎么用,小編覺得挺實用的,因此分享給大家學(xué)習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
在濂溪等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都網(wǎng)站設(shè)計、成都做網(wǎng)站 網(wǎng)站設(shè)計制作按需求定制設(shè)計,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),品牌網(wǎng)站制作,成都全網(wǎng)營銷,外貿(mào)網(wǎng)站建設(shè),濂溪網(wǎng)站建設(shè)費用合理。
Mandrake間諜軟件在野外已潛伏四年,四年間已有數(shù)十萬用戶設(shè)備被感染。大多數(shù)感染Mandrake受害者分布在澳大利亞、歐洲、美國和加拿大。該間諜軟件首先通過偽裝成正常的應(yīng)用潛伏在Googleplay中,除了偽裝成合法的應(yīng)用程序外,這些應(yīng)用程序還使用其它的技術(shù)來避免GooglePlay保護:它們大大延遲了惡意活動,并分階段工作。藏身于Googleplay中的惡意軟件只是整個惡意攻擊過程的第一階段,之后他會誘導(dǎo)用戶下載安裝第二階段的有效負荷以及下載更新第三階段的核心組件。
圖1-1 在googleplay中偽裝的合法應(yīng)用
整個惡意程序執(zhí)行流程分為三個階段:用戶從google商店下載偽裝成正常應(yīng)用的惡意軟件。惡意軟件被安裝執(zhí)行后在后臺下載有效負荷(偽裝成androidsystem)誘導(dǎo)用戶安裝使用,最后在有效負荷中下載更新核心組件。
圖1-2 惡意程序加載流程
Mandrake間諜軟件高度復(fù)雜:該間諜軟件首次運行便將自身隱藏于后臺,所有的界面都是通過動態(tài)調(diào)用啟動。將所有有效字符串加密并在調(diào)用時動態(tài)在native層解密。將主要函數(shù)以及遠控命令隱藏于so文件中動態(tài)加載,通過java層與native層函數(shù)交叉調(diào)用執(zhí)行惡意行為避免被檢測引擎檢測。Mandrake使攻擊者可以訪問設(shè)備偏好設(shè)置,地址簿,消息,屏幕記錄,設(shè)備使用情況和不活動時間等數(shù)據(jù),該惡意軟件可以完全控制設(shè)備:它可以降低電話的音量并阻止來電,屏蔽用戶接收的短信息、竊取用戶短信、聯(lián)系人、賬戶、登錄憑據(jù)等隱私數(shù)據(jù)。通過加載網(wǎng)頁并注入特制的JavaScript代碼進行網(wǎng)絡(luò)釣魚攻擊。
圖1-3 程序運行邏輯
(1)在清單文件中將Activity組件設(shè)置為不在最近任務(wù)中出現(xiàn)。
圖1-4 設(shè)置Activity屬性
(2)安裝啟動后便將自身退到后臺,隱藏應(yīng)用圖標。
圖1-5 將自身退到后臺
(3)為了讓應(yīng)用程序在后臺運行服務(wù),Android操作系統(tǒng)要求應(yīng)用程序顯示永久通知。對于這些情況,Mandrake使用透明通知圖標。
圖1-6 紅色框內(nèi)顯示透明通知圖標
(4)Java層與native層函數(shù)交叉調(diào)用。
字符串動態(tài)解密、客戶端與服務(wù)器交互、遠程命令控制等重要函數(shù)放在native層。
圖1-7 so文件中主要函數(shù)調(diào)用
在native層通過反射調(diào)用java層函數(shù)。
圖1-8 反射調(diào)用java層函數(shù)
解密后java層函數(shù):
圖1-9 解密后函數(shù)名
(4)將所有效字符串全部加密,運行時動態(tài)解密拼接。
這樣做不僅可以增加分析人員難度還可避免應(yīng)用商店以及殺毒軟件的檢測。
圖1-10 字符串解密函數(shù)
解密后部分字符串以及服務(wù)器地址:
圖1-11 解密文件名、服務(wù)器地址
應(yīng)用啟動后便會檢測用戶設(shè)備SIM卡運營商以及國家碼ISO,如果滿足某些條件,惡意軟件將停止運行:它避免在低收入國家、非洲國家、前蘇聯(lián)國家運行。它還避免了在沒有SIM卡的設(shè)備上或在特定運營商發(fā)布的SIM上運行。其中排除在SIM卡運營商為“CMCC”(中國移動通信集團公司)的設(shè)備上運行。
圖1-12 Sim卡運營商檢測
檢測應(yīng)用是否在模擬器虛擬環(huán)境中運行:
圖1-13檢測應(yīng)用是否在虛擬環(huán)境
通過設(shè)備檢測后,應(yīng)用便會調(diào)用native層init()函數(shù)進行一些字符串解密以及隱私數(shù)據(jù)收集操作,但在這之前應(yīng)用會在首次加載的JNI_OnLoad函數(shù)中進行一些初始化操作并連接服務(wù)器與服務(wù)器進行交互。
圖1-14 客戶端與服務(wù)器交互
Init()函數(shù)中執(zhí)行獲取用戶設(shè)備應(yīng)用列表、賬戶列表、通訊錄列表信息,并檢測自身是否為設(shè)備默認短信程序。
圖1-15 init函數(shù)
執(zhí)行cmd命令獲取用戶設(shè)備應(yīng)用列表并通過反射調(diào)用java層0xJ18函數(shù)執(zhí)行竊取用戶設(shè)備賬戶信息、以及聯(lián)系人信息操作。
圖1-16竊取用戶應(yīng)用列表、聯(lián)系人列表、賬戶列表
檢測自身是否為默認短信程序,如果不是便會彈出通知彈框請求,當用戶拒絕該請求時便通知用戶應(yīng)用已停止運行。當用戶授予了該請求應(yīng)用便會顯示自己精心繪制的視圖充當短信查看器(惡意軟件中最有趣的部分之一是精心繪制的視圖、布局、顯示和視覺組件扭曲應(yīng)用程序流程,以欺騙用戶授予危險的權(quán)限,該方法通過修改屏幕的區(qū)域來改變用戶所看到的內(nèi)容,從而在用戶點擊特定區(qū)域時使它們能夠獲得額外的權(quán)限)。
該顯示層具有收發(fā)短信的功能。之后該應(yīng)用便可完全接替默認的短信程序,對用戶短信數(shù)據(jù)庫具有編輯、刪除、更改等權(quán)限。
圖1-17 自制作短信收發(fā)顯示層
監(jiān)聽用戶電話狀態(tài),降低音量并阻止來電。將來電號碼進行對比后執(zhí)行掛斷電話、刪除通話記錄或錄音操作。
圖1-18 監(jiān)聽用戶電話
(1)掛斷電話。
圖1-19 掛斷用戶設(shè)備接收的電話
(2)刪除通話記錄:
圖1-20 刪除通話記錄
應(yīng)用在java層每執(zhí)行一次操作便會發(fā)送一條指令到native層。
圖1-21 java層命令傳輸
Native層遠控整個指令的執(zhí)行。
圖1-22 native層遠控框架
功能列表:
短信操作:收集并上傳所有SMS消息到服務(wù)器、將接收的SMS短信轉(zhuǎn)發(fā)到指定的號碼、隱藏傳入SMS消息不顯示給用戶、發(fā)送指定SMS消息內(nèi)容給指定號碼
電話操作:監(jiān)聽用戶電話將來電號碼發(fā)送到服務(wù)器、降低音量并阻止來電、啟動對電話號碼的呼叫、收集并將聯(lián)系人列表上傳至服務(wù)器
應(yīng)用程序操作:收集并上傳應(yīng)用程序列表、安裝其他組件或惡意應(yīng)用程序、卸載應(yīng)用程序
設(shè)備和帳戶操作:收集并上傳用戶設(shè)備所有注冊帳戶、收集設(shè)備信息(Android版本、電池級別、設(shè)備型號、ISO國家碼,SIM運營商等)
間諜技術(shù):GPS跟蹤、任何帳戶的證書盜竊(臉書,電子銀行賬戶)通過js腳本注入技術(shù)進行網(wǎng)絡(luò)釣魚
指令列表:
指令 | 功能 |
1000 | 接收短信:在每次收到短信時,都會向包含短信內(nèi)容的服務(wù)器發(fā)出請求 |
1001 | 封鎖所有收到的短信,不顯示給受害者。并將短信內(nèi)容轉(zhuǎn)發(fā)到指定的號碼。 |
1002 | 每隔一段時間客戶端連接服務(wù)端 |
1003
| 對用戶設(shè)備安裝的應(yīng)用進行操作,根據(jù)不同狀態(tài)執(zhí)行不同操作 |
1004 | 停止腳本注入 |
1005 | 發(fā)送用戶設(shè)備應(yīng)用列表、賬戶列表、聯(lián)系人列表到服務(wù)器 |
1006 | 將日志文件發(fā)送至服務(wù)器 |
1007 | 更新服務(wù)器地址 |
1008 | 將Mandrake設(shè)置為默認SMS處理程序。 這能夠阻止、攔截、中端傳入的消息 |
1009 | 禁用短信處理功能 |
1010 | 更新組件 |
1011 | 移除更新的組件 |
1012 | 獲取到目前為止收到的所有短信并發(fā)送到服務(wù)器 |
1014 | 撥打指定電話號碼 |
1015 | 設(shè)置呼叫阻塞開關(guān) |
1016 | 發(fā)送指定內(nèi)容到指定電話號碼 |
1017 | 發(fā)送指定內(nèi)容到指定電話號碼 |
1018 | 將對參數(shù)中給出的URL進行WebSocket連接 |
1019 | 停止控制受害者設(shè)備 |
1020 | 記錄網(wǎng)頁活動,注入惡意javascript竊取目標程序表單輸入。 |
1021 | 停止瀏覽網(wǎng)頁 |
1022 | 誘導(dǎo)用戶給予可訪問性權(quán)限 |
1023 | 停止命令 |
1025 | 啟動一個應(yīng)用 |
1026 | 重新啟動惡意軟件組件 |
1028 | 開始錄屏 |
1029 | 停止錄屏 |
通過加載網(wǎng)頁并注入特制的JavaScript代碼進行網(wǎng)絡(luò)釣魚攻擊,竊取目標應(yīng)用程序的賬戶信息。
圖1-23 加載網(wǎng)頁
惡意軟件會將收集到的隱私數(shù)據(jù)傳輸?shù)絥ative層并寫入文件中,之后便上傳到服務(wù)器。
圖1-25 保存隱私數(shù)據(jù)文件
4.第二階段加載
第二階段加載程序有效負載時,應(yīng)用通過使用GooglePlay圖標以更新Google服務(wù)的標題誘導(dǎo)用戶點擊。
圖2-1 顯示google服務(wù)通知
當用戶點擊假冒的GooglePlay通知消息后,會提示用戶安裝AndroidSystem應(yīng)用(偽裝成安卓系統(tǒng)應(yīng)用更有助于隱藏自己),這實際上是第二階段需要加載的有效負載。
圖2-2 誘導(dǎo)用戶安卓有效負載
第二階段加載程序下載和安裝后,有效負載(AndroidSystem)將檢測用戶設(shè)備系統(tǒng)版本,如果系統(tǒng)版本小于10則隱藏圖標否則更改其圖標為其它應(yīng)用圖標。加載程序?qū)⒛7耊i-Fi圖標,當點擊時,應(yīng)用打開的確是Wi-Fi菜單。
圖2-3 更改應(yīng)用圖標
有效負載功能列表:
確定和操縱設(shè)備的狀態(tài)
確定用戶是否是他們的有效攻擊目標
GPS定位跟蹤
收集并上傳用戶設(shè)備所有注冊帳戶信息
下載核心組件并動態(tài)加載它
5.第三階段加載
核心組件主要用于授予應(yīng)用敏感權(quán)限以及傳輸命令:
授予應(yīng)用設(shè)備管理員權(quán)限
授予應(yīng)用可訪問性權(quán)限
授予應(yīng)用讀取通知的權(quán)限
授予應(yīng)用忽略電池優(yōu)化的特權(quán)
將自身設(shè)置為默認的SMS應(yīng)用程序。
禁用谷歌播放保護
允許自己安裝未知的應(yīng)用
Mandrake擁有一個非常特殊的模塊,就如CAD繪圖一樣用于繪制屏幕的部分,系統(tǒng)警報或其它視覺內(nèi)容,通過修改屏幕的區(qū)域來改變用戶所看到的內(nèi)容,從而在用戶點擊特定區(qū)域時使它們能夠獲得敏感的權(quán)限。如果授權(quán)失敗,應(yīng)用將會彈出Toast警示框
1.授予可訪問性權(quán)限
首先他構(gòu)造了手機設(shè)備上可訪問性服務(wù)列表初始視圖,將“Iagree”復(fù)選框定位于自身開啟可訪問性服務(wù)的開關(guān),當用戶點擊“Iagree” 它們將按下與自身對應(yīng)的可訪問性條目。
圖2-4 誘導(dǎo)授予可訪問性權(quán)限
2.授予忽略電池優(yōu)化權(quán)限
當用戶電量不足系統(tǒng)將會通過殺死后臺進程來優(yōu)化電池壽命,授予應(yīng)用可訪問性權(quán)限可以保證應(yīng)用后臺進程不被系統(tǒng)殺死。
該應(yīng)用構(gòu)建的視圖中“allow”按鈕正對應(yīng)著授予忽略電池優(yōu)化權(quán)限的按鈕。當用戶按下“allow”按鈕便授予了該權(quán)限。
圖2-5 誘導(dǎo)授予忽略電池優(yōu)化權(quán)限
服務(wù)器列表:
域名
| IP地址
| 國家
|
Andro****mware.com
| 198.54.***.197
| 美國
|
nfmm****gflemt.top
| 198.54.***.197
| 美國
|
xjkbh****thnpl.top
| 198.54.***.212
| 美國
|
andro****mware.top
| 192.64.***.92
| 美國
|
androi****mware.cc
|
|
|
andro****mware.ir
| 3.125.***.66
| 美國
|
目標應(yīng)用列表:
應(yīng)用名稱
| 針對國家
|
Capital One Canada
| 加拿大
|
Desjardins mobile
services
| 法國
|
Sparkasse Ihre mobile
Filiale
| 德國
|
Postepay
| 意大利
|
Mein ELBA-App
| 奧地利
|
IKO
| 波蘭
|
UOB Mighty Singapore
| 新加坡
|
ABN AMRO
MobielBankieren
| 荷蘭
|
Scotiabank Mobile
Banking
| 英國
|
Bank of America Mobile
Banking
| 美國
|
以上就是高度復(fù)雜的間諜軟件Mandrake怎么用,小編相信有部分知識點可能是我們?nèi)粘9ぷ鲿姷交蛴玫降摹OM隳芡ㄟ^這篇文章學(xué)到更多知識。更多詳情敬請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。