44 lines
2.6 KiB
Markdown
44 lines
2.6 KiB
Markdown
# vuln-ubuntu
|
|
|
|
Mirror der **offiziellen Ubuntu-OSV-JSON-Rohdaten** aus
|
|
`https://github.com/canonical/ubuntu-security-notices`.
|
|
|
|
- CVEs ab 2017 unter `data/osv/cve/<jahr>/`.
|
|
- 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
|