
Passiver HTTP-Metadaten-Auditor für die Expositions-Triage von CVE-2026-23918
Alternativ könntest du einfach die Header mit curl holen und einen Blick drauf werfen, aber hier kommt:
Nicht-invasiver HTTP-Metadaten-Auditor für den Apache HTTP Server CVE-2026-23918-Expositions-Triage.
Das Tool sendet gewöhnliche HTTP HEAD/GET-Anfragen und führt TLS-ALPN-Aushandlung durch, um die HTTP/2-Unterstützung zu beobachten.
uvInstalliere uv:
curl -LsSf https://astral.sh/uv/install.sh | sh
Beispiele für gängige Paketmanager:
brew install uv [email protected]
sudo apt install python3.13 python3.13-venv pipx && pipx install uv
sudo dnf install python3.13 pipx && pipx install uv
sudo pacman -S uv python
Installiere Projektabhängigkeiten:
make install
Installiere Entwicklerabhängigkeiten für Linting:
make install-dev
Drucke die Befehlszusammenfassung:
make help
Auditiere ein einzelnes Ziel:
make run https://example.com
Drucke einzeilige CVE-Urteile:
make run https://example.com brief
Auditiere Ziele aus targets.json:
make run targets.json brief
Optionale Variablen:
make run targets.json brief TIMEOUT=30 CONCURRENCY=10
make run https://example.com INSECURE=1
make run targets.json JSON_OUTPUT=1
Interaktive Terminals zeigen einen kleinen ASCII-Spinner auf stderr, während Anfragen ausgeführt werden. Die Berichtsausgabe bleibt auf stdout.
targets.json muss ein JSON-Array aus Hostnamen, IP-Adressen oder URLs sein:
[
"https://httpd.apache.org",
"https://example.com",
"http://scanme.nmap.org"
]
Äquivalentes generisches Format:
[
"https://example.com",
"example.org",
"192.0.2.10",
"http://192.0.2.20:8080"
]
Jeder Eintrag muss ein nicht-leerer String sein. Bloße Hostnamen und IP-Adressen werden auf HTTPS normalisiert.
Alt-Svc und UpgradeKurzes Ausgabeformat:
https://example.com [Apache/2.4.66] [h2 no] => likely vulnerable (h2 not confirmed)
Für CVE-2026-23918 wird Apache 2.4.66 als betroffen und 2.4.67 oder später als behoben behandelt. Ältere Apache-Versionen werden als außerhalb des bestätigten CVE-Bereichs gemeldet.
audit.py: CLI-Einstiegspunkt.auditor/: Validierung, passive Erfassung, Analyse, Berichterstattung und
Fortschrittsanzeige.Erfolgreiche Ausführung beendet sich mit Status 0 nach der Ergebnismeldung. Befunde, einschließlich verwundbar aussehender Banner, sind Datenausgaben und führen nicht zu einem Fehlschlag des Prozesses.
Fehler bei der Eingabevalidierung und Setup-Fehler können mit einem Nicht-Null-Status beendet werden.
Die Ergebnisse basieren auf extern sichtbaren Metadaten und sind kein autoritativer Beweis für den Paketzustand. Server-Banner können versteckt, modifiziert, zurückportiert oder über Zwischeninstanzen weitergeleitet sein.
CC0 1.0 Universal. Siehe LICENSE.