diff --git a/content/about.md b/content/about.md index 4d7942d..bce6fb9 100644 --- a/content/about.md +++ b/content/about.md @@ -8,5 +8,5 @@ Fachinformatiker Systemintegration -GPG-Key: [https://www.jmbfountain.de/gpg.asc](https://www.jmbfountain.de/gpg.asc) +GPG-Key: [https://www.jmbit.de/gpg.asc.txt](/gpg.asc.txt) Email: kontakt @ jmbit.de diff --git a/content/blog/2023-02-05-esxiargs.md b/content/blog/2023-02-05-esxiargs.md new file mode 100644 index 0000000..3b348d0 --- /dev/null +++ b/content/blog/2023-02-05-esxiargs.md @@ -0,0 +1,68 @@ +--- +title: "ESXiArgs" +date: 2023-02-05T14:36:45+01:00 +author: Johannes Bülow +draft: false +--- +ESXiArgs ist eine vermutlich neue Ransomware-Familie, die ESXi-Server angreift und darauf laufende VMs (teilweise) +verschlüsselt. Der wahrscheinlichste Angriffsvektor ist derzeit +[CVE-2021-21974](https://www.vmware.com/security/advisories/VMSA-2021-0002.html), ein Heap-Overflow -> RCE Exploit. +Benannt ist die Malware danach, dass sie dem Namen verschlüsselter Dateien ".args" anhängt. + +## Was ist passiert? +Auf den betroffenen ESXi-Servern wurde vermutlich unter Ausnutzung von CVE-2021-21974 eine reverse shell installiert. +In dem [Sample](https://bazaar.abuse.ch/sample/773d147a031d8ef06ee8ec20b614a4fd9733668efeb2b05aa03e36baaf082878/#yara) +der Backdoor, das ich analysiert habe, wurde auf port 8008 eine Webshell gestartet: + +```python +HTTPServer(('127.0.0.1', 8008), PostServer).serve_forever() +``` + +Ich habe leider nur die python-Datei selbst, da das Skript, das die VMs verschlüsselt, jedoch die Datei +`/etc/rc.local.d/local.sh` leert, ist anzunehmen, dass das Python-Skript selbst von dort aufgerufen wird, also bei jedem +reboot neu geladen wird. + +Diese Reverse-Shell wurde dann verwendet, um mehrere Dateien unter /tmp/ abzulegen und dann die darunter befindliche +`compromise.sh` auszuführen. Dieses Shellscript verschlüsselt alle Dateien, deren Namen auf "\*.vmdk", "\*.vmx", "\*.vmxf", +"\*.vmsd", "\*.vmsn", "\*.vswp", "\*.vmss", "\*.nvram" oder "\*.vmem" enden, und die kleiner als 128MB sind. Bei +Dateien, die größer als 128MB sind, werden nur 100 1MB-Blöcke in der Datei verschlüsselt. Dies bedeutet, dass die VMs +selbst in der Regel relativ einfach wiederherstellbar sind. Am Ende dieses Artikels werde ich in der Linksammlung einige +Anleitungen verlinken. Sollten Sie dabei Probleme haben, können Sie auch gerne [auf mich zukommen](/about/). + +## Woran kann ich einen Befall erkennen? +Sollte das Virus bereits ausgeführt worden sein, sehen Sie auf Port 443 des Servers statt der gewohnten Web-UI diese +Website: + +![Ransom Note](/img/blog/esxiargs-ransomnote.jpg) + +Die Backdoor, die vermutlich für die Infektion verwendet wird/wurde, läuft als Python Webserver. In diesem Fall lief er auf +Port 8008, es wäre aber auch so ziemlich jeder andere Port denkbar. Mit `esxcli network ip connection list` können Sie +sich auf dem ESXi-Server anzeigen, welche Netzwerkdienste aktuell laufen. Ebenso sollte in /etc/rc.local.d/ ein Eintrag +zu finden sein, der das Python-Script startet. Das Skript selbst dürfte `store/packages/vmtools.py` heißen. + + +## Welche Voraussetzungen für einen Befall gibt es? +Der ESXi-Server muss, damit CVE-2021-21974 ausgenutzt werden kann, auf Port 427 aus dem Internet erreichbar sein, sowie +auf einer Version vor ESXi70U1c-17325551 (ESXi 7.0), ESXi670-202102401-SG (ESXi 6.7) oder ESXi650-202102101-SG (ESXi 6.5) +sein. Da diese Malware aber eine bereits deployte Hintertür ausnutzt, reicht es, wenn diese Konstellation in der +Vergangenheit existiert hat, um kompromittiert werden zu können (Gesetzt, die Hintertür ist weiterhin aus dem Internet +erreichbar) + +----- +## Linksammlung +### Quellen und Weiterführendes: +https://www.bleepingcomputer.com/news/security/massive-esxiargs-ransomware-attack-targets-vmware-esxi-servers-worldwide/ +https://blogs.juniper.net/en-us/threat-research/a-custom-python-backdoor-for-vmware-esxi-servers + +### Mögliche Anleitungen / Ansätze +**Ich übernehme KEINE Verantwortung dafür, ob diese Anleitungen funktionieren.** Ich habe Online sowohl von Erfolgen als +auch Fehlschlägen gelesen. Ich empfehle Ihnen, sich bei wichtigen Daten an Experten zu wenden und die Wiederherstellung +nicht selbst zu versuchen. +https://enes.dev/ +https://www.bleepingcomputer.com/forums/t/782193/esxi-ransomware-help-and-support-topic-esxiargs-args-extension/?p=5470599 +https://www.bleepingcomputer.com/forums/t/782193/esxi-ransomware-help-and-support-topic-esxiargs-args-extension/?p=5470896 +https://kb.vmware.com/s/article/1026353 + +### Betroffene ESXi-Server +https://www.shodan.io/search?query=html%3A%22TOX_ID%22 + diff --git a/static/gpg.asc b/static/gpg.asc.txt similarity index 100% rename from static/gpg.asc rename to static/gpg.asc.txt diff --git a/static/img/blog/esxiargs-ransomnote.jpg b/static/img/blog/esxiargs-ransomnote.jpg new file mode 100644 index 0000000..bce423d Binary files /dev/null and b/static/img/blog/esxiargs-ransomnote.jpg differ