android病毒分析(久秒名片点赞)

目录

1.样本概况... 3

1.1 样本信息... 3

1.2 测试环境及工具... 3

1.3 分析目标... 3

2.具体分析... 3

2.1 加固情况... 3

2.2代码分析片段... 3

3.总结... 7

1.样本概况

1.1 样本信息

名称:958b1e341c72dbcf52863c570b77c71a862987b1

MD5值:8123ac1150b47ef53507ec2360164e3b

SHA1值:958b1e341c72dbcf52863c570b77c71a862987b1

CRC32:4381bb7e

运行后主界面如图所示:

android病毒分析(久秒名片点赞)_第1张图片

1.2 测试环境及工具

Nexus5 + IDA pro

1.3 分析目标

病毒行为分析

2.具体分析

2.1 加固情况

android病毒分析(久秒名片点赞)_第2张图片

2.2代码分析片段

    直接对样本进行调试,如下图所示:

android病毒分析(久秒名片点赞)_第3张图片

android病毒分析(久秒名片点赞)_第4张图片

android病毒分析(久秒名片点赞)_第5张图片

最后跟进之后发现是exit函数,这是因为检测到了程序被附加,所以会调用exit函数,其实这个反调试会调用fopen和fgets这两个函数进行读取内存信息,因此在libc.so中找到这两个函数进行下断,然后运行到断点出处,然后将获取到被调试程序的名称,经过修改内核,TracerPid为0,表示没有被检测到,如下图所示:

android病毒分析(久秒名片点赞)_第6张图片

因为要解析dex文件,所以会调用dvmDexFileOpenPartial函数,所以直接在libdvm模块中找到该函数,然后下断,然后运行,如下图所示:

android病毒分析(久秒名片点赞)_第7张图片

 

接下来便可以对dex进行内存dump了

static main(void)

{

auto fp, begin, end, dexbyte;

fp = fopen("d:\\dumpali.dex", "wb");

begin = 0x755F36AC;

end = begin + 0x6FD00;

for ( dexbyte = begin; dexbyte < end; dexbyte ++ )

fputc(Byte(dexbyte), fp);

}

然后使用apktool进行重打包,直接替换会提示错误,

android病毒分析(久秒名片点赞)_第8张图片

解决办法:使用010editor打开发现是exif文件格式,修该bohe.png为exif,再进行重打包,然后再将dump的文件替换傀儡dex文件即可。

查壳结果如下:

android病毒分析(久秒名片点赞)_第9张图片

然后再对病毒行为进行分析,其中涉及到的权限如下:

android.permission.INTERNET

android.permission.ACCESS_NETWORK_STATE

android.permission.READ_PHONE_STATE

android.permission.ACCESS_WIFI_STATE

android.permission.WAKE_LOCK

android.permission.RESTART_PACKAGES

android.permission.SYSTEM_ALERT_WINDOW

android.permission.GET_TASKS

android.permission.SEND_SMS

android.permission.SYSTEM_ALERT_WINDOW

android.permission.BIND_DEVICE_ADMIN

android.permission.RECEIVE_BOOT_COMPLETED

首先从OnCreate进行代码静态分析,其中对屏幕进行了锁定,同时监听屏幕点击事件,同时会如下图所示:

android病毒分析(久秒名片点赞)_第10张图片

在监听函数中可以很明显的发现密码为:“薄荷终究是心凉”,如下图所示:

android病毒分析(久秒名片点赞)_第11张图片

    根据分析解决办法为,首先需要删除/data/system/password.key文件,进入到密码输入模式,然后输入密码,再双击密码框,进行两次解锁,然后卸载。

3.总结

经过不断的调试和分析,从该样本中掌握了相关的调试方法,和调试技巧,但这只是开始,分析能力还需不断提高。

你可能感兴趣的:(android逆向)