插件前奏-android黑科技 hook介绍

来源:互联网 发布:制作windows to go盘 编辑:程序博客网 时间:2024/04/27 19:14

转载请注明出处:http://blog.csdn.net/hejjunlin/article/details/52091833


Android hook相关学习

参考:http://www.cydiasubstrate.com

前言:

在插件化编程中中,hook一直是个非常关键的环节,如果在合适的时机,找到对应的hook点,可以通过欺骗系统的方式,来进行瞒天过海,干自己想干的事,下篇会详细介绍360的开源插件DroidPluginhook的方式,如果系统中某些东西能被hook掉,是一个很危险的事情,如在一些有签名或者md5防护的游戏中,我们可以确定好位置,然后hook相关方法和修改参数,达到测试的效果,能确保找准位置,那么剩下的就寻找游戏的验证即可。这是用于在破解方面。另外大家最熟悉的就是制作病毒,获取系统短信电话等重要信息,发向远程邮箱,进行。。。

那么,我们就找了一个cydiasubstrate框架开始测试,下面的代码相关的,是使用官网介绍的相关例子。

http://www.cydiasubstrate.com/id/20cf4700-6379-4a14-9bc2-853fde8cc9d1/

建议读者去读官网介绍,英文的,不多,一般都能理解掉。实在不想看官网的,那就继续本篇文章吧。

首先是在手机(盒子,笔者是做盒子开发的,就以盒子为例)上安装cydia框架:

https://cache.saurik.com/apks/com.saurik.substrate_0.9.4010.apk

打开后,简单的英文,按照说明点一下即可。

建立工程

建立好工程以后,将所需jar包导入



然后开始配置AndroidManifest.xml文件


1.Application对象,android程序最优先启动的

2.这里设置主类,跟正常的安卓工程不同,这里相当于开发一个插件,插件不是一个可以启动看起来有界面的。如:activity这些声明就没有了


3.这个权限,代表着cydia能够识别他为自己的插件,可以启动它


入口介绍:

这里initialize()是初始化相关东西,这个相当于main函数入口


 

然后下面的方法,看注释,这里也就不再多叙述。



这个工程的目的是,hook手机(盒子上)上面的文字,即android系统平台上setText的地方,

1首先要注意的是,我们要开始装substrate框架,如图,下载好,用adb install xxx



2.这里我们没有Mainlaunch的入口,所以这个程序是没有图标显示到手机桌面的,因为我们已经指定了他是cydia的一个插件,所以这个时候,我们重启手机(盒子)即可启动此插件。

   





通过上面三张图的对比,发现我们已经正常写好了一个插件。之所以写这个小Demo,是为了,我们接下来更好的分析DroidPlugin相关。

 

相关测试demo都放到百度网盘,有兴趣的可以试试。

 链接:http://pan.baidu.com/s/1bp1ahgb 密码:g0vu


第一时间获得博客更新提醒,以及更多android干货,源码分析,欢迎关注我的微信公众号,扫一扫下方二维码,即可关注。 
这里写图片描述

如果你觉得好,可以分享此公众号给你更多的人,原创不易。


4 0