Qbot — Office (OOXML) / .XLSX malware analysis

Static analysis result for SHA-256 61cd7e4ac402d989…

MALICIOUS

Office (OOXML) / .XLSX

29.5 KB Created: 2006-09-16 00:00:00 UTC Authoring application: Microsoft Excel 14.0300
MD5: b96cad7135bafbbc0063e90aec104847 SHA-1: eede4b3e6fa4eafe84a90ed306a1afce30f58489 SHA-256: 61cd7e4ac402d989dfcd215e8029ace4d464e5fa0ca3004008a6de30c34e1d38
302 Risk Score

Malware Insights

Qbot · confidence 95%

MITRE ATT&CK
T1059.005 Visual Basic T1204.002 Malicious File T1105 Ingress Tool Transfer

The file contains Excel 4.0 macros, identified by the OOXML_XLM_MACROSHEET heuristic. These macros include WinAPI and download strings, specifically referencing functions like DownloadToFileA and ShellExecuteA, and reassemble a payload from CHAR() and split formulas. The macros also reconstruct URLs, including 'https://oifg.org/ds/08.gif', which are used to download and execute a second-stage payload. The ClamAV detection as 'Xls.Dropper.QbotDocu12020-9818439-0' strongly suggests the Qbot family.

Heuristics 6

  • Excel 4.0 macro sheet (1 sheet(s)) critical 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. The macro sheet is stored as XLSB/BIFF12 binary content, which many XML-only OOXML scanners miss.
  • Binary XLM macro sheet with WinAPI/download strings critical OOXML_XLM_BINARY_WINAPI_STRINGS
    Excel 4.0 macro sheet is stored as BIFF12/XLSB binary data and contains Win32 download or process-execution API strings such as URLDownloadToFileA, ShellExecuteA, or CreateDirectoryA. These strings are high-signal in XLM macro sheets and catch payload-download macros that XML-formula scanners cannot parse.
  • XLM payload reassembled from CHAR()/split formulas critical OOXML_XLM_REASSEMBLED_PAYLOAD
    An Excel 4.0 macro sheet builds its payload inside the formula token stream by concatenating per-character CHAR() calls and string fragments, so no WinAPI name, shell command, or URL is ever contiguous in the .bin for a literal-bytes scan to find. Reassembling the formulas recovered download/execute API names, LOLBin commands (regsvr32/rundll32/mshta/wmic/powershell), or a payload URL — the de-obfuscated download-and-run kill chain.
  • URL reconstructed from XLM cell array (2 URLs) critical OOXML_XLM_CELL_ARRAY_URL
    Excel 4.0 macro sheet stages its payload URL across individual numeric cells (one ASCII charcode per cell) or inside an embedded HTA that uses VBScript Chr()/&-concat obfuscation. The reconstructed URL is invisible to literal-bytes URL extraction because it is never contiguous in the workbook stream. URLs were recovered by walking the BIFF12 record stream of every worksheet and macrosheet part and decoding RK/inline-string cells in both row-major and column-major order.
  • ClamAV: Xls.Dropper.QbotDocu12020-9818439-0 critical CLAMAV_DETECTION
    ClamAV detected this file as malware: Xls.Dropper.QbotDocu12020-9818439-0
  • 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 https://oifg.org
    • https://oifg.org/ds/08.gif

Extracted artifacts 1

Files carved from inside the sample during analysis.

FilenameKindSourceSize
xlm_sheet_00.bin
3934081b8955f15a58b826a6e1e5bf2ef44ad02955d3e13d3aacd2e6044ec952
xlm-macrosheet OOXML XLM macro sheet: xl/macrosheets/intlsheet1.bin 197345 bytes