导读:何为“间谍”?《说文解字》解释道:“谍,军中反间也。”使用反间计当然需要三寸不烂之舌,这是“谍”的本义。“间”怎么会跟“谍”联系起来了呢?“间”本来写作“闲”,清代文字训诂学家段玉裁为《说文解字》所作的注释说:“开门月入,门有缝而月光可入。”因此“间”的本义就是门缝,泛指缝隙,有缝隙就可以使用反间计了,故称“间谍”。
间谍软件是一种能够在用户不知情的情况下,在其电脑上安装后门、收集用户信息的软件。近日研究员在Google Play上发现了首款基于AhMyth(安卓远控木马工具)的间谍软件。这款恶意软件名为RB Music,是一款为Balouchi音乐爱好者提供流媒体广播的应用程序。但是在后台,这款应用会监视用户的行为和数据。窃取用户联系人信息、短信信息、收集存储在设备上的文件以及利用设备发送短信。
一、样本信息
MD5:ef9346f9cd1d535622126ebaa1008769
程序名称:RB music
程序包名:com.radiobalouch.rbmusic
恶意行为:该间谍软件通过C&C通信,根据控制端发送的不同指令,执行窃取用户联系人信息、短信信息、收集存储在设备上的文件以及利用设备发送短信恶意行为。并在用户注册登录时窃取用户登录凭证。
二、间谍软件远控框架
客户端通过解析控制端发送的指令order执行获取联系人信息、短信信息、文件信息以及发送短信等不同操作并将收集的信息发送至控制端:http://ra****ch.com。
图2-1 间谍软件远控框架
三、病毒技术原理分析
3.1权限管理
程序开始运行申请访问设备照片、媒体内容、文件权限,申请拨打和管理电话权限,申请访问通讯录权限。如果用户不给予相应权限,程序再次申请。
图3-1 权限管理
如果用户已授予读取联系人权限,则获取联系人列表信息并发送至服务器:http://ra****ch.com/Debugging/process/process/resolving/system/ReadAllTracks.php。
图3-2 获取联系人信息并发送
如果程序申请的所有权限已被授予,则启动主界面程序。程序在申请权限之前启动了ServiceM服务,该服务用于建立控制端与服务器通信,客户端根据接收的控制端指令执行不同操作来获取用户数据。
图3-3 启动ServiceM服务
ServiceM服务内部通过在catch内调用startAsync()函数实现实时监听连接。
图3-4 控制端与客户端通信
3.2远程控制
应用通过在程序启动时启动服务ServiceM和通过在开机广播MyReceiver中启动服务ServiceM来与控制端http://ra***ch.com建立通信。
图3-5 开机启动广播MyReceiver
初始化socket,配置参数,监听连接。
图3-6 Socket初始化、监听连接
当控制端与客户端已建立连接,控制端通过发送的不同指令收集用户联系人信息、短信信息、文件信息并发送短信。
图3-7 远控主体程序
解析指令order,当getString(order)==x0000cn时,获取联系人信息。
图3-8 获取联系人信息
解析指令order,当getString(order).getString(extra)==ls时,获取用户短信信息。
图3-9 获取短信信息
解析指令order,当getString(order).getString(extra)==ls时,遍历指定文件file=getString(order).getString(path)目录、获取文件名称、路径等信息。
图3-10 获取文件信息
解析指令order,当getString(order).getString(extra)==dl时,下载指定文件file=getString(order).getString(path)。
图 3-11 下载指定文件
解析指令order,当getString(order).getString(extra)==sendSMS时,发送短信,将content=getString(order).getString(sms)短信内容发送至指定号码phonenumber=getString(order).getString(to)。
图3-12 发送短信给指定联系人
将获取的联系人信息、文件信息、短信信息发送至控制端http://ra***ch.com。
图3-13 发送获取的数据
3.3 获取凭证
获取用户登陆时输入的邮箱账号和密码信息,并上传至服务器:
http://ra***ch.com/Debugging/process/process/resolving/system/login.php。
图3-14 获取用户登录凭证并发送
获取用户注册时输入的邮箱账号、密码及姓名信息,并发送至服务器:
http://ra***ch.com/Debugging/process/process/resolving/system/signup.php
图3-15 获取用户注册信息并发送
任何“注册”都是没有意义的,因为任何输入都会将用户带入“登录”状态。由此可以看出应用添加注册登录功能仅仅为了获取受害者登录凭证。
3.4 应用传播
应用具有分享app给通讯录联系人的功能,当用户点击分享app时,将带有应用下载地址链接的短信发送给联系人。
图 3-16 通过联系人传播应用
发送链接:http://play.google.com/store/apps/details?id=com.radiobalouch.rbmusic给通讯录联系人。
图3-17 发送短信链接
四、AhMyth框架介绍
AhMyth是一款安卓远控木马工具。它有两个组件:一个是服务器端,一个是客户端。
图3-18 AhMyth工具文件结构
客户端主要包含电话管理器、文件管理器、短信管理器、联系人管理器,其中ConnectionManager主要用于解析控制端发送的指令,并根据解析结果调用不同管理器。
图3-19 客户端主体类
将AhMyth框架集成到apk中,输入监听端口,等待主机上线。
图3-20 AhMyth工具监听端口
通过控制台可以实施Camera、Location、contacts、SMS、Calls Logs等各种远控操作。
图3-21 AhMyth工具控制台
五、安全建议
让你的设备保持最新,最好将它们设置为自动补丁和更新,这样即使你不是最熟悉安全的用户,你也能得到保护。
坚持去正规应用商店下载软件,避免从论坛等下载软件,可以有效的减少该类病毒的侵害。关注”暗影实验室”公众号,获取最新实时移动安全状态,避免给您造成损失和危害。
安装好杀毒软件,能有效的识别已知的病毒。
*本文作者:暗影安全实验室,转载请注明来自FreeBuf.COM