`
wyk86485480
  • 浏览: 28665 次
  • 性别: Icon_minigender_1
  • 来自: 沈阳
文章分类
社区版块
存档分类
最新评论

android 上的API函数钩子,利用CydiaHook实现

阅读更多

发布将近一年了,最近发现还是有些人需要的,github上也有些人fork了。

例子代码,发布在github上,地址:<https://github.com/zencodex/cydia-android-hook>

### CydiaHook

利用Cydia Substrate SDK 开发,可以HOOK java层或NATIVE层 API接口。

### 本代码功能
写代码的初衷是因为有个app,需要保存数据到SD卡上,并且app里面有判断SD挂载的状态。没有SD卡,会造成程序逻辑有问题,很多功能无法正常使用,而我的手机没有装SD卡。

另外这种HOOK方式也有助于调试程序,不必因为修改ROM底层,而引起手机变砖,简便好用,目前Cydia Substrate在某些手机中可能会有不稳定的情况,我测试的机型是ZTE U969,还找不到相关ROM。

- HOOK android.os.Environment.getExternalStorageState(),强制返回,已挂在状态。
- 执行mount bind 挂载可以读写目录到 SD卡的路径,每个终端方案商的挂载点都可能不同,请根据自己的情况,修改成正确的挂载点路径。
- 可以根据自身需要,修改挂载实现函数,可以HOOK framework中的任何API。在Main.java里,比如IMEI,GPS模拟等等。

### 准备工作

- ROOT过的手机一部,没有ROOT的,请自行搜索方法。
- Eclipse 上安装 Android Substrate SDK,参考:<br>
http://www.cydiasubstrate.com/id/73e45fe5-4525-4de7-ac14-6016652cc1b8/
- 手机端去Google Play 下载安装 Cydia Substrate
- Eclipse 导入本代码,编译后安装到手机。
- 手机上运行Substrate,界面上点击“Link Substrate Files”,再点击 “Restart System(Soft)”
- 通过CydiaHook,查看挂载路径和状态。

参考官方的入门教程 VioletExample:<br>
http://www.cydiasubstrate.com/id/20cf4700-6379-4a14-9bc2-853fde8cc9d1/

---

### cydia-android-hook
Cydia Substrate demo, hook getExternalStorageState, always return MOUNTED status.

转自:http://www.yinqisen.cn/blog-407.html
分享到:
评论

相关推荐

    APIHOOK钩子截获DirectX api游戏开发函数调用.zip

    "APIHOOK钩子截获DirectX api游戏开发函数调用.zip"这个压缩包就提供了这样的技术实现。下面将详细介绍APIHOOK钩子以及如何利用它来截获DirectX API。 APIHOOK,顾名思义,是一种通过设置钩子来拦截API调用的技术。...

    Windows API 函数参考手册

    《Windows API 函数参考手册》是关于Microsoft Win32 API函数的完整参考手册。书中详细介绍了每一个Win32 API函数的使用方法,其中着重介绍其原型表示、函数说明、参数说明、注意事项、相应头文件(.H)、链接库(....

    回调函数以及钩子函数的概念

    要实现Win32的系统钩子,必须调用SDK中的API函数SetWindowsHookEx来安装这个钩子函数。钩子函数在完成对消息的处理后,如果想要该消息继续传递,那么它必须调用另外一个SDK中的API函数CallNextHookEx来传递它。 三...

    api 钩子函数

    在C#编程中,API钩子函数是一种技术,允许开发者拦截和处理系统级的消息或特定应用程序的事件。这种技术在很多场景下非常有用,比如监控系统行为、调试、自动化测试等。在这个例子中,我们将讨论如何使用C#调用...

    android利用三角函数实现仿path菜单支持半圆和圆形及1/4圆

    本文将深入探讨如何利用三角函数来实现一个仿照Path应用的菜单,支持半圆、圆形以及1/4圆的布局,同时提供左上、右上、右下、左下和中心五个方向的定位。这个技术可以帮助开发者构建更美观、动态且精准的用户界面。 ...

    钩子截获对API的调用.zip,还带一个屏幕取词的例子

    "钩子截获对API的调用_又一个截取替换api函数的程序,含95和NT版本,还带一个屏幕取词的例子.txt"很可能是一个文本文件,其中详细描述了如何编写程序来截获API调用,可能包括不同版本的Windows(95和NT)下的实现...

    几个apihook钩子的经典例子,不要错过哟!.zip

    - **VAT(Virtual Address Table)Hook**:对于导出的虚拟函数,可以修改虚函数表来实现钩子。 3. **经典例子解析** - **API Hooking Revealed** 这可能是一份关于API Hooking的深入教程,涵盖了各种钩子技术的...

    利用钩子函数轻松实现应用程序的汉化C++源代码程序小实例

    在C++编程中,应用程序的汉化...文件"VC2010-08-25-利用钩子函数轻松实现应用程序的汉化"可能包含了完整的示例代码和编译环境,可以帮助读者更好地理解这一技术,通过实践进一步掌握钩子函数的使用和程序汉化的方法。

    API函数大全-PowerBuilder API.rar

    - **API函数**:API(Application Programming Interface)是一组预先定义的函数,允许开发者通过调用来实现特定的功能。在PowerBuilder中,API函数可以扩展其内置功能,提供操作系统级别的交互,例如文件操作、...

    APIHook钩子文件监控 监控指定目录下文件的读写和修改.zip

    在本压缩包中,包含的文件主要是C++源代码及相关项目配置文件,用于实现一个APIHook钩子文件监控系统,该系统能够监控指定目录下的文件读写和修改操作。 1. **APIHook原理**: APIHook是通过拦截系统API调用来改变...

    Windows API Hook钩子大揭密.zip

    这可以通过两种方式实现:静态Hook(修改目标函数的入口地址)和动态Hook(利用消息机制或线程局部存储来实现)。 3. **APISpion.exe**: 这是一个可能的示例程序,用于演示API Hook的使用。它可能会监控并显示...

    API函数解析,详细说明API函数的用途和参数说明

    API(Application Programming Interface)函数是操作系统、库或框架提供给开发者使用的接口,允许开发者通过调用这些函数来实现特定的功能。API函数解析是理解和利用这些功能的关键步骤,它涉及到函数的作用、参数...

    x86 x64函数钩子库

    "x86 x64函数钩子库"指的是能够在这两种平台上工作的函数钩子实现。 "Mhook钩子库"是一个这样的库,它允许开发者在x86和x64程序中设置和移除函数钩子。这个库弥补了微软的"Detours库"的不足,Detours库虽然功能强大...

    使用apihook钩子修改Windows界面,使Windows有些奇妙的变化,如给缺省按钮加图标等.zip

    DLL钩子通过替换目标API函数的地址,使得在程序调用这些函数时,实际上是调用了我们自定义的函数。 `Lg3d32.c`和`Test.c`是C语言源代码文件,分别包含了实现API钩子功能的核心逻辑和测试代码。`Lg3d32.def`和`Test....

    ( API钩子.rar )

    API钩子是Windows编程中的一种技术,用于监控或拦截特定API函数的调用。VB,全称Visual Basic,是微软开发的一种面向对象的编程语言,它具有简单易学、功能强大的特点,常用于开发Windows应用程序。在VB中实现API...

    Android回调函数的例子

    回调函数本质上是将一个函数作为参数传递给另一个函数,待特定条件满足或特定事件发生时,被调用的函数将执行预设的任务。这种方式可以让我们在不改变原有函数结构的情况下,增加新的功能或行为。 在Android环境中...

    监视exe调用了哪些api函数的vc++源码

    标题 "监视exe调用了哪些api函数的vc++源码" 提到的是一个关于使用VC++编程语言来实现监控可执行文件(exe)调用的API函数的功能。这通常涉及到系统级别的编程,特别是Windows API钩子技术,用于跟踪系统调用。 在...

    精通windowsAPI函数接口编程实例源代码

    《精通Windows API函数接口编程实例源代码》是一个深入学习Windows API编程的重要资源,它涵盖了大量实践案例,旨在帮助开发者熟练掌握API接口的使用技巧。Windows API是微软为开发者提供的一个平台,通过它,程序员...

    Delphi 完成的API Hook钩子dll,带示例,可截获API

    Delphi 完成的API Hook钩子dll,带示例,可截获API 用Delphi编写完成的API Hook钩子dll源代码,两个DPR文件,一个是DLL的工程文件,一个是示例的文件,通过这个钩子,可截获API,从前也有这样的,不过觉得这个用起来...

Global site tag (gtag.js) - Google Analytics