杭州电子科技大学-Vidar-Team
用户1685
添加快捷方式
分享
探索Java RASP Bypass新姿势
输入“/”快速插入内容
探索Java RASP Bypass新姿势
用户1685
2024年4月10日修改
本文所讨论的环境均为Linux
假设已经获取到任意代码的执行权限
思路
前不久看到jattach这么一个项目,发现JVMTI还能动态加载so库,这是一个比较有意思的点,意味着这可能会更底层一些,说不定很多RASP就无法hook到。遂研究一下原理。
探索
先放一张java agent通信的原理图
图中我们可以看到目标JVM应该是会存在一个Thread去处理agent请求
简单跟进jdk源码查看一下
处理请求的函数是
attach_listener_thread_entry
函数
会跟进请求的数据包去选择支持的方法(
AttachOperationFunctionInfo
)去执行