菜鸟第一次挑战apk逆向,结果整得怀疑人生,终于知道android apk加密的重要性

来源:互联网 发布:svd 协同过滤推荐算法 编辑:程序博客网 时间:2024/05/22 12:06

最近准备从x86上转移到linux于是乎弄了个手游来玩正巧朋友推荐了一个修改软件,类似于八门神器、CE,用于搜索修改游戏数据,于是抱着好奇的心理初步研究了下该软件的原理:

android apk加密1.png

android apk加密2.png

研究了下软件搜索,修改,暂停游戏,实现BT都有,比较齐全,猜测应该核心功能是基于SO上实现的。

打开AndroidKiller.exe,拖进APK,很顺利的反编译完成

android apk加密3.png

android apk加密4.png

在目录结构并没有发现so相关的东西搜索LoadLibrary也一无所获,看下进程信息

android apk加密5.png

我擦,竟然没有进程信息。。。纠结了。先通过smail看它现有的信息吧。

搜索它的catch_.me_.if_.you_.can_,也依然一无所获那么搜索它的版本号呢,

android apk加密6.png

发现了:

android apk加密7.png

这里定义的版本号,继续往下浏览发现:

android apk加密8.png

这里的代码,通过插入输出信息,可以知道,它这里获取了包名,接着原名被替换掉了,至此原来不是没有找到,而是被替换了,所以按照原来的去找就肯定找不到了。

android apk加密9.png

android apk加密10.png

此举做法,应该是防止壳或者检测类软件检测它的进程信息。

接着继续看它的启动信息因为该软件能kill掉其他进程,所以它可能是守护进程。

android apk加密11.png

在这里输出exec的参数,可以发现一个关键性的点:

android apk加密12.png

好家伙果然有so 文件 ,那么目录中没有,这里又加载了,说明它的so是通过下载流dump出来的。

继续往下看,发现:

android apk加密13.png

android apk加密14.png

到这里OK,可以在该路径下把so文件给pull出来。

分析so部分

android apk加密15.png

原来它用了ptrace该函数实现注入游戏进程。

android apk加密16.png

通过这两个部分,同样可以对它实行一些检测,比如检测进程在被注入的情况下,进程状态, 检测TracerPid的值被注入调试,该值不为0

菜鸟第一次挑战apk,结果整得怀疑人生,终于知道android apk加密的重要性了。apk如果不做防护,一个菜鸟花一点时间就能破解它,找个在线加密工具做防护还是很必要的,在网上找了几家加密做测试,发现几维安全的apk加密工具,dex文件加密用起来还不错,关键还是免费。平台可以免费使用加密工具,有需要的自取了!

http://cloud.kiwisec.com/encrypt/apk


操作方法非常简单只需四步

1、登录官网注册几维安全账号;

2、上传所需加密文件(如.apk/.so等文件);

3、下载加密完成应用;

4、签名;

android apk加密17.png

此平台也还有其他加密功能,例如:安全检测、安全监测、iOS加密等等。

由于是菜鸟初入门槛,水平所限,写的比较浅显,还请大神勿喷。

原创粉丝点击