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-71204-PoC — PoC: Mass Assignment per Blind-Merge in den Einstellungen von changedetection.io (CVE-2026-71204, Medium 6.3) | Kitploit
Tools/GitHubGitHub/nel-droid/cve-2026-71204-poc
Authentifizierung & AutorisierungSchwachstellenanalyseExploitationWebanwendungs-ExploitationAPI-Sicherheit
GitHubnel-droid/cve-2026-71204-poc

CVE-2026-71204-PoC

PoC: Mass Assignment per Blind-Merge in den Einstellungen von changedetection.io (CVE-2026-71204, Medium 6.3)

Repository anzeigen
3vor 24 TagenNoch 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-71204 — changedetection.io: Ausgelassenes Kontrollkästchen beim Speichern in /settings deaktiviert stillschweigend die Durchsetzung der API-Schlüssel-Anforderung

Produkt: dgtlmoon/changedetection.io — v0.55.7 Dateien: changedetectionio/blueprint/settings/__init__.py, changedetectionio/forms.py CWE: CWE-284 — Unsachgemäße Zugriffskontrolle CVSS 3.1: AV:N/AC:H/PR:H/UI:N/S:U/C:H/I:H/A:L — 6.3 (Mittel) CNA: Turan Security · CVE-Eintrag

Beschreibung

Der Speicher-Handler von /settings in changedetection.io erstellt ein Update-Dict aus form.data['application'] und merged es blind über .update() in die gespeicherten Anwendungseinstellungen. Da HTML-Kontrollkästchen in übermittelten Formulardaten nur dann auftauchen, wenn sie aktiviert sind, ist ein manipuliertes POST, das ein sicherheitsrelevantes Kontrollkästchen-Feld (wie jenes zur Durchsetzung der API-Schlüssel-Anforderung) einfach weglässt, auf Handler-Ebene nicht von einem Benutzer unterscheidbar, der es in der Oberfläche abgewählt hat — das blinde .update() schaltet diese Einstellung stillschweigend ab.

Auswirkungen

Eine Anfrage, die api_access_token_enabled (oder ein Äquivalent) nie explizit auf „false“ setzt — sie lässt das Feld einfach aus dem POST-Body weg — führt dazu, dass die Anwendungseinstellungen mit diesem effektiv deaktivierten Schutz zusammengeführt werden, ohne einen expliziten Bestätigungsschritt oder ein Audit-Signal, das „Benutzer hat dies abgewählt“ von „Feld wurde nicht gesendet“ unterscheidet.

Reproduktion

  1. Melde dich wie gewohnt auf der /settings-Seite an.
  2. Sende statt des vollständigen, wie gerendert übermittelten Formulars ein POST an /settings, bei dem das Feld api_access_token_enabled (oder die jeweilige getestete geschützte boolesche Einstellung) vollständig aus dem Body weggelassen wird, während nur nicht zusammenhängende Felder enthalten sind:
    root@kitploit:~
    POST /settings HTTP/1.1
    Content-Type: application/x-www-form-urlencoded
    
    application-some_other_field=value
    
  3. Die blinde form.data['application'] → .update()-Zusammenführung im Speicher-Handler der Einstellungen behandelt das fehlende Feld wie ein explizites „aus“ und deaktiviert den Schutz stillschweigend, ohne dass der Benutzer (oder ein Prüfer, der die Anfrage prüft) ein explizites Ausschaltsignal sieht.

Grundursache

Die Verwendung eines blinden Dict-.update() aus rohen Formulardaten vermischt für kontrollkästchengestützte Einstellungen „Feld fehlt im POST“ mit „Feld wurde explizit auf false gesetzt“ — HTML-Formulare übermitteln nicht aktivierte Kontrollkästchen nie, daher ist dieses Muster für jedes Einstellungsfeld mit Sicherheitsauswirkungen unsicher.

Empfehlung zur Behebung

Zähle die erwarteten booleschen Einstellungsfelder explizit auf und weise fehlenden Feldern standardmäßig ihren aktuell gespeicherten Wert zu (nicht False), oder verwende eine Formularbibliothek, die „nicht übermittelt“ von „als deaktiviert übermittelt“ unterscheidet und sicherheitsrelevante Umschalter explizit validiert, anstatt sie per blindem Dict-Merge zu übernehmen.

Tool herunterladen