近日,我们发现了Android平台上首个采用进程保护技术的木马。该木马通过执行自身释放的恶意可执行文件,达到自我保护对抗杀毒软件清除的目的,我们将这个木马家族命名为“EvilGuard”,并独家发布了恶魔守护者木马专杀工具(下载),帮助用户免受其危害。
样本结构
EvilGuard主要由主包android.system.manager和由主包释放出来的子包com.android.tservice组成。主包和子包分别包含了ELF可执行文件libesmanager.so、safe。
行为概述
EvilGuard伪装成需要Root提权功能的软件,如“内置软件卸载”,木马尝试使用多个公开漏洞提升Root权限,并且在/system/bin下释放自己的Root后门ELF可执行文件sl。在提权操作的同时将伪装成系统软件的恶意APK子包通过主包加载的libesmanager.so文件释放安装到system/app下面,同时主包立即运行子包。
子包启动后释放恶意ELF文件safe到system/bin下,safe文件行为是备份子包到SD卡,并且后台不断检测子包和备份是否被删除,若其中一个被删除则立即恢复,保护子包不被卸载。子包除了防止卸载之外,还会联网接收远程服务器指令,指令包括子包自更新,上传手机信息,固件信息,下载未知APK文件静默安装运行等。
原理分析
主包分析
样本启动主界面com.system.manager.HomeActivity时触发恶意行为。启动后会依次调用doAll和writeApkFile两个主要方法,完成系统提权,子包的释放、安装和运行操作。
doAll方法先判断子包是否已经存在了,不存在则加载自身的ELF可执行文件libesmanager.so调用escalatefast和escalate方法进行提权操作。
writeApkFile方法,首先调用libesmanager.so的getApkData方法,从ELF里释放APK子包到SD卡,并且伪装成GoogleService.log,然后重定向到/system/app路径下,删除GoogleService.log,然后通过广播方式启动运行子包。
getApkData方法,获取APK子包
主包还会通过socket上传手机的固件信息。联网地址core.mdot.cn,端口号8888
子包分析
子包通过主包调用后会启动子包的恶意服务TService,该服务还会接受系统频发的各种广播启动,例如开机广播,滑动解锁,日期设置等。
TService创建时会初始化不同的指令操作,这些指令包括:
1. 子包自更新
TService启动后首先会检查自更新,并请求服务器指令。
其次会向/system/bin路径下释放ELF可执行文件safe。
最后启动运行safe文件
新的攻击方法
safe文件的功能是保护子包顺利运行防止被卸载。第一次运行会将子包备份到SD卡上伪装成run.log文件,然后每隔30s检查一次子包或子包的备份文件run.log是否被删除,若其中一个被删除则立即恢复,还会检测子包进程是否存在,若不存在则调用子包重新运行,如此往复无限循环,导致即使杀毒软件检测出是威胁,清除之后子包立即恢复运行,无法彻底被清除。
清除方案
目前,我们已经独家发布了专杀工具,下载地址是:
http://msoftdl.360.cn/mobilesafe/shouji360/360safesis/ExpAbuseKiller.apk
该工具可以彻底清除EvilGuard木马,同时建议用户从正规APP市场,如360手机助手下载安装应用软件,安装360手机卫士,定期对手机进行安全扫描。
趋势
伴随着移动互联网的高速发展,移动设备的广泛应用让越来越多的攻击者看到了经济利益,从而PC上传统的攻击方法也逐渐出现在移动终端。Android恶意样本的发展趋势从最初的代码混淆,字符串加密,抗反编译、调试,到今年年初我们全球首先发现的bootkit技术的木马Oldboot,通过修改系统启动项,更深层次隐藏自身。范围已经从应用层转变为对系统底层的攻击。
今天我们发现的EvilGuard又是一个带有传统PC攻击方式特征的恶意木马家族,与Oldboot相比相同点在于都带有APK文件的自我保护措施,不同点在于Oldboot是通过内置ROM的方式手机在每次重启后恢复恶意APK文件,而EvilGuard是我们发现的依靠第三方市场传播感染的首个利用向系统释放ELF可执行文件达到实时监控,自我恢复的恶意木马家族,与传统PC的进程保护攻击方式相似。
据我们所知,目前大部分传统安全软件对手机上恶意软件的查杀只停留在对APK文件的清除上,随着这种带有自我保护的恶意木马家族的出现,安全软件的清除能力以及略显不足,这需要我们从系统启动到APK释放的衍生文件进行全面的分析和监控。我们将继续紧密关注这类攻击方法的发展并提供安全保护方案。
来源:http://blogs.360.cn/360mobile/2014/03/18/analysis_of_evil_guard/