Python: бот для автоматического мониторинга CVE

  • Автор темы Автор темы SHELLX$
  • Дата начала Дата начала

SHELLX$

Админ
Модер
Recruiter
VPN
SocialEng
Researcher
05.07.26
51
Администратор, Модератор, Security Researcher, Social Engineer, VPN Overlord, Recruiter
0
Open-source бот для мониторинга новых CVE

Разработал бота, который отслеживает новые CVE в реальном времени и отправляет уведомления в Telegram.

Функционал:
  • Парсинг NVD, MITRE, ExploitDB
  • Фильтрация по CVSS score (настраиваемый порог)
  • Уведомления в Telegram с кратким описанием
  • Поиск PoC-эксплойтов на GitHub
  • Интеграция с JIRA для создания тикетов

Технологии:
Python 3.12, asyncio, aiohttp, SQLAlchemy, Telegram Bot API

Python:
import asyncio
import aiohttp
from datetime import datetime

class CVEMonitor:
    NVD_API = "
Пожалуйста Войдите или Зарегистрируйтесь чтобы видеть скрытые ссылки или изображения.
def __init__(self, min_cvss: float = 7.0): self.min_cvss = min_cvss self.seen_cves = set() async def fetch_recent(self, session): params = { "pubStartDate": datetime.utcnow().strftime("%Y-%m-%dT00:00:00.000"), "cvssV3Severity": "HIGH" } async with session.get(self.NVD_API, params=params) as resp: data = await resp.json() return data.get("vulnerabilities", []) async def run(self): async with aiohttp.ClientSession() as session: while True: cves = await self.fetch_recent(session) for cve in cves: cve_id = cve["cve"]["id"] if cve_id not in self.seen_cves: self.seen_cves.add(cve_id) await self.notify(cve) await asyncio.sleep(300)

Исходный код на GitHub. Буду рад фидбеку и PR.
 

Правила

  1. Все сделки — только через Гарант 0nixSecure
  2. Спам и деанон — бан навсегда
  3. Соблюдайте OpSec
  4. Запрещены дубли аккаунтов (мульти-аккаунты)
  5. Контент только по тематике форума
Назад
Верх