MalwareBenchmark关心各种类型的恶意代码,今天Khan将就一种Android:Basebridge家族给大家带来简要的分析报告。
正如我们所知道的,Android恶意代码多以短信的方式骗得利益,这次小编给大家分析的是Basebridge种类的Android恶意代码,这也是一种通过向预置的收费号码发送高额短信获取不正当利益的木马程序。
下面我们通过例子来看看这类样本。首先我们获得了一些静态信息:
样本名称:
跟我学魔术
包名:
com.keji.danti160
大小:
418024KB
MD5:
5efb9f07bac4b3ca24b51b53dd8ceebe
版本名:
3.4
可以看出,这是个“魔术教学”的应用,小编尝试安装以后,发现还蛮简陋的,就是写所谓的魔术技巧的文字描述,如下图:
只从表面上来看的话看不出有什么问题,我们还是来分析下代码吧。
要分析Android应用,第一步当然是看权限了,小编打开Manifest.xml,发现竟然没有申请任何权限!难道是小编的情报出了问题?这其实只是个普普通通的魔术教学应用而已?
这时我想起了第一次打开这个应用的时候就弹出了窗口显示目前不是最新版本,并且不更新就会退出应用,换言之用户必须点击更新,而更新后系统出现了如下提示:
看来这次所谓的更新才是问题的关键所在啊,我们在文档管理器中找到了一个叫做com.sec.android.bridge-1.apk的文件,修改时间正是我们更新应用的时间,看来这就是我们想找的了。
我们将这个更新包导出,打开,对其进行后续的分析:
基本信息:
包名:
com.sec.android.bridge-1
大小:
31925KB
MD5:
79da089a9048bd09580c2cec5ac608ac
版本名:
4.4
应用列表:
可以看出来,有许多我们之前提到过的危险权限,如READ_SMS,RECEIVE_SMS,SEND_SMS,READ_PHONE_STATE,WRITE_SMS等,通过这些权限可以获取手机的状态和身份,并能接收、读取、编写、发送短信等。在附加的更新包里申请这些权限,想要做些什么基本就呼之欲出了吧,当然我们还是要对代码进行进一步的分析的:
这是其中的一个文件,从变量命名方式可以看到代码经过了混淆,不过我们一眼就注意到了字符串“由中国移动代收费”,于是我们可以从String q入手来来分析。
这个应用首先主要做了以下几件事情:
1.收集关键信息,例如下面的代码:
通过上述语句获取了用户的运营商,就可以判断后续拦截哪个运营商发送的短信了。
2.发送高额信息给指定号码:
我们找到发送短信的方法被混淆了为boolean a(String, String),查找调用这个方法的地方,得到如下调用代码:
如图的最后一行即为方法的调用,而参数this.i和this.j分别来自于上面从SharedPreferences中相关关键字提取得到的值。这里不再一一具体列出。
3.拦截运营商返回的相关短信:
最后,就是这个样本最关键的一环了,本应用对运营商返回的提示信息进行了拦截,让这一切用户毫不知情的情况下发生。代码如下:
恶意软件作者对于不同情况下返回的短信进行了拦截处理,达到用户不知情的目的。
这就是对于BaseBridge类型的样本的一点分析,因为此次分析较为详细,篇幅有限,就只分析了一个样本,以供读者参考。小编水平有限,还望交流指正。