对某远控软件的破解利用
前言:
为了和朋友一起学习 把之前坛子里的发过的文章发到这里
意外得到了一个安卓远控软件,感觉很好用的样子,正欣喜若狂,才发现是个体验版的,只能生成固定内网ip的apk,本着能改就改的原则,决定对生成的apk进行修改,让其回连到我们指定的ip和端口,当然对此远控的操作纯属为了技术的实践。
准备阶段
dex2jar-2.1
frida-dexdump-2.0.1
jd-gui-windows-1.6.6
apktool
雷电模拟器
01对生成的apk马进行反编译
APK是Android Package的缩写,即Android安装包,APK文件的后缀为.apk,但是其格式是压缩文件zip的格式。直接将该文件扩展名改为.zip就可以解压该文件来了解APK文件的结构。
解压apk文件得到dex文件,然后使用dex2jar工具包中的d2j-dex2jar.bat将dex转为jar文件:
d2j-dex2jar.bat classes.dex
将生成的classes-dex2jar.jar用jd-gui打开,并找到填写ip和端口的位置:
在这里我们获得了我们想要修改的信息的位置
但是jar文件只能辅助我们查看java代码,无法修改。想要修改的话,还是要反编译出smali文件,然后对smali文件进行修改操作
02反编译smali并修改
smali:存放Java编译成的smali代码,smali相当于Android虚拟机上运行的语言。
apktool d /root/桌面/192.168.1.199.apk
从得到的smali文件中找到存放ip和端口配置的地方:
ctrl+f搜索出ip和端口的位置替换成远控所在的Ip和开放端口, 这里是因为数字特征容易搜索,最好是懂一些 安利这篇文章学习一下smali语法:http://www.manongjc.com/detail/25-iskhhheegxpglgf.html
03回遍
apktool b /root/桌面/192.168.1.199
这样的之后在/root/桌面/192.168.1.199/dist/下会生成修改之后的apk
04签名
这样我们的app添加就算完成了,但是在手机是无法运行的。因为没有签名。
keytool -genkey -v -keystore mykey.keystore -alias alias_name -keyalg RSA -keysize 1024 -validity 22222
需要输入密钥,其他的随便就好
jarsigner -keystore mykey.keystore 192.168.1.199.apk alias_name
05本地上线测试
上线成功!这款远控能用的功能还是可以的,也不枉我一番折腾。