Jump to content

概述2023 年3 月21 日晚上,鏈安與中睿天下聯合研發的監控系統檢測到一種新型安卓木馬。在經過睿士沙箱系統捕獲樣本之後,發現該安卓木馬極有可能是原安卓網銀盜號木馬SOVA 的變種。與此同時,意大利安全公司Cleafy 發布了一篇題為《Nexus:一个新的安卓僵尸网络?》 的報告,確認該病毒確實是SOVA 的變種,並將其重新命名為Nexus。

樣本分析樣本名稱:Chrome.apk

樣本SHA256 為: 376d13affcbfc5d5358d39aba16b814f711f2e81632059a4bce5af060e038ea4

樣本文件大小:4792032KB

主要行為列表刪除指定應用以其應用數據

安裝並啟動任意應用

隱藏自身應用圖標

卸載保護

上傳用戶短信數據以及通訊錄

使用SmsManager 發送短信、 刪除短信、取消短信通知

撥打電話

獲取用戶cookie 信息並上傳,注入cookie 等

讀取並上傳數字錢包信息

記錄並上傳鍵盤輸入記錄

查詢敏感信息手機數據(查詢存儲郵件、應用賬號數據、IMSI 等手機信息)

設置靜音

屏幕解鎖

訪問指定Url

試圖禁用管理員用戶

開啟輔助功能

監聽手機重啟事件

使用DownloadManager 下載文件

安裝測試當木馬安裝完成後,手機主界面會出現一個類似Chrome 瀏覽器的圖標(如圖1所示),與真實的Chrome 圖標略有差異。木馬使用的圖標較小,但在沒有相關對比的情況下,基本上很難識別出這種差異。

69d9616750171614f126e8e9498235a4

圖1

當木馬啟動後,界面會提示用戶需要開啟“無障礙功能”。在用戶點擊界面任意位置時,將自動跳轉到系統內的“無障礙功能”設置並自動啟用該功能(如下圖所示)。

容器 1(1).png

在啟動“無障礙功能”之後,程序會自動彈出並請求獲取“設備管理員權限”(如圖2所示)。

1d918d48ba6f9bf9aa3db5ed431d34f4

圖2

在惡意應用獲得設備管理員權限後,它會在後台不斷收集用戶信息,用戶很難察覺其存在。一旦設備管理員權限被授予,用戶在嘗試打開設備管理員權限設置界面時會發現界面迅速關閉,無法撤銷權限。類似地,通過adb 執行操作時也會遇到相同問題,界面會立刻關閉。這是因為惡意應用程序已經監控了設備管理員設置界面的開啟動作,從而阻止用戶撤銷其權限。因此,用戶需要啟用root 權限才能成功卸載此惡意應用。

adb shell am start -S 'com.android.settings/.Settings\$DeviceAdminSettingsActivity'

樣本深度分析基礎信息5(1).png

圖3

9eeec3cfd4ba76d6a0a44345c44b58c3

圖4

在使用Incinerator 進行手動分析之前,通過“基礎分析”模塊,我們發現該樣本程序具有加密殼(如圖3所示)。這意味著惡意應用程序的開發者使用了一種加密方法來保護其代碼,以防止分析和逆向工程。同時,我們注意到簽名信息中使用了“CN=Android Debug”(如圖4所示),這與正常的Chrome 證書不一致。這可能意味著此惡意應用程序的開發者試圖偽裝成正常的Chrome 應用,以便更容易地欺騙用戶並獲得其信任。

得益於incinerator 具備Apk 權限分析功能,我們可以在Apk 的詳細信息中獲取相應的權限列表(如圖5,6所示)。

8c614ba30c47a1965016569dda4e6884

圖5

2810336370326fca50ecb1adf6578306

圖6

在應用權限列表中,樣本獲取的權限中有13 項被評定為“危險”的權限。其中有幾個權限尤為危險:

發送短信(SEND_SMS)

讀取短信(READ_SMS)

接收短信(RECEIVE_SMS)

讀取聯繫人(READ_CONTACTS)

寫入聯繫人(WRITE_CONTACTS)

讀取電話號碼(READ_PHONE_NUMBER)

普通應用通常不會申請一些涉及敏感操作的權限,如改寫通訊錄、讀取和發送短信等。這些權限通常僅限於專門的通訊軟件。然而,當惡意應用獲取輔助功能權限後,它可以利用這一功能來自動開啟其他權限,包括一些對用戶隱私和安全具有潛在威脅的權限。

輔助功能是Android 系統中一項強大的功能,旨在幫助有特殊需求的用戶更好地使用設備。然而,這一功能也可能被惡意應用濫用,從而執行不受用戶控制的操作。一旦惡意應用獲得了輔助功能權限,它可以在用戶不知情的情況下執行各種操作,如啟用其他敏感權限,進而竊取用戶數據和破壞其隱私。因此,用戶需要謹慎授權輔助功能權限,避免將其授予不可信的應用。

代碼中用輔助功能開啟的權限列表如下:

android.permission.READ_SMS:允許應用程序讀取短信消息

android.permission.SEND_SMS:允許應用程序發送短信消息

android.permission.RECEIVE_SMS:允許應用程序接收短信消息

android.permission.READ_CONTACTS:允許應用程序讀取聯繫人列表

android.permission.WRITE_CONTACTS:允許應用程序編輯聯繫人列表

android.permission.READ_PHONE_STATE:允許應用程序讀取設備電話狀態和身份信息

android.permission.WRITE_EXTERNAL_STORAGE:允許應用程序寫入外部存儲,例如SD卡

android.permission.MODIFY_AUDIO_SETTINGS:允許應用程序修改聲音設置

android.permission.READ_EXTERNAL_STORAGE:允許應用程序讀取外部存儲,例如SD卡

android.permission.INSTALL_PACKAGES:允許應用程序安裝其他應用程序

android.permission.CALL_PHONE:允許應用程序撥打電話

android.permission.GET_ACCOUNTS:允許應用程序訪問設備帳戶列表

android.permission.READ_PHONE_NUMBERS:允許應用程序讀取設備電話號碼

android.permission.CLEAR_APP_CACHE:允許應用程序清除所有緩存文件

ec65723b3273174a343489d3475883f6

圖7

a4ff37c7b736fe71b508700ba4390c88

圖8

如上圖所示,該應用首先硬編碼了需要通過輔助功能開啟的權限列表,接著向系統發起對這些權限的申請。在PermissionsTask 環節中,應用會監聽權限申請的動作。一旦監聽到權限申請,該應用便利用輔助功能在權限申請界面上自動點擊“同意”按鈕。

靜態代碼分析在使用Incinerator 工具對樣本進行自動脫殼並分析惡意行為代碼後,我們發現以下主要功能:

1. 刪除指定應用以其應用數據惡意應用具有刪除其他應用及其數據的能力,可能影響用戶正常使用手機及其應用。

bac232005174772d5cb898d949dc8617

圖9

clearApp方法確實是通過執行pm clear package命令(如圖9所示)來刪除與特定應用程序包相關的緩存數據,包括圖片緩存、臨時文件、數據庫緩存等。這樣可以幫助清理設備上的垃圾文件,釋放存儲空間。

而deleteThisApp方法則通過觸發android.intent.action.DELETEintent 來實現應用的卸載(如圖9所示)。當系統接收到這個intent 時,會彈出一個卸載確認界面。通常情況下,用戶需要在此界面上手動點擊“同意”按鈕才能完成卸載。然而,由於這個惡意應用具有輔助功能權限,它可以在卸載確認界面出現時自動點擊“同意”按鈕,從而在用戶不知情的情況下完成卸載操作。這種做法進一步提高了惡意應用的隱蔽性和破壞性。

2. 安裝並啟動任意應用惡意應用可以安裝並啟動其他應用,可能進一步傳播惡意軟件或將用戶引導至惡意網站。

47e148941a8983668bf233bc1721120a

圖10

安裝和卸載應用確實是通過輔助功能來實現的。這種方式可以方便地為用戶自動化應用的安裝和卸載過程。唯一的區別在於,為了實現這一功能,惡意應用需要適配不同廠商的安裝應用包名和安裝Activity 的名稱。

這樣一來,惡意應用可以在各種不同的設備上成功執行安裝和卸載操作,從而更加隱蔽地實現其惡意行為。這種策略使得惡意應用在各類設備上具有更廣泛的攻擊能力。

3. 隱藏自身應用圖標為了難以被發現和卸載,惡意應用會隱藏自己的應用圖標(如圖11所示)。

2a22503bc8505cabd5cbbc4084d626b7

圖11

在這個惡意應用中,開發者使用了setComponentEnabledSetting方法來禁用Launcher Activity。這樣一來,用戶就無法通過設備主屏幕上的應用圖標(Launcher Icon)來操作或訪問該惡意應用了。

setComponentEnabledSetting方法可以用來啟用或禁用應用程序組件,如Activity、Service、BroadcastReceiver 等。在這種情況下,惡意應用通過禁用Launcher Activity,達到了隱藏自身的目的,讓用戶更難以察覺其存在。這種做法進一步提高了惡意應用的隱蔽性,使其更難以被發現和移除。

4. 上傳手機聯繫人等敏感信息惡意應用可以竊取並上傳用戶的聯繫人、短信、Cookie 等信息,可能導致用戶隱私洩露和財產損失。

fec40b6d80161cd69eedbb748387e9ce

圖12

0e9d5f601edfe7f0a01b49920a0a22aa

圖13

如圖12、13所示,惡意應用首先通過content://sms訪問短信內容,然後經過一系列業務邏輯處理,將其整合到網絡請求的數據中。除了短信數據,這個請求還包含瞭如SIM 卡信息、受害者設備的IP 地址、國家、城市和設備型號等信息。最後,這些數據會被發送到指定的服務器。

通過這種方式,惡意應用能夠竊取用戶的短信和設備信息,然後將這些數據發送給攻擊者。攻擊者可以利用這些信息進行各種違法活動,例如詐騙、竊取用戶隱私、甚至是身份盜竊。

5. 使用SmsManager 發送短信、 刪除短信、取消短信通知、讀取短信5.1 上傳短信

90ce1eff5787453308a3cbef169a556b

圖14

e2261256839bc65eb625995adddb6d32

圖15

根據上述描述,該惡意應用通過監聽收到短信的系統廣播,從廣播中提取收到的短信內容,然後將每一條短信發送給遠程服務器。在完成這個過程之後,應用還會終止收到短信的廣播,以免被用戶或其他應用程序發現。如圖15所示,super.execute指的是將收集到的短信數據發送給遠程服務器。

這種行為表明,該惡意應用在竊取用戶短信方面採取了較為積極的手段。用戶需要加強對此類應用的防範意識,以避免對其隱私和安全造成不良影響。

5.2 發送短信

7321db5b9db67fd34ae3b76be3f12587

圖16

調用系統SmsManager 發送短信(如圖16所示)。

6. 獲取用戶cookie 信息並上傳,注入cookie 等9545c3cbd4eb39c1f88d7aeb452a2483

圖17

如圖17所示,讀取所有cookie,上傳到遠程服務器,並且通過CookieManager 把本地cookie 刪除。

7. 讀取和上傳數字錢包信息7.1 讀取餘額

11fad808556b0d3a373165019b18dbe8

圖18

通過輔助功能,讀取代表餘額的View 顯示的字符內容,就是用戶錢包的餘額(如圖18所示)。

7.2 讀取seed phrase

12bde5def4ceef0a67a7d724b3247f7a

圖19

a7a03c38f2d4a91ac96261642398b3f5

圖20

利用輔助功能,從表示seed phrase 的View 中讀取內容(如圖19、20所示)。

7.3 上傳到服務器

878e51e53f4cb40cd75d036953c42d5a

圖21

把加密錢包信息發生到遠程服務器。

8. 記錄並上傳鍵盤輸入記錄60afb0bb00afcbc0ff686beee6891e9a

圖22

29f168a91f67d4c87e89966401883946

圖23

上面兩張圖,圖22所示監聽鍵盤輸入,通過輔助功能抽取數據,圖23所示把這些數據上傳到遠程服務器。

9. 查詢敏感信息手機數據(查詢存儲郵件和應用賬號數據,IMSI 等手機信息) 21c5287567e79b3d66e2c6ef52608455

圖24

通過AccountManager 獲取賬號信息,上傳到遠程服務器。

10. 把手機設置靜音5bc00f3d0ddb3537987ec9af5cef7b4b

圖25

通過audio 系統服務器,把手機設置為靜音(如圖25所示)。

11. 監聽手機重啟事件7ddace1b8b508c6511ebb0d6bb289603

圖26

1858e349a9a427c018c876e2913a57ff

圖27

監聽手機重啟事件,手機重啟後惡意就開始工作。

12. 使用DownloadManager 下載APK 並且安裝0e12dc8b1366433b7277118e3fc33c87

圖28

下載apk 並且使用安裝。

13. 拍照、錄視頻fc2abe1db55f80ca58c3ad9f8e7f33b3

圖29

91b434f95993bc1af3b41d2e3a94caa5

圖30

14. 讀取其他文檔d05f18285e304b204408900173e50336

圖31

1b8a195114cd35c6a47bdd3e2cc74eca

圖32

15. 網絡請求代碼中所有的Log 都會上傳,上傳的服務器地址來自一段“加密”字符串(如圖33、34所示)。

0 Comments

Recommended Comments

There are no comments to display.

Guest
Add a comment...