Ein mehrstufiger Ansatz zur Identifizierung betrügerischer Cobalt Strike-Server
Recorded Future bewertete Änderungen an Cobalt-Strike-Servern im freien Wildbahn, nachdem mehrere Methoden zur Erkennung von Cobalt-Strike-Servern öffentlich bekannt geworden waren. In unserer Analyse haben wir eine Bewertung verschiedener Methoden durchgeführt und darauf basierend eine kombinierte Analyse erstellt, um festzustellen, ob Benutzer ihre Konfigurationen geändert haben, um eine Erkennung zu vermeiden. Zu den Quellen gehören die Recorded Future ® -Plattform, BinaryEdge, Censys, OpenData von Rapid7 Lab, Shodan, GreyNoise, ReversingLabs, VirusTotal, Farsight DNS und andere Open-Quellen. Dieser Bericht dürfte vor allem für Organisationen von Interesse sein, die ihre Reaktionszeiten verkürzen möchten, sowie für Analysten, die regelmäßig mit Cobalt Strike-Vorfällen zu tun haben.
Executive Summary
Cobalt Strike ist eine Exploit-Plattform, die für den Einsatz von Sicherheitsexperten bei der Emulation gezielter Angriffe und Post-Exploitation-Aktionen durch fortgeschrittene Angreifer entwickelt wurde. Das Tool, das von Strategic Cyber LLC, einem Unternehmen mit Sitz in Washington, D.C., entwickelt und lizenziert wurde, wird von der Firma auf illegale Nutzung überwacht und unterliegt Exportkontrollen. Trotzdem ist das Cobalt Strike-Framework zu einer beliebten Option unter den verschiedenen Softwares dieser Art geworden, zu denen auch andere kostenpflichtige Suiten wie Metasploit Pro, Core Impact und andere gehören. Obwohl Cobalt Strike nicht die einzige dieser Plattformen ist, die von nicht lizenzierten Nutzern und kriminellen Akteuren genutzt wird, wurde es von einer Vielzahl von Bedrohungsgruppen genutzt, darunter APT32, die das Tool für die erste Ausnutzung verwendet haben, und die namensgebende Cobalt Group, die sich stark auf das Framework verlassen hat.
Angesichts der erheblichen Nutzung der Cobalt Strike-Plattform durch Sicherheitstester – und, was noch wichtiger ist, durch böswillige Angreifer – ist die Notwendigkeit der Erkennung von Cobalt Strike-Serververbindungen zu Netzwerkressourcen des Unternehmens offensichtlich.
Obwohl die Erkennungsmethode öffentlich ist, hat Recorded Future beobachtet, dass die Cobalt Strike-Server größtenteils ungepatcht blieben, was die Erstellung von Fingerprints und die anschließende Erkennung ermöglichte. Mithilfe dieser Methodik und anderen Erkennungsmöglichkeiten konnte Recorded Future Stichproben von in freier Wildbahn gefundenen Cobalt Strike-Servern nehmen und Fingerprinting-Methoden vergleichen, um Verteidigern dabei zu helfen, dieses Framework optimal zu verfolgen und zu überwachen. Durch die Verfolgung der Cobalt-Strike-Server können blaue Teams die Aktivität der roten Teams erkennen und die Aktivität von Gegnern eindämmen, die ihre Cobalt-Strike-Team-Server nicht geändert haben.
Wichtige Urteile
- Die Cobalt Strike-Server sind trotz Patches, die bestimmte Fingerprinting-Methoden erschweren, weiterhin recht exponiert und relativ leicht zu erkennen. Viele Cobalt Strike-Server, die vor der Veröffentlichung des Patches in Betrieb waren, haben ihre Systeme nicht aktualisiert, während bei neueren Bereitstellungen die aktualisierte Software verwendet wurde.
- Bei kürzlich bereitgestellten Cobalt Strike-Servern ist es wahrscheinlicher, dass sie eine aktualisierte Cobalt Strike-Version (über 3.12) bereitstellen und dabei weiterhin das Standard-TLS-Zertifikat verwenden, das weiterhin einen zuverlässigen Erkennungsmechanismus darstellt.
- Bei der Stichprobennahme von Recorded Future unter den aktuellen Cobalt-Strike-Servern im Vergleich zur Bedrohungsaktivität in der Vergangenheit stellte sich heraus, dass sowohl kriminelle als auch staatlich ausgerichtete Akteure standardmäßige, ungepatchte Cobalt-Strike-Konfigurationen verwendet haben. Dies geschah möglicherweise, um sich unter die anderen Cobalt-Strike-Server zu mischen, oder einfach, weil die Standardeinstellungen ohne Änderungen gut funktionieren und der Betreiber keinen Grund sieht, Änderungen vorzunehmen.
- Die Erkennung von Cobalt Strike-Servern kann Verteidigern dabei helfen, Alarme in ihren Unternehmensnetzwerken zu erstellen und bietet so eine proaktive Maßnahme, um ihrem Red Team, kriminellen Machenschaften oder staatlich geförderten Gegnern einen Schritt voraus zu sein.
Hintergrund
Für Vorfallreaktions- und Sicherheitsbetriebsanalysten besteht heute vor allem die Feststellung darin, welche Sicherheitsereignisse oder -warnungen vorrangig überprüft werden müssen. Glücklicherweise kann die Anwendung präziser Bedrohungsinformationen auf einen SIEM-Workflow wie Splunk für die Identifizierung glaubwürdiger Bedrohungen wertvoll sein und sogar wichtige zusätzliche Kontexte aufdecken, sodass Sicherheitsteams proaktivere Maßnahmen ergreifen können. Beispielsweise wird eine Warnung an Ihr SIEM gesendet – es handelt sich um eine IP-Adresse, 89.105.198[.]28, das von einem Ihrer Endpunkte kontaktiert wurde. Was jetzt?
Recorded Future-Browsererweiterung.
Beim Öffnen der Browsererweiterung "Recorded Future " auf der Splunk-Warnseite wird die IP 89.105.198[.]28 springt mit einem Risiko-Score von 93 an die Spitze (dieses Ergebnis wurde am 6. Mai 2019 gemacht, und der Risiko-Score wird am 17. Mai 2019 abklingen, wenn keine weiteren bösartigen Aktivitäten beobachtet werden). Diese Untersuchung zeigt, dass die IP-Adresse zuvor von Sophos im Rahmen der MegaCortex-Ransomware-Kampagne unter Verwendung einer Cobalt Strike-Reverse-Shell gemeldet wurde.
Cobalt Strike ist eine von Raphael Mudge, dem Gründer von Strategic Cyber LLC, für Penetrationstester entwickelte Plattform zur Gegnersimulation. Es wurde für die Interoperabilität mit anderen Plattformen wie Metasploit, NMAP und Powershell Empire entwickelt und kann mit Armitage ausgeführt werden, einer grafischen Benutzeroberfläche (GUI), die ursprünglich von Mudge für Metasploit entwickelt wurde. Armitage und Cobalt Strike sind um einen Teamserver herum konzipiert, der den Informationsaustausch und die Möglichkeit zur Leitung und Ausführung gut koordinierter Aktionen ermöglicht.
Cobalt Strike ist für seine fortschrittliche Funktionalität bekannt und wurde von zahlreichen Sicherheitsexperten übernommen und auch von kriminellen und nationalstaatlichen Einrichtungen illegal verwendet. Wie MITRE erklärte, "decken die interaktiven Post-Exploit-Funktionen von Cobalt Strike die gesamte Palette der ATT&CK-Taktiken ab, die alle in einem einzigen, integrierten System ausgeführt werden." Das Framework war in den letzten drei Jahren eine tragende Säule in der Bedrohungslandschaft und wird häufig von kriminellen Gruppen, staatlich geförderten Akteuren und natürlich von Penetrationstestteams genutzt.
Cobalt Strike wird professionell gewartet und ist derzeit für eine Gebühr von 3.500 USD mit jährlicher Verlängerung unter Lizenz erhältlich. Zusätzlich zu den von den USA festgelegten Exportkontrollen versucht Strategic Cyber LLC, die Lizenzierung und Verwendung durch legitime Sicherheitsexperten streng zu beschränken und die Software von böswilligen Akteuren fernzuhalten, sodass sowohl Kriminelle als auch Unternehmen außerhalb der USA nur schwer in den Besitz der Software gelangen können.
Strategic Cyber LLC aktualisiert und patcht lizenzierte Versionen der Software regelmäßig. Jüngste Änderungen an den Serverkonfigurationen von Cobalt Strike sollen dazu beitragen, dass das Framework nicht entdeckt wird. Für Raubkopien der Software werden allerdings keine offiziellen Updates und Patches bereitgestellt.
Obwohl die Softwarelizenzierung streng kontrolliert wurde, gibt es bestätigte Fälle von Raubkopien von Cobalt Strike in freier Wildbahn, oft gecrackte Testversionen, und eine Vielzahl von Akteuren im kriminellen Untergrund wurde beobachtet, die versuchen, sie zu erwerben oder damit zu handeln. Die geknackten Versionen können jedoch mit ihren eigenen zusätzlichen "Funktionen" wie Hintertüren ausgestattet sein oder in irgendeiner Weise fehlen. Ein Mitglied in den Raid-Foren postete am 5. April 2019 einen Link zu einer gecrackten Kopie von Cobalt Strike 3.13 (der neuesten Version), aber andere Mitglieder wiesen darauf hin, dass einige Funktionen fehlten und Teile der Software, die hätten entfernt werden sollen, wie z. B. EICAR, übrig blieben. Legitime Versionen von Cobalt Strike sind daher wertvoll; Zum Beispiel wurde letztes Jahr ein Mitglied des Maza-Forums beobachtet, das einem Käufer in den USA 25.000 US-Dollar anbot, um eine lizenzierte Kopie von Cobalt Strike zu erhalten und sie illegal an dieses Forenmitglied zu übertragen.
Zurück zu unserer Untersuchung vom 89.105.198[.]28, Diese IP-Adresse wurde während eines MegaCortex-Vorfalls als Command-and-Control-Server für eine Cobalt Strike-Reverse-Shell auf einem Opfer-Domain-Controller verwendet. Die Ransomware wurde dann über PSExec über die gesamte Umgebung verteilt. Die MegaCortex-Ransomware-Kampagne war zum Zeitpunkt dieser Analyse aktiv. Eine weitere Untersuchung der IP-Adresse zeigt, dass sie das Standardsicherheitszertifikat des Cobalt Strike-Servers verwendet, um den Datenverkehr zu verschlüsseln.
Dieser Fall, in dem es um 89.105.198 [.]28 veranlasste Recorded Future, diese spezielle Kobalt-Strike-Aktivität zu untersuchen. Dies förderte die groß angelegte Forschung zu Cobalt Strike im Zuge der Erkenntnisse des Sicherheitsunternehmens Fox-IT über den anomalen Speicherplatz, der in den HTTP-Antworten von Cobalt Strike und anderen öffentlichen Erkennungen enthalten war, einschließlich der allgemeinen Verwendung des standardmäßigen, vorkonfigurierten, selbstsignierten SSL/TLS-Zertifikats auf Cobalt Strike-Servern. Server, die dieses Zertifikat bereitstellen, können über Shodan oder Censys anhand des SHA256-Hashes oder der Seriennummer des Zertifikats erkannt werden.
Standardmäßiges Cobalt Strike SSL/TLS-Zertifikat.
Öffentliche Methoden zur Identifizierung von Cobalt Strike Team-Servern
Am 19. Februar 2019 veröffentlichte Strategic Cyber LLC (der Hersteller von Cobalt Strike) die Ergebnisse einer "Cobalt Strike Team Server Population Study". Die Studie wurde zum Teil durchgeführt, um den Lizenzstatus der entdeckten Cobalt Strike-Software zu ermitteln sowie signifikante Änderungen an den derzeit verwendeten Versionen der Software zu identifizieren und zu analysieren.
In dieser Studie wurden mehrere Methoden ermittelt, mit denen sich Cobalt-Strike-Server in freier Wildbahn identifizieren lassen:
- Cobalt Strike-Server werden mit einem Standardsicherheitszertifikat ausgeliefert, das zum Fingerabdruck verwendet werden kann, sofern der Administrator es nicht ändert.
- SHA256: 87f2085c32b6a2cc709b365f55873e207a9caa10bffecf2fd16d3cf9d94d390c
- Seriennummer: 146473198
- Wenn aktiviert, antwortet der Cobalt Strike DNS-Server auf alle empfangenen DNS-Anfragen mit einer Bogon-IP (gefälschten IP): 0.0.0.0 (dies gilt nicht nur für Cobalt Strike-Server).
- Der Standard-Controller-Port für Cobalt Strike Team Server ist 50050/TCP, ein Port, der auf anderen Servern wahrscheinlich nicht frei ist.
- Die HTTP-Antwort „404 Nicht gefunden“ für Cobalt Strike ist einzigartig für NanoHTTPD-Webserver und kann erkannt werden.
Insgesamt ist die sicherste Methode in der obigen Liste das Fingerprinting von Cobalt-Strike-Servern mithilfe des Standardsicherheitszertifikats. Die übrigen Nachweismethoden sind weniger zuverlässig und können nur dann verlässlicher ermittelt werden, wenn sie mit anderen Methoden abgeglichen werden. Beispielsweise handelt es sich bei jedem Server, der Port 50050 verwendet und auch eine für NanoHTTPD-Webserver eindeutige HTTP-Antwort bereitstellt, eher um einen Cobalt Strike-Server als um einen Server, der lediglich eine HTTP-Antwortsignatur aufweist.
NanoHTTPD ist ein Open-Source-Webserver-Framework. NanoHTTPD-Server und Cobalt Strike-Server mit Version 3.12 und früher konnten anhand eines Nullleerzeichens in der HTTP-Antwort identifiziert werden, wobei auf „HTTP/1.1“ ein Leerzeichen (0x20) folgt, das in anderen Webserver-Antworten nicht gefunden wird. Jede HTTP-Antwort von einem Cobalt Strike-Server vor 3.13 enthält dieses Nullzeichen und ein Scanner, der HTTP-Server-Antworten abrufen kann, kann zum Suchen nach ihnen verwendet werden. Eine einfache manuelle Methode zum Identifizieren des oben genannten Nullraums kann mit einer Paketerfassung einer HTTP-Browserverbindung zu einem Cobalt Strike-Server erfolgen, in der der zusätzliche Raum leicht zu erkennen ist.
Da Cobalt-Strike-Instanzen, auf denen gecrackte Versionen laufen, weder aktualisiert noch gepatcht werden, bietet diese Methode zusätzlich die Möglichkeit, von Kriminellen betriebene Cobalt-Strike-Server zu entdecken.
Nicht ausdrücklich erwähnt im Blogbeitrag von Strategic Cyber LLC ist eine andere Methode zur Identifizierung von Cobalt Strike-Servern. Am 2. Januar 2019 wurde Cobalt Strike Version 3.13 veröffentlicht. In den Versionshinweisen zu Cobalt Strike heißt es, dass eine der Änderungen gegenüber früheren Versionen die Entfernung eines "irrelevanten Leerzeichens aus HTTP-Statusantworten" war. Ein zusätzliches Null-Byte in der HTTP-Serverantwort von NanoHTTPD-Servern (einem Open-Source-Webserver auf Java-Basis) betraf den Cobalt Strike Team Server, der erstmals 2012 veröffentlicht wurde und auf NanoHTTPD basiert.
Die von der Sicherheitsfirma Fox-IT am 26. Februar 2019 veröffentlichte Untersuchung von Cobalt Strike-Servern lieferte nicht nur Details zur Identifizierung der Server vor Version 3.13 (die mit dem zusätzlichen Null-Leerzeichen in der HTTP-Antwort antworten), sondern auch eine Liste von über siebentausend IPs, die Cobalt Strike-Server hosten, die von 2015 bis 2019 mit dieser Erkennungsmethode beobachtet wurden, die in öffentlich zugänglichen Daten von Rapid7 zu finden ist.
Paketerfassung, die zusätzliche Nullzeichen im HTTP-Header von einem Cobalt Strike-Server zeigt.
In ähnlicher Weise veröffentlichte das chinesische Sicherheitsforschungsteam von Knownsec am 27. Februar 2019 einen Blog , in dem die Verwendung der von Strategic Cyber LLC gemeldeten Antwortanomalie NanoHTTPD 404 Not Found sowie der Null-Space-Anomalie zur Identifizierung von Cobalt Strike-Servern detailliert beschrieben wurde. Sie fanden weniger Server in den Daten ihrer zugehörigen ZoomEye-Suchmaschinenplattform, fanden aber immer noch über dreitausend. Knownsec berichtete, dass der Open-Source-NanoHPPTD-Code, auf dem Cobalt Strike basiert, genau wie folgt reagiert:
HTTP/1.1 404 Nicht gefunden
Inhaltstyp: text/plain
Datum: Tag, TT Mmm JJJJ HH:MM:SS GMT
Inhalt-Länge: 0
Knownsec stützte seine Erkennungslogik auf diese Erkenntnis. Knownsec stellte jedoch später auch fest, dass die Reihenfolge innerhalb der HTTP-Antwort tatsächlich unterschiedlich sein kann, nachdem in der Antwort einiger Cobalt Strike-Systeme „content-type“ nach „date“ angezeigt wurde.
Eine zuverlässige Methode zur Erkennung von Cobalt-Servern steht denjenigen zur Verfügung, die Zugang zu detaillierten Netzwerkverkehrsdaten haben. Das Open-Source-Projekt JA3, das von drei Salesforce-Forschern entwickelt wurde, ermöglicht die Erkennung von verdächtigem HTTPS-Datenverkehr durch Fingerprinting der TLS-Aushandlung zwischen Servern und Clients. Die TLS/SSL-Version, akzeptierte Cipher Suites und elliptische Kurvendetails (z. B. elliptische Kurvenpunktformate) können ähnlich wie ein Browser anhand seiner Version, Add-ons und anderer spezifischer Funktionen für diesen einen Browser mit Fingerprinting versehen werden.
JA3-Signaturen sind für die Client-Seite und JA3S-Signaturen für Server. Im Fall von Cobalt Strike wurden Fingerabdrücke für die TLS-Aushandlung durch den Client-Beacon (der den Windows-Socket zum Initiieren der Kommunikation verwendet) und Cobalt Strike-Server , die auf dem Betriebssystem Kali Linux ausgeführt werden, erstellt. Diese Fingerabdrücke müssten zusammen verwendet werden, um einen Cobalt Strike-Server zuverlässig zu erkennen. Obwohl diese Erkennungsmethode teilweise durch den Cobalt Strike-Betreiber durch die Verwendung eines "Redirectors" abgeschwächt werden kann, verwenden viele Cobalt Strike-Server keinen solchen Proxy.
JA3- und JA3S-Signaturen können mit Tools wie Zeek/Bro und Suricata verwendet werden. Die Daten dieser Netzwerkerkennungstools können anschließend in ein SIEM wie Splunk eingespeist werden. JA3- und JA3S-Signaturen sind im Github-Konto von Salesforce und aus anderen Quellen verfügbar.
Wie bei der Erkennung anderer Tools wie Metasploit, Powershell oder PsExec, die von Sicherheitsteams oder Administratoren verwendet werden können, sollten Netzwerkverteidiger die gebotene Sorgfalt walten lassen, wenn sie Hinweise auf Verbindungen innerhalb ihres Netzwerks zu einem Cobalt Strike-Server finden, da die Erkennung selbst die Absichten des Benutzers nicht aufdeckt. Die Identifizierung eines Cobalt Strike-Servers als den eines autorisierten Red Teams oder eines echten Gegners kann allein auf Grundlage des erkannten Datenverkehrs unmöglich sein.
Änderungen seit den Berichten von Fox-IT und Knownsec, in denen anomale HTTP-Antworten veröffentlicht wurden
Wir hatten erwartet, dass die Zahl der mit diesen Methoden identifizierten Cobalt-Strike-Server nach der Veröffentlichung von Informationen über die Erkennung von Cobalt-Strike-Servern durch Strategic Cyber LLC, Fox-IT und Knownsec Ende Februar 2019 zurückgehen würde. Darüber hinaus wurden die Betreiber von Cobalt Strike in ihrer im Februar durchgeführten Studie von Strategic Cyber LLC dazu angehalten, einen Apache- oder Nginx-Webserver als „Umleitung“ für die Weiterleitung ihres Datenverkehrs zu verwenden. Dadurch wird eine einfache Erkennung der Cobalt Strike-Server verhindert, indem anomale HTTP-Antworten, standardmäßige Sicherheitszertifikate und andere derartige Kennungen aus der Gleichung entfernt werden. Durch die Aktualisierung legitimer, lizenzierter Server auf Version 3.13 würde sich die Anzahl der mit der Methode des irrelevanten Nullraums gefundenen Server verringern. Da die Betreiber von Cobalt Strike jedoch mit den gut publizierten Erkennungsmethoden vertraut sind, dürfte sich auch die Anzahl der erkennbaren Server verringern.
Durch die Nachahmung der Methodik von Fox-IT zur Erkennung anomaler Nullräume in HTTP-Antworten konnte die Insikt Group einen deutlichen Rückgang der identifizierten Server feststellen. Im Februar 2019 wurden mithilfe der Daten von Rapid7 erstmals 388 Cobalt Strike-Server beobachtet. Die Zahl der erstmals mit dieser Methode entdeckten Cobalt-Strike-Server lag im April 2019 bei nur 90. Dies ist jedoch nur ein Teil der Geschichte; die Zahl älterer Cobalt Strike-Server, die mit dieser Methode sichtbar sind, ist zurückgegangen, allerdings weit weniger signifikant. 441 der in den Daten von Rapid7 beobachteten Server waren im April 2019 noch aktiv, das sind mehr als die 387, die zuletzt im Januar 2019 beobachtet wurden.
Durch die Analyse der Knownsec-Forschung zur Identifizierung von Cobalt Strike mit einer anderen HTTP-Erkennungsmethode hat die Insikt Group ihre Forschung mit denselben Daten der ZoomEye-Suchmaschine repliziert. Die Insikt Group identifizierte 1.580 Server, die im Jahr 2018 aktiv waren, und bis Mai 2019 nur 1.053.
Aktuelle Messwerte der einzelnen Cobalt Strike-Erkennungsparameter. (Januar 2019 bis Mai 2019)
Wie bereits erwähnt, basieren beide HTTP-Erkennungsmethoden auf Anomalien innerhalb von NanoHTTPD und nicht speziell auf Cobalt Strike-Systemen. Nicht für alle mit diesen Methoden erkannten Malware-Angriffe lagen bestätigende Daten vor, wie etwa ein offener Port 50050. Bei der Veränderung der Serveranzahl spielen auch andere Variablen eine Rolle. Cobalt Strike-Server können ihre IPs ändern und bleiben nicht immer für längere Zeit verfügbar. Obwohl es seit Januar 2019 einen Rückgang bei der Zahl neu gesichteter Cobalt Strike-Server gibt, deuten die Daten darauf hin, dass immer noch eine große Anzahl von Servern in Betrieb ist, die mit der HTTP-Nullspace-Anomaliemethode erkannt werden.
Identifizierung von Kobaltvorkommen durch kombinierte Erkennungsmethoden. (Januar 2019 bis Mai 2019)
Die Kombination der drei Erkennungen ermöglichte eine sehr sichere Einschätzung, dass es sich bei den Servern um das Hosten von Cobalt Strike handelt. Tatsächlich wurde bereits früher von allen sechs auf diese Weise identifizierten Servern berichtet, dass sie Cobalt Strike hosten und mit verschiedenen Cobalt Strike-Beacons kommunizieren. Die Verwendung des Standard-Cobalt-Strike stellt die beste Erkennungsmethode dar. Die Überwachung der kombinierten Nutzung von NanoHTTPD und des offenen Ports 50050 kann den Bereich der zu überwachenden IPs jedoch erheblich einschränken.
Bedrohungsanalyse
Durch die Verwendung der Methodik von Fox-IT und die Suche nach der Verwendung des standardmäßigen Cobalt Strike TLS-Zertifikats auf zugänglichen IPs versuchte Recorded Future, ein Profil der Cobalt Strike-Nutzung zu erstellen, nachdem Strategic Cyber LLC einen wichtigen Erkennungsmechanismus gepatcht hatte. Es ist zu beachten, dass die bevorstehende Methodik und Studie sichtbare Cobalt-Strike-Server verfolgt und keine Cobalt-Strike-Server berücksichtigen kann, die selbst durch einfache Änderungen der Erkennung entgehen.
Recorded Future ging in dieser Untersuchung davon aus, dass die Erkenntnisse von Fox-IT zu einer Verschiebung der Einführung von Cobalt Strike hin zu neueren Versionen führen würden, was bis zu einem gewissen Grad auch der Fall war. Obwohl Strategic Cyber LLC einen Patch zur Behebung dieser Erkennung und zur Veröffentlichung von IP-Adressen mit dem zusätzlichen Leerzeichen in der HTTP-Antwort bereitstellt, scheinen Cobalt Strike-Bereitstellungen von vor dem Update nicht aktualisiert worden zu sein. Im Monat nach der Aktualisierung des Frameworks kam es auf Grundlage der Erkennungsmethode von Fox-IT, die auf die Datensätze von Rapid7 angewendet wurde, zum größten Anstieg neu beobachteter Cobalt Strike-Server. Diese Server waren durchschnittlich 70 Tage online.
Diese Erkennung erwies sich jedoch als unzuverlässig, da die Methode 248 Geräte in aufeinanderfolgenden CIDR-Bereichen auf AS 132839 fand, die NanoHTTPD auf Port 1443 verwendeten, der ausschließlich am 1. Februar 2019 aktiv war. Nach dem Entfernen dieser Anomalie deuten die Daten auf einen starken Rückgang bei der Erkennung neuer Cobalt Strike-Hosts mit NanoHTTPD hin. Dies kann daran liegen, dass es insgesamt weniger neue Cobalt Strike-Bereitstellungen gibt, kann aber auch auf die verwendete aktualisierte Software zurückzuführen sein.
Die zuletzt gesehenen Daten vom April 2019 deuten weitgehend darauf hin, dass zuvor bereitgestellte Cobalt Strike-Instanzen nicht entfernt oder aktualisiert wurden. Darüber hinaus zeigt die Zeit, die die Server online waren (basierend auf demselben Datensatz), keine erkennbare Veränderung bei den Servern, die weiterhin erkannt wurden; sie bewegt sich um den Durchschnitt des Datensatzes von 70 Tagen. Es gab jedoch einen Rückgang bei der Anzahl neuer Cobalt Strike-Server, die mit einem Nullzeichen im HTTP-Header gefunden wurden.
Die fortgesetzte Identifizierung von Cobalt-Strike-Servern, die eine veraltete Version des Frameworks (über das Nullzeichen im HTTP-Header) und die Standardkonfigurationen verwenden, kann darauf hinweisen, dass es sich bei einem großen Teil der Cobalt-Strike-Server um geknackte oder gestohlene Versionen handelt. Es kann auch daran liegen, dass die Betreiber keine Sicherheitspublikationen lesen, aber die Antwort ist möglicherweise einfacher: Die meisten Ziele suchen vermutlich nicht nach Cobalt-Strike-Servern und die Payloads sind nach wie vor wirksam. Warum also sollten sie ihr Verhalten ändern?
Stichproben von Cobalt Strike-Servern
Recorded Future hat eine Stichprobe der IP-Adressen genommen, bei denen wir im April 2019 Aktivität festgestellt haben, um sowohl die festgestellte Aktivität als auch die Erkennungsüberschneidungen zu untersuchen. Diese Server lassen sich in mehrere Kategorien einteilen: bestätigte Cobalt-Strike-Aktivitäten, mit anderer Schadsoftware verbundene Cobalt-Strike-Server, Cobalt-Strike-Server mit Verbindungen zu bekannten Bedrohungsgruppen und nicht gemeldete Cobalt-Strike-Server, die bislang weder in Bedrohungslisten noch in Berichten genannt wurden.
Mithilfe der eingesetzten Forschungsmethoden konnte nicht ermittelt werden, ob die analysierten Systeme lizenziert waren oder nicht. Ebenso wenig ließ sich feststellen, ob auf den Servern autorisierte Sicherheitstests oder illegale Angriffe durchgeführt wurden.
Eine Reihe von IP-Adressen, die sich in Signalen überschneiden, die mit Cobalt Strike in Verbindung stehen. Alle drei nutzten das Standardzertifikat, hatten den Cobalt Strike-Controller-Port 50050 geöffnet und wurden zuvor für das Hosten von Cobalt Strike-Beacons oder Meterpreter-Reverse-Proxys identifiziert. Es sollte noch einmal betont werden, dass bei der Verwendung von bestätigenden Erkennungsmethoden Erkennungen mit höherer Genauigkeit vorgenommen werden.
- Die IP-Adresse 89.105.202.58 verwendet das Standardzertifikat von Cobalt Strike. Frühere URLscan.io Ergebnisse zeigen eine HTTP 404 Not Found-Antwort ohne Inhalt und Nur-Text-Content-Type, und die Shodan-Überprüfung zeigt an, dass Port 50050 geöffnet war, der den Cobalt Strike-Controller hosten kann. Twitter-Nutzer @Scumbots hat zuvor den Server als Hosting eines Meterpreter-Reverse-Proxys identifiziert, der über ein Powershell-Skript kontaktiert wurde, das seit Februar 2019 auf PasteBin gehostet wird.
- 199.189.108.71 verwendete ebenfalls das standardmäßige Cobalt Strike-Zertifikat, hatte Port 50050 geöffnet und war zuvor vom Twitter-Benutzer @Scumbots für das Hosten eines Meterpreter-Reverse-Proxys identifiziert worden, der auch base64-codierte Powershell verwendete, um die Ausführung zu verschleiern.
Die IP 31.220.43.11 wurde unter Verwendung des Baseline-Zertifikats "Cobalt Strike" identifiziert, was durch den offenen Port 50050 auf dem Server bestätigt wird. Es wurde beobachtet, dass ein Meterepreter-Beispiel HTTP-Datenverkehr in einer Command-and-Control-Funktion an die IP sendet. Laut Shodan-Daten hat die IP eine Reihe von Ports offen und ist anfällig für eine Reihe von Exploits, was darauf hindeuten kann, dass der Host kompromittiert wurde, um andere Malware zu bedienen. Die IP hostet zum Zeitpunkt der Analyse eine einzelne Domain: cob.ozersk[.]Heute.
Eine Reihe von IPs nutzten das Standardzertifikat Cobalt Strike und waren zuvor mit FIN6-Aktivitäten in Verbindung gebracht worden, sowohl für die Bereitstellung von Ransomware als auch für den anfänglichen Angriffsvektor zur Verbreitung von Point-of-Sale -Malware. Zum Zeitpunkt dieser Analyse waren beide Cobalt Strike Team-Server aktiv, obwohl die Kampagne öffentlich abgestürzt war. Dies spricht dafür, dass FIN6 nach seinen Operationen keinen Bedarf an Aufräumarbeiten hatte und dass die Operation schnell abgebrochen wurde.
Interessanterweise war einer der Server zwar mit allen drei Methoden erkennbar, einer der Server war jedoch für den zusätzlichen NanoHTTPD-Speicherplatz gepatcht worden. Dies bedeutet, dass entweder der Standard-Webserver neu konfiguriert wurde oder die Akteure über eine aktualisierte Version von Cobalt Strike verfügten. Die Vielfalt der im selben Vorfall eingesetzten Cobalt-Strike-Server zeigt, dass FIN6 das Standard-Cobalt-Strike-Framework mit geringen Änderungen verwendet.
- Der Server unter 185.80.233.166 verwendet das standardmäßige Cobalt Strike-Sicherheitszertifikat. Bei diesem System ist auch der standardmäßige Cobalt Strike Team Server-Port 50050/TCP geöffnet. Das System hatte einen MX-Eintrag von mail.sexlove24[.]COM und Talos-Telemetriedaten deuten darauf hin, dass im April 2019 keine E-Mails zu oder von diesem System beobachtet wurden. Diese IP wurde von Morphisec im Februar 2019 im Rahmen eines koordinierten Angriffs auf Point-of-Sale-Systeme mit FrameworkPOS identifiziert . Bei der Aktivität wurden TTPs verwendet, die von der FIN6-Gruppe verwendet werden, insbesondere die Verwendung von WMI/PowerShell für Lateral Movement und Privilege Escalation.
- Die IP 176.126.85.207 wurde sowohl durch den anomalen Speicherplatz von Fox-IT als auch durch die Verwendung des standardmäßigen Cobalt Strike-Zertifikats erkannt, wobei die Daten durch den offenen Port 50050 bestätigt wurden. Es wurde beobachtet, dass die IP eine Metasploit Meterpreter Reverse-HTTP-Payload in Verbindung mit der LockerGoga- und Ryuk-Bereitstellung von FIN6 ausliefert.
Zwei IPs verwendeten das Standard-Cobalt Strike-Zertifikat und verwendeten reflektierende Cobalt Strike-Lader. Reflektierendes Laden von DLL (Dynamic Load Library) ist eine Methode, bei der eine DLL in den Speicher eines Prozesses eingefügt wird, während das Windows-DLL-Ladeprogramm umgangen wird und das Speichern der DLL auf einem Datenträger vermieden wird. Eine DLL, die auf diese Weise injiziert wird, kann schwer zu erkennen sein, da sie sich nur im Speicher befindet. Reflektierendes DLL-Laden, das bekanntermaßen von APT40 (auch bekannt als TEMP. Periscope) und in der Wilted Tulip-Kampagne , ist nicht exklusiv für Cobalt Strike und wird mit verschiedenen Mitteln von einer Reihe von Schauspielern durchgeführt. Die Verwendung eines reflektierenden Ladeprogramms ist kein Beweis dafür, dass diese Gruppen auf diesen Servern aktiv waren. Keine der beiden IP-Adressen sind zum Zeitpunkt dieser Analyse gehostete Domains.
- Die IP 89.105.198.18 verwendete ebenfalls das Standardzertifikat Cobalt Strike. Die IP wurde zuvor als Command-and-Control-Server identifiziert, der Meterpreter-Daten über HTTP empfängt, so @Scumbots. Frühere Scan-Daten von Shodan bestätigten , dass der Cobalt Strike-Server auf der IP-Adresse vorhanden war, indem der Cobalt Strike-Controller-Port 50050 geöffnet war. Die Sammlungen von Recorded Future identifizierten zwei Dateien, die die IP-Adresse 89.105.198.18 kontaktierten. erstmals im März 2019 beobachtet. Die Payloads wiesen inkonsistente Erkennungen in VirusTotal auf, was wahrscheinlich darauf zurückzuführen ist, dass zumindest die erste Datei UPX-gepackt wurde. Eine Überprüfung der Speicherabbilder beim Ausführen der Dateien ergab, dass es sich bei beiden um reflektierende Cobalt Strike-Loader handelte.
- 3a143d038aae9e4253ed6656beaaae298795a3df20e874544c0122435ef79bc0
- 9668c17504a0d9471668dac64b3c5c2abfb3b186c25dc28d91afbe95ed341002
- Eine andere IP-Adresse im gleichen CIDR-Bereich verwendete ebenfalls das Standardzertifikat von Cobalt Strike:89.105.198.21. Zum Zeitpunkt dieser Analyse hostete die IP-Adresse keine Domänen, aber frühere Scandaten bestätigten die Anwesenheit eines Cobalt Strike-Servers.
- Die IP 106.12.204.25 wurde sowohl durch den anomalen Raum von Fox-IT als auch durch die Verwendung des standardmäßigen Cobalt Strike-Zertifikats erkannt. Die IP hatte auch Port 50050 offen und hatte eine Klartextantwort 404 Not Found, wie oben erwähnt. Es wurde berichtet, dass die IP mit einem Cobalt Strike-Beacon ausgeliefert wurde, der auch von einem VirusTotal-Benutzer als Cobalt Strike-Reflexionslader im Zusammenhang mit APT40 erkannt wurde. Recorded Future hat das geistige Eigentum, das in Verbindung mit APT40 arbeitet, nicht beobachtet.
Bei einer anderen allgemeinen Kategorie von IPs, die als Host für Cobalt Strike identifiziert wurden, gab es unkorrelierte Bedrohungsaktivitäten im Zusammenhang mit anderer Malware oder verdächtigen Aktivitäten, die Ergebnisse waren jedoch größtenteils nicht schlüssig.
- Die IP-Adresse 91.152.8.14 nutzte Mitte April 2019 das Standardzertifikat von Cobalt Strike. Es wurde festgestellt, dass ein generischer Trojaner mit der IP-Adresse über HTTP-Methoden über Port 433 kommuniziert. Die IP hostete zum Zeitpunkt der Analyse keine Domains, sondern teilte sich ein Zertifikat mit forum.happyhippos[.]Org. Der Aussteller des Zertifikats behauptete, aus Espoo, Uusimaa, Finnland, zu stammen, die gleiche relative Geolokalisierung wie die IP-Adresse. Eine andere IP-Adresse im selben CIDR-Bereich wurde über den anomalen HTTP-Header-Bereich auf 91.152.8.173 erkannt. Obwohl diese IP ein anderes Zertifikat verwendete, zeigen frühere Shodan-Scans über Port 443 eine 404 Not Found-Antwort ohne Inhalt und Nur-Text-Content-Type, was ein Signal mit geringer Zuverlässigkeit für einen Cobalt Strike-Server ist. Ohne weitere Daten konnte Recorded Future keine Schlussfolgerung zu diesen IPs ziehen.
- Die IP 99.81.122.12 wurde Ende April 2019 anhand der ungewöhnlichen Abstände, der Verwendung des Cobalt Strike-Zertifikats und des geöffneten Controller-Ports 50050 identifiziert. Der Server ist jetzt inaktiv, diente jedoch zuvor als Cobalt Strike-Beacon, auf den über HTTP zugegriffen wurde. Zum Zeitpunkt der Analyse wurden auf dem Server keine Domänen gehostet.
- Die IP 72.14.184.90 nutzte auch das generische Cobalt Strike-Zertifikat. Die IP-Adresse wird von einer schädlichen Datei kontaktiert, die über HTTP auf die URL hxxps://72.14.184[.]90/search/news/ zugreift. Die Datei wird als Cobalt Strike Beacon erkannt . Die IP-Adresse wurde auch mit der Beteiligung an einer Spearphishing-Kampagne Ende Januar 2019 in Verbindung gebracht . Shodan-Scandaten weisen darauf hin, dass der Server eine Reihe von Schwachstellen aufweist. Dies deutet darauf hin, dass der Server möglicherweise kompromittiert wurde, um den Cobalt Strike-Server zu hosten, und nicht, dass er für einen Penetrationstest gemietet wurde.
- 06f8004835c5851529403f73ad23168b1127315d02c68e0153e362a73f915c72
Schließlich gab es für viele IPs zwar nur begrenzte Berichte über Bedrohungsaktivitäten, aber es gab Anzeichen dafür, dass in naher Zukunft möglicherweise bösartige Aktivitäten einsetzen würden:
- Die IP 172.96.250.199 verwendete das Basiszertifikat "Cobalt Strike", war aber laut Recorded Future-Telemetriedaten nicht mit einer Bedrohungsaktivität verbunden. Die IP-Adresse hat seitdem Zertifikate ausgetauscht, um ein Paar LetsEncrypt-Zertifikate zu verwenden, darunter eines , das mit der Domain haqiu[.]vgl. Die Domain war zum Zeitpunkt dieser Analyse weder aktiv noch auf dieser IP gehostet. Die IP wurde mit dem Hosten einer verdächtigen Domain in Verbindung gebracht, ssss.ppwu[.]Xyz die duale LetsEncrypt-Zertifikate verwendet hat. Diese Zertifikate sind nur 90 Tage lang gültig und wurden seitdem auf Cloudflare-Server umgestellt. Dies kann auf ein bevorstehendes Red-Team-Engagement oder zukünftige Bedrohungsaktivitäten mit Cobalt Strike hindeuten.
- Die IP 139.162.18.83 wurde durch die Verwendung des standardmäßigen Cobalt Strike SSL-Zertifikats identifiziert, es wurden jedoch keine Bedrohungsaktivitäten oder andere Auffälligkeiten bei der IP-Adresse beobachtet. Im selben CIDR-Bereich wurde jedoch im anomalen Bereich in der HTTP-Antwort die Nummer 139.162.18.179 identifiziert und es stellte sich heraus, dass das standardmäßige Cobalt Strike SSL-Zertifikat verwendet wurde. Derzeit ist mit dem Server keine Bedrohungsaktivität verbunden, aber auf der IP werden eine Reihe verdächtiger Domänen gehostet.
- Die IP 124.156.106.98 nutzte auch das standardmäßige Cobalt Strike-Zertifikat und hatte den Port 50050 geöffnet, der für das Cobalt Strike-Controller-Panel verwendet werden kann. Das IP wurde als Befehls- und Kontrollsignal für ein Cobalt-Strike-Leuchtfeuer beobachtet, das im März 2019 beobachtet wurde. Am 2. Mai 2019 wurde jedoch eine seltsame Domain auf der IP registriert und gehostet, kongbu.koubaogangjiao[.]Xyz während die Signale des Kobaltstreiks noch aktiv waren. Die Domain kann in Zukunft für Penetrationstests oder böswillige Infektionen verwendet werden.
Ausblick
Recorded Future hält es für wichtig, Signale bekannter Bedrohungen zu gruppieren, um die Bedrohungsaktivität besser einschätzen zu können und die Identifizierung einzigartiger Bedrohungen zu erleichtern. Das anhaltende Auftauchen von Standardzertifikaten von Cobalt Strike sowie die ungewöhnlichen Abstände in HTTP-Antworten von Versionen vor 3.13 deuten darauf hin, dass die gemeinsame Verwendung mehrerer Signaturen die beste Methode zur Identifizierung aktiver Cobalt Strike-Server sein wird.
Während auf Spionage spezialisierte Akteure oft über umfangreiche Entwicklungszeit und Ressourcen verfügen, haben sie auch ein begründetes Interesse daran, in der Masse unterzugehen. Das Patchen der Cobalt Strike-Server kann auch durch andere Hindernisse als absichtliche Manipulationen verhindert werden. Dazu gehören fehlende Kenntnisse über das Update aufgrund von Sprachbarrieren, mangelnder Bedienkomfort mit aktuell installierten Versionen oder andere Änderungen, die die Installation des Updates verhindern. Die Verwendung geknackter Versionen von Cobalt Strike oder die Bereitstellung von Standardinstanzen von Cobalt Strike führt zu einer Vermischung der Bedrohungen, was die Zuordnung erschwert. Darüber hinaus können sich Akteure durch die Ausführung gecrackter Versionen des Frameworks in ältere Versionen von Cobalt Strike einfügen.
Die fortlaufende Erkennung dieser Server kann den SOC- und IR-Teams Regeln für die Entwicklung von Warn- oder Blockierungsfunktionen liefern und Untersuchungen zu Hosts veranlassen, die mit diesen Servern kommunizieren.