冰鞋租用系统c语言,冰鞋3.0 beta9更新浅析

冰鞋3.0 bete9更新了,本此更新如下

修复了内存马防查杀补丁在windows服务器未生效的问题

.anti rasp

1. anti rasp

java这一块rasp比较多,因为jvm提供了相关的技术支持。但是rasp真的是万金油吗?我们以百度的openrasp为例。

众所周知,java的rasp只可以修改java class的字节码,不可以修改native库的字节码。虽然这句话说起来很别扭,但是像我们阐述一个道理,即java agent修改字节码的能力是有限的。

如果我们把很多操作,通过java调用native库,也就是JNI技术去实现,这样就可以绕过java agent了。原理在于,rasp对于很多他认为有关敏感操作的类的方法进行插桩。在很多中漏洞攻击中,最终都要回归到调用相关敏感方法上。在该方法被调用的时候用规则去检测被调用函数的参数。如果认为是敏感操作则拦截本次方法的请求。那么如果有关敏感操作的方法是JNI实现的,那么rasp就无能为力了。

我们可以发现,这种rasp绕过的技巧比较高,需要目标靶机上存在有敏感操作的JNI库方法,我们才可以加以利用。所以,冰蝎的绕过方法是,自己上传一个JNI库文件(windows dll共享库),将相关操作封装为shellcode。

daa85fb25a83c0d37b8b570c57bd89ce.png

049b629a459c01bd4cc8a3cf31831968.png

在load方法中我们可以明显看出这就是执行一段shellcode的功能,不知道广大厂商的EDR能否拦截这种操作。

当然,某些中间件也会自带JNI库,去实现某些高性能操作。我们也可以用来绕过rasp。例如tomcat

b646719220a5a2ef421d6d790726ed07.png

在 org.apache.tomcat.jni 包中,tomcat为了实现高性能的网络IO处理,自己使用C语言的方式重新实现了socket操作,文件读写,MMAP等一系列操作。tomcat需要安装 tomcat-native 扩展才可以使用 org.apache.tomcat.jni 包下的操作。

下面我们使用 tomcat native 扩展来执行命令

be41995017ed2478064c02866b829598.png

0d81148a462df1dd1bfb5abe0d4354d4.png

实测可以绕过openrasp。

结论

冰蝎的rasp绕过只是影响被渗透后无法溯源webshell都执行过什么命令,而不影响渗透前rasp的拦截。看样子rasp们还可以放心

2. windows 内存马防查杀补丁

在前几篇的文章中,我们分析了windows 下jvm attach的机制,其中最关键的一个方法是JVM的 _JVM_EnqueueOperation@20 方法。该方法在被attach后在目标JVM运行。

6cfc494e91b5993a574c22ea78bdaee7.png

而冰蝎的操作是,直接在JVM中干掉这个方法,代码也很简单,直接修改JVM中该方法所在内存的权限,让她不能执行。

fdf5977af99413f8fb3a60729fa0e3fc.png

当然,这种也比较容易恢复,重新设置一下内存的权限即可。可能很多EDR就支持该查杀

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值