{
	"id": "ad7b5bd2-afd9-4011-aca9-1ed50b0f0dfe",
	"created_at": "2026-04-10T03:21:48.818861Z",
	"updated_at": "2026-04-10T13:12:39.309877Z",
	"deleted_at": null,
	"sha1_hash": "5d7d6b3b293a491a2af5a4c07831992dc8915c36",
	"title": "Reverse Engineering | Hermetic Wiper",
	"llm_title": "",
	"authors": "",
	"file_creation_date": "0001-01-01T00:00:00Z",
	"file_modification_date": "0001-01-01T00:00:00Z",
	"file_size": 1172030,
	"plain_text": "Reverse Engineering | Hermetic Wiper\r\nBy Thomas Englert\r\nArchived: 2026-04-10 02:11:30 UTC\r\nvon Thomas\r\nErstellt am 25.02.2022\r\nHermetic Wiper eine erste Analyse\r\nDer Ukraine-Russland Konflikt wird auch im Internet mittels Attacken auf Computersysteme geführt. Am 23.02\r\nhat ESET, ein Unternehmen für Sicherheitssoftware, eine neue Wiper Malware entdeckt. ESET hat die Meldung\r\nerstmals via Twitter veröffentlicht. In diesem Artikel möchte ich eine erste Analyse mittels Reverse Engineering\r\nder Malware beschreiben. Im Vorhinein ist aber bereits eines klar: die Malware löscht die komplette Festplatte. Im\r\nRahmen meiner Studienarbeit, die bis Ende Juni veröffentlicht werden soll, werde ich den Virus genauer\r\nanalysieren und weitere Erkenntnisse hier ergänzen.\r\nWas ist ein Wiper Trojaner?\r\nLaut virustotal.com wird die Schadsoftware als ein Trojaner mit der Untergruppe Wiper klassifiziert. Trojanische\r\nPferde (oft auch Trojaner) tarnen sich als unbedenkliche Software oder Dokumente. Nutzer laden diese meist\r\nherunter und werden von scheinbar seriösen Quellen getäuscht. Die Malware führt später die Schadfunktionen\r\nverborgen im Hintergrund aus. Ziel ist oft andere Malware nachzuinstallieren, um sie für Folgeangriffe\r\nverwundbar zu machen.\r\nNamensherkunft vom Hermetic Wiper\r\nhttps://www.englert.one/hermetic-wiper-reverse-code-engineering\r\nPage 1 of 10\n\nLaut sentinelone.com ist die Malware mit einem Zertifikat von Hermetica Digital Ltd signiert. Die Forscher von\r\nsentinelone.com gehen davon aus, dass es sich um eine Scheinfirma handelt, da das Zertifikat von April 2021 ist\r\nund für die Forscher nie außer im Falle von Hermetic Wiper in Erscheinung getreten ist.\r\nStatische Analyse von Hermetic Wiper\r\nDie Datei ist 115 KB groß und als PE32 executable (GUI) Intel 80386, for MS Windows identifiziert. Das\r\nbedeutet, dass die Malware ausschließlich für das Betriebssystem Microsoft Windows entworfen und entwickelt\r\nwurde.\r\nMit dem Befehl strings unter Linux können alle in der Datei enthaltenen Strings ausgegeben werden. Dabei\r\ninteressant ist die sogenannte Data Sektion, welche unter Wikipedia ausführlich beschrieben ist. Sie ist Bestandteil\r\njeder Portable Executable. Die von mir händisch gefilterte Ausgabe ist in folgendem dargestellt:\r\nNTFS\r\nWow64DisableWow64FsRedirection\r\nWow64RevertWow64FsRedirection\r\nIsWow64Process\r\nGCTL\r\n.text\r\n.text$mn\r\n.idata$5\r\n.rdata\r\n.rdata$zzzdbg\r\n.xdata$x\r\n.idata$2\r\n.idata$3\r\n.idata$4\r\n.idata$6\r\n.data\r\n.bss\r\n.rsrc$01\r\n.rsrc$02\r\nStrStrA\r\nwnsprintfW\r\nStrCmpNW\r\nStrStrIW\r\nPathAppendW\r\nPathAddBackslashW\r\nStrCatBuffW\r\nPathFileExistsW\r\nPathFindExtensionW\r\nPathAddExtensionW\r\nStrToIntW\r\nStrChrW\r\nStrRChrW\r\nStrStrW\r\nhttps://www.englert.one/hermetic-wiper-reverse-code-engineering\r\nPage 2 of 10\n\nSHLWAPI.dll\r\nLZOpenFileW\r\nLZClose\r\nLZCopy\r\nLZ32.dll\r\nwcsncpy\r\ntowupper\r\nmsvcrt.dll\r\nHeapAlloc\r\nGetProcessHeap\r\nDeviceIoControl\r\nGetLastError\r\nHeapReAlloc\r\nHeapFree\r\nlstrcmpA\r\nGetSystemTimeAsFileTime\r\nCreateFileW\r\nCloseHandle\r\nSetFilePointerEx\r\nReadFile\r\nGetDiskFreeSpaceW\r\nlstrlenW\r\nWriteFile\r\nFlushFileBuffers\r\nCreateThread\r\nWaitForMultipleObjects\r\nGetModuleHandleW\r\nGetProcAddress\r\nGetCurrentProcess\r\nVerSetConditionMask\r\nVerifyVersionInfoW\r\nFindResourceW\r\nLoadResource\r\nLockResource\r\nSizeofResource\r\nGetSystemDirectoryW\r\nDeleteFileW\r\nSleep\r\nWaitForSingleObject\r\nSetThreadPriority\r\nFindFirstFileW\r\nFindNextFileW\r\nFindClose\r\nGetLogicalDriveStringsW\r\nSetLastError\r\nGetCommandLineW\r\nGetModuleFileNameW\r\nhttps://www.englert.one/hermetic-wiper-reverse-code-engineering\r\nPage 3 of 10\n\nGetFileAttributesW\r\nCreateEventW\r\nSetEvent\r\nExitProcess\r\nGetCurrentProcessId\r\nGetFileInformationByHandle\r\nKERNEL32.dll\r\nwsprintfW\r\nCharLowerW\r\nUSER32.dll\r\nCryptAcquireContextW\r\nCryptGenRandom\r\nCryptReleaseContext\r\nRegDeleteKeyW\r\nOpenProcessToken\r\nLookupPrivilegeValueW\r\nAdjustTokenPrivileges\r\nOpenSCManagerW\r\nOpenServiceW\r\nCreateServiceW\r\nQueryServiceStatus\r\nChangeServiceConfigW\r\nStartServiceW\r\nDeleteService\r\nCloseServiceHandle\r\nControlService\r\nInitiateSystemShutdownExW\r\nRegQueryInfoKeyW\r\nRegEnumKeyExW\r\nRegOpenKeyW\r\nRegSetValueExW\r\nRegCloseKey\r\nADVAPI32.dll\r\nCommandLineToArgvW\r\nSHELL32.dll\r\n_except_handler3\r\nmemcpy\r\nmemset\r\nDigiCert Inc1\r\nwww.digicert.com1+0)\r\n\"DigiCert EV Code Signing CA (SHA2)0\r\n210413000000Z\r\n220414235959Z0\r\nPrivate Organization1\r\nHE 4194691\r\nNicosia1\r\nHermetica Digital Ltd1\r\nhttps://www.englert.one/hermetic-wiper-reverse-code-engineering\r\nPage 4 of 10\n\nHermetica Digital Ltd0\r\n1http://crl3.digicert.com/EVCodeSigningSHA2-g1.crl07\r\n1http://crl4.digicert.com/EVCodeSigningSHA2-g1.crl0J\r\nhttp://www.digicert.com/CPS0\r\nhttp://ocsp.digicert.com0H\r\nhttp://cacerts.digicert.com/DigiCertEVCodeSigningCA-SHA2.crt0\r\nDigiCert Inc1\r\nwww.digicert.com1+0)\r\n\"DigiCert High Assurance EV Root CA0\r\nDigiCert Inc1\r\nwww.digicert.com1+0)\r\n\"DigiCert EV Code Signing CA (SHA2)0\r\nhttp://ocsp.digicert.com0I\r\n=http://cacerts.digicert.com/DigiCertHighAssuranceEVRootCA.crt0\r\n:http://crl3.digicert.com/DigiCertHighAssuranceEVRootCA.crl0@\r\n:http://crl4.digicert.com/DigiCertHighAssuranceEVRootCA.crl0\r\n.http://www.digicert.com/ssl-cps-repository.htm0\r\nDigiCert Inc1\r\nwww.digicert.com1+0)\r\n\"DigiCert EV Code Signing CA (SHA2)\r\n \r\nDie Analyse zeigt, dass der Wiper wohl für das NTFS Filesystem entwickelt ist. Das lässt der Ouput in der ersten\r\nZeile mutmaßen. Zusätzlich sind viele Funktionen in der Executable enthalten. Interessante Funktionen sind\r\nWow64DisableWow64FsRedirection, Wow64RevertWow64FsRedirection und IsWow64Process. Diese drei\r\nFunktionen werden in Kombination genutzt, um Weiterleitungen aus dem Dateisystem zu deaktivieren.\r\nDie letzten Zeilen der Ausgabe bestätigen die Annahme von sentinelone.com, dass die Malware für Hermetica\r\nDigital Ltd signiert ist. In der Ausgabe wird sogar bekannt, dass DigiCert der Herausgeber des Zertifikates ist.\r\nMittels des Befehls objdump -d ist es möglich, die Binäre Datei zu disassemblieren. Mit den Parametern -M Intel\r\nist es möglich die Disassemblierung in der Intel Syntax darzustellen. Leider stand mir bisher nicht genügend Zeit\r\nzur Verfügung, den Assemblercode zu analysieren. Ich hoffe ich werde dazu im Rahmen meiner Studienarbeit Zeit\r\nfinden und den Abschnitt entsprechend ergänzen.\r\nAnalyse nach Packern und Crypters\r\nHäufig werden oft Packer oder Crypters verwendet, um ein Reverse Code Engineering von Malware zu\r\nerschweren bzw. unmöglich zu machen. Mittels des Kommandos objdump -D können alle Assembler Sektionen\r\neiner Datei erzeugt werden. Im Fall von Hermetic Wiper sind folgende Sektionen vorhanden:\r\n$ objdump -D hermeticWiper | grep section\r\nDisassembly of section .text:\r\nDisassembly of section .rdata:\r\nDisassembly of section .data:\r\nhttps://www.englert.one/hermetic-wiper-reverse-code-engineering\r\nPage 5 of 10\n\nDisassembly of section .rsrc:\r\nDisassembly of section .reloc:\r\nDie aufgelisteten Sektionen sind übliche Sektionen für Windows Executables. Daher ist nicht davon auszugehen,\r\ndass ein Packer oder Crypter bei Hermetic Wiper verwendet wurde.\r\nHashsummen von Hermetic Wiper:\r\nmd5 - 3f4a16b29f2f0532b7ce3e7656799125\r\nsha1 - 61b25d11392172e587d8da3045812a66c3385451\r\nMittels dieser Checksummen kann eine statische Analyse auf bekannten Seiten wie virustotal durchgeführt\r\nwerden. Stand heute (25.02.2022 09:55 Uhr) wird die Malware laut VirusTotal von 37 Scannern erkannt. Darunter\r\nbefindet sich auch der Microsoft Defender.\r\nDynamische Analyse von Hermetic Wiper\r\nDie dynamische Analyse erfolgt bei mir im ersten Schnitt mit dem Tool any.run. Bei der Analyse stellt sich heraus,\r\ndass nach der Ausführung des Hermetic Wiper eine .sys Datei unter C:\\WINDOWS\\system32\\Drivers\\ abgelegt\r\nwird. Der Name der Datei ist immer vier Zeichen lang und verfügt über die Dateiendung .sys. Im weiteren Fall\r\nbezeichne ich die Datei als Treiberdatei. Die erzeugte Datei hat immer die gleiche Hashsumme. Das Tool file\r\nidentifiziert die Datei PE32+ executable (native) x86-64, for MS Windows. Das weitere Verhalten von Hermetic\r\nWiper in der Sandbox von any.run, ist im Bild dargestellt.\r\nhttps://www.englert.one/hermetic-wiper-reverse-code-engineering\r\nPage 6 of 10\n\nResultat dynamische Analyse Hermetic Wiper\r\nNennenswerte besondere Verhalten gibt es in dem Fall nicht weiter zu beschreiben. Hermetic Wiper ist darauf\r\nausgelegt, eine .sys Datei auf der Festplatte abzulegen. In der weiteren Analyse werde ich mich nun dieser Datei\r\nwidmen.\r\nStatische Analyse der erzeugten Treiberdatei\r\nDa die Datei von Hermetic Wipe komplett neu erzeugt wird, muss eine erneute statische Analyse durchgeführt\r\nwerden. Die Datei ist 17,48 KB groß und wird, wie im vorherigen Abschnitt schon beschrieben, als PE32+\r\nexecutable (native) x86-64, for MS Windows von file erkannt. Die von mir gefilterte strings Ausgabe hat folgende\r\ninteressante Inhalte:\r\nInvalid parameter passed to C runtime function.\r\nRSDS\r\nh:\\epm2.0\\01_projectarea\\00_source\\epm2\\mod.windiskaccessdriver\\windiskaccessdriver\\objfre_wlh_amd64\\\r\nExAllocatePoolWithTag\r\nIoGetLowerDeviceObject\r\nIoBuildDeviceIoControlRequest\r\nIoDeleteSymbolicLink\r\nExFreePoolWithTag\r\nRtlInitUnicodeString\r\nhttps://www.englert.one/hermetic-wiper-reverse-code-engineering\r\nPage 7 of 10\n\nIoDeleteDevice\r\nKeSetEvent\r\nKeInitializeEvent\r\nIoFreeMdl\r\nMmMapLockedPagesSpecifyCache\r\nIoGetDeviceObjectPointer\r\nIoBuildAsynchronousFsdRequest\r\nIofCompleteRequest\r\nKeWaitForSingleObject\r\nIoFreeIrp\r\nIoGetAttachedDeviceReference\r\nRtlCompareUnicodeString\r\nMmUnlockPages\r\nObfReferenceObject\r\nIoCreateSymbolicLink\r\nObfDereferenceObject\r\nRtlUnicodeStringToInteger\r\nIoCreateDevice\r\nDbgPrint\r\nObDereferenceObjectDeferDelete\r\nIofCallDriver\r\nKeBugCheckEx\r\nntoskrnl.exe\r\nRtlAnsiCharToUnicodeChar\r\nVeriSign, Inc.1\r\nVeriSign Trust Network1;09\r\n2Terms of use at https://www.verisign.com/rpa (c)101.0,\r\n%VeriSign Class 3 Code Signing 2010 CA0\r\n120423000000Z\r\n140911235959Z0\r\nSichuan1\r\nChengdu100.\r\n'CHENGDU YIWO Tech Development Co., Ltd.1\u003e0\u003c\r\n5Digital ID Class 3 - Microsoft Software Validation v2100.\r\n'CHENGDU YIWO Tech Development Co., Ltd.0\r\nr*@XD\r\n!rKl\r\n90705\r\n/http://csc3-2010-crl.verisign.com/CSC3-2010.crl0D\r\n=0;09\r\n0*0(\r\nhttps://www.verisign.com/rpa0\r\ne0c0$\r\nhttp://ocsp.verisign.com0;\r\n/http://csc3-2010-aia.verisign.com/CSC3-2010.cer0\r\nWashington1\r\nRedmond1\r\nhttps://www.englert.one/hermetic-wiper-reverse-code-engineering\r\nPage 8 of 10\n\nMicrosoft Corporation1)0'\r\n Microsoft Code Verification Root0\r\n110222192517Z\r\n210222193517Z0\r\nVeriSign, Inc.1\r\nVeriSign Trust Network1:08\r\n1(c) 2006 VeriSign, Inc. - For authorized use only1E0C\r\nVeriSign Class 3 Public Primary Certification Authority – G50\r\nDhttp://crl.microsoft.com/pki/crl/products/MicrosoftCodeVerifRoot.crl0\r\nhttps://www.verisign.com/cps0*\r\nhttps://www.verisign.com/rpa0\r\nWie genau die Malware vorgeht, ergibt die statische Analyse natürlich nicht. Dennoch lassen sich mögliche\r\nVerhaltensweisen bereits identifizieren. Die Analyse mit Strings ergibt, dass die FunktionIoDeleteDevice\r\nverwendet wird. Das lässt darauf zurückführen, dass mit der Treiberdatei ggf. Daten von der Festplatte gelöscht\r\nwerden sollen.\r\nInteressant ist, dass VeriSign in dieser Datei ein Rolle spielt. Es ist auch möglich eine Datei unter dem Link\r\nhttp://csc3-2010-crl.verisign.com/CSC3-2010.crl herunterzuladen, die Stand jetzt mir keine Erkenntnisse liefert.\r\nAuf eine Analyse des Kommandos objdump verzichte ich hier mangels Zeit, wie bei Hermetic Wiper. Ich hoffe\r\nich kann eine Analyse im Rahmen meiner Studienarbeit nachliefern. Interessant ist, dass die Disassemblierung\r\nzwei Sektionen erzeugt: .text und INIT.\r\nChecksummen der Teriberdatei\r\nmd5 - 6106653b08f4f72eeaa7f099e7c408a4\r\nsha1 - 0e84aff18d42fc691cb1104018f44403c325ad21\r\nDie Checksummen sind bisher (25.02.2022 11:27 Uhr) weitgehend unbekannt. Bei VirusTotal schlagen erst drei\r\nvon 71 Scannern an. Siehe Bild\r\nhttps://www.englert.one/hermetic-wiper-reverse-code-engineering\r\nPage 9 of 10\n\nVirustotal Bekanntheit der erzeugten .sys Datei am 2022-02-25 09:32:49 UTC\r\nDynamische Analyse der erzeugten Treiberdatei\r\nDas Verhalten nach der Ausführung der Treiberdatei ist relativ flott erklärt: Das System ist kaputt. Dabei werden\r\nvermutlich alle Daten der Festplatte inkl. MBR gelöscht. Eine Analyse mittels any.run ist leider nicht möglich, da\r\ndas System crasht. Ich werde, falls es im Rahmen meiner Studienarbeit mit einer anderen Sandbox anaylsiert wird,\r\ndie Erkenntnisse teilen.\r\nAny.run crash nach der Ausführung der erzeugten .sys\r\nSource: https://www.englert.one/hermetic-wiper-reverse-code-engineering\r\nhttps://www.englert.one/hermetic-wiper-reverse-code-engineering\r\nPage 10 of 10",
	"extraction_quality": 1,
	"language": "DE",
	"sources": [
		"Malpedia"
	],
	"origins": [
		"web"
	],
	"references": [
		"https://www.englert.one/hermetic-wiper-reverse-code-engineering"
	],
	"report_names": [
		"hermetic-wiper-reverse-code-engineering"
	],
	"threat_actors": [],
	"ts_created_at": 1775791308,
	"ts_updated_at": 1775826759,
	"ts_creation_date": 0,
	"ts_modification_date": 0,
	"files": {
		"pdf": "https://archive.orkl.eu/5d7d6b3b293a491a2af5a4c07831992dc8915c36.pdf",
		"text": "https://archive.orkl.eu/5d7d6b3b293a491a2af5a4c07831992dc8915c36.txt",
		"img": "https://archive.orkl.eu/5d7d6b3b293a491a2af5a4c07831992dc8915c36.jpg"
	}
}