记一次简单的恶意apk逆向分析

故事起因

  • 估计也会有很多同学升学时其亲友收到过这样的短信:

    xxx家长您好,这是您孩子的升学资料 xxx.com 请查看 blablabla~

  • 家人最近也收到了类似的短信,一开始我的心情是比较紧张的,毕竟前不久考完期末。。。

  • 结果访问该网址后发现是自动下载一个apk文件,360发出了警告,

    emmm……突然就来了兴趣-。-

分析过程

  1. 之前从未接触过android逆向方面的东西,起初我也是上网找了找apk病毒分析的相关资料(这里推荐一篇文章),感觉只要能读到源码一切也就简单了。遂下载了这个apk文件,开始分析(xjb搞)。

  2. 下载下来的自然是apk后缀,将其改为rar,然后在win下解压

  3. 解压后有一个classes.dex文件

    我们都知道android开发语言是Java,Java 源代码经过 Java 编译器编译后生成 .class 文件,android SDK 自带的工具会将这些 .class文件转换成classes.dex, 而classes.dex就是运行在Dalvik虚拟机上的文件。

  4. classes.dex拖至dex2jar的安装目录下,打开命令行并切换至dex2jar的目录下,运行d2j-dex2jar.bat classes.dex将产生一个名为classes-dex2jar.jar的文件

  5. jd-gui中打开classes-dex2jar.jar文件,开始找敏感字段,当然,代码经过了混淆处理

  6. 既然是apk文件,那么制造木马者一定想要窃取用户一些信息,最重要的自然是将这些信息发送出去,可以判断是邮箱或是手机号等等。那么尝试全局搜索(shift+ctrl+s)mail、smtp、@qq.com等等关键字,也可以慢慢审计代码摸清主要逻辑,去挖掘更多好玩的东西-。-
    我是搜smtp,直接就把189邮箱的账户、密码爆出来了。。。

继续深入

  • 既然找到账户、密码,抱着研究型的态度,我决定登录进去。

    这里可以看到,所有下载了文件的用户的部分通讯录、短信被发送到该邮箱下

  • 再看部分源码


  • 从微步在线威胁情报分析上得到的结果

    点了几个相似的域名都是 apk 文件下载地址,文件名也很有欺骗性,如 “车辆违规查询”、“体检报告单”等等。

简单小结

  • 能力有限,分析得比较水 0_0,对很多方面没有深入研究
  • 出于安全考虑,android 用户尽量注意别轻易下载未知的 apk 文件
  • 最后把这些信息交给互联网检举中心,至于他们有没有处理,我就不得而知了