
Patch-Status-Tracker für CVE-2026-42533, einen nginx Heap-Pufferüberlauf. Überwacht Distributions-Fix-Versionen, stellt Datierungsskripte bereit und veröffentlicht eine Hugo-basierte Tracker-Website für Incident Response und Vulnerability Awareness.
Quelle für den Patch-Status-Tracker zu CVE-2026-42533: eine Single-Page-Website, die festhält, welche Distributionen einen Fix für den nginx map/regex Capture-Clobbering-Heap-Overflow ausgeliefert haben.
Alles über den Bug — betroffene und behobene Versionen, der Upstream- Fix, die Anerkennung für Entdeckung und Offenlegung sowie der aktuelle Patch-Status pro Distribution — gehört auf die Tracker-Seite, nicht in diese README:
site/content/_index.mdBearbeite diese Datei; alles andere in diesem Repo ist Build-Infrastruktur.
Nichts davon wird hier absichtlich wiederholt. Die Tracker-Seite wird überarbeitet, sobald Distributionen Fixes ausliefern — bei den aktiv aktualisierten Trackern zweimal täglich durch den Auto-Update-Agent —, sodass jede in dieser README gepflegte Kopie still verrotten würde. Widerstehe der Versuchung, eine Zusammenfassung wieder hinzuzufügen.
Der Deployment-Plan und der aktuelle Setup-Zustand stehen in
WEBSITE.md.
Erfordert Hugo extended (≥ 0.146.0) und Go (damit Hugo Modules das PaperMod-Theme beziehen kann).
nix develop # dev shell: hugo, go, git, resvg, curl
cd site
hugo server # lokale Vorschau unter http://localhost:1313/CVE-2026-42533/
Wenn du direnv verwendest, einmal direnv allow
ausführen, und die Dev-Shell aktiviert sich automatisch, sobald du in
das Repo cd-st.
Installiere Hugo extended ≥ 0.146.0 und Go ≥ 1.24 selbst, dann:
cd site
hugo server # http://localhost:1313/CVE-2026-42533/
make build # lokaler Build nach site/public/
make dist # Build, dann rsync nach haig:/CVE-2026-42533/
make banner # Social-Banner-SVG → PNG neu rastern (benötigt resvg + Roboto)
make dist führt zuerst make build aus. make banner ist nur nach
dem Bearbeiten von site/assets/cve-2026-42533-tracker.svg nötig; das
gerenderte PNG wird eingecheckt.
Das Fixed since einer Zeile ist das Datum, an dem der Fix tatsächlich ausgeliefert wurde, abgeleitet aus der Quelle, die ihn ausgeliefert hat — niemals der Tag, an dem er bemerkt wurde. Für die NixOS- und nixpkgs-Kanäle ist diese Ableitung ein Skript:
./scripts/nixos-first-shipped nixos-unstable <nixpkgs-commit>
Es listet die veröffentlichten Releases des Kanals auf, findet das früheste, das aus einer Revision mit dem Commit gebaut wurde, und gibt dieses Release samt Veröffentlichungsdatum aus. Debian-Daten stammen aus dem Changelog oder von snapshot.debian.org, pkgsrc-Daten aus der Historie des Package-Makefile.
Die beiden anderen Helfer lesen den aktuellen Zustand aus den lokalen Clones:
./scripts/nixpkgs-versions
./scripts/pkgsrc-versions
Jeder gibt eine Zeile pro getrackter Zeile aus — die Versionen und ob
ein CVE-Backport vorhanden ist. pkgsrc-versions berücksichtigt
PKGNAME, sodass es den Identifier ausgibt, den ein Host anzeigt
(nginx-devel-1.29.6nb1), nicht den Distfile-Namen.
.
├── flake.nix # Nix dev environment (hugo, go, git, resvg, curl)
├── .envrc # direnv hook → `use flake`
├── .gitignore
├── Makefile # `make build`, `make dist`, `make banner`
├── LICENSE # CC BY 4.0
├── README.md # this file
├── CLAUDE.md # project instructions for Claude Code
├── WEBSITE.md # publication plan / decisions log
├── scripts/ # auto-update driver + prompt, and the three lookup helpers
├── systemd/ # user-level timer + service units
└── site/ # Hugo project
├── hugo.toml
├── content/
│ └── _index.md # the tracker (single page)
├── assets/css/extended/custom.css # PaperMod CSS overrides
├── assets/cve-2026-42533-tracker.svg # social-banner source (→ make banner)
├── static/cve-2026-42533-tracker.png # rendered OpenGraph banner (committed)
├── layouts/partials/ # PaperMod overrides (post_meta, extend_footer)
├── go.mod, go.sum # Hugo Modules — pulls PaperMod theme
└── … # standard Hugo skeleton
CC BY 4.0 — teilen und anpassen mit Namensnennung.