0x00 背景
前人栽树,后人砍树,不然怎来薪火相传。有意义的卷,能带来进步!
昨天写完《JDK8任意文件写场景下的Fastjson RCE》后,看到Landgrey大佬的文章再次补充了一下SpringBoot使用Accept头触发charset.jar加载的方式,应该是非常之完美的SpringBoot Fat Jar任意文件写的RCE了。
有很长一段时间没写文章了,也很久没搞Java相关的漏洞研究了,因为工作需要,忙碌了好一段时间的后端开发,都有点落下安全相关的研究了,实属堕落。
最近研究了一下多个业内使用的RASP实现,对于RASP又有了更加深入的了解,其中,RASP的类加载机制,我个人觉得应该是RASP中最核心的地方,也是最容易出BUG的地方了。对于这个RASP比较核心的类加载机制,我在这篇文章中,将会以OpenRASP为基础例子,去对其原理进行讲解,并给出与之不同的实现,分析出各自实现的优劣点。
最近,我的朋友“老嗨”,他参加了一个某云举办的号称可能史上最强的使用了AI技术的Webshell检测系统挑战赛…因为我没什么时间去搞这个,所以,我把我珍藏多年,姿势比较多的JSP Webshell发给了老嗨,老嗨跟我说,全部bypass了,但最后的结果非常惨烈,有被抢了的,有的因为没适配windows导致降级的,也有因为裁判机使用了openjdk亦或者他根本不会java瞎配的classpath导致不能运行的,惨惨。