Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/Thehepta/HideApk
https://github.com/Thehepta/HideApk
Last synced: 13 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/Thehepta/HideApk
- Owner: Thehepta
- Created: 2024-03-05T17:19:30.000Z (8 months ago)
- Default Branch: master
- Last Pushed: 2024-10-26T05:18:07.000Z (17 days ago)
- Last Synced: 2024-10-26T17:13:22.109Z (17 days ago)
- Language: C++
- Size: 19 MB
- Stars: 144
- Watchers: 6
- Forks: 40
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
### Introduction
隐藏式动态加载一个apk并运行,dex加载使用的是内存dex加载,so加载使用的是自定义linker,从内存中加载so。这可以防止so maps路径检测,so遍历。
当前项目版本,理论上来说可以支持任何改动不太大的android 系统的soinfo
它是一个黑客工具,也可以是一个安全项目,他的主要作用就是隐藏
是没有在java代码中使用native函数,主要原因是jni_onload函数的调用没有写,另外就是
native静态注册的函数,需要再去手工解析,然后注册进去,这一部分也没做。### support
+ android11
+ android12
+ android13### deficiencies
+ so加载,使用的是apk中的so自动加载,调用System.load这些主动加载函数不必调用(如果你调用了,会找不到了so,路径问题不多说)
+ so单例,同一个apk中的so不能互相依赖,比如我们经常使用liglog.so,动态库打到apk中是不行的,可以看看demo中我是如何处理的。
+ 只能使用动态注册的java native函数,不支持静态java native函数,静态java native函数需要一个解析系统,这部分兼容没搞
+ so只能单独使用,不会加入到系统库里,如果想要外部使用,或者联动,需要在自定义一个linker so链表### expand
目前soinfo兼容有两种方案,第一种动态定位重新赋值soinfo,第二种,不断地进行so版本更新,将soinfo结构体写死
第一种方案兼容好,更优雅,但是可能会慢,第二种方案更快,但是需要一直兼容,我觉得不会有人选择第二种# Future
+ 更为强大的so防检测功能,将so完全打碎,使任何so检测,符号检测,so格式扫描,so特征检测完全无效
+ 落地生根,寻找适合的路径,并进行伪装