3月到8月有很多老师傅写了很多文章关注对shiro的应用,我也综合了各位老师傅的想法和思
路做了些脚本。 key检测: 之前的脚本批量检测shiro是否存在,或者说获取key我们最多应用的是xmlDns模块ysoserial,
但这有一个问题,即如果shiro不出网,那么就会出现问题,所以这里有一个新的方法,应用
一个空的SimPlePrincfalCennectiadri作为我们要序列化的对象,即构造一个正确的remembe
rMe触发反序列化.
如果key是正确的,则不会在响应包中跳转rememberMe=deleteMe,最先,我在脚本中通过检
测跳转包中的deleteMe关键字来进行判断,结果看到有些环境实际上会跳转rememberMe=delete
Me,因此,这是一个非常暴力的方法,其关键代码如下2.回显: 回显点这个也是有很多老师傅发的很多,从linux下的半回显点到kingkk老师傅的tomcat通用半回
显点到c0ny6老师傅的半自动挖掘再到fnmsd老师傅的通用回显点,这中间还穿插着其他老师傅
的文章,当然最后我还是用了fnmsd老师傅的代码,一路走来不得不感慨老师傅们真的是tql以及
这种不断提新点子不断完善的过程,实在让本菜鸡拍断了大腿。实际上,fnmsd主控用的也是c0
ny6主控的思想,就是搜索request对象的当前线程对象,确定指定的请求头是否存在于请求头中
,随后从ctionaire对象获取输出。 另外,fnmsd老师傅还对代码中存在的一些小问题做了几次版本的修改,最后我在实际应用的时
候还是有一点问题的,那就是老师傅设置的深度优先搜索是52层,结果测试还是遇到了52层没
有搜到的情况,结果随便改为100层就找到了...和应用ysoserial中一些cc链比较长生成的payloa
d差不多接近tomact对header的默认限制长度,有点危险。Nginx则没有直接冷却,如果遇到Ng
inx需要改变思路,比如尝试先分段注入,随后再执行。事实上,回显中提到的kingkkhoster实
际上就是内存权限管理shell,开始时有点杂乱,但实际上和一路走来看到内存和webshell到最
后被利用的点是不同的,内存权限管理webshell的思想是注册filter(当然还有星际权限管理webs
hell的思想是注册controller,链接在此基于内存权限管理webshell的无文件攻击技术研究),而
事实上,有了fnmsd权限管理思想后,内存权限管理webshell的需求可能不会太大,但是有时候
红队可能需要一个内存权限管理shell来维护权限(?或需要配合reGeorg代理进内网,所以这件
事还是有必要的.最先看到的是threedr3am老师傅基于tomcat的内存Webshell无文件攻击技术文
章,解决了shiro下的利用问题,也可以实现勉强通杀tomcat(原因除了tomcat6,请看评论区,
这一点我还没有测试过),但遇到sihro最大的问题是长度,没错,这是超长的长度。我也试过修
改ysoserial和payload的代码来缩短payload的时间,结果看到我真的不行,长亭老师傅的解决
方案看了一眼觉得效果不太好,再加上后来继续去跟回显,就没管它。后见老师傅一笑而过,
解决了长度的问题。
ZhouSa.com-周飒博客 路做了些脚本。 key检测: 之前的脚本批量检测shiro是否存在,或者说获取key我们最多应用的是xmlDns模块ysoserial,
但这有一个问题,即如果shiro不出网,那么就会出现问题,所以这里有一个新的方法,应用
一个空的SimPlePrincfalCennectiadri作为我们要序列化的对象,即构造一个正确的remembe
rMe触发反序列化.
如果key是正确的,则不会在响应包中跳转rememberMe=deleteMe,最先,我在脚本中通过检
测跳转包中的deleteMe关键字来进行判断,结果看到有些环境实际上会跳转rememberMe=delete
Me,因此,这是一个非常暴力的方法,其关键代码如下2.回显: 回显点这个也是有很多老师傅发的很多,从linux下的半回显点到kingkk老师傅的tomcat通用半回
显点到c0ny6老师傅的半自动挖掘再到fnmsd老师傅的通用回显点,这中间还穿插着其他老师傅
的文章,当然最后我还是用了fnmsd老师傅的代码,一路走来不得不感慨老师傅们真的是tql以及
这种不断提新点子不断完善的过程,实在让本菜鸡拍断了大腿。实际上,fnmsd主控用的也是c0
ny6主控的思想,就是搜索request对象的当前线程对象,确定指定的请求头是否存在于请求头中
,随后从ctionaire对象获取输出。 另外,fnmsd老师傅还对代码中存在的一些小问题做了几次版本的修改,最后我在实际应用的时
候还是有一点问题的,那就是老师傅设置的深度优先搜索是52层,结果测试还是遇到了52层没
有搜到的情况,结果随便改为100层就找到了...和应用ysoserial中一些cc链比较长生成的payloa
d差不多接近tomact对header的默认限制长度,有点危险。Nginx则没有直接冷却,如果遇到Ng
inx需要改变思路,比如尝试先分段注入,随后再执行。事实上,回显中提到的kingkkhoster实
际上就是内存权限管理shell,开始时有点杂乱,但实际上和一路走来看到内存和webshell到最
后被利用的点是不同的,内存权限管理webshell的思想是注册filter(当然还有星际权限管理webs
hell的思想是注册controller,链接在此基于内存权限管理webshell的无文件攻击技术研究),而
事实上,有了fnmsd权限管理思想后,内存权限管理webshell的需求可能不会太大,但是有时候
红队可能需要一个内存权限管理shell来维护权限(?或需要配合reGeorg代理进内网,所以这件
事还是有必要的.最先看到的是threedr3am老师傅基于tomcat的内存Webshell无文件攻击技术文
章,解决了shiro下的利用问题,也可以实现勉强通杀tomcat(原因除了tomcat6,请看评论区,
这一点我还没有测试过),但遇到sihro最大的问题是长度,没错,这是超长的长度。我也试过修
改ysoserial和payload的代码来缩短payload的时间,结果看到我真的不行,长亭老师傅的解决
方案看了一眼觉得效果不太好,再加上后来继续去跟回显,就没管它。后见老师傅一笑而过,
解决了长度的问题。
还没有评论,来说两句吧...