chenchu-code/stryx-py

GitHub: chenchu-code/stryx-py

STRYX 是一个开源邮件和URL威胁分析器,帮助用户快速检测钓鱼攻击等安全威胁。

Stars: 0 | Forks: 0


``` ███████╗████████╗██████╗ ██╗ ██╗██╗ ██╗ ██╔════╝╚══██╔══╝██╔══██╗╚██╗ ██╔╝╚██╗██╔╝ ███████╗ ██║ ██████╔╝ ╚████╔╝ ╚███╔╝ ╚════██║ ██║ ██╔══██╗ ╚██╔╝ ██╔██╗ ███████║ ██║ ██║ ██║ ██║ ██╔╝ ██╗ ╚══════╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ``` **邮件与URL威胁分析器 — SOC情报工具** [![Python](https://img.shields.io/badge/Python-3.9%2B-3dff8f?style=flat-square&logo=python&logoColor=white)](https://python.org) [![Streamlit](https://img.shields.io/badge/Streamlit-1.32%2B-ff4b4b?style=flat-square&logo=streamlit&logoColor=white)](https://streamlit.io) [![License](https://img.shields.io/badge/License-MIT-00d4ff?style=flat-square)](LICENSE) [![Status](https://img.shields.io/badge/Status-Live-3dff8f?style=flat-square)]() [![MITRE ATT&CK](https://img.shields.io/badge/MITRE-ATT%26CK%20Mapped-f5c842?style=flat-square)](https://attack.mitre.org) [**在线演示 →**](https://stryx-py.streamlit.app) · [**报告Bug**](https://github.com/chenchu-code/stryx-py/issues) · [**请求功能**](https://github.com/chenchu-code/stryx-py/issues)
## ⟩ 概述 **STRYX** 是一款专为SOC分析师、网络安全学生和安全意识强的个人用户打造的开源威胁情报工具。它使用定制的启发式规则引擎实时分析URL和电子邮件,在无需任何API依赖的情况下,检测网络钓鱼、欺骗、社会工程和品牌冒充攻击。 ## ⟩ 主要功能 | 功能 | 描述 | |---|---| | 🔍 **URL分析** | 12条检测规则,覆盖仿冒域名、IP主机、可疑顶级域名、混淆、同形字符攻击等 | | 📧 **邮件分析** | 8条检测规则,覆盖伪造发件人、紧急性语言、凭证请求、钓鱼链接、支付诈骗 | | 🎯 **MITRE ATT&CK映射** | 威胁发现与真实技术ID(T1566, T1598, T1657, T1071)关联 | | 📊 **仪表板** | 可视化分析——风险分数趋势、判定结果分布、主要威胁类型细分 | | 🟢 **简易模式** | 为非技术用户提供通俗易懂的判定结果 | | 🔴 **高级模式** | 完整的技术分析,包含每个指标的严重性评级 | | 📄 **报告导出** | 可从任何扫描中下载专业的`.txt`格式事件报告 | | ⚡ **即时结果** | 纯规则引擎——无API调用、无需等待、无需联网 | | 🔒 **100%隐私** | 零数据外发。所有分析在您本地会话中运行 | ## ⟩ 检测引擎 ### URL规则(12条生效中) ``` ┌─────────────────────────┬──────────┬──────────────────────────────────────────────┐ │ Rule │ Severity │ Description │ ├─────────────────────────┼──────────┼──────────────────────────────────────────────┤ │ PROTOCOL │ MEDIUM │ HTTP instead of HTTPS │ │ IP AS HOST │ CRITICAL │ Raw IP address used as domain │ │ SUSPICIOUS TLD │ HIGH │ .xyz .tk .top .ml .ga and 15+ more │ │ URL SHORTENER │ MEDIUM │ bit.ly tinyurl rb.gy and 8+ more │ │ LOOKALIKE DOMAIN │ CRITICAL │ paypa1 g00gle amaz0n and similar │ │ SUSPICIOUS PATH │ HIGH │ /login /verify /account /credential │ │ EXCESS SUBDOMAINS │ MEDIUM │ More than 4 subdomains │ │ OBFUSCATION │ HIGH │ 3+ URL-encoded characters │ │ LONG URL │ LOW │ Over 120 characters │ │ MANY PARAMETERS │ LOW │ More than 5 query parameters │ │ AT-SIGN IN URL │ HIGH │ @ symbol used to redirect │ │ BRAND IMPERSONATION │ CRITICAL │ Brand name + action keyword pattern │ └─────────────────────────┴──────────┴──────────────────────────────────────────────┘ ``` ### 邮件规则(8条生效中) ``` ┌─────────────────────────┬──────────┬──────────────────────────────────────────────┐ │ Rule │ Severity │ Description │ ├─────────────────────────┼──────────┼──────────────────────────────────────────────┤ │ URGENCY LANGUAGE │ HIGH │ Urgent, act now, suspended, expires │ │ CREDENTIAL REQUEST │ CRITICAL │ Password, CVV, SSN, bank account │ │ SUSPICIOUS LINK │ CRITICAL │ High-risk URLs embedded in body │ │ BRAND MENTION │ MEDIUM │ Known brands — cross-checks sender domain │ │ GENERIC GREETING │ LOW │ Dear Customer / Dear User │ │ SPOOFED SENDER │ CRITICAL │ Display name vs domain mismatch │ │ PAYMENT REQUEST │ HIGH │ Wire, gift card, Zelle, Western Union │ │ THREAT LANGUAGE │ HIGH │ Legal action, arrest, account closure │ └─────────────────────────┴──────────┴──────────────────────────────────────────────┘ ``` ### 评分系统 ``` Score 0–14 → SAFE 🔵 No action needed Score 15–34 → LOW 🟢 Verify before proceeding Score 35–54 → MEDIUM 🟡 Suspicious — do not click Score 55–74 → HIGH 🟠 Likely malicious — block Score 75–100 → CRITICAL 🔴 Confirmed threat — escalate ``` ## ⟩ MITRE ATT&CK 映射 | 指标类型 | MITRE 技术 | |---|---| | 仿冒域名 | T1566.002 — 通过服务进行鱼叉式网络钓鱼 | | 伪造发件人 | T1566.001 — 鱼叉式网络钓鱼附件 | | 凭证请求 | T1598 — 钓鱼获取信息 | | 可疑链接 | T1566.002 — 鱼叉式网络钓鱼链接 | | 品牌冒充 | T1566 — 钓鱼 | | IP作为主机 | T1071 — 应用层协议滥用 | | 支付请求 | T1657 — 金融盗窃 | ## ⟩ 技术栈 ``` Language → Python 3.9+ Framework → Streamlit 1.32+ Detection → Custom rule engine (regex + heuristics) Charts → Streamlit native charts Storage → Session state (no database) Deploy → Streamlit Community Cloud (free) ``` ## ⟩ 项目结构 ``` stryx-py/ ├── app.py ← Main Streamlit application ├── requirements.txt ← Python dependencies └── README.md ← This file ``` ## ⟩ 本地运行 **要求:** Python 3.9+ ``` # 克隆 repo git clone https://github.com/chenchu-code/stryx-py.git cd stryx-py # 安装 dependencies pip install -r requirements.txt # 运行 app streamlit run app.py ``` 在浏览器中打开 `http://localhost:8501`。 ## ⟩ 部署到Streamlit Cloud(免费) 1. 将此仓库复刻到你的GitHub 2. 前往 [streamlit.io/cloud](https://streamlit.io/cloud) 3. 使用GitHub登录 4. 点击 **New app** → 选择此仓库 5. 主文件路径:`app.py` 6. 点击 **Deploy** 不到2分钟即可上线。永久免费。 ## ⟩ 测试案例示例 **钓鱼URL:** ``` http://paypa1-secure-login.xyz/verify?user=account&token=8fx2k ``` **钓鱼邮件:** ``` From: security@paypa1-alerts.com Subject: URGENT: Your account will be suspended in 24 hours! Dear Valued Customer, We detected suspicious activity. Verify immediately: http://paypa1-secure.xyz/verify PayPal Security Team ``` **安全URL:** ``` https://www.google.com ``` ## ⟩ 路线图 - [x] URL威胁分析引擎 - [x] 邮件威胁分析引擎 - [x] MITRE ATT&CK 映射 - [x] 简易与高级输出模式 - [x] 可视化分析仪表板 - [x] 报告下载(.txt) - [ ] 批量URL扫描器(一次处理多个URL) - [ ] VirusTotal API集成(可选) - [ ] 以PDF格式导出报告 - [ ] 自定义规则构建器 - [ ] 浏览器扩展版本 ## ⟩ 使用场景 - **SOC分析师** — 快速分类可疑URL和邮件 - **安全学生** — 学习钓鱼检测模式和MITRE映射 - **IT团队** — 验证员工报告的可疑邮件 - **个人用户** — 点击链接前检查URL ## ⟩ 免责声明 STRYX**仅用于安全研究和教育目的**。请勿将此工具用于恶意或未授权的活动。该工具使用启发式规则——在采取行动前,请务必通过额外调查验证发现结果。 ## ⟩ 制作者 **Chenchu** · Silent Storm - 🐙 GitHub: [@chenchu-code](https://github.com/chenchu-code) ## ⟩ 许可证 MIT许可证 — 可自由使用、修改和分发,但需注明来源。
**⟩ STRYX v1.0 — 邮件与URL威胁分析器 — Silent Storm** *如果此项目对您有所帮助,欢迎在GitHub上给我们一个⭐*
标签:DInvoke, Kubernetes, meg, Python开发, SOC分析, Streamlit应用, URL安全, 信息安全, 启发式规则引擎, 品牌冒充, 在线安全, 威胁分析工具, 威胁情报, 安全运营中心, 实时分析, 开发者工具, 开源安全工具, 恶意链接检测, 欺骗检测, 电子邮件安全, 电子邮件欺骗, 社会工程, 网络安全, 网络映射, 逆向工具, 逆向工程平台, 钓鱼检测, 隐私保护