Exe脱壳技术:解决程序保护的有效方法
微信搜索”编码美丽”关注公众号
一、前言
现如今Android用户的安全意识不是很强,又有一些恶意开发者利用应用的名字吸引眼球,包装一个恶意锁机收费的应用,在用户被骗的安装应用之后,立马手机锁机,需要付费方可解锁。这样的恶意软件是非常让人痛恨的。所以本文就用一个案例来分析如何破解这类应用,获取解锁密码,让被骗的用户可以找回爽快!
二、分析锁机软件原理
本文用的是一款叫做:安卓性能激活,关于样本apk文件后面会给出下载地址,从名字可以看到它肯定不会是一个恶意软件,但是当我们安装的时候,并且激活它的权限之后就完了。下面不多说了,直接用Jadx工具打开它:
看到了,他申请了设备管理器权限,而这个权限用过的同学都知道,当获取到这个权限之后可以控制这个设备了,包括修改系统密码。而这个软件也是利用这个权限来做到锁机的。
注意:对于这个权限还有一个重要作用,就是可以防止应用被卸载,现在很多应用为了防止自己被用户无情的卸载了,就用这个权限,可以看到这个应用申请了这个权限之后,卸载页面:
最好把之前的system.img文件进行改名备份。然后启动模拟器即可。
第二步:添加写SD卡权限
上面说到了,因为这个工具需要将dump出的dex文件写到SD卡中,所以我们需要检查脱壳应用是否具备写SD卡权限,我们用Jadx工具打开这个应用,发现没有,所以我们需要用apktool工具反编译,然后在AndroidManifest.xml中添加
android:name=”android.permission.WRITE_EXTERNAL_STORAGE
然后在回编译重签名即可。
第三步:安装应用观察日志
安装应用到模拟器,因为是模拟器,可能操作比较麻烦,所以这里需要借助两个命令可以完美的安装启动应用即可,一个是adb install xxx.apk,安装成功之后。在启动应用:
adb shell am start -n tx.qq898507339.bzy9/tx.qq898507339.bzy9.MainActivity
注意,这里的是目录,不是dex文件哦。然后去目录查看解密之后的dex文件即可,然后我们用jadx打开这个dex文件,可惜的是打开失败,所以就用dex2jar工具将其变成jar文件进行查看:
转化的时候报错了,说这个dex是odex文件。关于odex格式文件不多解释了,可自行搜索哈。jadx现在还不能识别odex文件的,这里好奇用IDA打开一下,发现竟然可以成功,所以IDA还真强大哈!
如发现本站有涉嫌抄袭侵权/违法违规等内容,请<举报!一经查实,本站将立刻删除。