Cyber-Angriff auf die E-Mail Reputation von ZEIT.IO
ZEIT.IO ist eine Plattform für die automatisierte Abrechnung von Projektzeiten. Firmen können Projekte anlegen und Mitarbeitern oder Freelancers zuweisen. Nach der Genehmigung von Projektzeiten wird dann automatisch die Ausgangsrechnung erstellt und an den Kunden versendet. Als Genehmiger im Projekt kann auch der Kunde selbst hinzugefügt werden. Im besten Fall genehmigt der Kunde das Timesheet und erhält 2 Minuten später dazu die Rechnung. Wenn die Leistung von einem Freelancer erbracht wurde, dann kann auch automatisch eine Gutschrift ausgestellt werden, wodurch die Eingangsrechnung vom Freelancer wegfällt. Die Rechnungsdokumente können auch automatisiert an DATEV übergeben werden, wodurch es auch der Steuerberater in Echtzeit hat.
Freelancer können in ihrem Account bis zu 2 E-Rechnungen kostenlos erstellen. Die E-Rechnung kann dann auch direkt aus ZEIT.IO heraus an den Kunden versendet werden. Dafür gibt es ein Formular, in dem Empfänger, Subject und E-Mail-Nachricht bearbeitet werden können.
Der Angriff
Am ersten Mai hat ein unbekannter Benutzer sich ein kostenloses Freelancer-Konto bei ZEIT.IO erstellt. In dem Konto wurden dann zwei Rechnungen erstellt. Die eine Rechnung wurde dann, über einen Zeitraum von mehreren Stunden, an über 29K Empfänger versendet. Das Formular zum Versenden der Rechnung wurde mehrere tausend Mal aufgerufen mit unterschiedlichen Empfängern.
Hier sieht man den erhöhten Traffic auf den Servern am ersten Mai.

Auf der Seite, wo die Rechnung versendet wird, werden unterhalb des Formulars die letzten Auditlogs eingeblendet. Da kann man dann sehen, wann die Rechnung zuletzt an den Empfänger versendet wurde. Üblicherweise hat diese Tabelle 0 bis 2 Einträge.
Der Angriff hat dann gestoppt weil die Tabelle mit den Auditlogs so groß wurde, dass die Seite nicht mehr geladen werden konnte. Der Angreifer hat dann ständig einen Timeout bekommen. Das hat dann auch zu einer kurzen Downtime von 2 Minuten geführt, was dann einen Monitoring-Alarm ausgelöst hat, wodurch E-Mails und SMS versendet wurden an die verantwortlichen Personen.
In den Logs auf SigNoz kann man auch sehr gut sehen, dass alle HTTP Anfragen zu diesem Angriff von einer einzigen IP Adresse kamen. Die IP Adresse stammt aus einem Rechenzentrum in Deutschland. Strafanzeige wird erstattet!

Folgen
Die Empfänger der Rechnung waren übrigens auch alle Fake-Adressen. Ziel der Attacke war es wohl, die E-Mail-Reputation von ZEIT.IO zu schädigen. Normalerweise liegt die Bounce-Rate von ZEIT.IO bei 0.01%. Durch diese Attacke ist die Bounce Rate auf 20% gestiegen und AWS SES hat unseren SMTP Zugang vorübergehend gesperrt. Wodurch ZEIT.IO überhaupt keine E-Mail versenden konnte. Das ist natürlich nicht so vorteilhaft. Vor allem nicht für das Auto-Invoicing-Feature von ZEIT.IO. Einige Kunden nutzen das Auto-Invoicing-Feature, um zeitgesteuert, am ersten oder zweiten Tag des Monats, automatisierte Rechnungen an ihre Kunden zu verschicken. Diese Funktion war durch die Attacke erstmal außer Gefecht gesetzt.
ZEIT.IO nutzte jetzt vorübergehend einen anderen SMTP Server und die Rechnungen, die vom Auto-Invoicing liegen geblieben sind, wurden mittlerweile alle versendet.
DSGVO & Datensicherheit
Daten von Kunden wurden nicht entwendet. Dieser Angriff war isoliert auf das Konto des Angreifers.
Gegenmaßnahmen
Um einen Angriff wie diesen in Zukunft zu verhindern, wurden bereits folgende Maßnahmen umgesetzt:
- Limit beim Rechnungsversand: Eine Rechnung kann jetzt maximal 5 Mal am Tag versendet werden.
- Throttling Traffic: Es wurde eine Middleware installiert, die generell Throttling implementiert. Wenn zu viele Anfragen in einem kurzen Zeitraum von der gleichen IP-Adresse kommen dann werden die Anfragen abgelehnt.
Mit diesen Maßnahmen wird eine ähnliche Attacke in Zukunft keinen Erfolg haben.
Fazit
Ein solcher Angriff am ersten Mai, an einem langen Wochenende, ist besonders hinterhältig. Es war nicht der erste Cyber-Angriff und bestimmt auch nicht der letzte. Cyber-Security wird in Zukunft immer wichtiger werden. Das Beste, was man bei solchen Angriffen machen kann, ist, daraus zu lernen und seine Systeme weiter zu verbessern. ZEIT.IO wird durch jeden Angriff resilienter.