/CveMonitor

CveMonitor每天定时监控CVE上新及更新情况

Primary LanguagePython

CveMonitor

CveMonitor每天定时监控CVE上新及更新情况 网上已经有大量的脚本。这里我是直接引用大佬的脚本在上面造的轮子。原项目地址:GitHub - JickLunlun/CveMonitoring: CVE漏洞监控推送脚本

增加功能

在大佬原脚本的基础上优化了下结果的输出,将以文本段落输出的形式改为了以表格的形式呈现,更加直观;

查看html文件时鼠标悬停行会高亮;

邮件发送增加了发送附件;

爬取漏洞等级;

对接百度翻译API对漏洞描述进行翻译;(后期打算对接chatgpt进行翻译,让翻译更加适合**宝宝的体制)

新增aliyun漏洞库的爬取(CVE与非CVE);

并将爬取到的数据保存到数据库;(会直接在项目根目录生成一个Vuln.db的sqlite文件)

后续还会增加数据库存储功能及其他各平台(seebug、CNVD、CNNVD、nessus)的漏洞爬取与去重以及微信公众号推送功能。

安装&&使用

下载到本地后安装所需要的依赖。

git clone https://github.com/h18192h/CveMonitor.git
cd CveMonitor
pip3 install -r requirements.txt

第189和190行,def BaiduTrans(cvecve)函数中配置好百度翻译appkey即可:

appid = ''  #百度翻译APPid
appkey = ''    #百度翻译appkey

发送邮箱函数:def email()

发送邮箱需要开启SMTP服务

smtp_server = 'smtp.exmail.qq.com'    #改为自己所用邮箱的服务器在邮箱设置中可以查到
user = ''    #邮箱账号
password = ''    #邮箱密码
sender = ''    #发件人,与user一致
receives = ['user1@qq.com','user2@gmail.com']    #收件人

脚本稍微完善了下当天有更新的历史CVE也会爬取,如果不需要的话可以将(.*)+?去掉,就爬取当天上新的CVE,不过当天上新的CVE大多都是还没有评级的:

cve_re=re.compile(r"<A HREF = '(.+?)'>(.+?)</A>(.*)+?<br />")    #若只想爬今天上新的CVE去掉(.*)+?即可

配置好后python3 CveMonitor运行即可。

增加定时任务

$ crontab -e    #进入编辑界面
输入一下数据
0 9 * * * python /path/CveMonitor    #确保将/path/CveMonitor替换为脚本的绝对路径