Initial CVE mirror setup
This commit is contained in:
@@ -0,0 +1,16 @@
|
||||
# vuln-cve
|
||||
|
||||
Mirror der offiziellen [CVE List V5](https://github.com/CVEProject/cvelistV5), gefiltert auf CVE-ID-Jahre ab 2017. Alle Records werden unverändert unter `data/YYYY/<bucket>/CVE-....json` versioniert. Der Upstream-Git-Commit und der letzte Sync stehen in `state/sync.json`.
|
||||
|
||||
## Einrichtung
|
||||
|
||||
1. GitHub-Repository `vuln-cve` erstellen, Branch `main`.
|
||||
2. Linux Self-hosted Runner mit Labels `self-hosted`, `linux`, `x64`, `vulnerability` registrieren. `git`, `rsync` und `python3` installieren.
|
||||
3. In GitHub Actions Schreibzugriff für `GITHUB_TOKEN` zulassen. Branch-Regeln müssen Bot-Pushes erlauben.
|
||||
4. Workflow `Sync CVE List V5` manuell starten; danach läuft er stündlich.
|
||||
|
||||
Lokal: `python3 scripts/sync.py --since-year 2017 && python3 scripts/validate.py`.
|
||||
|
||||
**Kapazität:** der erste Sync enthält sehr viele kleine Dateien und benötigt viel Speicher, I/O und Git-Objekte. GitHub-Datei-/Repository-Grenzen beachten; bei wachsender Datenmenge in Jahres-Repositories aufteilen. Das Skript führt absichtlich einen vollständigen Upstream-Abgleich statt einer potentiell unvollständigen `delta.json`-Auswertung durch.
|
||||
|
||||
**Sicherheit:** Repository ausschließlich mit vertrauenswürdigen Runnern aktualisieren. `rsync --delete` löscht nur Inhalte unter `data/`, wenn der Upstream mindestens 1.000 gültige CVE-Records enthielt und *alle* Quelldateien validiert wurden. Der Sync bewahrt nur CVE-Jahrgänge ab 2017 auf. Historische Änderungen vor dem ersten Import sind nicht enthalten; Git dokumentiert Änderungen ab dem ersten eigenen Commit.
|
||||
Reference in New Issue
Block a user