hevnsnt/CVEngine

AI-first external attack surface assessment with continuous discovery, evidence-based vulnerability validation, and developer-agent MCP integration.

CVEngine이란?

CVEngine은 무료 오픈소스 도구로, 인터넷에 노출된 시스템(웹사이트, 서버, IP)을 지속적으로 모니터링하고 현재 악용되는 보안 취약점 중 실제로 영향을 미치는 것을 알려줍니다. 일반적으로 분리된 세 가지 요소(자산 발견(소유한 것 찾기), 취약점 스캔(약점 확인), 위협 인텔리전스(알려진 익스플로잇 추적))를 결합합니다. 알림을 쏟아내는 대신 판정을 제공합니다: "이 CVE가 이 호스트에서 활성화되어 있으며, 증거는 다음과 같습니다."

자체 호스팅 방식입니다. 즉, 자체 서버에서 실행하고 데이터는 사용자에게 유지됩니다. AI 키를 가져오거나(또는 로컬 모델 실행) 발견 사항 분류를 지원할 수 있지만, 핵심 스캔은 AI 없이 작동합니다.

기능

  1. 자산 발견 — 도메인 이름, IP 또는 CIDR 범위를 제공합니다. 하위 도메인, 호스트, 열린 포트, 서비스, 버전, TLS 인증서, 기술을 자동으로 찾습니다. 이 인벤토리를 최신 상태로 유지합니다.

  2. CVE를 환경에 매칭 — 실시간 CVE 피드(CISA KEV, Exploit-DB, Metasploit 등)를 가져와 각 CVE를 fire(적극적으로 악용됨), smoke(악용 가능성 높음), ice(덜 긴급)로 평가합니다. 그런 다음 이러한 CVE를 호스트에서 찾은 정확한 제품 및 버전(Linux 배포판 백포트 포함)과 매칭합니다.

  3. 안전한 읽기 전용 검사로 검증 — 각 매치에 대해 비파괴적 테스트(특정 nmap 프로브 또는 검증된 nuclei 템플릿 등)를 실행하여 취약점이 실제인지 확인합니다. 실행한 정확한 명령을 기록합니다. 테스트가 없으면 AI가 초안을 작성할 수 있지만, 인간이 승인할 때까지 호스트에서 실행되지 않습니다.

  4. 우선순위 지정 및 설명 — 각 호스트는 이유와 함께 0–100 위험 점수를 받습니다. AI는 모든 발견 사항을 confirmed, likely, needs validation, likely false positive, not applicable 범주로 분류합니다. 각 판정 뒤의 증거를 볼 수 있습니다.

  5. 시간 경과에 따른 변경 추적 — 새 호스트, 열린 포트, 버전 변경, 새 인증서, 변경된 웹 페이지가 나란히 스크린샷 차이와 함께 타임라인에 표시됩니다.

작동 방식

대상(도메인, IP, CIDR, URL)을 추가합니다. CVEngine은 파이프라인을 실행합니다:

  • FIND — bbot을 사용하여 하위 도메인/자산 발견, nmap 및 naabu를 사용하여 포트 및 서비스 매핑.
  • PROBE — 노출된 데이터베이스(Redis, PostgreSQL 등) 확인, 스크린샷 촬영, 웹 경로 검사, 선택적으로 WordPress 스캔.
  • MATCH — CVE를 인벤토리와 연관시킨 후 대상 nuclei 스캔 실행.
  • DECIDE — AI가 발견 사항을 분류하고 검증한 후 대시보드, API, 알림에 출력.

한편, CVE 피드는 자체 일정으로 실행되어 새 CVE를 평가하고 인벤토리와 매칭합니다.

주요 기능

  • Shodan 스타일 검색 — port:3389 -host:vpn 또는 tech:"apache tomcat" sev:high와 같이 인벤토리를 쿼리합니다.
  • 이메일 및 도메인 위생 — SPF, DKIM, DMARC, DNSSEC, TLS 등을 확인합니다.
  • 버그 바운티 워크벤치 — HackerOne, Bugcrowd 등을 탐색하고 범위 내 자산만 스캔합니다(기본적으로 꺼짐).
  • 팀 및 에이전트 지원 — 조직, 프로젝트, 역할, 감사 로그, REST API, MCP 서버, OpenAPI 사양.
  • 알림 — Slack, Discord, Telegram 또는 Lark 알림.
  • 자체 AI 가져오기 — Anthropic, OpenAI, OpenRouter, Ollama 또는 vLLM. AI 없이도 발견, 스캔, 검증이 가능합니다.

안전 설계

  • 읽기 전용 검사만; 비밀번호 목록은 시도하지 않습니다.
  • 루프백, 링크 로컬 또는 클라우드 메타데이터 주소를 스캔하지 않습니다. 개인 범위는 허용할 때까지 꺼져 있습니다.
  • 주입 시도를 차단하고 반복적인 공격 후 계정을 비활성화합니다.
  • 프로젝트별 데이터 격리, 암호화된 비밀, 2단계 로그인, IP 허용 목록, 감사 로그.

시작하기

Linux 서버(Debian/Ubuntu가 가장 쉬움, 4–8GB RAM, 20GB 디스크)에서:

git clone https://github.com/hevnsnt/CVEngine.git
cd CVEngine
sudo ./install.sh

설치 프로그램이 모든 것을 생성하고, HTTPS 인증서를 만들고, 주소, 사용자 이름, 일회용 비밀번호를 출력합니다. 첫 로그인 시 자신의 비밀번호를 설정합니다. 설정 마법사가 조직 생성, 대상 추가(테스트 권한이 있음을 확인해야 함), 선택적으로 AI 모델 연결을 안내합니다.

라이선스 및 크레딧

GPL-3.0. reNgine 2.x의 포크이며 많은 오픈소스 도구(nmap, nuclei, bbot 등)를 기반으로 합니다. 전체 크레딧은 THIRD-PARTY.md에 있습니다.


결론: CVEngine은 자체 호스팅 무료 공격 표면 관리 플랫폼으로, 인터넷에 노출된 자산을 찾고, 알려진 악용된 CVE와 매칭하고, 안전한 검사로 검증하며, 우선순위가 지정된 증거 기반 수정 목록을 제공합니다. 자산당 요금이나 데이터를 외부로 보내지 않습니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트