Magento Sicherheitslücken

In den Jahren, in denen wir Magento Shops entwickeln und betreuen, hatten wir bereits Kontakt mit einigen Angriffsszenarien gegen Magento Webshops. Im Jahr 2015 stieg nicht nur die Zahl an Magentoshops weltweit, das Shopsystem wurde auch zunehmend Ziel professioneller Angriffe. Das zeigt sich insbesondere durch eine große Zahl an veröffentlichten Sicherheitspatches.

Aktuell informiert Magento seine Kunden über mögliche Brute-Force Attacken die versuchen das Passwort im Backend zu erraten:

Risiko Internet

Jeder Rechner der eine Verbindung mit dem globalen Netzwerk, kurz Internet, aufnimmt läuft Gefahr Opfer eines Angriffs zu werden. Für den Heimcomputer, Tablet oder Smartphone mag das weniger schlimm sein, für einen Server der rund um die Uhr online ist schon eher. Besonders Webseiten die hohe Zugriffszahlen haben, Benutzerdaten sammeln oder sogar Zahlungssysteme anbieten sind da ein lohnendes Ziel. Was Angreifer interessiert ist aber recht unterschiedlich und meist hängt das direkt mit dem Typ des Angriffs zusammen.

Die folgende Aufzählung ist nur eine Liste möglicher Angriffe. Mit großer Sicherheit gibt es weit mehr Möglichkeiten eine Webseite oder einen Webshop von aussen zu schädigen.

Ungezielte Brute Force Angriffe

Die häufigsten Probleme sind nicht gezielte Brute Force Attacken auf Magento. Angreifer durchsuchen das Netz nach Magento Shops und versuchen ins Backend zu gelangen. Unter Brute Force versteht man dabei das Probieren von Benutzername/Passwort Kombinationen beim Login. Sofern Login Versuche nicht im Millisekunden Takt eintreffen fällt das oft lange nicht auf. Meist laufen solche Angriffe automatisiert ab, die Angreifer sammeln Daten und werden erst manuell aktiv, nachdem die Software Zugriff erlangt hat.

Vorsorge

Eine sichere Benutzername/Passwort Kombination ist unbedingt nötig. Man muss sich bewusst sein, dass einer der ersten Versuche des Angreifers eine Kombination aus admin/123456 sein wird. Im schlimmsten Fall bekommt dieser dann sofort Zugriff mit Administrationsrechten.

Abhilfe

Eine recht einfache Abhilfe ist, den Admin Zugang zu verstecken. Standardmäßig ist dieser über dir URL mit /admin erreichbar. Das kann man aber leicht auf einen beliebigen anderen Namen zum Beispiel auf /meinshopbackend ändern. Zusätzlich muss man aber auch den zweiten Login über /downloader entfernen oder umbenennen. Achtung: ein anderer Name ist kein Schutz vor Brute Force Attacken. Das hilft nur gegen ungezielte Angriffe. Sofern ein Angreifer aktiv nach der Login URL sucht wird er diese auch finden!

Gezielte Brute Force Angriffe

Bei einem gezielten Angriff hat es er der Angreifer auf einen bestimmten Shop abgesehen. Er wird in zwei Arten unterschieden:

Admin Zugang erlangen

sofern der Admin Zugang versteckt wurde muss der Angreifer aktiv nach der URL suchen. Hat er diese gefunden startet er den Angriff.

Vorsorge

Man kann den Backendzugang durch einen Verzeichnisschutz um ein zusätzliches Passwort absichern. Durch diese Maßnahme ist es fast auszuschließen, dass ein Angreifer über Brute Force das Login attackiert.

Abhilfe

Die beste Abhilft sind gute Benutzername/Passwort Kombinationen. Ob der Shop bereits angegriffen wird ist oft nicht direkt sichtbar.

Gezielte Angriffe auf Magento

Bei einem gezielten Angriff hat es er der Angreifer auf einen bestimmten Shop abgesehen. Es wird dabei nicht nach offensichtlichen Schwachstellen (wie schwache Logindaten) gesucht, sondern explizit der Shop analysiert und anhand der bekannten Sicherheitslücken versucht einen Zugriff zu bekommen.

Vorsorge

Der Source Code des Shops muss aktuell gehalten werden. Es müssen mindestens die kritischen Patches installiert werden. Weiters ist es von Vorteil, wenn auch die eingesetzten Module aktuell sind. Neben der Codebasis muss auch der Server sicher sein. Man verlässt sich da entweder auf den Hoster, oder sorgt für einen gut abgesicherten eigenen Server.

Abhilfe

Ist der Shop bereits Opfer eines Angriffs geworden, dann ist das meistens ein Totalschaden. Einzige wirkliche Abhilfe ist das Zurücksetzen des Codes auf ein altes, als sicher geltendes Backup. Sofern man die Codebasis in einem Versionierungssystems wie Git pflegt, hat man kaum ein Problem. In diesem Fall kann man jederzeit den aktuellen Stand der Entwicklung neu einspielen und alle möglicherweise kompromittierten Dateien überspielen. In jedem Fall muss die Sicherheitslücke über die der Angriff erfolgt ist ausfindig gemacht und beseitigt werden. Es versteht sich von selbst, dass alle Zugangsdaten vom Server und vom Shop geändert werden müssen.

DDOS Attacken / Shop überlasten

In den letzten Monaten häufen sich die Fälle in denen Webseiten durch DDOS Attacken lahmgelegt werden. Dabei werden innerhalb kürzester Zeit tausende Anfragen an den Server geschickt, so dass dieser mit dem Beantworten nicht mehr fertig wird. Der Shop ist für Besucher entweder sehr langsam oder gar nicht mehr erreichbar. Am System selbst entsteht dabei kein Schaden, sobald die Flut an Anfragen aufhört funktioniert wieder alles wie gehabt.

Abhilfe

Als Sofortmaßnahme ist der Kontakt zum Server Admin nötig. DDOS Attacken kann man nur über Firewall Einstellungen beheben.

Vorsorge

Zahlreiche Hoster bieten Server mit DDOS Schutz an. In diesem Fall braucht man sich keine Sorgen machen, falls man einen eigenen Server betreibt sollte der Admin im Stande sein einen vergleichbaren Schutz zu implementieren.

CryptoLocker / Dateisystemverschlüsselung

Ein ganz neue Art des Angriffs sind CryptoLocker. Dabei gelingt es dem Angreifer am Server Code auszuführen. Dieser verschlüsselt wichtige Daten, der Shop funktioniert nicht mehr. Der Angreifer hinterlässt eine Information in der er um eine Zahlung bittet im Austausch für das Passwort zum Entschlüsseln. In der Regel werden Bitcoins verlangt, ein Zahlungsmittel bei dem man den Empfänger nicht ausfindig machen kann.  Diese Art der Angriffe wird aktuell auch gegen private Rechner eingesetzt und verbreitet sich meist durch Links in Emails.

Abhilfe

Es gibt genau zwei Möglichkeiten. Zum einen kann man alle verschlüsselten Daten aus einem Backup ersetzen. Falls das funktioniert hat man Glück gehabt. Falls es kein Backup gibt hat man Pech gehabt, da moderne Verschlüsselungssoftware nicht mehr zu knacken ist. In dem Fall bleibt nur die Zahlung an den Erpresser und man muss hoffen, dass man das Passwort auch bekommt.

Vorsorge

Die beste Vorsorge ist ein gepatches System in dem alle bekannten Sicherheitslücken behoben sind. Außerdem muss der Server sicher sein und die Zugangsdaten dürfen nicht entwendet worden sein. Oft ist bei solchen Angriffen ein über engagierter Mitarbeiter, der einem Support am Telefon die Zugangsdaten verrät, das größte Problem.