sumedhmhatre01/PhishSentinel

GitHub: sumedhmhatre01/PhishSentinel

一款基于 Python 的模块化钓鱼检测工具包,通过规则引擎对 URL、网站、邮件、域名和文件进行钓鱼特征分析与风险评分。

Stars: 0 | Forks: 0

# 🛡️ PhishSentinel PhishSentinel 是一个防御性网络安全项目,它使用基于规则的检测技术来分析 URL、网站、电子邮件、域名和文件中常见的钓鱼特征。该应用程序完全在终端中运行,并采用模块化架构设计,以便于维护和未来的扩展。 ## ✨ 功能 ### 🌐 URL 扫描器 - HTTPS 验证 - IP 地址 URL 检测 - 长 URL 检测 - URL 缩短服务检测 - 可疑关键词检测 - 可疑 TLD 检测 - 品牌仿冒(Typosquatting)检测 - 总体钓鱼风险评分 ### 🌍 网站扫描器 - HTML 下载与解析 - 登录表单检测 - 密码字段检测 - 隐藏 iframe 检测 - JavaScript 重定向检测 - 外部 JavaScript 检测 - 可疑 HTML 元素检测 ### 📧 电子邮件扫描器 - 解析 `.eml` 文件 - 发件人和主题分析 - URL 提取 - SPF 标头存在检查 - DKIM 签名存在检查 - DMARC (Authentication-Results) 标头检查 - 可疑附件检测 - 钓鱼关键词检测 ### 🌐 域名扫描器 - WHOIS 查询 - 域名年龄分析 - 域名过期检查 - 注册商信息 - DNS 记录查询 - MX 记录查询 - SSL 证书验证 ### 📁 文件扫描器 - SHA-256 哈希生成 - MD5 哈希生成 - 文件类型检测 - 双重扩展名检测 - 启用宏的 Office 文档检测 - 可执行文件检测 - 可疑文件名检测 # 🏗️ 项目结构 ``` PhishSentinel/ │ ├── scanners/ │ ├── base_scanner.py │ ├── brand_detector.py │ ├── domain_scanner.py │ ├── email_scanner.py │ ├── file_scanner.py │ ├── url_scanner.py │ └── website_scanner.py │ ├── utils/ │ ├── cli.py │ ├── helpers.py │ ├── logger.py │ ├── risk_engine.py │ └── validators.py │ ├── models/ │ ├── samples/ │ ├── emails/ │ ├── files/ │ └── phishing_test.html │ ├── logs/ │ ├── main.py ├── config.py ├── requirements.txt ├── README.md └── .gitignore ``` # ⚙️ 使用的技术 - Python 3.12+ - Requests - BeautifulSoup4 - tldextract - validators - dnspython - python-whois - colorama ### Python 标准库 - ssl - socket - hashlib - email - pathlib - logging - argparse - re - json # 🚀 安装 克隆仓库 ``` git clone https://github.com/YOUR_USERNAME/PhishSentinel.git ``` 进入项目目录 ``` cd PhishSentinel ``` 创建虚拟环境 ``` python -m venv venv ``` 激活虚拟环境 ### Windows ``` venv\Scripts\activate ``` ### Linux / macOS ``` source venv/bin/activate ``` 安装依赖项 ``` pip install -r requirements.txt ``` # ▶️ 运行 ``` python main.py ``` # 🖥️ 终端菜单 ``` ========================================================= PHISHSENTINEL Defensive Phishing Detection Toolkit ========================================================= [1] URL Scanner [2] Website Scanner [3] Email Scanner [4] Domain Scanner [5] File Scanner [0] Exit ``` # 📊 扫描结果示例 ``` ========================================================= SCAN RESULT ========================================================= Status : SUCCESS Scanner : URL Scanner Target : https://paypa1-login.xyz Risk Score : 60 Risk Level : High Findings [HIGH] Category : Brand Message : Brand impersonation detected. [HIGH] Category : TLD Message : Suspicious TLD detected (.xyz) [MEDIUM] Category : Keyword Message : Suspicious keyword detected: login ``` # 📝 日志记录 每次扫描都会自动记录在 ``` logs/phishsentinel.log ``` 记录的信息包括: - 扫描器名称 - 目标 - 风险评分 - 风险等级 - 发现数量 - 时间戳 # 🛡️ 防御目的 PhishSentinel 的开发**仅用于防御性网络安全教育和钓鱼分析**。 它旨在帮助用户识别 URL、网站、电子邮件、域名和文件中的可疑特征。该项目**不会**利用系统漏洞、绕过安全控制或执行攻击性安全操作。 # 👨‍💻 作者 **Sumedh Mhatre** # 📄 许可证 该项目基于 MIT 许可证授权。
标签:Python, TLS, 威胁情报, 字符串匹配, 开发者工具, 无后门, 网络安全, 逆向工具, 钓鱼检测, 防御工具, 隐私保护