澳博娱乐科技

当前位置: 首页 / 澳博娱乐 / 新闻资讯 / 电诈APK木马快速定位关键信息

电诈APK木马快速定位关键信息

发表日期:2016-03-31

目前电诈案件频发,尤其是通过伪造银行、运营商、“聚会相片”等为主,在这些利益链的背后,有这么一伙人是专门提供APK木马的。通过一定时间段的采集、分析,我们所发现的电诈APK木马约90%基本都是下图这种结构的短信拦截马:

图片1

根据上图可看出,代码经过了混淆,我们如何能快速定位这种APK木马的关键信息,快速响应呢?下面根据我个人经验,给出了这种APK的关键点位置。

可能用到工具(工具下载地址请自行百度):

  • Dex2jar+jd-gui(反编译为可读性较强的class文件)
  • Apktool(反编译为smali,可读性较差)
  • 其他综合工具,如:jeb、apkdb等 (非必须)
  • IDA,这个APK没有用到

方法一:Dex2jar+ jd-gui,先用压缩软件把APK中国的classes.dex提取出来,然后利用Dex2jar将classes.dex转换成jar包,此时可以用jd-gui打开这个jar包文件,此时就可以看到图一所示的界面。

方法二:利用apktool.jar,使用“java -jar apktool.jar d trojan.apk ”反编译apk为smali文件。最版本的apktool可以无法成功将某些apk反编译,此时可能需要使用baksmali。不过新版本的apktool 2.1.0已经集成了smali v2.1.1 和baksmali v2.1.1,所以大部分都可以进行反编译。

不管是class文件还是smali文件,包的结构基本上一致,所以下面就不具体指代。

222

此短信拦截马的关键信息编码于“comphonestopdba”,其中:

  • 无参方法d():短信拦截后发送到的手机。
  • 无参方法e():此APK的有效期。
  • 无参方法h():获取短信和通讯录到某个邮箱。
  • 无参方法i():发送邮箱的smtp帐号。
  • 无参方法j():发送邮箱的smtp密码。

而stmp的信息则存在“comphonestopcd”中:

图片3

那么,我们怎么才能快速定位需要的信息在哪个呢?在这里,我们可以用传统的方法——搜索关键字。

比如:我们可以用notepad++搜索文件内容或者windows自带的findstr命令,又或者使用其他的字符串搜索工具。

邮箱关键字(正则):b[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+.[a-zA-Z]{2,4}b

手机关键字(正则):1d{10}

或者使用命令行

获取邮箱:

获取手机:

获取smtp服务器:

由于APK木马中邮箱密码存在不确定性(有的密码就是一串不规则的字符),而且由于smail语法的特性,本人暂时还没有很好的方法来提取密码字段。有人会说怎么不反编译成class文件?根据我的经验,至少有一半APK是没办法直接通过dex2jar还原成可读性强的class文件的,为了通用性,本文也就暂时不提及。

本文的内容大体是以上这些,可能有些浅显,主要是还是为了抛砖引玉,希望各位大牛可以给出更好的方法,共同来打击违法犯罪活动。

By:H1d3r

2016-03-30

 

安行天下,络达四方
——深圳市澳博娱乐科技有限公司