# vuln-ubuntu Mirror der **offiziellen Ubuntu-OSV-JSON-Rohdaten** aus `https://github.com/canonical/ubuntu-security-notices`. - CVEs ab 2017 unter `data/osv/cve//`. - Alle verfügbaren Ubuntu Security Notices und Livepatch Security Notices unter `data/osv/usn/` und `data/osv/lsn/`. - Kein Reformatieren der JSON-Dateien, unveränderte Bytes des Upstreams. - Inkrementeller `git fetch` in einem persistenten Upstream-Checkout. - Git-Folgeupdates des eigenen Repositories ebenfalls aus einem persistenten Checkout. - Validierung vor Löschungen; entfernte Upstream-Dateien werden mit Git versioniert gelöscht. - Alle sechs Stunden um Minute 13 UTC. **Hinweis:** Dies ist der OSV-Mirror, nicht eine vollständige Kopie aller Canonical-Formate (beispielsweise VEX und OVAL). CVEs vor 2017 werden bewusst ausgefiltert. Die offiziellen OSV-Daten sind für unterstützte Ubuntu-Releases verfügbar; historischer Abdeckungsgrad hängt vom Upstream ab. ## Installation auf der Gitea-VM (Host-Runner ohne Docker) 1. Leeres Repository `VULN/vuln-ubuntu` erstellen und diesen Ordner als `main` pushen. 2. `sudo apt install -y git python3 util-linux ca-certificates` 3. Runner-Cache anlegen: ```bash sudo install -d -o act_runner -g act_runner -m 700 /var/lib/act_runner/cache/vuln-ubuntu ``` 4. **Bootstrap-Skript einmalig auf der Gitea-VM installieren** (wird außerhalb des Repositories ausgeführt, weil wir absichtlich keine Checkout-Action verwenden): ```bash sudo install -o act_runner -g act_runner -m 700 scripts/run-cached.sh /var/lib/act_runner/cache/vuln-ubuntu/run-cached.sh ``` 5. Der vorhandene `vuln-runner` muss das Label `vuln-runner` tragen und `secrets.GITEA_TOKEN` muss Schreibrechte besitzen. 6. In Gitea `Actions → Ubuntu OSV Mirror → Run workflow` starten. ## Sicherheits- und Betriebshinweise Host-Runner führen Code direkt auf der Gitea-VM aus: nur vertrauenswürdige Commits zulassen. Für große Anfangsimporte viel freien Speicherplatz einplanen. Die ungefilterte Quelle kann sehr groß sein. Der erste Clone ist trotzdem erforderlich; danach nur inkrementelle Fetches. Gitea selbst speichert dieselben Rohdaten zusätzlich in Git. Vorsicht: Wenn GitHub die Filterfähigkeit nicht unterstützt, kann der anfängliche Git-Clone mehr Daten herunterladen als erwartet. Der verwendete Job-Token wird nur im Prozess weitergegeben, nicht in die Remote-URL geschrieben. Die Daten werden vor Commit geprüft, aber ein Produktionslauf gegen den gesamten Upstream wurde noch nicht durchgeführt. Quelle: https://documentation.ubuntu.com/security/security-updates/osv/ und https://github.com/canonical/ubuntu-security-notices