CVE-2026-71378
Beschreibung
ResourceIsolationRequestCycleListener schützt eine Wicket-Anwendung vor standortübergreifender Anfragenfälschung, indem es Anfragen ablehnt, dass ein Richtlinienrichter für die Ressourcenisolierung aus einem anderen Ursprung stammt. Seine Standardrichtlinie, FetchMetadataResourceIsolationPolicy, wurde von einer Referenzimplementierung abgeleitet, die zum Schutz statischer Ressourcen geschrieben wurde, und erbte zwei Zertifikate, die unsicher sind, wenn das geschützte Ding eine Aktion auf einer Seite ist: * Jede "einfache Navigation auf oberster Ebene" war erlaubt. Jede GET-Anfrage mit Sec-Fetch-Modus: Navigieren Sie, dessen Sec-Fetch-Dest weder Objekt noch Einbettung war, was auch immer Sec-Fetch-Site sagte - einschließlich Cross-Site. Wicket ruft Zuhörer von Komponenten (Link.onClick(), Formulareinsendungen, Verhaltensrückrufe) durch gewöhnliche GET-Navigationen auf, so dass eine Seite unter der Kontrolle eines Angreifers durch den Browser des Opfers zu einer Zuhörer-URL navigieren und diesen Zuhörer innerhalb der authentifizierten Sitzung des Opfers ausführen kann. Browser senden SameSite=Lax-Cookies - der effektive Standard, wenn kein SameSite-Attribut festgelegt ist - auf standortübergreifenden GET-Navigationen auf oberster Ebene, so dass das Sitzungscookie des Opfers die Anfrage begleitet hat. * Sec-Fetch-Site: same-Site wurde bedingungslos erlaubt. Dieser Wert bedeutet die gleiche registrierbare Domain und das gleiche Schema, aber einen anderen Ursprung - eine andere Subdomain oder einen anderen Port. Jeder Geschwister-Ursprung könnte daher jeden Zuhörer mit jeder Methode aufrufen, POST-Formular sendet ein, und Cookies werden immer auf gleiche Website-Anfragen gesendet, unabhängig von SameSite. Ein feindlicher Geschwister-Ursprung, der durch eine Subdomain-Übernahme, durch delegierte Benutzerinhalte oder durch ein XSS an anderer Stelle auf der Website erhalten wurde, könnte als authentifizierter Benutzer fungieren. Benutzern wird empfohlen, auf Version 9.24.0 oder 10.11.0 zu aktualisieren, die das Problem beheben. Betroffene Versionen * Apache Wicket 9.1.0 bis 9.23.0 * Apache Wicket 10.0.0 bis 10.10.0 Keine Veröffentlichung älter als 9.1.0: * Apache Wicket 8.x (8.0.0 bis 8.17.0). Die Ressourcenisolationsklassen existieren nicht in der 8.x-Zeile, die nur den Origin/Referer-basierten CsrfPreventionRequestCycleListener anbietet. Kein 8.x Release erfordert einen Fix. * Apache Wicket 9.0.0. ResourceIsolationRequestCycleListener und FetchMetadataResourceIsolationPolicy wurden von WICKET-6786 eingeführt und erstmals in 9.1.0 ausgeliefert (veröffentlicht 2020-10-07).
Quellen & weiterführende Informationen
Hier werden ausschließlich tatsächlich zu dieser Schwachstelle gespeicherte Quellenbelege angezeigt.
Was ist zur Behebung zu tun?
Herstellerhinweise prüfen und das betroffene Produkt kurzfristig patchen oder kompensierende Schutzmaßnahmen aktivieren.
Empfohlene Schritte
- Betroffene Systeme identifizieren: Apache Software Foundation wicket.
- Exposition prüfen: Internet-Erreichbarkeit, Admin-Oberflächen, VPN, Mail- oder Webdienste.
- Hersteller-Advisory öffnen und verfügbare Updates, Workarounds oder Deaktivierungen prüfen.
- Nacharbeiten dokumentieren: betroffene Assets, Maßnahme, Zeitpunkt, Restrestrisiko.
Übergangsmaßnahmen
- Zugriff auf betroffene Dienste auf vertrauenswürdige Netze einschränken.
- WAF/IDS/EDR-Regeln und Hersteller-IOCs aktivieren, sofern verfügbar.
- Nicht benötigte Funktionen, Plugins oder Dienste temporär deaktivieren.
- Administrative Zugänge besonders absichern: MFA, Passwortrotation, Session-Invalidierung.