乐于分享
好东西不私藏

通过修改应用资源文件Anti-analysis的安卓恶意样本该咋办:)

通过修改应用资源文件Anti-analysis的安卓恶意样本该咋办:)

上次我们分析了一个修改AndroidManifest.xml,使apktool工具分析异常的样本。(原文见:http://mp.weixin.qq.com/s?__biz=MzAwMTMzMDUwNg==&mid=503394930&idx=1&sn=6e825f5a770273ce86fa822ca2f81987#rd)这次我们看一个通过修改应用资源文件Anti-analysis的案卓恶意样本。

名称:luyin.apk

大小: 215271 字节

修改时间: 2016522, 17:31:49

MD5:627F4A461D53DBC9F1639F03595628F3

SHA1: 7CFF176AEEAE8D54090398E4B133F968E7FED671

CRC32: 82E47ACE

0x01异常情况

从错误提示看是资源文件读取出错了。这种情况下基于apktool的很多反编译的IDE也会报错。JEB可以反编译,但提示资源文件没有全部处理。

0x0资源文件组成

再回顾下一个典型的APK文件通常有下列内容组成:
AndroidManifest.xml   程序全局配置文件
classes.dex               Dalvik字节码
resources.arsc            资源文件
 META-INF\                该目录下存放的是签名信息
 res\                         该目录存放资源文件
 assets\                    该目录可以存放一些配置文件

大牛们每次一提到资源文件,都要祭出下面这张图。然而我瞅了半天也没记明白。

Resources.arsc文件格式是由一系列的chunk构成,每一个chunk均包含一个ResChunk_header,用来描述这个chunk的基本信息。

在一个apk中,对应chunck一般有:

ResTable(1)

ResStringPool(1)

ResTable_Package1~n个)

RES_TABLE_TYPE_SPEC1~n个)

RES_TABLE_TYPE1~n个)。

为了便于理解,我们还是通过模版来分析Resources.arsc文件。下载ARSCTemplate.bt模板,用010editor打开模板并运行。(下载地址见http://bbs.pediy.com/showthread.php?p=1416062

下面就是一个正常的资源文件。可以在apk解包后的文件夹中找到resources.arsc文件。

我们重点分析第一块RESTABLE_HEADER的内容。其中前0-1两个字节代表chunk的类型,值为0x0002表示类型为RES_TABLE_TYPE。注意Resources.arsc文件采用小端编码方式(即低位在前,高位在后)

    2 – 32字节,表示该chunk类型的头长度,值为0x000C表示该类型的头长度为12字节长度。

4-7,共4字节,表示该chunk的总长度,值为0x000004F4表示该chunk的总长度。

01 000000指的是被编译的资源包的个数,这里只有一个。

后面部分的具体分析略,大家可以自行查找资料。

0x03 解决

现在我们也把luyin.apk解包看下资源文件。具体做法参见上一篇文章。

010editor打开resources.arsc,又没有发现有什么不对的?和我们刚才分析的RESTABLE_HEADER,结合报错信息,确认这个恶意代码的作者是把0200改成了0000,以此制造异常。

这时候,我们只需要修改成红字所标的部分。

然后重打包。再次用apktool打开就不会出现资源文件问题了。

重打包具体做法见上一篇文章。

总结:

上次咱们分析了一个修改全局配置文件的样本,这次咱们分析了分析资源文件的样本,实际上很多恶意代码是两种一起用的,比如今晚上有刚刚收到了一个,看来这些办法是黑产爱用的。

那么不知道大家掌握了没有呢?

最后,给大家留个apk玩下。就用这篇和上一篇里的方法就可以了。链接:http://pan.baidu.com/s/1ge8F3WJ 密码:iqsz

想进一步了解的可以看下:

http://bbs.pediy.com/showthread.php?p=1416062

Good Night

本站文章均为手工撰写未经允许谢绝转载:夜雨聆风 » 通过修改应用资源文件Anti-analysis的安卓恶意样本该咋办:)

评论 抢沙发

1 + 4 =
  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
×
订阅图标按钮