dbshakil/Phish-Scanner-Visual-Threat-Intelligence-and-Automated-URL-Analysis

GitHub: dbshakil/Phish-Scanner-Visual-Threat-Intelligence-and-Automated-URL-Analysis

一个基于 Flask 的自动化钓鱼 URL 分析与可视化威胁情报工具,利用无头浏览器截图与本地 LLM 提取品牌与页面信息。

Stars: 0 | Forks: 0

# Phish Scanner - 可视化威胁情报与自动化 URL 分析 一个简单的 Flask Web 应用程序,用于扫描和分析钓鱼 URL。输入单个 URL 或上传包含 URL 的 .txt 文件,即可获取品牌、描述和截图结果。 ## 功能 - 扫描单个 URL 或上传包含 URL 的 .txt 文件 - 为每个 URL 获取品牌、描述和截图 - 将结果导出为 CSV ## 环境要求 - Python 3.10+ - Flask - requests - [Browserless](https://github.com/browserless/browserless)(截图 API,运行在 `http://localhost:3000/screenshot`) - [Ollama](https://ollama.com/) 并加载 `qwen3-vl:4b` 模型(LLM API,运行在 `http://localhost:11434/v1/chat/completions`) 安装 Python 依赖: ``` pip install -r requirements.txt ``` ## 使用方法 1. 激活虚拟环境(如使用): source .venv/bin/activate 2. 启动 Flask 应用: python phish_scanner.py 3. 在浏览器中打开 [http://127.0.0.1:5000/](http://127.0.0.1:5000/) ## 项目结构 - `phish_scanner.py` — 主 Flask 应用 - `static/` — CSS 样式 - `templates/` — HTML 模板 - `screenshots/` — 保存的截图 ## 工作原理 1. **截图** — URL 被发送至 Browserless,返回 PNG 格式截图。 2. **品牌与描述提取** — 截图被发送至 LLM(Ollama/qwen3-vl:4b)进行品牌与页面摘要提取。 3. **结果展示** — 以表格形式展示品牌、描述、变形 URL 和截图,支持导出为 CSV。 ## 安全控制 - **URL 安全检查**:禁止处理包含危险扩展名(如 `.exe`、`.js`、`.bat` 等)的 URL。 - **变形 URL**:URL 以 `hxxp://` 或 `hxxps://` 形式显示,防止误点击。长 URL 在中间截断。 - **禁用直接超链接**:URL 以纯文本形式展示,不作为可点击链接。 ## 注意事项 - 截图会被缓存到磁盘。删除 `screenshots/` 文件夹可强制刷新。 - 每个请求对 LLM 设置 60 秒超时。慢速模型或大型页面可能导致超时并显示“未提取到详细信息”。 - 本工具仅限在受控环境中用于威胁情报研究。未经适当沙箱化,请勿用于交互真实恶意页面。
标签:AI文本分析, AI风险缓解, Browserless, Flask, LLM, LLM评估, Ollama, Python, qwen3-vl, SEO, Unmanaged PE, URL分析, URL安全检查, 关键词, 反钓鱼, 品牌分析, 威胁情报, 安全控制, 开发者工具, 恶意URL扫描, 截图分析, 无后门, 无头浏览器, 端点安全, 自动化安全工作流, 补丁管理, 视觉威胁情报, 逆向工具, 钓鱼检测, 防钓鱼