Skip to content

Releases: lingxisec/ShiroAttack2_bypass

shiro_attack-1.1-all

Choose a tag to compare

@Syst1msec Syst1msec released this 13 Apr 13:17

ShiroAttack2 Bypass v1.1 — 20260413

  • Cookie:合并多行 Cookie、避免 hutool 多头发 rememberMe 被丢;主标签与子标签请求方式对齐。
  • 性能:主标签统一 hutool、修复慢读与超时,界面操作放到后台线程,避免卡死。
  • 利用链:去掉误注入 Base64 的 insertSpecialChars;类加载兼容 JDK 9+;Gadget 解析与原版对齐。
  • Header 绕过:动态类改为 JDK6 字节码,目标 JDK7 可加载;回显改走响应头 X-C,不写 Body,减少 500;混淆勾选即始终混淆,超长只提示不自动关。
  • 体验:绕过页 UI 可缩放;子标签识别「密钥/利用链」时同时认输入框和下拉框,不必重复爆破。

shiro_attack-1.0-all

Choose a tag to compare

@Syst1msec Syst1msec released this 23 Mar 14:52

Header 绕过(WAF Bypass)

  • rememberMe Cookie 中插入非 Base64 字符($)绕过 WAF 的 Base64 解码检测,Shiro 的 discardNonBase64 机制会自动忽略这些字符
  • 支持混淆开关,可关闭以减少 Cookie 长度
  • 支持最大 Cookie 长度限制配置

短 Payload 利用链爆破

  • 基于 Thread.sleep() 时间差检测,替代原有回显方式验证利用链,大幅缩短爆破 payload 长度

命令执行

  • 盲执行:单次请求,最短 payload
  • 回显执行:两阶段请求(执行+回显),支持 Spring / Tomcat 两种回显方式
    • Spring:通过 RequestContextHolder 获取 Response
    • Tomcat:通过 ApplicationFilterChain.lastServicedResponse 获取 Response

分块内存马注入

  • 将大体积内存马 Base64 分块传输,每块通过系统属性 / 线程名 / 文件落地方式存储,最终由 Loader 类拼接加载
  • 支持自动计算最优分块大小

其他

  • AES GCM 加密模式在绕过选项卡同步生效
  • 请求头 / POST 数据支持多行输入,可直接粘贴 Burp 数据包
  • 支持多版本 CommonsBeanutils gadget(1.8.3 / 1.9.2)