打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
程序员冒死揭露黑产系列之:通道劫持与动态注入

360“又”被小米下架了,孰是孰非这里暂且不表,不过在看到小米的声明中指控360“在用户并不知情的情况下静默执行Root刷机行为,篡改MIUI系统签名,植入非官方的系统应用”后,不禁感慨,终于还是有人突破了底线。

说到Root,使用过安卓手机的朋友们一定是耳熟能详,肯定也有不少应用程序在大家的手中被赋予了Root权限。虽然我们使用Root权限的目的可能只是为了卸载内置应用、apk自动安装、管理后台进程或者限制后台流量,然而你不知道的是,在你点击“授权”的一瞬间,你可能已经开启了“裸奔”模式,下面请同学们继续拿出小板凳坐好,听我来简单介绍下这个“裸奔”模式的开启原理。

一个App,无论复杂如微信还是简单如图片查看器,他们都需要遵循系统对应的“开发框架”,获取系统提供的能力,来完成自己产品对应的功能。如启动,获取用户的操作,发送网络数据等。“开发框架”定义了一些app获取系统能力的“通道”,app通过这些“通道”就可以很方便的使用系统对应的能力。在这里,应用程序和操作系统之间的关系可以抽象成下图:

我们发送的每一条信息,输入的每一个密码,分享的每一条说说,拍摄的每一张照片都需要经过这个“通道”,由操作系统处理后才能完成。

很明显,“通道”是实现功能的“必经之路”,如果“通道”被劫持、篡改,我们的敏感信息就很有可能被暴露。然而很不幸的是,这种劫持、篡改通道的技术已经很成熟了,一般我们都称它为“动态注入”。在被注入后,应用程序与操作系统间的“通道”就会变成下图:

也就是说所有的数据都会被某个“其他应用”“窥视”一遍,然后才会到达系统。

如果你的手机可以获得Root权限,并且手机上安装了某个具有“动态注入”能力的“其他应用”A,那么,当你使用应用程序时,应用程序的启动和运行可能会经历下面的过程:

  1. 应用程序启动后,A会使用“动态注入”技术,将自己的“窥视”代码注入到应用程序的进程中。
  2. “窥视”代码被注入后,会针对性的拦截应用程序到系统的“通道”。
  3. 当应用程序使用“通道”时,数据会先被A应用“窥视”后,才会交给操作系统。

监控应用程序的行为,只需如此“简单”的三步,并不比“把大象放冰箱里”复杂。

最后,引用一下“技术本身并不可耻”的名言,“动态注入”如果能够合理利用,可以通过获取用户的使用习惯来做一些针对性的体验优化,还可以控制一些软件的自启动和流量使用。然而,相信在这个浮躁的社会里,并不是每个人都像我一样单纯、善良。

对了,再补充一句:该技术不仅仅适用于安卓系统。

 

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
注册表知识大全(基础篇)
装上这几个app,手机再也不卡了
全面剖析App是如何窃取你隐私的?
你真的会用Android系统吗?大师教你玩转安卓机
【涨姿势】解惑手机APP的那些“糟心事”
支付宝被盗刷?八招教你防止微信和支付宝被盗刷
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服