一、背景
现在越来越多的APP会接入第三方公司SDK实现功能,这种接入第三方公司SDK的行为会帮助开发者缩短开发周期,提高开发效率。
近期腾讯安全便发现一款恶意病毒“DropperNecro”,该病毒通过母包中的AdHub SDK代码加载解密恶意子包,恶意子包会链接C&C服务器下载恶意代码块感染用户手机设备,在用户手机中植入后门程序。恶意开发人员可以通过该后门程序,从服务器下载恶意模块,对用户实施多类型的病毒攻击,从在设备上盗刷广告到窃取用户设备内隐私信息,对用户设备造成巨大威胁。
该病毒具有以下特点:
恶意代码隐藏在AdHub SDK中:可以被其他开发者使用,便于病毒的传播
加载恶意子包:可以有效的规避静态检测,提高病毒存活时间,提高病毒隐蔽性
植入后门程序:通过从服务器下载恶意模块,远程控制手机,实现对用户手机设备实施多类型的病毒攻击
二、病毒攻击流程和影响范围
病毒由自定义的Applicaition处启动,只要用户打开病毒APP就会自动触发病毒进行攻击,从而感染并在手机中植入后门程序
恶意代码隐藏在AdHub SDK中,该SDK被数十家应用开发者使用,病毒日影响用户数可能达上千万
受病毒影响的主要应用列表:
DropperNecro病毒云查用户数:
三、病毒代码详细分析
母包和子包的代码结构:
母包和子包内的恶意代码都使用了私有的加密算法进行加密处理,恶意开发者想通过对代码的加密处理逃避静态检测
1、 母包通过在AndroidManifest.xml中自定义的Application启动恶意代码
在AdHubApplication中调用com.hubcloud.adhubsdk.a类启动恶意代码
2、 加载恶意子包,并通私有加密算法进行解密
使用私有加密算法对子包进行解密
加载解密后得到的子包
3、 子包具有C&C服务器通信功能。首先它会加载并解密母包的“comparison”文件,获得C&C服务器地址,并从服务器中下载恶意代码块
解密后得到的C&C服务器地址
从服务器中下载恶意代码块
动态加载从C&C服务器下载的恶意代码块
恶意开发者使用上述手段感染用户设备,在手机中植入后门程序。通过从服务器下载恶意代码块,可以多功能、高隐蔽的攻击用户设备,从在设备上盗刷广告到窃取用户设备内隐私信息,可以对用户设备造成巨大威胁。
四、病毒拓展
通过对C&C服务器分析,发现该服务器地址也存在于“银行提款机”病毒中。从该服务器下载的恶意模块不仅可以用于盗刷广告,还可以被用于攻击感染的设备使其定制扣费业务,也从侧面印证了该病毒的危害性,植入的后门程序更方便恶意开发人员攻击受感染的手机设备。
“提款机病毒”报道:
使用相同服务器的“银行提款机”病毒信息:
五、查杀及总结
腾讯手机管家查杀截图:
总结:Android SDK是为移动开发者提供的新平台,应用开发人员可以使用第三方SDK程序,实现更方便更快捷更高效的开发模式,完善软件功能提高开发周期。由于没有成熟的监管机制,恶意黑产人员从中寻得“商机”,在SDK中植入恶意代码。由于SDK特性,使得病毒可能被接入不同的APP中,无形中帮助病毒快速传播,造成大规模手机感染。移动开发从业者应从正规的渠道下载接入SDK,避免被不法分子利用,成为传播病毒的工具。
在病毒检测方面,腾讯安全立足终端安全,推出自研AI反病毒引擎——腾讯TRP引擎,TRP引擎通过对系统层的敏感行为进行监控,配合能力成熟的AI技术对设备上各类应用的行为进行深度学习,能有效识别恶意应用的风险行为,并实时阻断恶意行为,为用户提供更高智能的实时终端安全防护。
*本文作者:腾讯手机管家,转载请注明来自FreeBuf.COM