Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
cve-2026-46331-audit — cve-2026-46331-audit script | Kitploit
Tools/GitHubGitHub/quaerendir/cve-2026-46331-audit
Privilege EscalationVulnerability AnalysisExploitationForensicsPapers & ResearchLearning & EducationIncident Response
GitHubquaerendir/cve-2026-46331-audit

cve-2026-46331-audit

cve-2026-46331-audit script

Repository anzeigen
vor 1 MonatNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

cve-2026-46331-audit

Nur-Lese-Audit-Skript für CVE-2026-46331 (auch bekannt als pedit COW) — ein partieller Copy-on-Write-Fehler in der Linux-Kernel-Aktion net/sched act_pedit, der es einem lokalen nicht privilegierten Benutzer ermöglicht, Page-Cache-Speicher zu beschädigen und Root-Rechte zu erlangen.

root@kitploit:~
   ____  _____ ____ ___ _____      ____ _____        __
  |  _ \| ____|  _ \_ _|_   _|    / ___/ _ \ \      / /
  | |_) |  _| | | | | |  | |     | |  | | | \ \ /\ / /
  |  __/| |___| |_| | |  | |     | |__| |_| |\ V  V /
  |_|   |_____|____/___| |_|      \____\___/  \_/\_/
     CVE-2026-46331    net/sched act_pedit partial COW

TL;DR

tcf_pedit_act() berechnet den COW-Bereich für skb_ensure_writable() einmal vor der Schlüsselschleife, unter Verwendung von tcfp_off_max_hint. Typisierte Schlüssel fügen einen Header-Offset zur Laufzeit hinzu, den der Hint nicht abdeckt, sodass ein Teil der letztendlichen Schreiboperation außerhalb des COW-Bereichs landet. Ergebnis: Gemeinsam genutzte Page-Cache-Seiten werden überschrieben, und ein zwischengespeichertes setuid-Binary (klassisches Ziel: /bin/su) kann im Speicher vergiftet werden. Hashes auf der Festplatte bleiben sauber. Datei-Integritätsmonitore werden es nicht sehen.

Gleiche Bug-Familie wie Dirty COW (CVE-2016-5195), Dirty Pipe (CVE-2022-0847), Copy Fail (CVE-2026-31431) und Dirty Frag (CVE-2026-46300). Der Einstiegspunkt ist anders, der Seitenbesitz-Fehler ist derselbe.

Was dieses Skript tut

Streng auf Lesen beschränkte Triage. Lädt nie ein Modul, berührt nie sysctl, führt nie einen PoC aus. Entwickelt, um sicher auf Produktionssystemen ausgeführt zu werden.

  • Erfasst laufenden Kernel, Distribution, Kernel-Paketversion.
  • Prüft act_pedit-Erreichbarkeit über vier unabhängige Signale:
    • aktuell geladen (lsmod)
    • auf Abruf ladbar (modinfo)
    • in den laufenden Kernel eingebaut (/boot/config-$(uname -r), /proc/config.gz, modules.builtin)
    • durch blacklist oder install ... /bin/true-Override in modprobe.d blockiert
  • Listet bestehende tc action pedit-Regeln auf (informativ; keine Änderungen).
  • Liest userns-Grenzen: user.max_user_namespaces, kernel.unprivileged_userns_clone und die Ubuntu-AppArmor-userns-Einschränkungen.
  • Heuristische Hersteller-Patch-Matrix gemäß (RHEL 8/9/10, Debian 11/12/13/14, Ubuntu 18.04→26.04, SUSE, Amazon Linux, Arch-Familie mit Rolling Release).

Verwendung

root@kitploit:~
sudo ./cve-2026-46331-audit.sh                       # vollständiger Textbericht
sudo ./cve-2026-46331-audit.sh --json                # maschinenlesbares JSON, kein Banner
sudo ./cve-2026-46331-audit.sh --quiet --no-hunt     # einzeiliges Urteil für Massenscans
sudo ./cve-2026-46331-audit.sh --since 2026-06-01    # IoC-Scan-Fenster erweitern
sudo ./cve-2026-46331-audit.sh --no-banner           # Textbericht ohne ASCII-Banner

Exit-Codes

Beispielausgabe

Siehe examples/sample-output.txt für einen vollständigen Lauf und examples/sample-output.json für die JSON-Form.

Risikobewertungsmodell

Der Wert ist eine gewichtete Kombination aus:

Gedeckelt bei 100. Alles über ~70 sollte auf Multi-Tenant-/CI-/Kubernetes-Knoten als dringend behandelt werden; unter ~20 ist meist eine Bestätigung, dass der Host in Ordnung ist.

Massenbereitstellung

Ansible

root@kitploit:~
ansible -i inventory all -m script \
  -a "cve-2026-46331-audit.sh --json --quiet --no-hunt" \
  --become \
  | tee /tmp/audit.jsonl

Dann aggregieren mit jq:

root@kitploit:~
grep -v '^[a-z]' /tmp/audit.jsonl | jq -s 'group_by(.verdict) | map({verdict: .[0].verdict, hosts: length})'

Failed_when in einem Playbook

root@kitploit:~
- name: CVE-2026-46331 prüfen
  ansible.builtin.script: cve-2026-46331-audit.sh --quiet --no-hunt
  register: audit
  failed_when: audit.rc == 2
  changed_when: false

Maßnahmen (falls Sie das Patchen verzögern müssen)

In der Reihenfolge der Präferenz. Das Skript empfiehlt die richtige basierend auf dem, was es gefunden hat.

root@kitploit:~
# Option 1: act_pedit blockieren, falls Sie es nicht verwenden.
tc actions list action pedit                  # MUSS leer sein, bevor dies ausgeführt wird
echo 'install act_pedit /bin/true' | sudo tee /etc/modprobe.d/disable-act_pedit.conf
lsmod | grep -q act_pedit && sudo rmmod act_pedit
root@kitploit:~
# Option 2: Nichtprivilegierte User Namespaces einschränken.
# Unterbricht rootless Podman/Docker, Browser-Sandboxen, Flatpak, unprivilegiertes unshare, einige CI-Sandboxen.
sudo sysctl -w user.max_user_namespaces=0           # EL-Familie
sudo sysctl -w kernel.unprivileged_userns_clone=0   # Debian/Ubuntu

Die wirkliche Lösung ist ein Hersteller-Kernel-Update plus ein Neustart. uname -r nach dem Neustart ist das einzige, was es beweist.

Kontext der Bug-Familie

Dies ist die fünfte Iteration desselben architektonischen Versagens. Jede behob die unmittelbare Ursache, keine behob die Grundursache: Zero-Copy-Schnellpfade, die Seiten gemeinsam über Eigentumsgrenzen hinweg nutzen, bei denen jeder Schreiber die Privatsphäre nachweisen muss, bevor er Bytes ändert, an Hunderten von Aufrufstellen.

Rust im Kernel adressiert genau diese Klasse durch Eigentumstypen. Es wird morgen nicht in net/sched auftauchen.

Referenzen

  • NVD: https://nvd.nist.gov/vuln/detail/CVE-2026-46331
  • Red Hat: https://access.redhat.com/security/vulnerabilities/RHSB-2026-008
  • Ubuntu: https://ubuntu.com/security/CVE-2026-46331
  • Debian: https://security-tracker.debian.org/tracker/CVE-2026-46331
  • Upstream-Commit und Beschreibung: siehe die NVD-Eintragsreferenzen.

Lizenz

MIT. Siehe LICENSE.

Haftungsausschluss

Für autorisierte defensive Nutzung auf Systemen, die Ihnen gehören oder für die Sie ausdrücklich eine Prüfungserlaubnis haben. Das Skript führt niemals den öffentlichen PoC aus, ändert nie den Systemzustand und lädt nie Module. Behandeln Sie das Urteil als Triage, nicht als Nachweis einer Kompromittierung oder Sicherheit.

Tool herunterladen
CVECVE-2026-46331
KomponenteLinux-Kernel net/sched / act_pedit
KlassePartielles COW → Page-Cache-Korruption → LPE
AngriffsvektorLokal (CAP_NET_ADMIN, normalerweise über nicht privilegiertes userns erworben)
Upstream betroffen5.18 .. 7.1-rc6
Upstream-Fix7.1-rc7
Öffentlicher PoCpacket_edit_meme (verifiziert RHEL 10, Debian 13, Ubuntu 24.04.4)
Red Hat-SchweregradWichtig
SUSE CVSS 3.17.8 (AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H)
/etc/os-release
  • Optionales IoC-Scanning via auditd und journalctl (konfigurierbares Fenster via --since).
  • Risikowert von 0-100 und endgültiges Urteil: PATCHED / NOT_APPLICABLE / MITIGATED / VULNERABLE / UNKNOWN.
  • Exit-Codes für die Flottenorchestrierung.
  • CodeBedeutung
    0PATCHED oder NOT_APPLICABLE (Kernel vor dem Fehler)
    1MITIGATED (Maßnahme aktiv, Kernel weiterhin anfällig, trotzdem patchen)
    2VULNERABLE (eine oder mehrere erforderliche Vorbedingungen erfüllt, kein gefixter Kernel)
    3UNKNOWN (als verdächtig behandeln in gemeinsam genutzten / CI / Kubernetes-Umgebungen)
    4ERROR (Skript konnte nicht ausgeführt werden; fehlende Tools oder schlechte Umgebung)
    SignalGewicht
    Herstellerurteil VULNERABLE+50
    Herstellerurteil UNKNOWN+30
    act_pedit in Kernel eingebaut+25
    act_pedit ladbar, kein Override+20
    act_pedit ladbar, Override aktiv+5
    act_pedit derzeit geladen+5
    Nichtprivilegiertes userns erreichbar, kein AppArmor-Gate+15
    Nichtprivilegiertes userns erreichbar, AppArmor-Gate aktiv+8
    IoCs im Scan-Fenster gefunden+10
    CVEJahrSubsystemPrimitiv
    CVE-2016-51952016mmCOW-Race auf schreibgeschützter Zuordnung
    CVE-2022-08472022pipe / splicepipe_buffer-Flag-Leck in Page-Cache
    CVE-2026-314312026crypto AF_ALG/AEADIn-Place-Krypto über schreibgeschütztem Dateicache
    CVE-2026-463002026XFRM ESP-in-TCPVerlust der skbuff-Shared-Frag-Markierung
    CVE-2026-463312026net/sched act_peditPartielles COW durch spät aufgelösten typisierten Schlüssel-Offset