EclipseManic/Advance_Phishing_Mail_Detector
GitHub: EclipseManic/Advance_Phishing_Mail_Detector
一款基于 Python 的钓鱼邮件检测器,通过解析 .eml 文件并整合 VirusTotal API,从邮件头、域名信誉、链接与附件等维度判定邮件的钓鱼风险。
Stars: 3 | Forks: 0
# 高级钓鱼邮件检测器
**作者:** EclipseManic
高级钓鱼邮件检测器是一款功能强大、基于 Python 的工具,旨在分析 .eml 文件并以极高的准确度检测钓鱼企图。通过集成 VirusTotal API 并采用多维度的分析方法,该工具能够识别电子邮件中广泛存在的恶意指标。从详细的邮件头分析到深度的内容扫描,该工具为您提供了抵御钓鱼威胁的全面防御。
### 这款工具非常适合安全爱好者、研究人员以及任何希望更好地了解钓鱼邮件结构的人。它提供清晰且具有指导性的判定结果,帮助您快速确定一封邮件是 SAFE(安全)、CAUTIOUS(谨慎)还是 UNSAFE(不安全)。
## 🚀 功能
### 邮件头分析
- 检测 **Return-Path** 和 **Reply-To** 不匹配情况
- 验证 **SPF**、**DKIM** 和 **DMARC** 结果
- 标记可疑的身份验证失败
### 域名与 IP 信誉
- 基于 WHOIS 的域名年龄检查
- 使用 VirusTotal API 扫描域名和 IP
- 同形异义词和 punycode 攻击检测
### 链接与附件扫描
- 从邮件正文、附件甚至图像中的二维码提取链接
- 在扫描前还原缩短的 URL
- 对附件进行 VirusTotal 文件哈希扫描
### 内容分析
- 检测紧急/金融诈骗关键词
- 标记冒充企图(Microsoft、PayPal、Amazon 等)
- 突出显示托管在常被滥用的服务(Drive、Dropbox、OneDrive 等)上的可疑链接
### 最终判定
- **0 到 10** 的钓鱼评分
- 将邮件标记为 **SAFE**、**CAUTIOUS** 或 **UNSAFE**
- 针对检测到的每项风险提供详细的反馈
### 报告
- 可选的结构化 **JSON 报告**,用于自动化和记录保存
## 📦 要求
- Python **3.8+**
- 有效的 **VirusTotal API key**
### 安装依赖
克隆代码库并安装所需的库:
```
pip install -r requirements.txt
```
## 🔑 环境设置:VirusTotal API key
此脚本需要 **VirusTotal API key**。没有它,该工具将无法运行。
1. 从以下地址获取免费的 API key:VirusTotal → My API Key
2. 在运行脚本之前将其设置为环境变量。
#### 在 Linux / macOS 上:
`export VT_API_KEY="your_api_key_here"`
#### 在 Windows 上(永久生效,PowerShell):
`setx VT_API_KEY "your_api_key_here"`
_(运行此命令后请重启终端,以使变量生效。)_
#### 在 Windows 上(临时,仅限当前会话):
`$env:VT_API_KEY="your_api_key_here"`
## 🔧 用法
### 基本命令:
`python Advance_Phising_Mail_detector.py `
### 生成 JSON 报告的示例:
`python Advance_Phising_Mail_detector.py suspicious_mail.eml --report analysis.json`
### 参数:
- `` → `.eml` 邮件文件的路径
- `--report analysis.json` → 保存分析的 JSON 报告
## 📝 输出
- **邮件头分析** → 身份验证检查、域名欺骗、不匹配情况
- **信誉扫描** → 域名和 IP 的 VirusTotal 结果
- **链接与附件扫描** → 标记恶意或可疑的 URL/文件
- **最终判定** → 钓鱼评分 + 判定结果(**SAFE / CAUTIOUS / UNSAFE**)
- **JSON 报告** → 如果使用了 `--report` 选项
## 📂 JSON 报告示例
`{ "file": "suspicious_mail.eml", "verdict": "UNSAFE", "score": 8, "feedback": [ "Return-Path Mismatch: Possible spoofing.", "DMARC Failure: Sender is forged.", "Malicious Links: 2 flagged as unsafe." ], "details": { "header_findings": {...}, "spoof_findings": {...}, "reputation_results": [...], "url_results": [...], "attachment_results": [...], "domain_age_days": 12 } }`
## ⚠️ 免责声明
此工具严格仅供**教育和防御性安全目的**使用。
**请勿**将其用于攻击性、恶意或非法活动。
作者对滥用行为**不承担任何责任**。
标签:Python, 威胁情报, 开发者工具, 无后门, 逆向工具, 邮件分析, 钓鱼检测