51 lines
2.6 KiB
Markdown
51 lines
2.6 KiB
Markdown
# vuln-oracle – Oracle Security Advisory Mirror
|
||
|
||
Öffentliche Oracle Security Advisories ab 2017 als **unveränderte HTML-Rohdokumente** plus **von Oracle verlinkte CSAF-JSON-Risikomatrizen**, wo vorhanden.
|
||
|
||
## Datenquellen
|
||
- https://www.oracle.com/security-alerts/
|
||
- https://www.oracle.com/security-alerts/cpuarchive.html
|
||
|
||
Erfasst CPUs, CSPUs, Security Alerts und Solaris Third Party Bulletins, sofern in den beiden Übersichtsseiten mit Jahresangabe gelistet. Ältere Advisories haben nicht zwingend CSAF-JSON. My Oracle Support (Login/Patches) wird nicht abgerufen.
|
||
|
||
## Einrichtung
|
||
|
||
1. In Gitea unter `VULN` das leere Repository `vuln-oracle` anlegen.
|
||
2. Dateien hochladen (`git init`, `git branch -M main`, `git add .`, `git commit ...`, `git remote add origin ...`, `git push -u origin main`).
|
||
3. Auf der Gitea-VM als root:
|
||
|
||
```bash
|
||
apt-get install -y python3 git util-linux
|
||
install -d -o act_runner -g act_runner -m 700 /var/lib/act_runner/cache/vuln-oracle
|
||
```
|
||
|
||
4. Gitea Actions für dieses Repository aktivieren und mit dem vorhandenen Host-Runner `vuln-runner` starten. Zeitplan: alle 6 Stunden um Minute 11 (UTC, soweit Gitea entsprechend konfiguriert).
|
||
|
||
Der Workflow nutzt das automatisch bereitgestellte `secrets.GITEA_TOKEN`. Das Secret muss im Job vorhanden sein und `contents: write` erhalten; andernfalls die Variable in der YAML auf den eigenen Token-Namen ändern.
|
||
|
||
## Layout
|
||
|
||
```text
|
||
data/index/ # Originale Übersichtsseiten
|
||
data/advisories/YYYY/ # Originale Oracle HTML-Advisories
|
||
data/csaf/YYYY/ # Originale CSAF JSON (nur wo verlinkt)
|
||
state/catalog.json # Indizierte Advisory-Liste
|
||
```
|
||
|
||
## Verhalten
|
||
|
||
- Alle 6 Stunden werden **alle gelisteten** Dokumente erneut per HTTP abgerufen und nur bei veränderten Bytes in Git geschrieben.
|
||
- Das ist ein inkrementeller **Git-Commit**, aber **kein HTTP-Delta-Download**. Der Oracle-Datenumfang ist deutlich kleiner als OSV/NVD.
|
||
- Link- oder Download-Fehler führen zum Abbruch ohne Commit. Fehlende historische Dokumente werden nicht automatisch gelöscht.
|
||
- Die Discovery prüft einen Mindestumfang; bei geändertem HTML-Layout wird kein vermeintlich erfolgreicher leerer Sync veröffentlicht.
|
||
- Enthält *keine* kommerziellen Patches oder interne MOS-Dokumente. Oracle-Lizenz-/Nutzungsbedingungen vor einer öffentlichen Weiterverteilung der Rohdaten prüfen.
|
||
|
||
## Lokal testen
|
||
|
||
```bash
|
||
python3 scripts/sync.py --since-year 2017
|
||
python3 scripts/validate.py
|
||
```
|
||
|
||
Hinweis: Die URL-Strukturen und die HTML/CSAF-Verknüpfung sind geprüft. Vollständige Live-Läufe und Git-Pushes müssen auf der eigenen Gitea-VM getestet werden.
|