金山手机毒霸工作原理
作者 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.
官方网站:点击访问亚州云活动官网活动方案:地区:美国CERA(联通)CPU:1核(可加)内存:1G(可加)硬盘:40G系统盘+20G数据盘架构:KVM流量:无限制带宽:100Mbps(可加)IPv4:1个价格:¥128/年(年付为4折)购买:直达订购链接测试IP:45.145.7.3Tips:不满意三天无理由退回充值账户!地区:枣庄电信高防防御:100GCPU:8核(可加)内存:4G(可加)硬盘:...
Hostodo 商家是比较小众的国外VPS主机商,这不看到商家有推送促销优惠在美国西岸的斯波坎机房还有少部分库存准备通过低价格促销,年付低至12美元Linux VPS主机,且如果是1GB内存方案的可以享受六六折优惠,均是采用KVM架构,且可以支付宝付款。第一、商家优惠码优惠码:spokanessd 1GB+内存方案才可以用到优惠码,其他都是固定的优惠低至年12美元。第二、商家促销这里,我们可以看到...
sharktech怎么样?sharktech (鲨鱼机房)是一家成立于 2003 年的知名美国老牌主机商,又称鲨鱼机房或者SK 机房,一直主打高防系列产品,提供独立服务器租用业务和 VPS 主机,自营机房在美国洛杉矶、丹佛、芝加哥和荷兰阿姆斯特丹,所有产品均提供 DDoS 防护。不知道大家是否注意到sharktech的所有服务器的带宽价格全部跳楼跳水,降幅简直不忍直视了,还没有见过这么便宜的独立服...