Auf der offenen Plattform fĂŒr die Organisation des E-Commerce , die etwa des Marktes fĂŒr System zur Erstellung von Online-Shops einnimmt, Schwachstellen, deren Kombination es ermöglicht, einen Angriff zur AusfĂŒhrung von eigenen Code auf dem Server zu starten, vollstĂ€ndige Kontrolle ĂŒber den Online-Shop zu erlangen und Zahlungen umzuleiten. Schwachstellen in den Versionen Magento 2.3.2, 2.2.9 und 2.1.18, in denen insgesamt 75 Sicherheitsprobleme behoben wurden.
Eines der Probleme ermöglicht es einem nicht authentifizierten Benutzer, JavaScript-Code (XSS) einzuschleusen, der beim Anzeigen des Stornierungsprotokolls im Administrationsinterface ausgefĂŒhrt werden kann. Das Wesen der Schwachstelle liegt darin, dass die Textbereinigung durch die Funktion escapeHtmlWithLinks() beim Verarbeiten des Kommentarfeldes im Stornierungsformular auf dem Bildschirm fĂŒr den Kaufabschluss umgangen werden kann (durch die Verwendung des Tags innerhalb eines anderen Tags). Das Problem tritt bei der Verwendung des integrierten Moduls Authorize.Net auf, das zum Akzeptieren von Kreditkartenzahlungen dient.
Um vollstĂ€ndige Kontrolle durch JavaScript-Code im Kontext der aktuellen Sitzung eines Mitarbeiters des Shops zu erlangen, wird eine zweite Schwachstelle ausgenutzt, die das Hochladen einer Phar-Datei als Bild ermöglicht ( âPhar-Deserializationâ). Die Phar-Datei kann ĂŒber das Bildinsertionsfeld im integrierten WYSIWYG-Editor hochgeladen werden. Nachdem der Angreifer seinen PHP-Code ausgefĂŒhrt hat, kann er dann die Zahlungsdetails Ă€ndern oder Informationen ĂŒber die Kreditkarten der KĂ€ufer abfangen.
Interessanterweise wurden die Informationen ĂŒber das XSS-Problem bereits im September 2018 den Magento-Entwicklern gemeldet, nach dem Ende November ein Patch veröffentlicht wurde, der sich jedoch nur auf einen speziellen Fall bezieht und leicht umgangen werden kann. Im Januar wurde zusĂ€tzlich ĂŒber die Möglichkeit berichtet, eine Phar-Datei als Bild hochzuladen, und gezeigt, wie die Kombination zweier Schwachstellen zur Kompromittierung von Online-Shops verwendet werden kann. Ende MĂ€rz wurde in den Versionen Magento 2.3.1,
2.2.8 und 2.1.17 das Problem mit Phar-Dateien behoben, aber die Behebung des XSS-Problems wurde vergessen, obwohl das Ticket zu dem Problem geschlossen wurde. Im April wurde die Analyse von XSS wieder aufgenommen und das Problem in den Versionen 2.3.2, 2.2.9 und 2.1.18 behoben.
Es ist zu beachten, dass in den angegebenen Versionen auch 75 SicherheitsanfĂ€lligkeiten behoben wurden, von denen 16 als kritisch eingestuft sind und 20 Probleme zur AusfĂŒhrung von PHP-Code oder zur DurchfĂŒhrung von SQL-Injection fĂŒhren können. Die meisten kritischen Probleme können nur von einem authentifizierten Benutzer ausgenutzt werden, aber wie oben gezeigt, ist es leicht, authentifizierte Aktionen durch XSS-SicherheitsanfĂ€lligkeiten zu erreichen, von denen in den angegebenen Versionen mehrere Dutzend behoben wurden.
Quelle: opennet.ru
