金山手机毒霸工作原理
作者 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.
昨天,有在"阿里云秋季促销活动 轻量云服务器2G5M配置新购年60元"文章中记录到阿里云轻量服务器2GB内存、5M带宽一年60元的活动,当然这个也是国内机房的。我们很多人都清楚备案是需要接入的,如果我们在其他服务商的域名备案的,那是不能解析的。除非我们不是用来建站,而是用来云端的,是可以用的。这不看到其对手腾讯云也有推出两款轻量服务器活动。其中一款是4GB内存、8M带宽,这个比阿里云还要狠。这个真...
HostKvm发布了夏季特别促销活动,针对香港国际/韩国机房VPS主机提供7折优惠码,其他机房全场8折,优惠后2GB内存套餐月付仅5.95美元起。这是一家成立于2013年的国外主机服务商,主要提供基于KVM架构的VPS主机,可选数据中心包括日本、新加坡、韩国、美国、中国香港等多个地区机房,均为国内直连或优化线路,延迟较低,适合建站或者远程办公等。下面分享几款香港VPS和韩国VPS的配置和价格信息。...
spinservers是Majestic Hosting Solutions LLC旗下站点,商家提供国外服务器租用和Hybrid Dedicated等产品,数据中心包括美国达拉斯和圣何塞机房,机器默认10Gbps端口带宽,高配置硬件,支持使用PayPal、信用卡、支付宝或者微信等付款方式。农历春节之际,商家推出了几款特别促销配置,最低双路E5-2630Lv3机器每月149美元起,下面列出几款机器...