
Proof-of-Concept für eine gespeicherte XSS-Schwachstelle (CVE-2021-44217) in der Kommentarkomponente von Ericsson CodeChecker, die Cookie-Diebstahl und die Exfiltration sensibler Daten über die Reports-Viewer-API ermöglicht.
[Vorgeschlagene Beschreibung] In Ericsson CodeChecker bis einschließlich 6.18.0 ermöglicht eine gespeicherte Cross-Site-Scripting (XSS) Schwachstelle in der Kommentarkomponente des Berichtsbetrachters entfernten Angreifern, beliebiges Web-Script oder HTML über die POST-JSON-Daten der /CodeCheckerService-API einzuschleusen.
[Zusätzliche Informationen] Der CodeChecker-Webserver verfügt über ein Berechtigungssystem zur Isolierung von Benutzern mit unterschiedlichen Berechtigungen. Außerdem speichert er das Cookie jedes Benutzers in document.cookie. Daher kann ein Angreifer mit niedrigen Berechtigungen (z. B. das Gastkonto) diesen Fehler ausnutzen, um geheime Cookies des Superusers oder andere sensible Informationen von Scan-Berichten zu stehlen, indem er die Opfer dazu bringt, eine datenabrufende API anzufragen. Mit Out-of-Band-Techniken können diese sensiblen Informationen problemlos an den Server des Angreifers übermittelt werden.
[Schwachstellentyp] Cross Site Scripting (XSS)
[Hersteller des Produkts] Ericsson
[Betroffene Produktcodebasis] CodeChecker - <= 6.18.0
[Betroffene Komponente] „Comments“-Komponente des Berichtsbetrachters
[Angriffsart] Remote
[Auswirkung Codeausführung] wahr
[Auswirkung Rechteausweitung] wahr
[Auswirkung Informationsoffenlegung] wahr
[Angriffsvektoren] Um diese Schwachstelle auszunutzen, muss jemand einen Kommentar unter einem beliebigen Scan-Bericht hinzufügen.
[Referenz]
https://codechecker-demo.eastus.cloudapp.azure.com/
https://user-images.githubusercontent.com/9525971/142965091-e118b012-a7fc-4c2f-ad0c-80aeed6f7ec9.png
https://github.com/Ericsson/codechecker/releases
[Entdecker] Xinyi Chen - S&G Security TMG
Die Kommentarkomponente des Berichtsbetrachters überprüft die Benutzereingabe nicht, was zu einem gespeicherten XSS auf dieser Seite führt.

Ein Angreifer kann diesen Fehler ausnutzen, um geheime Cookies oder andere sensible Informationen über datenabrufende APIs zu stehlen.
