1. 程式人生 > >[Android病毒分析]鎖屏病毒之免流伺服器

[Android病毒分析]鎖屏病毒之免流伺服器

鎖屏病毒之免流伺服器

一、 樣本概況

1.1 樣本資訊

檔名稱:免流伺服器.apk
檔案型別:application/jar
樣本包名:zs.ip.proxy
樣本大小:782KB
MD5:2EFCA46F34A565C2EF4052B89B6B364B
SHA1:5493A958A592BB0B19C43ACB2C1F52C898885207
病毒行為:在storage/sdcard0目錄下建立名為stk3.apk的檔案,並將其拷貝到system/app目錄下,並修改檔案屬性。
檔名稱:stk3.apk
檔案型別:application/jar
樣本包名:com.android.stk3
樣本大小:235KB
MD5:44DBCF4F3410CF4CDCD9463B76AF0A91
SHA1:1A2F265932EC81224AD4B922764E38413DADC8E1
病毒行為:傳送惡意簡訊,鎖住螢幕。

1.2 測試環境及工具

測試環境:夜神模擬器 V_3.8.3.1
工具:Jeb、AndroidKiller

1.3 分析目標

1、 病毒執行的具體方式
2、 查殺病毒

二、 具體行為分析

將免流伺服器.apk安裝到夜神模擬器中,執行檔案,點選安裝核心。
在這裡插入圖片描述
同樣的彈出請求root許可權,點選允許。安裝完成之後重啟夜神模擬器。
在這裡插入圖片描述
重啟之後,發現手機被鎖。
在這裡插入圖片描述
將免流伺服器.apk拖到AndroidKiller中,進一步分析行為。可以看出只有一個窗體,沒有廣播也沒有服務,並且也沒有什麼敏感的使用者的許可權。
在這裡插入圖片描述
開啟Jeb進行詳細分析,可見OnCreate函式在strorage/sdcard0目錄下新建了一個名為stk3.apk的檔案。
在這裡插入圖片描述


當用戶點選安裝核心的時候,先判斷手機有沒有root。如果沒有root直接退出,當手機已經root後,執行如下幾條命令。最終的結果將檔案拷貝到system/app目錄下並修改檔案許可權為可讀可寫可執行。提示使用者重啟手機。

命令 含義
Mount -o remount, rw /system/ 以可讀寫的方式載入system分割槽
cp storage/sdcard0/stk3.apk /system/app/ 將檔案拷貝到系統目錄下
chmod 777 /system/app/stk3.apk 修改檔案屬性
exit 退出命令

在這裡插入圖片描述
經過分析,這個APK檔案釋放出了一個stk3.apk檔案,使用命令:adb pull 原始檔 指定目錄,將檔案提取出來,使用AndroidKiller進行反編譯。可以看到這個apk檔案採用了一些敏感的許可權,此外建立了一個服務,和一個廣播。
在這裡插入圖片描述
檢視入口函式,在這裡只是依靠startService啟動了一個服務,然後轉到相應的服務仔細分析可以看到,在重寫了OnCreate函式,在函式裡面向一個手機號傳送大量的侮辱性簡訊。然後在onStartCommand的函式裡面設定了對按鈕的接聽器,通過這個可以找到解除螢幕鎖定的密碼。

此外在分析廣播函式的時候,當接收到一條開機的廣播的時候也會呼叫startService函式。
在這裡插入圖片描述
在這裡插入圖片描述
通過分析解鎖按鈕的監聽函式可以找到解鎖密碼:TFB4。
在這裡插入圖片描述

三、 查殺方法以及解決方法

1、 提取病毒特徵,利用防毒軟體進行查殺。

第一個檔案的MD5:2EFCA46F34A565C2EF4052B89B6B364B
第二個檔案的MD5:44DBCF4F3410CF4CDCD9463B76AF0A91

2、 解決方法

(1)根據加密演算法算出密碼。密碼:TFB4。但這種方法,並沒有將病毒清除,在每次開機之後都要輸入。
(2)清理病毒檔案所在的四個地方。
   第一個system/app:存放著stk3.apk檔案,通過獲取讀寫許可權,刪除該檔案
   第二個data/app:存放著第一個檔案,修改讀寫許可權,進行刪除
   第三個data/data:存放著兩個檔案的配置資訊,修改讀寫許可權,刪除
   第四個strorage/sdcard0:存放著stk3.apk檔案,修改許可權進行刪除。