[ PROMPT_NODE_27676 ]
SMTP 渗透测试
[ SKILL_DOCUMENTATION ]
# SMTP 渗透测试
## 目的
对 SMTP(简单邮件传输协议)服务器进行全面的安全评估,以识别包括开放中继、用户枚举、弱身份验证和配置错误在内的漏洞。本技能涵盖 Banner 抓取、用户枚举技术、中继测试、暴力破解攻击以及安全加固建议。
## 前置条件
### 所需工具
bash
# 带有 SMTP 脚本的 Nmap
sudo apt-get install nmap
# Netcat
sudo apt-get install netcat
# 用于暴力破解的 Hydra
sudo apt-get install hydra
# SMTP 用户枚举工具
sudo apt-get install smtp-user-enum
# Metasploit 框架
msfconsole
### 所需知识
- SMTP 协议基础
- 电子邮件架构 (MTA, MDA, MUA)
- DNS 和 MX 记录
- 网络协议
### 所需访问权限
- 目标 SMTP 服务器 IP/主机名
- 测试的书面授权
- 用于枚举和暴力破解的字典文件
## 输出和交付物
1. **SMTP 安全评估报告** - 全面的漏洞发现
2. **用户枚举结果** - 发现的有效电子邮件地址
3. **中继测试结果** - 开放中继状态和利用潜力
4. **修复建议** - 安全加固指导
## 核心工作流
### 第一阶段:理解 SMTP 架构
组件: MTA (传输) → MDA (投递) → MUA (客户端)
端口: 25 (SMTP), 465 (SMTPS), 587 (提交), 2525 (备用)
工作流: 发送方 MUA → 发送方 MTA → DNS/MX → 接收方 MTA → MDA → 接收方 MUA
### 第二阶段:SMTP 服务发现
识别 SMTP 服务器和版本:
bash
# 发现 SMTP 端口
nmap -p 25,465,587,2525 -sV TARGET_IP
# 激进的服务检测
nmap -sV -sC -p 25 TARGET_IP
# SMTP 特定脚本
nmap --script=smtp-* -p 25 TARGET_IP
# 发现域名的 MX 记录
dig MX target.com
nslookup -type=mx target.com
host -t mx target.com
### 第三阶段:Banner 抓取
检索 SMTP 服务器信息:
bash
# 使用 Telnet
telnet TARGET_IP 25
# 响应: 220 mail.target.com ESMTP Postfix
# 使用 Netcat
nc TARGET_IP 25
# 响应: 220 mail.target.com ESMTP
# 使用 Nmap
nmap -sV -p 25 TARGET_IP
# 版本检测提取 Banner 信息
# 手动 SMTP 命令
EHLO test
# 响应揭示支持的扩展
解析 Banner 信息:
Banner 揭示:
- 服务器软件 (Postfix, Sendmail, Exchange)
- 版本信息
- 主机名
- 支持的 SMTP 扩展 (STARTTLS, AUTH 等)
### 第四阶段:SMTP 命令