LokiBot — RTF malware analysis

Static analysis result for SHA-256 cf8b55ecba496fbb…

MALICIOUS

RTF

1.38 MB Authoring application: Riched20 6.3.9600 First seen: 2019-04-18
MD5: f24f89932507c2c5aeecee0a8d0f6276 SHA-1: 3067d8629a7b07ca29ab611579b0be9d9ee8c6a8 SHA-256: cf8b55ecba496fbb264a653fb32520f7bac7d1bd04838f9d3ba09a594dd7c28c
520 Risk Score

Malware Insights

LokiBot · confidence 95%

MITRE ATT&CK
T1203 Exploitation for Client Execution T1566.001 Spearphishing Attachment

The RTF document contains embedded OLE objects, specifically exploiting the Equation Editor vulnerability (CVE-2017-11882) to execute arbitrary code. Static analysis detected a PE header within the hex-encoded data, indicating a packed or obfuscated payload. ClamAV identified the file as Win.Dropper.LokiBot, suggesting its purpose is to download and execute further malicious components.

Heuristics 11

  • Equation Editor CLSID critical CVE likely RTF_EQUATION_EDITOR
    Equation Editor OLE CLSID found inside an OLE object — exploited by CVE-2017-11882 / CVE-2018-0802 / CVE-2018-0798
  • CVE-2017-11882 — Equation Editor FONT record overflow critical CVE likely CVE_2017_11882
    Equation Editor MTEF contains an overlong FONT typeface field, the vulnerable copy primitive for CVE-2017-11882. This is stronger evidence than the Equation Editor CLSID alone because it identifies the malformed record that drives code execution in EQNEDT32.EXE.
  • ClamAV: Win.Dropper.LokiBot-9957036-0 critical CLAMAV_DETECTION
    ClamAV detected this file as malware: Win.Dropper.LokiBot-9957036-0
  • PE header (with DOS stub) in hex data critical RTF_MZ_HEX
    Hex-encoded PE (MZ + DOS stub) found inside RTF — likely an embedded executable payload
  • \objupdate forces OLE activation high RTF_OBJUPDATE
    RTF contains \objupdate — forces automatic OLE object instantiation when the document is opened, bypassing user interaction. Almost exclusively seen in Equation Editor exploit documents.
  • Package object class high RTF_OBJCLASS_PACKAGE
    OLE Package object — can wrap arbitrary files
  • Large hex data blocks in OLE object high RTF_EXCESSIVE_HEX
    RTF contains ~1435KB of hex-encoded data inside \objdata sections — may hide a payload
  • Suspicious extracted artifact high EXTRACTED_FILE_STATIC_TRIAGE
    One or more files extracted from inside this sample matched static suspicious-content checks such as script obfuscation, encoded payload blobs, packed data, or execution/download terms.
  • OLE object data medium RTF_OBJDATA
    RTF contains 3 \objdata section(s) — embedded OLE objects
  • Embedded OLE object medium RTF_OBJEMB
    RTF contains \objemb — embedded OLE object
  • OlePres presentation stream in RTF OLE object medium RTF_OLEPRES_STREAM
    RTF contains an embedded OLE object with an OlePres presentation stream. OlePres is an OLE presentation marker and is not enough on its own to identify CVE-2025-21298.

Extracted artifacts 3

Files carved from inside the sample during analysis.

FilenameKindSourceSize
objdata_00_off000000ef.bin rtf-objdata-decoded RTF \objdata at offset 0xEF 717507 bytes
SHA-256: 4afdb7ba5d822d95a4493b474e23da84d9bfa8d17a9bdcf3501b044f6978c338
Detection
ClamAV: Win.Dropper.LokiBot-9957036-0
Obfuscation or payload: likely
Static shellcode analysis found candidate code region(s). Indicators: SC_MSF_REVERSE, SC_STR_VIRTUALALLOC, SC_STR_LOADLIBRARY Static shellcode analysis recovered API/import strings: LoadLibraryExA, VirtualAlloc, GetProcAddress, ExitProcess, kernel32.dll, KERNEL32.DLL
objdata_01_off0015e6c4.bin rtf-objdata-decoded RTF \objdata at offset 0x15E6C4 3980 bytes
SHA-256: 709e7548187026e0fde55caafb5b7d8101194ce4f48136864fe15f750dc39678
Detection
ClamAV: No threats found
Obfuscation or payload: likely
Static shellcode analysis recovered command string(s): cmd.exe /c%tmp%\69.exe &��D$,f-Q���%
objdata_02_off0016090a.bin rtf-objdata-decoded RTF \objdata at offset 0x16090A 3546 bytes
SHA-256: 71e896096504b80659c0f5c60d79e09818a0128638e4b781a41f71c4dd3468aa
Detection
ClamAV: No threats found
Obfuscation or payload: likely
Static shellcode analysis recovered command string(s): cmd.exe /c%tmp%\69.exe A C