金山手机毒霸工作原理
作者 Jack_Jia
一、序言
金山手机毒霸m.duba.com/是金山网络推出的首款Android APP行为管理软件是首家拦截软件恶意广告、智能防御病毒行为、查杀最新病毒和自主管理高危隐私权限的安卓手机安全管理软件。
它具有如下特色功能
1 、有效清除软件内置广告拦截软件恶意广告。
2、依托于首创的Java虚拟机拦截技术更精准更深入的拦截APP的高危行为。
本文将对金山手机毒霸的进行简单的逆向分析 以达到了解其工作原理的目的。金山手机毒霸的最新版本为V2.0但为了使我们的分析过程简单高效我们特意选择金山手机毒霸V1 .0Beta版本作为分析样本。博友可以通过如下链接下载bbs.xda.cn/thread-1 1 186508-1-1 .html 。
二、基本信息
1 、安装包关键路径文件信息l ib\srmeabi\
re s\ra w
其中ksremote.mp3、 l ibksrootcl ient.mp3、 rootkeeper.mp3通过后缀名伪装成mp3文件其实这三个文件为jar包。
And roidMainfest.xml
[html]view plaincopy
2、手机毒霸运行时涉及进程及进程组件分布
通过对手机毒霸代码逆向分析及运行时进程状态变化金山手机毒霸代码共在四类进程中被加载运行。
1 com. ijinshan.duba进程
广告扫描引擎、病毒扫描引擎、金山版本控制等逻辑都在该进程中运行
另外手机毒霸还在15997端口建立监听PC端可以通过该TC P连接发送命令手机端毒霸扫描。
2 com. iji nshan.d uba:DefendService进程
广告规则和扫描病毒信息由该进程通过P ro vi d e r提供。
2 com. iji nshan.duba.rootkeeper进程
该进程以ROOT身份运行该进程提供了手机毒霸其它进程运行需要root身份才能执行的命令的Binder接口第三方程序进程的代码注入由该进程完成。
4第三方injected process被注入程序进程
通过ptrace()注入到第三方程序的代码 ksre mo te.ja r和l ibksrootcl ient.so完成java虚拟机hook和底层Socket hook。
三、 JAVA虚拟机hook实现原理
目前And roid进程代码的注入都是靠ptrace函数来完成。 ptrace进程后完成底层函数的重定向。金山毒霸代码注入包括两部分
1 、底层C函数HOOK
2、 JAVA虚拟机H O OK
代码注入基本流程如下
1 、 com. iji nshan.d uba.rootkeeper进程ptrace第三方进程并注入l ibksrootcl ient.so文件
2、 l ibksrootcl ient.so代码完成底层C函数hook并调用ksremote.jar代码 ksremote.jar完成java虚拟机hook
1 C代码如何完成对java代码的调用呢
基本代码实现如下
[cpp]view plaincopy
1.
Spinservers是Majestic Hosting Solutions,LLC旗下站点,主营美国独立服务器租用和Hybrid Dedicated等,数据中心位于美国德克萨斯州达拉斯和加利福尼亚圣何塞机房。TheServerStore.com,自 1994 年以来,它是一家成熟的企业 IT 设备供应商,专门从事二手服务器和工作站业务,在德克萨斯州拥有 40,000 平方英尺的仓库,库存中始终有...
金山云618年中促销活动正在进行中!金山云针对企业级新用户优惠力度比普通个人用户优惠力度要大,所以我们也是推荐企业新用户身份购买金山云企业级云服务器,尽量购买3年配置的,而不是限时秒杀活动中1年的机型。企业级用户购买金山云服务器推荐企业专区:云服务器N3 2核4G云服务器,1-5M带宽,827.64元/3年,性价比高,性能稳定!点击进入:金山云618年中促销活动目前,金山云基础型E1云服务器2核4...
酷锐云是一家2019年开业的国人主机商家,商家为企业运营,主要销售主VPS服务器,提供挂机宝和云服务器,机房有美国CERA、中国香港安畅和电信,CERA为CN2 GIA线路,提供单机10G+天机盾防御,提供美国原生IP,支持媒体流解锁,商家的套餐价格非常美丽,CERA机房月付20元起,香港安畅机房10M带宽月付25元,有需要的朋友可以入手试试。酷锐云自开业以来一直有着良好的产品稳定性及服务态度,支...