Wie lässt sich C2-Traffic in regulärem IMAP-Datenverkehr detektieren?

Bleibt der über IMAP übertragene Command and Control (C2) Verkehr eines Angriffs “unsichtbar”? Oder lässt sich ein speziell für IMAP konstruierter C2-Agent erkennen? Wir haben es getestet.

Angriffserkennung im Praxiseinsatz

Das ewige Katz- und Maus-Spiel zwischen Angriff und Verteidigung in der vernetzten Welt endet nie. Daher arbeiten Trovent und carmasec eng zusammen, um regelmäßig neue Angriffsmethodiken des carmasec Offensive Security Squads gegen die Angriffserkennung von Trovent zu testen.

Dabei verfolgen wir gemeinsam diese Ziele:

  • Wir wollen die Angriffsmethodiken verfeinern, um die Effektivität von Red-Teaming-Manövern zu steigern.

  • Wir setzen die Detektionsfähigkeiten immer wieder maximalen Herausforderungen aus, um sie sukzessive zu verbessern.

Unser Test: Wie kann man einen IMAP C2-Agent erkennen?

Timo Sablowski, Senior Security Consultant bei carmasec, implementierte einen rein auf IMAP basierenden Command and Control (C2) Agent. Gemeinsam beschlossen wir, diesen in einem Angriffs-/Detektionsszenario genauer unter die Lupe zu nehmen.

Die Funktionsweise der C2-Kommunikation demonstriert Timo in einem LinkedIn-Beitrag. Hierbei wird die Infrastruktur von freien E-Mail-Anbietern verwendet, um die Kommunikation zwischen kompromittiertem System und Angreifer zu ermöglichen.

Vorneweg lässt sich klar festhalten: Die Detektion ist mit konventionellen Ansätzen nicht möglich. Zum Beispiel greifen bei der Verwendung öffentlicher IMAP-Server die bekannten IP-Blacklisting-Ansätze definitiv ins Leere. Es müssen somit offensichtlich andere Detektionsmethoden verwendet werden!

Also haben wir mit unserem Werk begonnen. Im ersten Schritt ließen wir den Code des C2-Agents im Trovent-Lab laufen, um den erzeugten Traffic durch das Trovent MDR-System überwachen zu lassen. Folgenden Möglichkeiten für eine potentiell erfolgreiche Detektion des C2-Traffics sind wir dann im Detail nachgegangen.

Dauer der Session überwachen – ist das zu trivial?

So wie man es bereits bei anderen C2-Implementierungen beobachtet hat, könnte auch in diesem Fall durch den C2-Agent eine Session benutzt werden, die über einen sehr großen Zeitraum (sprich: mehrere Tage) offen bleibt. Und tatsächlich: Das Trovent MDR-System meldete nach einem Tag, dass die IMAP-Session im Lab schon mehr als 24 Stunden geöffnet war.

Aber das allein stellt noch kein sicherheitsrelevantes Event dar. Und das Potential für ein großes Volumen an False-Positives ist in diesem Zusammenhang entsprechend hoch. Warum? Auch reguläre, nicht schädliche IMAP-Clients können Verbindungen lange offen halten.

Selbst wenn die lange Dauer ein zuverlässiges Detektionskriterium wäre: Es ist für einen technisch kompetenten Angreifer ein Kinderspiel, den C2-Agent so anzupassen, dass die Session regelmäßig ab- und wieder aufgebaut wird. Da die Gegenstelle ein öffentlicher IMAP-Server ist, läuft der Angreifer auch nicht Gefahr, anhand der Einträge in den gesammelten Logdaten ungewollt erkannt zu werden.

Frequenz der Kommunikation – ein zuverlässiger Indikator?

Nachdem wir schnell feststellen mussten, dass die Dauer der Session allein kein zuverlässiger Indikator für die Erkennung von C2-Verkehr ist, haben wir uns die IMAP-Kommunikation in ihrem spezifischen Verhalten und ihrer Frequenz genauer angesehen. Hierfür haben wir etwas Python-Code geschrieben. Dieser extrahiert aus der Ausgabe von tcpdump die Zeitstempel und Übertragungsvolumina, erstellt eine Zeitserie und berechnet mit Hilfe von Fourier-Transformation das Spektrum der Kommunikation.

Für einen Mitschnitt der IMAP-Kommunikation im Lab liefert diese Analyse alle fünf Minuten einen eindeutigen Peak. Dieser Peak entspricht tatsächlich der Frequenz, mit welcher der C2-Agent beim IMAP-Server nach neuen Kommandos pollt.

Spektrum IMAP C2 Kommunikation (Bild: carmasec)

Deterministisches Verhalten – der Schlüssel zur Detektion?

Dieses klar erkennbare, deterministische Verhalten könnte im IMAP-Traffic verpackten C2-Verkehr eindeutig detektieren – oder? Nein! Ein Vergleich mit einem Mitschnitt von regulärem IMAP-Traffic brachte schnell Ernüchterung. Auch dort gibt es einen klar erkennbaren Peak. Dass dieser bei zehn Minuten und nicht bei fünf Minuten liegt, tröstete uns nur wenig.

Denn sowohl ein regulärer IMAP-Client als auch die C2-Implementierung könnten ohne Weiteres mit anderen Frequenzen arbeiten. Außerdem wäre es nicht schwierig, einem C2-Client durch Randomisierung der Zeitintervalle jegliche Periodizität auszutreiben. Kurzum: Einen Workaround für entsprechende Detektionsmechanismen zu entwickeln, wäre für Angreifer keine große Herausforderung.

Spektrum IMAP Standard Kommunikation (Bild: carmasec)

Die Lösung: Kontextwissen in die Angriffserkennung einfließen lassen

Was schlussfolgern wir aus den durchgeführten Tests? Wir fanden kein einzelnes, eindeutiges Kriterium, mit dem sich zuverlässig die C2-Kommunikation im IMAP-Traffic erkennen lässt. Hat Timo Sablowski mit seinem C2-Traffic via IMAP wirklich leichtes Spiel? Gibt es keine vernünftigen Detektionsansätze, ohne in einer Flut von False-Positives zu ertrinken?

Fassen wir die Lage zusammen:

  • Was haben wir?
    Gewisse Indikatoren (Dauer der Session und Frequenz), die aber für sich jeweils kein zuverlässiges Detektionskriterium darstellen.

  • Was können wir tun?
    Durch das Verbinden von detektierten Indikatoren mit Kontextwissen über die IT-Infrastruktur lässt sich die Effektivität der Detektion maßgeblich erhöhen.

Zu diesem Kontextwissen kann beispielsweise die Information zählen, welcher Host in der Vergangenheit mit welchen IMAP-Servern kommuniziert hat und welcher Mail-Client installiert ist. Auch die beobachteten Frequenzspektren der IMAP-Kommunikation sind wichtig.

Eine Verbindung zu einem vorher nicht verwendeten IMAP-Server, IMAP-Kommunikation von einem System mit unbekanntem Mail-Client, eine Änderung der Kommunikationsfrequenz … das alles wären deutliche Hinweise auf eine potentiell schädliche C2-Kommunikation, denen ein SOC-Analyst nachgehen könnte und sollte.

Fazit zum Test

Letztendlich bestätigen die gemeinsam von Trovent und carmasec durchgeführten Tests in diesem speziellen Szenario die bisher gesammelten Erfahrungen: Erfolgreiche Detektion ist weniger eine Frage einzelner, technisch innovativer Methoden. Sie ist vielmehr davon abhängig, die beobachteten Ereignisse und Indikatoren im richtigen Kontext beurteilen zu können.

Ausgeklügelte Angriffstechniken wie die IMAP-basierte C2-Implementierung von Timo Sablowski lassen sich erkennen! Voraussetzung dafür ist allerdings eine Lösung zur Hand zu haben, mit der sich das erforderliche Kontextwissen über die IT-Infrastruktur automatisch aufbauen lässt.


Hintergrund: Wie lässt sich Kontextwissen automatisch erzeugen?

Kontextwissen ist extrem wichtig, um detektierte Anomalien in ihrer Bedeutung und potentiellen Bedrohung für die Organisation objektiv einschätzen zu können. Doch wie lässt sich die Notwendigkeit, dieses Wissen zu sammeln und aktuell zu halten, meistern? Allein die Dokumentation von aktuellen Asset-Informationen (zum Beispiel in einer CMDB) scheitert häufig im IT-Alltag, da es meist an personeller Kapazität mangelt.

Die Context Engine, die ein fester Bestandteil der Trovent MDR-Lösung ist, ermöglicht es, genau dieses erforderliche Kontextwissen im Hintergrund aufzubauen – ohne manuelles Zutun eines SOC-Analysten oder eines IT-Administrators. Aus gesammelten Logdaten und Netzwerkflows werden Informationen über die Assets der IT-Infrastruktur der Organisation extrahiert und in ihren Beziehungen zueinander in einer Graph-Datenbank entsprechend verknüpft.

Zu diesen Informationen zählen beispielsweise:

  • Systeme mit ihren Hostnamen und IP-Adressen

  • Benutzer mit ihren Accounts

  • Betriebssysteme und ihre verschiedenen Versionen

  • Software-Pakete mit charakteristischen Registry-Schlüsseln und Dateien

  • Server (beispielsweise IMAP), die von einem Host kontaktiert werden

Durch die automatisierte Verarbeitung der Kontextinformationen erzeugt die Context Engine ein Bild des normalen Verhaltenszustands der IT-Infrastruktur samt seiner Nutzer und Applikationen. Daraus lässt sich erkennen, wann sich etwas verändert – zum Beispiel durch IMAP-Verkehr, der in einer beobachteten Kombination aus IMAP-Client, Host und IMAP-Server noch nie aufgetreten ist.



Sie suchen ein
System zur Angriffserkennung bzw. eine Managed Detection & Response Lösung? Oder möchten Sie wissen, wie die Context Engine von Trovent funktioniert? Kontaktieren Sie uns! Wir stehen gerne für ein Gespräch und für eine Demonstration unserer Lösungen bereit.