能力值:
( LV2,RANK:10 )
在线值:
|
-
-
2 楼
这个方案虽然不错,但是其实实际上人家会考虑如何从ROM是不是真的入手,而这个玩意的难度比maps蛋疼多了。另外,可能还得考虑linker下面2组获取modules的数据
|
能力值:
( LV1,RANK:0 )
|
-
-
3 楼
leftlizhi
这个方案虽然不错,但是其实实际上人家会考虑如何从ROM是不是真的入手,而这个玩意的难度比maps蛋疼多了。另外,可能还得考虑linker下面2组获取modules的数据
rom真不真好解决后面再分享. 可能还得考虑linker下面2组获取modules的数据, 针对这个问题能否详细阐述下. 没理解
|
能力值:
( LV6,RANK:90 )
|
-
-
4 楼
riru不是本身就做了hide么?调用一下他的函数就可以了吧?似乎不需要在内核层面修改?
https://github.com/RikkaApps/Riru/blob/8b337d16dd7f104f543e54ad7d82149018df3298/riru/src/main/cpp/hide/hide.cpp#L93
最后于 2021-10-15 12:13
被virjar编辑
,原因:
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
你都修改内核了,为什么不直接加个hide整个vma的系统调用,被隐藏的segment直接从maps里消失不是更好?
|
能力值:
( LV1,RANK:0 )
|
-
-
6 楼
不吃早饭
你都修改内核了,为什么不直接加个hide整个vma的系统调用,被隐藏的segment直接从maps里消失不是更好?
好主意,我已经按照这种模式改了
|
能力值:
( LV1,RANK:0 )
|
-
-
7 楼
virjar
riru不是本身就做了hide么?调用一下他的函数就可以了吧?似乎不需要在内核层面修改?https://github.com/RikkaApps/Riru/blob/8b337d16dd7f104f5 ...
学习了,一段匿名空间但是有可执行权限, 在防护系统看来是否很可疑?
|
能力值:
( LV6,RANK:90 )
|
-
-
8 楼
github_yhnu
学习了,一段匿名空间但是有可执行权限, 在防护系统看来是否很可疑? 感觉还好吧,目前的风控sdk大多还是扫描so文件特征。
最后于 2021-10-18 10:29
被virjar编辑
,原因:
|
能力值:
( LV2,RANK:10 )
|
-
-
9 楼
github_yhnu
学习了,一段匿名空间但是有可执行权限, 在防护系统看来是否很可疑?
很可疑,某讯就会检测此类内存段
|
能力值:
( LV2,RANK:10 )
|
-
-
10 楼
不吃早饭
很可疑,某讯就会检测此类内存段
那么如何过内存段是可执行属性检测呢 如果代码需要长时间驻留在内存里执行的话
|
能力值:
( LV2,RANK:10 )
|
-
-
11 楼
不吃早饭
很可疑,某讯就会检测此类内存段
要是能操控cpu就好了
|
能力值:
( LV2,RANK:10 )
|
-
-
12 楼
木志本柯
那么如何过内存段是可执行属性检测呢 如果代码需要长时间驻留在内存里执行的话 用户层的话就是拦截io操作,重定向maps,smaps文件,隐藏map_files目录,实现难度较高。内核层的话隐藏对应vma即可,难度较低。
最后于 2021-10-18 12:58
被不吃早饭编辑
,原因:
|
能力值:
( LV2,RANK:10 )
|
-
-
13 楼
Android能不能无痕hook内存属性检测api 返回假的属性值
|
能力值:
( LV6,RANK:90 )
|
-
-
14 楼
不吃早饭
木志本柯
那么如何过内存段是可执行属性检测呢 如果代码需要长时间驻留在内存里执行的话 用户层的话就是拦截io操作,重定向maps,smaps文件 ...
重定向maps文件在很多情况导致各种闪退。不太好操作。fd反查可以拿到重定向的真实的路径
|
能力值:
( LV2,RANK:10 )
|
-
-
15 楼
virjar
重定向maps文件在很多情况导致各种闪退。不太好操作。fd反查可以拿到重定向的真实的路径 重定向包括对stat系列函数的hook,许多io相关的操作都需要,例如inotify_add_watch等,当然不只是open/openat。另外重定向只要处理完善并不会出现频繁的闪退,至少我这里没有遇到
最后于 2021-10-18 15:12
被不吃早饭编辑
,原因:
|
能力值:
( LV2,RANK:10 )
|
-
-
16 楼
virjar
重定向maps文件在很多情况导致各种闪退。不太好操作。fd反查可以拿到重定向的真实的路径
一般来讲io重定向的主要问题是内联syscall,这种情况下如果不做专门处理确实会产生逃逸,不过实际上也有解决方案
|
能力值:
( LV6,RANK:90 )
|
-
-
17 楼
不吃早饭
一般来讲io重定向的主要问题是内联syscall,这种情况下如果不做专门处理确实会产生逃逸,不过实际上也有解决方案
ptrace?还是扫描全部可执行区域? 我测试普通的io重定向没有出现过闪退,但是只要对maps进行fd重定向,确实有一定概率闪退。可能真的没有处理完善吧
|
能力值:
( LV2,RANK:10 )
|
-
-
18 楼
-
最后于 2023-1-31 10:33
被RiDiN编辑
,原因:
|
能力值:
( LV1,RANK:0 )
|
-
-
19 楼
RiDiN
https://github.com/rev1si0n/android_kernel_oneplus_msm8998/commit/d3ad2f4925f58df46f787ce46c950fbc15 ...
 欢迎添加更多功能互相学习
|
能力值:
( LV2,RANK:10 )
在线值:
|
-
-
20 楼
github_yhnu
rom真不真好解决后面再分享. 可能还得考虑linker下面2组获取modules的数据, 针对这个问题能否详细阐述下. 没理解
就是,先生成一个进程,再attach它,在检测它的tracerid,看有无自相矛盾
|
能力值:
( LV4,RANK:40 )
|
-
-
21 楼
不吃早饭
你都修改内核了,为什么不直接加个hide整个vma的系统调用,被隐藏的segment直接从maps里消失不是更好?
大佬,这种方法是什么意思呢?是直接删除有rwxp权限的那一行吗?如果直接去掉的话maps中的内存地址不连续了
|
能力值:
( LV5,RANK:60 )
|
-
-
22 楼
木志本柯
那么如何过内存段是可执行属性检测呢 如果代码需要长时间驻留在内存里执行的话
简单用户态可以参考 CobaltStrike,不执行的时候修改内存块权限,唤醒的时候再改一遍,要么就按内核 rootkit做 hook 内核函数写一个 filter
|
能力值:
( LV2,RANK:10 )
|
-
-
23 楼
好像效果不大,用cat去读maps会隐藏,但是程序都是用fopen去读maps,隐藏不了
|
能力值:
( LV4,RANK:40 )
|
-
-
24 楼
不吃早饭
很可疑,某讯就会检测此类内存段
是的,检测inline hook特征的
|
能力值:
( LV2,RANK:10 )
|
-
-
25 楼
感谢分享
|
|
|