Magento Shops über MySQL Sicherheitslücke gehackt

Magento Shops über MySQL Sicherheitslücke gehackt

Aktuell häufen sich Hackerangriffe auf Magento Onlineshops. Die Angreifer nutzen dabei offenbar eine bereits seit Jahren dokumentierte Schwachstelle im Datenbank-Protokoll MySQL. Mithilfe eines manipulierten MySQL Servers können Hacker in unzureichend geschützte Server eindringen, um sich Zugriff zu Magento, der Datenbank und schließlich auch zum Dateisystem zu verschaffen. Auf diesem Weg lässt sich schließlich Schadcode für Skimming-Attacken in das System einschleusen. Und genau das ist bereits in zahlreichen Shops geschehen.

Worum genau geht es?

Bereits seit mehreren Jahren beschreibt die offizielle MySQL Dokumentation eine Schwachstelle, der das Potenzial attestiert wird, Hackern theoretisch weitreichende Möglichkeiten für Angriffe zu eröffnen. Dort heißt es:

Theoretisch könnte ein manipulierter [MySQL] Server aufgesetzt werden, der den Client auffordert, eine vom Server ausgewählte Datei anstelle der vom Client im LOAD DATA Statement bezeichneten Datei auszuliefern. Ein solcher Server hätte Zugriff auf jede Datei auf dem Client Host, für die der Client User Lesezugriff hat. (Ein manipulierter Server könnte tatsächlich auf jedes Statement mit einer Dateitransfer-Anfrage antworten, nicht nur auf LOAD DATA LOCAL, so dass grundsätzlich betont werden muss, dass sich Clients nie mit nicht vertrauenswürdigen Servern verbinden sollten.)

Quelle: https://dev.mysql.com/doc/refman/8.0/en/load-data-local.html (Übersetzung von uns).

Was hier ahttps://dev.mysql.ata-local.htmlls „theoretische“ Möglichkeit skizziert worden ist, konnte inzwischen allerdings von Hackern in die Tat umgesetzt werden, wie der auf Magento Onlineshops spezialisierte Sicherheitsforscher Willem de Groot in den vergangenen Tagen aufgedeckt hat. Der für solche Attacken benötigte manipulierte MySQL Server steht sogar seit über fünf Jahren auf GitHub bereit, so dass Angreifer seither nur mehr einen Weg zu finden hatten, um Clients so zu manipulieren, dass diese sich mit dem bösartigen externen MySQL Server verbinden. Und genau das ist ihnen auf unzureichend geschützten Servern mithilfe älterer Versionen des Administrationstools Adminer auch gelungen, wie de Groot in seinem Blog-Beitrag zu einer neuartigen Serie zu Hackerangriffen auf Magento Onlineshops beschreibt.

Erst in der genauen Untersuchung der weiteren Funktionsweise dieser Hacks entdeckte der Forscher dann den direkten Zusammenhang mit der beschriebenen MySQL Sicherheitslücke: Sobald Hacker eine ungeschützte adminer.php im Dateisystem lokalisieren, was auf zahlreichen Servern mit geringem Aufwand möglich ist, können sie dieses Einfallstor nutzen, um die für das Ausnutzen der MySQL Schwachstelle benötigte Verbindung zu einem manipulierten externen MySQL-Server herzustellen. Zunächst muss die Struktur des Dateisystems durch eine Handvoll gezielter Abfragen aus der Ferne ausgekundschaftet werden. Dann lassen sich im Rahmen des Lesezugriffs des Clients auch Dateien mit sensiblen Informationen wie Passwörtern bequem auslesen und für den Einbruch in Magento Shop und Datenbank nutzen. Und schließlich kann Skimming-Malware in das System eingeschleust werden.

Einmal mehr haben Hacker damit die Gelegenheit, Magento Onlineshops zu nutzen, um Kundendaten, Kreditkarteninformationen und mehr zu stehlen. (Zuletzt haben wir vor wenigen Monaten über eine andere von Willem de Groot entdeckte Skimming-Angriffswelle gegen Magento Shops berichtet.) Zur Ehrenrettung von Magento sei jedoch ausdrücklich unterstrichen, dass die aktuell entdeckte Schwachstelle nicht Magento, sondern – wie beschrieben – dem MySQL Standard und dem Tool Adminer anzulasten ist.

Wie lässt sich herausfinden, ob der eigene Shop betroffen ist?

Als Shopbetreiber gibt es keine ganz einfache Möglichkeit, den eigenen Shop im Hinblick auf die beschriebene Sicherheitslücke zu überprüfen – es sei denn Willem de Groot meldet sich mit einer entsprechenden Warnung, wie es etwa der CSU mitten im Landtagswahlkampf 2018 geschah. Zunächst muss überprüft werden, ob das Tool Adminer in einer älteren Version (mit Versionsnummer kleiner als 4.6.3) eingesetzt wird. Sollte das der Fall sein, muss zusätzlich überprüft werden, ob das Skript adminer.php von außen erreichbar ist und ob sich in den entsprechenden Log-Files ungewöhnlicher Datenverkehr feststellen lässt.

Auf diese Weise lässt sich herausfinden, ob Angreifer den Weg über Adminer genommen haben, oder nicht. Aber es gibt keinen Grund anzunehmen, dass dieses Tool das einzige ist, das ein geeignetes Einfallstor für einen Angriff mithilfe eines manipulierten MySQL Servers bietet. Es ist gut möglich, dass weitere Möglichkeiten für analog funktionierende Attacken bestehen. Und es ist keineswegs ausgeschlossen, dass eine oder mehrere davon bereits jetzt von Hackern genutzt werden.

Was müssen betroffene Shopbetreiber tun?

In betroffenen Onlineshops müssen mehrere Maßnahmen getroffen werden. So muss gegebenenfalls bereits eingeschleuste Malware entfernt werden, während andererseits die Sicherheitslücke im System umgehend zu schließen ist. Dafür muss das Tool Adminer wirksam gegen Zugriffe von außen geschützt werden und sollte zusätzlich ein Update auf eine neuere Version (mindestens 4.6.3, empfohlen wird derzeit 4.7.0) erhalten.

Brauchen Sie Unterstützung beim Schutz Ihres Magento Onlineshops? Wir helfen Ihnen gern!

Jetzt beraten lassen!

Newsletter abonnieren

Melden Sie sich für unseren Newsletter an und lassen Sie sich monatlich über unsere neuesten Beiträge informieren!

    Kontakt

    Genug über uns – lassen Sie uns darüber sprechen, wie wir Ihnen helfen können.