Gajendra7096/PhishingDetector-

GitHub: Gajendra7096/PhishingDetector-

一个完全离线、基于自定义规则的终端钓鱼检测工具,能在无网络环境下对 URL、邮件头和二维码进行多维度的风险分析。

Stars: 1 | Forks: 0

# 离线智能钓鱼检测系统 一个完全离线的基于终端的网络安全应用程序,使用自定义的基于规则的逻辑来检测钓鱼攻击。无需机器学习,无需网络连接,不进行外部 API 调用。 ## 功能 - **URL 分析** — 提取组件,评估风险,检测 20 多种钓鱼指标 - **邮件头分析** — 解析 `.eml` 文件,检查 SPF/DKIM/DMARC,检测欺骗 - **二维码分析** — 解码二维码图像并自动扫描提取的 URL - **域名信息** — 离线 DNS、SSL 和 TLD 分析 - **基于规则的引擎** — 具有加权评分的自定义检测规则 - **报告** — 生成 PDF (ReportLab)、CSV 和 JSON 报告 - **分析历史** — 由 SQLite 支持的持久化历史记录 - **精美的终端 UI** — 由 Rich 驱动的仪表板,包含面板、表格和进度条 ## 环境要求 - Python 3.12+ - pip ## 安装 ``` # 克隆或下载项目 cd PhishingDetector # 安装依赖 pip install -r requirements.txt ``` **注意:** 要解码二维码,您可能还需要 `zbar` 系统库: - Linux: `sudo apt install zbar-tools` - macOS: `brew install zbar` - Windows: 已包含在 `pyzbar` wheel 中 ## 使用方法 ### 交互模式 ### 1. 克隆仓库 ``` git clone https://github.com/Gajendra7096/PhishingDetector.git cd PhishingDetector ``` ### 2. 安装用于二维码解码的系统依赖 ``` # Kali / Debian / Ubuntu sudo apt update && sudo apt install -y libzbar0 # macOS (Homebrew) brew install zbar ``` ### 3. 创建并激活虚拟环境 ``` python3 -m venv venv source venv/bin/activate ``` ### 4. 安装 Python 依赖 ``` pip install -r requirements.txt ``` ### 5. 运行应用程序 ``` python app.py ``` 使用键盘导航菜单: 1. 分析 URL 2. 分析邮件头 3. 分析二维码 4. 域名信息 5. 查看分析历史 6. 生成报告 7. 统计仪表板 8. 设置 9. 关于 10. 退出 ### 命令行模式 ``` # 快速 URL 分析 python app.py --url "https://example.com" # 快速 email 分析 python app.py --email suspicious.eml # 快速 QR 分析 python app.py --qr qr_code.png # Domain 信息 python app.py --domain example.com # 查看历史记录 python app.py --history # 生成报告 python app.py --report pdf python app.py --report csv python app.py --report json ``` ## 项目结构 ``` PhishingDetector/ ├── app.py # Entry point ├── menu.py # Interactive menu ├── dashboard.py # Statistics dashboard ├── config.py # Configuration ├── database.py # SQLite database layer ├── logger.py # Logging setup ├── requirements.txt ├── README.md ├── detector/ │ ├── rule_engine.py # Detection rules engine │ ├── url_analyzer.py # URL analysis │ ├── email_analyzer.py # Email header analysis │ ├── qr_analyzer.py # QR code analysis │ ├── domain_info.py # Domain information │ └── risk_score.py # Risk scoring ├── reports/ │ ├── pdf_report.py # PDF generation (ReportLab) │ ├── csv_export.py # CSV export │ └── json_export.py # JSON export ├── database/ │ └── phishing.db # SQLite database (auto-created) ├── uploads/ # Uploaded files ├── history/ # Generated reports └── logs/ # Application logs ``` ## 安全性 - 安装后完全离线 — 不会有任何数据离开您的设备 - 没有机器学习模型或外部 API 调用 - 验证所有输入,防止路径遍历 - 从不执行上传的文件 - 用于教育和提高安全意识的防御性网络安全工具 ## 检测规则(20+) - 过长的 URL,过多的点,过多的子域名 - IP 地址 URL,Punycode 检测 - 十六进制/URL 编码检测 - 过多的特殊字符 - 可疑关键词 (login, verify, update, secure, account, banking 等) - 短链接服务检测 (bit.ly, tinyurl 等) - 重定向符号 - 可疑的文件扩展名 - 缺少 HTTPS - 可疑的 TLD (.tk, .ml, .ga, .xyz, .top 等) - 高熵检测 - 多重编码技术 ## 许可证 MIT 许可证 — 仅用于教育和防御目的 ## 📜 免责声明 本工具仅供**教育和授权测试目的**使用。它不执行任何攻击性操作,不存储任何凭据,也不进行任何网络调用。作者对任何滥用行为不承担责任。在分析非您本人的任何系统、邮件或 URL 之前,请务必确保您已获得明确授权。
标签:IP 地址批量处理, Python, 云计算, 安全分析工具, 无后门, 终端UI, 规则引擎, 逆向工具, 邮件安全, 钓鱼检测