Das Foto zeigt einen Lost Place. Einen verlassenen Ort mitten in einem alten Haus. Zu sehen ist eine geöffnete weiss lackierte Zimmertür mit zerbrochenen Scheiben im oberen Bereich. Links daneben ein alter Holzstuhl. Hinter der Tür scheint ein Treppenaufgang nach links oben zu führen. Auf dem Boden liegt eine Schublade in der Tür. Staub und Dreck bedecken den ganzen Boden. Die Stimmung ist düster und unheimlich. Fahles Licht scheint durch die geöffnete Tür in das Zimmer und beleuchtet die Szene leicht.

Ransomware hat meine Honeypot Datenbank gelöscht 😱

Du solltest niemals eine Datenbank offen zugänglich im Internet lassen. Auch nicht kurz. Auch nicht eine Testdatenbank. Auch nicht auf einem anderen Port. Niemals! Warum das so ist zeige ich dir mit einem kleinen Experiment. «Ungesichert» bedeutet, dass die Datenbank erstens über einen Port von außen erreichbar ist und zweitens dass diese über keine Zugangs-Credentials verfügt. Jede Person kann sich also einloggen und die Daten ansehen oder verändern.

Ein MongoDB Honeypot

Für das Experiment habe ich MongoDB gewählt. Ich starte mit Hilfe von Docker einfach eine neue Instanz auf einem Server und weise der Anwendung den Port 27017 zu. Dieser Port ist der default Port für Mongo-Datenbanken.

sudo docker run -d \
--name honeypot-mongo \
-p 27017:27017 \
mongo:latest

Anschließend kann ich mich einfach mit einem Tool wie Robo 3T mit der Datenbank verbinden und eine Testdatenbank samt Testeinträgen anlegen. Ich lege einfach drei Records mit dem Inhalt «foo»:»bar» an:

Das Bild zeigt einen Screenshot der Verwaltungssoftware "Robo 3T". Zu sehen ist, dass drei Testdatensätze angelegt wurden.

Nun erst mal zurücklehnen. Kaffee trinken. Einen Tag warten.

Der nächste Tag 😨

Was ist das? Ich habe mich soeben mit meiner Datenbank verbunden und alle Daten sind weg. Nanu? Das ging aber schnell. Anstelle meiner Daten ist nur noch ein Readme-Eintrag in der Datenbank zu finden. In diesem ist die folgende Nachricht zu finden:

All your data is a backed up. You must pay 0.021 BTC to 17jHiu7FGUX8xcotaxBnxnNZRTqU86kr8b 48 hours for recover it. After 48 hours expiration we will leaked and exposed all your data. In case of refusal to pay, we will contact the General Data Protection Regulation, GDPR and notify them that you store user data in an open form and is not safe. Under the rules of the law, you face a heavy fine or arrest and your base dump will be dropped from our server! You can buy bitcoin here, does not take much time to buy https://localbitcoins.com or https://buy.moonpay.io/ After paying write to me in the mail with your DB IP: recmydb+1tizw@onionmail.org and you will receive a link to download your database dump.

Das Bild zeigt einen Screenshot der Verwaltungssoftware "Robo 3T". Zu sehen ist, dass die Datenbank leer ist und nur ein einziger Eintrag darin zu finden ist: Hier folgt nun der relativ langer englische Originaltext im Bild: All your data is a backed up. You must pay 0.021 BTC to 17jHiu7FGUX8xcotaxBnxnNZRTqU86kr8b 48 hours for recover it. After 48 hours expiration we will leaked and exposed all your data. In case of refusal to pay, we will contact the General Data Protection Regulation, GDPR and notify them that you store user data in an open form and is not safe. Under the rules of the law, you face a heavy fine or arrest and your base dump will be dropped from our server! You can buy bitcoin here, does not take much time to buy https://localbitcoins.com or https://buy.moonpay.io/ After paying write to me in the mail with your DB IP: recmydb+1tizw@onionmail.org and you will receive a link to download your database dump.

Na toll! Meine foo:bar Datenbankeinträge sind Opfer einer Ransomware geworden! Hoffentlich werden diese nicht geleakt 😜! Aber 0.021 Bitcoin (~800 €) Lösegeld finde ich dafür doch etwas überzogen. Das lässt eigentlich nur einen Schluss zu: Das ist alles vollautomatisch passiert. Da schauen nicht mal mehr Leute drüber, die entscheiden, ob die Daten etwas taugen.

Was sagen die Logs?

Gleich eine Stunde nachdem die Datenbank am Netz war gab es erste eingehende Verbindungen. Insgesamt gab es innerhalb der 24 Stunden in denen der Test lief 10 Verbindungen von 6 verschiedenen IPs. Ausnahmslos alle IPs wurden von  https://www.ipqualityscore.com/ mit sehr hohen Fraud-Scores von 93-99 Punkten eingestuft. Bei allen IPs handelte es sich um Tor-Exit-Nodes.

Titelbild: https://pixabay.com/de/photos/lost-places-verlassener-ort-raum-3035877/