Skip to content

Releases: SummerSec/ShiroAttack2

ShiroAttack2 5.0.1

12 Apr 11:51

Choose a tag to compare

ShiroAttack2 5.0.1

更新内容

本版本为 5.0.0 的维护更新,侧重 命令执行与请求头合并、CommonsBeanutils 1.8.3 链兼容性,以及若干 UI / 集成侧调整。

命令执行与 HTTP

合并请求头时改为:先应用全局头,再以本次请求头覆盖(Cookie 仍与已有值合并),避免全局里的 Authorization 覆盖命令执行请求中的 Basic 命令。
bodyHttpRequest 在 GET 且空 body 时使用 flattenHutoolResponse 汇总响应头与正文,与链探测一致,便于解析正文中的 $$$...$$$。
修正 bodyHttpRequest 中 | 为 || 的逻辑条件。
CommonsBeanutils 1.8.3

多个 *_183 链中 BeanComparator 的 serialVersionUID 与目标运行时 commons-beanutils 1.8.3 对齐,减少 InvalidClassException。
其它

MainController、gui.fxml、jEG 回显相关类、.gitignore 等与 5.0 分支一致的增量更新。
升级说明

若曾在全局请求头中配置 Authorization,在 5.0.0 下可能覆盖命令执行专用头;5.0.1 已改为 单次请求头优先。
运行环境与产物形态与 5.0.0 相同,推荐下载 Release 中的 bundle.zip。


本版本 Release 使用 Azul Zulu 8 + JavaFX 构建。
与当前本地开发环境保持一致,便于复现和排查。

下载说明

文件名 说明
*-zulu-8-jfx.jar Azul Zulu 8 + JavaFX 单文件运行版本
*-zulu-8-jfx-bundle.zip Azul Zulu 8 + JavaFX 完整压缩包,包含 jar、lib/data/

运行方法

java -jar shiro_attack-<version>-<jdk>.jar

推荐优先下载 bundle.zip,解压后直接运行
若需自行构建,请确保仓库内 libs/jEG-core-1.0.0.jarlibs/jmg-sdk-1.0.9.jar 可用

ShiroAttack2 v5.0.0-r4

28 Mar 14:41

Choose a tag to compare

ShiroAttack2 5.0.0

本版本围绕 UI 体验、第三方生成器集成、Shiro Key 修改能力、日志排障能力做了较大幅度增强,并补充了英文文档与发布流程支持。

主要更新

  • 重构主界面与功能区布局,优化参数区、输出区、底部信息区显示效果
  • 新增中英文界面切换,主要菜单、标签页、按钮、提示文案支持运行时切换
  • 新增应用窗口 icon、GitHub 链接、默认目标地址与更合理的窗口尺寸
  • 优化 Header / POST Body 输入方式,改为长文本模式并默认按用户输入直接覆盖发送
  • 输出框统一支持长文本查看,适合 rememberMe、Base64、响应正文等场景

Shiro Key 相关增强

  • 新增“修改 Shiro Key”独立功能页
  • 支持多种 rememberMeManager 定位与修改变体:
    • filterConfigs -> shiroFilterFactoryBean
    • getFilterRegistration -> shiroFilterFactoryBean
    • filterConfigs -> 常见 Shiro 名依次匹配
    • getFilterRegistration -> 常见 Shiro 名依次匹配
    • filterConfigs -> 包含 shiro 的名称扫描
  • 新增高风险模式:
    • 高风险: 全候选 rememberMeManager 扫描
  • 修改 Key 后自动进行新旧 Key 验证:
    • 新 Key 可用 / 旧 Key 失效
    • 新 Key 可用但旧 Key 仍可用
    • 新 Key 验证失败
  • 支持修改 Key 历史记录、清空历史、结果分级提示

第三方生成器集成

Echo Generator(jEG)

  • 集成 java-echo-generator
  • 支持来源切换:
    • 传统模式
    • jEG
  • 支持更多服务端、模式、格式组合
  • 未提供 Shiro Key 时,允许优先生成第三方原始结果用于调试
  • 输出增加参数组合信息与失败原因展示

Memshell Generator(jMG)

  • 集成 java-memshell-generator
  • 支持来源切换:
    • 传统模式
    • jMG
  • 扩展了工具、服务端、马类型、格式等下拉选项
  • 增强对不同 jMG 版本 payload 提取方式的兼容
  • 失败时显示第三方原始错误,并明确回退状态
  • 针对 SERVER_SPRING_MVC 增加默认马类型联动与风险提示

爆破与利用体验优化

  • “爆破利用链及回显”改为后台任务执行
  • 新增利用链爆破进度条与停止按钮
  • 每组组合实时输出进度与测试结果,不再长时间无反馈
  • “爆破密钥”同样支持后台任务、进度条、停止按钮
  • 修复多个 JavaFX 线程更新问题,避免界面卡死或假死
  • 未找到构造链时不再强制弹窗,仅在日志区输出结果

命令执行与输出改进

  • 区分命令输入与输出内容展示:
    • [command]
    • [result]
    • [error]
  • 修复命令执行时对非标准返回格式的误判
  • 优化编码处理,避免正常输出被误识别为失败
  • 日志文件改为 UTF-8 写入

日志与排障

  • 新增文件日志能力
  • 日志目录:
    • logs/
  • 每次运行按时间戳生成独立日志文件,便于排查:
    • shiro_attack-yyyyMMdd-HHmmss.log
  • 关键功能入口、异常栈、任务失败、代理设置等均写入日志文件

文档与发布流程

  • 新增英文 README:
    • README_EN.md
  • 新增使用文档:
    • docs/USAGE.md
  • 更新 README 内容与截图
  • 优化 GitHub Release 工作流,支持自动生成 changelog

兼容性说明

  • 推荐继续使用 Java 8 / JavaFX 8 环境运行
  • 修改 Shiro Key 的“高风险模式”会尝试覆盖更多候选对象,但不等于一定覆盖集群所有节点
  • 对于多 rememberMeManager / 多节点环境,建议结合新旧 Key 自动验证结果判断是否完全生效

版本说明

  • 版本号更新为:5.0.0
  • 主产物:
    • shiro_attack-5.0.0-all.jar

修复低版本jdk不兼容的问题

02 Jul 06:47

Choose a tag to compare

修复自定义请求bug,支持复杂请求头

31 Aug 15:54

Choose a tag to compare

fix bug

20 Aug 02:07

Choose a tag to compare

fix bug #29

4.5.4

03 Jul 01:30

Choose a tag to compare

感谢whami-root提交的pr, #25
1、增加自定义请求头、post参数。2、优化post型shiro的探测和利用

4.5.3

24 Apr 04:24

Choose a tag to compare

4.5.3 不在采用加载lib的方式去处理不同cb版本的问题,而是采用suuid字段修改的方式。
4.5.3 版本修改了冰蝎内存马的问题,参考 rebeyond/Behinder#187https://github.com/Y4er/ysoserial/blob/main/src/main/java/ysoserial/payloads/templates/SpringInterceptorTemplate.java

4.5.2tomcat 回显执行命令修复版本

20 Jan 03:33

Choose a tag to compare

修复注入内存马时出现sun.net.www.protocol.http.HttpURLConnection$HttpInputStream@1a1bc158 问题

去除掉特征

19 Jan 09:22

Choose a tag to compare

去掉文章中https://xz.aliyun.com/t/10746特征

  1. 新版本的判断方式,是在返回包添加了host头
  2. 新版本注入内存马dy改成user=
  3. 优化了发包请求
    直接替换jar就行,其他文件请下载老版本。
    : )之前的想改特征来着,忘记了

4.5.1

18 Jan 05:54

Choose a tag to compare

1、增加通用的过waf方式,默认没有开启
com/summersec/attack/deser/frame/Shiro.java:47
2、增加30个user agent随机使用
com/summersec/attack/utils/UserAgentUtil.java
com/summersec/attack/utils/HttpUtil.java:83
改变所有302为不跟随
3、修改密钥确认,减少误报
com/summersec/attack/core/AttackService.java:290
4、增加多个shiro时的爆破方式和“检测当前密钥“
com.summersec.attack.core.AttackService#keyTestTask2 、com/summersec/attack/core/AttackService.java:255
5. 内存马模块增加AddDllfliter内存马
主要是上传dll自动加载
感谢@whami-root 提交pr