共四个jsp webshell 当时用来参加青藤webshell bypass 活动。主要思路是在静态中寻找动态特性:jdk内置javascript引擎,class字节码加载
最直接的写法直接over。另外发现本机PC windows defender也有把0.jsp查杀了。
jdk内置javascript引擎,其中从jdk1.6默认实现是:Rhino jdk,jdk 1.8之后是:nashorn。1.jsp有对jdk不同版本做了适配。
1.jsp中只是使用了js引擎,但是还没充分发挥动态脚本混淆和变形的能力,2.jsp尝试做简单的替换变形。我们知道xss的防护对正则检测的挑战是很大的,个人的感受是xss经常伴随着html和JavaScript的混合,并且JavaScript的变化多端容易混淆带来的进一步的检测难度,这里我们实现了类似的思路:java 与JavaScript的混合,JavaScript的动态多变能力依然可以发力,所以无论是正则还是静态语法分析的检测方式应该都会带来一些障碍。
3.jsp 是基于defineClass0 加载字节码来bypass。当时的思路也是想历次的入侵黑客喜欢用base64做些绕过,java可以动态加载字节码,字节码十六进制传递很难被正则waf抓住。后面在研究 ”冰蟹“ 的时候看到也用了defineclass方式。
jdk中是否要内置JavaScript引擎值得商榷,的确java开发者有比较强的 动态脚本 的需求,比如我自己做些规则引擎,配置系统的时候常用到这样的特性。这样的需求groovy是个很好的榜样,由第三方jar包提供。现实情况下内置的javascript引擎性可能不满足应用需求,比如jdk从1.8将实现换成nashorn,到了jdk15提案中又有人提议替换掉nashorn。还有在自己研究百度openrasp的时候,可以看到最早期版本java对应的规则引擎是由jdk内置提供的,而到最后还是因为性能问题切换到V8引擎。
另记一次solr CVE-2019-0193 远程代码执行漏洞,记得当初这个0day爆出的时候乙方的poc文章对payload打了马赛克,结合官方文档已经猜到是javascript动态配置引起,立马验证确实如此。此处有“default”,脆弱性立马显现。
一句话javascript引擎哪家强有由用户自己决定吧
在写完上面的几个jsp的webshell的时候,和部门做渗透同事交流他提到过一个“冰蟹”。以前对webshell工具的理解上更多的关注自动化,方便,比如“中国菜刀”。但是“冰蟹”不同,他借用了协议交互会话的逻辑去增强bypass能力,开阔了思路值得借鉴。
以百度rasp为例,针对冰蟹,javascript动态脚本的webshell如何去匹配呢?
我们可以看到rasp会hook住java stacks信息,然后去和已知的黑名单库去匹配,比如上面提到的 javascript引擎手法(关键字nashorn),冰蟹(关键字behinder)。不得不说rasp这种以调用栈作为上下文检测的更加精准,但是软件的生命周期是迭代的,对抗的手法也是升级的。
比如javascript引擎随着jdk版本的迭代而变化,策略脚本中缺失了jdk 1.8 之前Rhino方式 。对于冰蟹关键字”behinder“匹配能够防住工具小子,尽管冰蟹作者没有公布源码,但是拟向这类工具更改包名都不是难事,从而逃脱rasp的检查。
告诉你公司车户营运车辆车辆怎么注册花小猪车主操作办法?找白总电话:18423797726。微信: baiz66,微信baiz67,永久QQ:971201647。公司车营运车怎么注册花小猪车主?现在很多...
没有这类APP或软件。因为这类记录查询涉及个人隐私信息,不可能被公开查询到。但是一些连锁酒店等自带APP或者小程序可以查询,甚至可以通过支付软件的消费记录查询,以及一些团购或酒店预定软件上查询具体的详...
最简单的就是单价乘以单支重量计算的,单支不锈钢圆管重量计算公式:(外径-实际厚度)*实际厚度*0.02491*长度,不锈钢管方管重量计算公式:(管口周长/3。 不同类型的钢管的规格是不同的,比如DN6...
当微信聊天记录被误删时,很多人是不是想到了还原。那么,你知道怎么还原吗?本期,小编以安卓手机为例,来教大家怎么还原聊天记录? 安卓还原微信聊天记录 安卓手机还原微信聊天记录...
英雄是时代的产物,伤害是玩家的需求。各位读者姥爷们大家好,我是蜗牛君,国服已经开放了大家期待已久的95级版本了,相信有不少玩家1天就满级了,而随着我们等级的提升问题也随之而来,我们个个职业的加点都成了...
馮驥才《苦夏》閱讀谜底讀書啊,我信赖但有朗朗書聲出破廬,遲早有一日有萬鯉躍龍門之奇象。 這一日,終於擱下扇子。來自天上幹燥清新的風,忽吹得我衣訣飛舉,並從袖口和褲管鉆進來,把周身滑溜溜地撫動...