Restaurant-Reservierungssystem flickt leicht auszunutzenden XSS-Bug

Cyber Security News

Ein WordPress-Reservierungs-Plugin weist eine Schwachstelle auf, die es nicht authentifizierten Hackern ermöglicht, auf die von Website-Besitzern gespeicherten Reservierungsdaten zuzugreifen.

Ein leicht auszunutzender Fehler, der das WordPress-Plugin ReDi Restaurant Reservation betrifft, ermöglicht es nicht authentifizierten Angreifern, Reservierungsdaten und persönliche Daten von Kunden zu stehlen, indem sie einfach einen bösartigen JavaScript-Code-Schnipsel in das Kommentarfeld der Reservierung einfügen.

Der Fehler betrifft ReDi Restaurant Reservation Versionen vor 21.0307, wobei eine gepatchte (v. 21.0426) Version des Plugins zum Download zur Verfügung steht. Bei der Schwachstelle (CVE-2021-24299) handelt es sich um einen persistenten Cross-Site-Scripting (XSS)-Fehler. Die Schwachstelle ist noch nicht bewertet.

Eine öffentliche Proof-of-Concept-Enthüllung des ReDi-Bugs wurde am Sonntag veröffentlicht, wobei sich die offizielle Veröffentlichung um einen Monat verzögert hat, “aufgrund der Schwere der Sicherheitslücke”, so Bastijn Ouwendijk, der für die Entdeckung des Bugs verantwortlich ist. Der Forscher alarmierte die Hersteller des Plugins, Catz Soft, am 15. April. Ein Fix war am 25. April verfügbar.“[The bug] macht es böswilligen Angreifern möglich, zum Beispiel den API-Schlüssel des Plugins zu stehlen und möglicherweise Informationen über Kunden zu stehlen, die Reservierungen vorgenommen haben, Cookies oder andere sensible Daten zu stehlen”, so Ouwendijk in einer technischen Aufschlüsselung und einem Proof of Concept des Fehlers, der am Sonntag veröffentlicht wurde.

Undichte API-Schlüssel (Application Programming Interface) waren in Dutzenden von Angriffen ein beliebtes Ziel von Hackern und waren für noch mehr Herstellerbehebungen verantwortlich. Twitter, die Cloud Web Application Firewall von Imperva und kürzlich 30 beliebte mHealth-Apps hatten jeweils mit unsicheren API-Schlüsselproblemen zu kämpfen.

Leicht ausnutzbarer Bug

Eine Überprüfung des ReDi-Restaurant-Reservierungs-Plugin-Bugs zeigt, wie ein Angreifer einen Angriff starten kann, indem er einfach eine JavaScript-Nutzlast verwendet – eine, die weniger als 250 Zeichen hat – um den XSS-Bug auszunutzen.

[Blocked Image: https://media.threatpost.com/wp-content/uploads/sites/103/2021/05/24143856/ReDi-Comment-form-226x300.png]“Wie funktioniert diese Sicherheitslücke? Das Plugin bietet Benutzern die Möglichkeit, eine Reservierung für das Restaurant zu buchen. Ein Benutzer muss nur die Reservierungsseite besuchen”, erklärt der Forscher. Anschließend nimmt der Angreifer eine Reservierung vor und gibt im Feld “Kommentar” das bösartige JavaScript ein. Da der Text und der JavaScript-Code nicht bereinigt bzw. unschädlich gemacht werden, werden die Daten des Benutzerkommentars “verarbeitet und in lokalen Variablen gespeichert.”

“Als nächstes werden die gespeicherten Variablen in die Datenbank übertragen. Beachten Sie auch hier, dass die Variablen nicht bereinigt oder validiert werden, bevor sie in die Datenbank übertragen werden. Das bedeutet, dass die Zeichenketten, die wir über das Formular für die Variablen UserName, UserPhone, UserEmail und UserComments einreichen, ohne Änderungen in der Datenbank gespeichert werden”, schrieb der Forscher.

Die Nutzlast wird ausgeführt, wenn ein WordPress-Site-Administrator oder ein Restaurantbesitzer die Reservierungen über die plattformeigene Webseite aufruft.

“Dies ist eine Webseite, auf der Sie die Reservierungen, die für einen bestimmten Zeitraum vorgenommen wurden, anzeigen können. Bei dieser Seite handelt es sich nicht um eine WordPress-Webseite, sondern um eine externe Seite, die innerhalb eines iframe geladen wird, wie im PHP-Code zu sehen ist”, so der Forscher.

PHP (Hypertext Preprocessor) ist eine Skriptsprache zur Erzeugung dynamischer Inhalte, die auf einem Webserver ausgeführt werden.

“Die Url, die innerhalb des iframe geladen wird, nimmt die Url https[://]upcoming.reservationdiary[.]eu/Entry/ und hängt sie an den API-Schlüssel an, der in Ihrem ReDi Restaurant Reservation Plugin registriert ist. Wenn Sie diese Url besuchen, zeigt sie alle getätigten Reservierungen für einen bestimmten Zeitraum an”, schreibt Ouwendijk.

Der Herausgeber des Plugins, Catz Soft, antwortete nicht auf Bitten um Kommentare. Der Forscher, Ouwendijk, antwortete nicht auf spezifische technische Fragen bezüglich dieses Fehlers.

Schließen Sie sich Threatpost für “A Walk On The Dark Side: A Pipeline Cyber Crisis Simulation” – eine interaktive LIVE-Demo am Mi, 9. Juni um 14:00 Uhr EDT. Finden Sie mit Unterstützung von Immersive Labs heraus, ob Sie über die nötigen Werkzeuge und Fähigkeiten verfügen, um einen Angriff auf Ihr Unternehmen im Stil der Colonial Pipeline zu verhindern. Fragen und LIVE-Beteiligung des Publikums sind erwünscht. Nehmen Sie an der Diskussion teil und registrieren Sie sich HIER kostenlos.

Einige Teile dieses Artikels stammen aus:
threatpost.com