razanhasbini/Automation-system

GitHub: razanhasbini/Automation-system

一套面向网络威胁情报工作流程的生产级内部平台,将暗网监控、社交媒体冒充检测、域名威胁映射、泄露数据发现和自动化报告生成整合为统一的异步管道,帮助SOC团队告别手动情报收集与报告编写的重复劳动。

Stars: 0 | Forks: 0

# CTI 自动化仪表板 一个生产级内部平台,集中并自动化完整的网络威胁情报工作流程——从暗网监控和社交媒体冒充检测,到数据泄露发现、域名威胁映射和品牌报告生成。该平台使用异步管道、结构化输出和基于角色的管理面板取代了手动 SOC 流程,同时确保在每个层级安全处理敏感的客户数据。 ## 主要亮点 **暗网情报与多源抓取** 该平台将表层网络抓取、基于 Tor 的暗网查询、违规数据库查询、GitHub 密钥扫描和社交媒体冒充检测集成到一个统一的管道中。每个数据源都输入到一个自动化的风险评分系统中,该系统无需分析师干预即可生成结构化的多源情报输出。 **自动化报告引擎** 分析师上传包含扫描数据的 Excel 工作簿,智能报告引擎会处理其余工作。它摄取并规范化数据,对发现的问题进行去重,计算加权风险评分,对整体风险状况进行分类,生成图表,捕获引用 URL 和证据链接的屏幕截图,并组装成一份格式完整、带有品牌的 Word 文档,可直接交付给客户。同一引擎支持 PDF 导出。每周和定期报告遵循相同的管道,并拥有自己的模板和分发逻辑。 **端到端工作流自动化** 手动 SOC 任务已转换为通过 FastAPI 编排的后台处理管道。作业异步运行,按任务跟踪状态,并通过 SMTP 经由电子邮件发送结果。分析师从仪表板触发工作流,并在无需监控执行的情况下接收完成的输出。 ## 核心模块 **域名威胁映射** 为客户品牌生成大规模域名变体,并使用并发 DNS 查询并行解析它们。标记活跃的冒充域名,对其进行风险评分,并在仪表板中连同支持证据一起展示。 **社交媒体冒充检测** 使用 Playwright 驱动的浏览器自动化在 Instagram 和 Facebook 上搜索冒充客户品牌的账户。应用模糊字符串匹配,根据目标品牌对用户名相似度进行评分,收集可疑账户的屏幕截图,并将所有内容汇编成结构化的 Excel 报告供分析师审查。 **Google Dorking 引擎** 针对公共搜索引擎和 API 运行高级搜索查询,以发现属于客户组织的暴露敏感数据、配置错误的服务、泄露的凭据以及公开索引的内部资产。 **暗网与泄露监控** 查询可通过 Tor 访问的数据源和违规数据库,以识别在泄露数据包或暗网市场中提及的客户域名、电子邮件地址和凭据。发现的问题会被评分、去重并包含在情报输出中。 **GitHub 密钥扫描** 搜索 GitHub 仓库,查找与客户组织相关的意外提交的密钥、API 密钥、内部主机名和其他敏感数据。 **威胁与漏洞情报** 聚合来自 CISA、Microsoft MSRC、Cisco、NIST NVD、Fortiguard、Oracle、VMware、Red Hat、Zero Day Initiative、Packet Storm 等机构发布的公共 RSS 源的补丁公告和威胁通知。将输出格式化为带有品牌的 HTML 摘要和结构化的 Excel 报告,并按定期计划分发给客户。 **每周报告生成** 从通过 SharePoint 同步的文件夹结构中读取扫描数据,整合已打开和已关闭的工单,并生成格式化的每周状态报告,具有一致的品牌、自动图表生成和结构化的摘要,可直接分发。 **代理链管理** 管理具有轮换、验证和健康检查功能的出站代理池。扫描模块通过代理链路由流量,以在主动侦察任务期间维护操作安全性。 ## 平台功能 **集中式仪表板** Next.js 前端为分析师和管理员提供了一个单一界面,用于触发扫描、上传数据、生成报告、查看日志以及管理客户端和用户。 **后端 API 与编排** 所有功能均通过 FastAPI 后端公开。端点涵盖报告生成、抓取作业、文件上传、用户管理、客户端配置、代理管理、电子邮件发送和系统日志。长时间运行的任务在具有状态跟踪的后台工作线程中执行。 **认证与授权** 使用 Bearer token 的基于会话的身份验证。密码使用带 salt 的 PBKDF2 哈希存储。基于角色的访问控制将管理员权限与标准分析师权限分离。Token 过期和会话清理将自动处理。 **管理面板** 管理员可以从专用的管理界面管理用户、配置客户端、查看系统范围的分析数据、检查执行日志、管理代理池以及控制报告分发设置。 **客户端管理** 每个客户端都拥有独立的配置,涵盖其品牌关键字、Logo 资产、分配的分析师、报告模板和分发列表。报告和扫描输出按客户端划分范围。 **报告归档与文件处理** 生成的报告、图表和屏幕截图存储在文件系统中,并在数据库中建立索引。分析师可以从仪表板检索、预览和重新下载过去的输出,而无需重新运行作业。 **电子邮件分发** 完成的报告通过 SMTP 直接分发到客户分发列表。分发可按客户端配置,并且可以手动触发或作为自动化管道的一部分触发。 ## 项目结构 ``` automation-dashbaord/ impersonation-search/ Playwright scraper for brand impersonation on social media report-automation/ backend/ FastAPI backend serving all platform features main.py API entry point covering all modules and endpoints TTI.py Threat and vulnerability intelligence aggregator weekly.py Weekly report generation engine reva_tickets.py Ticket consolidation and tracking admin-panel/ report-webapp/ Next.js frontend (admin panel and analyst dashboard) smart_report_engine/ Core document generation pipeline excel_ingestion.py Parses and normalises uploaded workbooks metrics_engine.py Computes risk scores and weighted metrics section_mapping.py Maps findings to canonical report sections report_builder.py Assembles the final branded Word document templates/ Word document templates per report type ``` ## 技术栈 | 层级 | 技术 | |---|---| | 后端 API | Python, FastAPI | | 后台任务 | FastAPI BackgroundTasks, threading | | 报告引擎 | python-docx, openpyxl, matplotlib, pandas | | 抓取与自动化 | Playwright, Requests, BeautifulSoup, rapidfuzz | | 暗网 | Tor (通过 Requests + SOCKS 代理) | | 代码扫描 | GitHub API, Regex | | 前端 | Next.js, TypeScript, Tailwind CSS | | 认证 | Bearer token, PBKDF2, 基于角色的访问控制 | | 数据库 | SQLite | | 邮件 | 通过 Python smtplib 实现 SMTP | | 网络 | 代理轮换, DNS 解析, 并发 | ## 设置 ### 后端 ``` cd report-automation/backend python -m venv .venv .venv\Scripts\activate pip install -r requirements.txt uvicorn main:app --reload ``` ### 前端 ``` cd report-automation/admin-panel/report-webapp npm install npm run dev ``` ### 环境变量 在后端目录中创建一个 `.env` 文件: ``` SMTP_HOST= SMTP_PORT= SMTP_USER= SMTP_PASSWORD= INSTAGRAM_USER= INSTAGRAM_PASS= FACEBOOK_USER= FACEBOOK_PASS= ``` ## 注意事项 - 会话文件 (`*_session.json`) 已从版本控制中排除。它们包含实时认证的浏览器 cookies,绝不能提交到代码仓库中。 - 社交媒体抓取工具需要经过认证的会话才能运行。在 `hunter_final.py` 中设置一次 `LOGIN_MODE = True` 以生成会话文件,然后在所有后续运行中将其设置回 `False`。 - 每周报告引擎期望获得通过 OneDrive 在本地同步的 SharePoint 文件夹结构。路径从 `USERPROFILE` 环境变量中解析。 - 所有生成的输出(包括图表、屏幕截图和报告)都会写入 `output/` 目录,这些目录已从版本控制中排除。 - 报告中用作证据的屏幕截图是在运行时使用 Playwright 捕获的,并在本地缓存以避免冗余请求。
标签:AV绕过, DNS解析, FastAPI, GitHub机密扫描, PDF导出, Python, SOC自动化, Splunk, Word导出, 代码示例, 企业安全, 品牌保护, 图表生成, 域名威胁映射, 多源情报, 威胁情报, 威胁预警汇总, 定时报告, 实时处理, 工作流引擎, 开发者工具, 开源项目, 异步任务, 数字风险保护, 数据分析, 数据泄露发现, 无后门, 暗网爬虫, 暗网监控, 泄露数据库查询, 特征检测, 社会媒体仿冒检测, 网络安全, 网络资产管理, 自动化平台, 自动化报告, 表面网络爬虫, 逆向工具, 隐私保护, 风险评分