Malicious Office (OLE) — malware analysis report

Static analysis result for SHA-256 94b26003699efba5…

MALICIOUS

Office (OLE)

123.0 KB Created: 2006-09-13 11:21:00 Authoring application: Microsoft Excel First seen: 2019-12-10
MD5: 04597dfeed0343bcef0e4f03346c030b SHA-1: 7414fc8e27876d80f1ef94bf7ed5a9f2deac4440 SHA-256: 94b26003699efba54ced98006379a230d1154f340589cc89af7d0cbedb861a53
260 Risk Score

Malware Insights

MITRE ATT&CK
T1059.005 Visual Basic T1203 Exploitation for Client Execution

The file contains critical heuristics indicating the presence of Excel 4.0 macros, specifically an Auto_Open macro that utilizes dangerous functions like RUN. ClamAV also detected it as 'Xls.Dropper.Agent-7482882-0'. The document body, though in Chinese, lists industrial materials, likely serving as a lure for a macro-based attack. The presence of Auto_Open and dangerous functions strongly suggests the macro is designed to execute a payload.

Heuristics 5

  • ClamAV: Xls.Dropper.Agent-7482882-0 critical CLAMAV_DETECTION
    ClamAV detected this file as malware: Xls.Dropper.Agent-7482882-0
  • Excel 4.0 Auto_Open defined name critical OLE_XLM_AUTOOPEN_DEFINEDNAME
    oletools recovered an Auto_Open / Auto_Close entry from an Excel 4.0 macro sheet. The raw BIFF name can be tokenized or partially opaque to byte-string checks, but the recovered macro listing confirms the workbook has an XLM auto-execution entry.
  • XLM Auto_Open with dangerous formula APIs critical OLE_XLM_DANGEROUS_FN
    Excel 4.0 macro sheet contains an Auto_Open / Auto_Close entry and dangerous XLM formula APIs that can invoke programs, write files, or transfer control without VBA.
  • Legacy Excel formula macro virus marker critical OLE_XLS_FORMULA_MACRO_VIRUS
    Workbook stream contains self-identifying legacy Excel formula macro virus markers. This indicates the document carries formula macro virus content even when no VBA project or modern XLM macro-sheet structure is present.
  • Excel 4.0 (XLM) macro sheet present medium OLE_XLM_AUTOOPEN
    Workbook contains an Excel 4.0 macro sheet sub-stream — XLM is rarely seen in modern legitimate workbooks and was a major Office malware vector during 2020-2022.

Extracted artifacts 1

Files carved from inside the sample during analysis.

FilenameKindSourceSize
xlm_macros.txt xlm-macro oletools.olevba.extract_all_macros (XLM macro listing) 147124 bytes
SHA-256: 352f5d5f1f739f97bc808619ba1e5d36a8bb33987a9b76f20d0f9ec441a9d42c
Preview script
First 1,000 lines of the extracted script
' 0085     16 BOUNDSHEET : Sheet Information - worksheet or dialog sheet, visible -  ÷‹:
' 0085     14 BOUNDSHEET : Sheet Information - worksheet or dialog sheet, visible -  Sheet
' 0085     16 BOUNDSHEET : Sheet Information - Excel 4.0 macro sheet, hidden -  XL4Popp
' 0018     27 LABEL : Cell Value, String Constant - built-in-name 13 ? hidden len=11 ptgArea3d  *INCOMPLETE FORMULA PARSING* Remaining, unparsed expression: b'\x00\x00\x00\x00\x04\x01\x06\x00\x06\x00'
' 0018     23 LABEL : Cell Value, String Constant - built-in-name 2 Auto_Close len=7 ptgRef3d 8!C4 
' 0018     23 LABEL : Cell Value, String Constant - built-in-name 1 Auto_Open len=7 ptgRef3d 8!C4 
' 0018     26 LABEL : Cell Value, String Constant - Bust len=7 ptgRef3d 8!C31 
' 0018     30 LABEL : Cell Value, String Constant - Continue len=7 ptgRef3d 8!C9 
' 0018     66 LABEL : Cell Value, String Constant - Document_array len=8 ptgArrayA  *INCOMPLETE FORMULA PARSING* Remaining, unparsed expression: b'\x01\x00\x00\x08\x88\x1e\x07'
' 0018     41 LABEL : Cell Value, String Constant - Documents_array len=11 ptgArea3d  *INCOMPLETE FORMULA PARSING* Remaining, unparsed expression: b'\x08\x00\x00\x00\x0f\x00\x01\x00\x01\x00'
' 0018     27 LABEL : Cell Value, String Constant - Hello len=7 ptgRef3d 8!A15 
' 0018     28 LABEL : Cell Value, String Constant - MakeIt len=7 ptgRef3d 8!A26 
' 0018     29 LABEL : Cell Value, String Constant - Morning len=7 ptgRef3d 8!C39 
' 0018     27 LABEL : Cell Value, String Constant - Poppy len=7 ptgRef3d 8!C27 
' 0018     27 LABEL : Cell Value, String Constant - built-in-name 6 ? len=11 ptgArea3d  *INCOMPLETE FORMULA PARSING* Remaining, unparsed expression: b'\x07\x00\x01\x00&\x00\x00\x00\x03\x00'
' 0018     39 LABEL : Cell Value, String Constant - Print_Area_MI len=11 ptgArea3d  *INCOMPLETE FORMULA PARSING* Remaining, unparsed expression: b'\x03\x00\x00\x00[\x00\x00\x00\r\x00'
' 0018     27 LABEL : Cell Value, String Constant - built-in-name 7 ? len=11 ptgArea3d  *INCOMPLETE FORMULA PARSING* Remaining, unparsed expression: b'\x00\x00\x02\x00\x02\x00\x00\x00\xff\x00'
' 0018     28 LABEL : Cell Value, String Constant -  'Y len=7 ptgSheet  *INCOMPLETE FORMULA PARSING* Remaining, unparsed expression: b'Ype:\x05\x00'
' 0018     36 LABEL : Cell Value, String Constant -  USMO len=11 ptgMemAreaNA  *INCOMPLETE FORMULA PARSING* Remaining, unparsed expression: b'\x00e\x00w\x00;\x01\x00\x02\x00'
' 0018     24 LABEL : Cell Value, String Constant -   len=7 *UNKNOWN TOKEN* 0x007f *INCOMPLETE FORMULA PARSING* Remaining, unparsed expression: b'\x99:\x02\x00\x13\x00'
' 0018     28 LABEL : Cell Value, String Constant -  ޘ len=7 *UNKNOWN TOKEN* 0x00c7 *INCOMPLETE FORMULA PARSING* Remaining, unparsed expression: b'\x8fwm:\x06\x00'
' 0018     24 LABEL : Cell Value, String Constant -   len=7 ptgSub *UNKNOWN TOKEN* 0x00c8 *INCOMPLETE FORMULA PARSING* Remaining, unparsed expression: b"<\x04\x00''"
' 0018     34 LABEL : Cell Value, String Constant -  üÈÝЬ len=7 *UNKNOWN TOKEN* 0x00c0 *INCOMPLETE FORMULA PARSING* Remaining, unparsed expression: b'\xc5\xc5\xf8\xbc\x80\xbd'
' 0018     34 LABEL : Cell Value, String Constant -   Ìl­¬ len=7 *UNKNOWN TOKEN* 0x00c0 *INCOMPLETE FORMULA PARSING* Remaining, unparsed expression: b'\xc5\xc5\xf8\xbc\x80\xbd'
' 002a      2 PRINTHEADERS : Print Row/Column Labels
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : 
... (truncated)