Monitor 是一款基于 Python3 开发的高效、灵活的开源漏洞监控平台。它集成了多源漏洞信息,提供了智能化的通知服务,非常适合网络安全团队、开发者及研究人员用于实时跟踪安全威胁,守护应用与系统安全。其模块化设计也便于用户根据自身需求进行二次开发与功能扩展。
核心功能特性
1. 多源漏洞信息集成
平台支持从多个权威渠道自动采集漏洞信息,构建全面的威胁视野。
- GitHub监控:持续监控指定开源项目的安全公告与漏洞修复动态,用户可自定义需要监控的仓库列表。
- 微软安全公告:实时同步微软官方发布的安全更新与漏洞修复情报。
- CNNVD集成:对接中国国家信息安全漏洞库,获取覆盖国内环境的安全漏洞数据。
2. 智能化通知服务
发现新漏洞后,平台能通过多种渠道及时告警,提升应急响应效率。
- 企业微信推送:通过企业微信API发送格式化的卡片消息,支持点击直接跳转至漏洞详情页。
- 邮件推送(可选):平台预留了邮件通知接口,用户可按需配置启用。
3. 数据统计与可视化展示
平台对漏洞数据进行分析与整理,提供直观的决策支持。
- 周期性统计报告:支持按周统计高、中、低危漏洞数量,并对高危漏洞进行醒目标注。
- Web端表格展示:通过 Nginx 部署的Web界面,以清晰的表格形式展示所有漏洞详情,支持索引并按本地时间显示,方便查阅。
4. 高度可配置与可扩展
- 监控目标自定义:用户可通过配置文件灵活调整监控的GitHub项目列表、检查频率等参数。
- 模块化架构:代码结构清晰,分为Commons(通用功能)、RequestInfo(监控模块)、Sql(数据库操作)等独立模块,极大降低了二次开发与功能集成的难度。
技术栈与部署优势
- 开发语言:Python3,充分利用了
requests、BeautifulSoup等库进行网络请求与数据解析。
- 数据存储:采用轻量级 SQLite 数据库,无需复杂配置,易于管理和迁移。
- 部署环境:支持在Linux服务器(如CentOS 7)上运行。结合 Nginx 实现Web目录浏览,部署简单快捷。
典型应用场景
- 企业安全运维团队:实时跟踪业界最新披露的漏洞,快速评估对自身资产的影响并制定响应策略。
- 开发与运维人员:监控项目所依赖的第三方库(如GitHub项目)是否有安全更新,预防供应链攻击。
- 安全研究人员:通过整合CNNVD、微软公告等多方信源,辅助进行漏洞研究、挖掘与趋势分析。
项目地址:https://github.com/lxflxfcl/monitor
快速安装与部署指南
环境准备
- 一台Linux服务器(用于运行监控脚本)
- Python3 环境
- 一个域名(可选,用于Web访问)
安装步骤
- 安装Python依赖
克隆项目代码后,安装所需的所有Python包。
pip install -r requirements.txt
- 初始化数据库
运行初始化脚本,此操作会生成必要的数据库文件及用于存放运行日志的log文件夹。
python3 installDb.py
Web端环境搭建(基于Nginx)
为了通过Web界面浏览漏洞表格,需要使用 Nginx 提供目录浏览服务。以下以CentOS 7系统为例。
-
安装Nginx
yum install -y nginx
-
配置Nginx
编辑Nginx的配置文件,通常位于/etc/nginx/nginx.conf。找到server配置块,修改或添加location规则以开启目录索引。以下是一个配置示例:
server {
listen 80;
server_name _; # 或你的域名
charset utf-8;
location / {
root /usr/share/nginx/html/download; # 请确保此为你的漏洞文件生成路径
autoindex on; # 开启索引功能
autoindex_exact_size off; # 以易读方式(KB、MB)显示文件大小
autoindex_localtime on; # 显示服务器本地时间
}
}
请注意:示例中的root路径/usr/share/nginx/html/download需要与Monitor平台生成静态文件的实际路径保持一致。
-
启动服务
完成以上步骤后,即可通过浏览器访问服务器IP或域名查看漏洞列表,平台也将开始持续监控并推送漏洞信息。


|