Skip to content

Releases: SummerSec/ShiroAttack2

ShiroAttack2 v5.1.1

27 May 11:31

Choose a tag to compare

ShiroAttack2 v5.1.1

更新内容(commits)

新增
GUI 全新界面:现代 CSS 主题(app.css)、Header/POST Body 并排布局、对齐网格重排
JMG 内存马生成 Tab:新增 pass/path/key 输入字段,支持 MemshellGenerateRequest 参数化
CLI --jeg 标志:exec 命令支持第三方 jEG 回显生成器
CLI --dynamic-memshell 标志:运行时 Javassist 编译内存马源码(替代硬编码 Base64)
jEG 回显增强:MODE_CMD 设置 GADGET_JDK_TRANSLET + shiroKey + Authorization 头(明文),支持明文/Base64 双格式响应解析
Gadgets.createTemplatesImpl(byte[]):支持直接传入字节码构造 TemplatesImpl,Javassist superclass 修复
修复
修复 GUI 指定 Key 爆破在多 Shiro 场景下 multiShiroMode 硬编码 false 导致误判(Closes #89
修复 GodzillaFilter/Servlet/TomServlet parseObj 在 coyote.Request 场景下的空指针(添加 fallback + null guards)
修复 classifyHttpResponse 回显标记检测优先级(echo markers 应在 deleteMe 之前判断)
修复 coerceRememberMeCookieHeader 不接受 Base64 格式 payload 的问题
消除启动时 SLF4J "Failed to load class StaticLoggerBinder" 警告(添加 slf4j-nop 依赖)
消除启动时 MLog/mchange java.util.logging 初始化信息输出
移除 echo 调试日志和 rememberMe 原始打印噪音


本版本 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.1.0

15 May 14:02

Choose a tag to compare

ShiroAttack2 v5.1.0

更新内容(commits)

  • release: 5.1.0 — CLI 命令行模式、Gadget 兼容性修复、内存马/改 Key 支持 (1cfdd85)
  • Merge pull request #88 from SummerSec/feature-download-key-dict (a495bd0)
  • fix: 所有 _183 Gadget 的 serialVersionUID 从 1.9.2 修正为 1.8.3 (259e474)
  • Merge pull request #87 from SummerSec/feature-download-key-dict (f060227)
  • fix: CommonsBeanutilsString_183 serialVersionUID 写反,1.9.2 -> 1.8.3 (1153850)
  • Merge pull request #86 from SummerSec/feature-download-key-dict (edd306d)
  • feat: 下载 Key 字典按钮移至 AES GCM 和检测当前密钥之间 (50701a9)
  • Merge pull request #85 from SummerSec/feature-download-key-dict (b9ec697)
  • feat: 下载 Key 字典按钮移至回显区域下方对齐,缩短按钮文字 (6d83c0e)
  • Merge pull request #84 from SummerSec/feature-download-key-dict (5d34496)
  • feat: 爆破密钥同时测试 AES-CBC 和 AES-GCM 两种模式 (f79e74a)
  • Merge pull request #83 from SummerSec/feature-download-key-dict (e1d768e)
  • feat: 将下载最新 Key 字典按钮从菜单移至检测当前密钥左侧 (a2dbfca)
  • Merge pull request #82 from SummerSec/feature-download-key-dict (0306f9b)
  • feat: 添加一键下载最新 Key 字典功能,将 data/shiro_keys.txt 纳入版本管理 (cb6e403)

本版本 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 5.0.2

06 May 11:37

Choose a tag to compare

ShiroAttack2 5.0.2

更新内容(commits)

  • release: 5.0.2 (d81ddbe)
  • fix: 自定义 Content-Type 时请求头出现重复 Content-Type 行 (6ef7dd9)
  • fix: macOS Apple Silicon + Zulu JDK 8 下 AWT native library 加载崩溃导致 GUI 启动失败 (c52104f)
  • feat: 统一 jMG 与内置内存马 Shiro 注入流程 (c8c0969)
  • docs: 5.0.1 发行说明与 Release 正文生成 (ef63708)

本版本 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 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