首页
社区
课程
招聘
[原创]一个section加密的apk的分析
发表于: 2018-5-31 17:15 8805

[原创]一个section加密的apk的分析

2018-5-31 17:15
8805

这个apk是去年参加某个CTF比赛时候的一道题,当时没做出来,这几天整理文件翻出来了,决定再做一做,写点笔记。

这一点文章中没提,如果程序的debuggable选项未开启就直接jdb去attach的话是调试不了的,会出现下面这样的错误。


可以修改AndroidManifest.xml中的debuggable="true"然后签名重打包;或者修改系统属性将defalut.prop中ro.debuggable设置为1。这两种方法操作起来其实都很麻烦而且容易遇到各种各样的问题,所以我一般用的方法一个是riusksk的BDopener,一个是netsniffer优化的mprop。这两个工具更方便。如果还是报错的话可以打开DDMS,点一下你要调试的进程,点了之后会出现8700的端口和红色的虫子。这个时候再attach应该就没问题了,成功attach上去虫子会变成绿色。

题目描述:某企业反馈其员工专用手机上,被安装了一个间谍软件,该软件会不定期自动连接一个疑似黑客控制的服务器,服务器的连接密码内嵌在该软件中。逆向分析此间谍软件,获取其服务器的连接密码。
首先安装运行一下。

拖到jadx里面,可以看到java层并没有什么核心功能,关键是导入了一个net库,用了里面的upload函数。

解压apk之后得到libnet.so,拖到IDA里面提示First Section must be SHT_NULL,很有可能section被加密了。

在IDA里面看到有个.init_proc和JNI_OnLoad,JNI_OnLoad的代码应该是被加密过的。

那么这个时候我们就只能动态调试了,动态调试的步骤网上一搜一大堆就不再详细写了,这里在linker下的断点, BLX  R4之后就进入了.init_proc。


直到执行完sub_2C5A之后发现libnet.so已经消失了,取而代之的是debug077,同时JNI_OnLoad也被解密了出来。


这里需要导入JNI,在IDA7.0以下的版本中通常是通过这篇文章中的方法导入JNI的。在IDA7.0及以上的版本中有一种更简单的方法。View->Open subviews->Type Libraries,按下Insert,选择android_arm(IDA6.8里面没有这个库所以不能用这个方法)。

打开Structures,按下Insert,选择Add standard structure,选择_JNIEnv和JNINativeMethod。

把变量的类型改成JNIEnv*,Force call type,现在看起来舒服多了。


[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

最后于 2018-6-1 13:55 被houjingyi编辑 ,原因:
上传的附件:
收藏
免费 1
支持
分享
最新回复 (10)
雪    币: 324
活跃值: (384)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
2
铁人三项
2018-5-31 18:01
0
雪    币: 5633
活跃值: (7199)
能力值: ( LV15,RANK:531 )
在线值:
发帖
回帖
粉丝
3
Lucaks 铁人三项[em_41]
兄弟可以的
2018-5-31 18:12
0
雪    币: 2719
活跃值: (1595)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
4
直接做section修复不就好了么
2018-6-1 08:37
0
雪    币: 1144
活跃值: (1274)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
section修复  JNI_Onload还是加密状态
2018-6-1 10:07
0
雪    币: 53
活跃值: (106)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
看样子是变种的upx
2018-6-1 11:36
0
雪    币: 15
活跃值: (22)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
谢谢分析和样本。好想试试
2018-6-2 07:37
0
雪    币: 6818
活跃值: (153)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
2018-6-2 23:09
0
雪    币: 22
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
求能破加密狗的老师。付费
2018-6-6 02:41
0
雪    币: 9
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
2018-6-7 18:16
0
游客
登录 | 注册 方可回帖
返回
//