www-jmbit-de/content/blog/2023-12-20-cape-part2.md

71 lines
3.8 KiB
Markdown
Raw Normal View History

2023-12-20 15:57:19 +01:00
---
title: "CAPEv2 Sandbox Teil 2: Einrichtung der VM(s)"
date: 2023-12-20T14:41:12+01:00
draft: true
---
Nach der Installation der Sandbox-Umgebung an sich kann man an die Erstellung und Installation der VMs gehen.
Hier werde ich als Beispiel die Installation einer Windows 7 64bit-VM inkl. Microsoft Office 2010 (32bit) durchführen.
Letztendlich gibt es jedoch keinen großen Unterschied zwischen den unterstützten Gast-Betriebssystemen (Windows 7+,
MacOS oder diverse Linux-Distributionen), es ist jedoch je nach Platform mehr oder weniger Aufwand (Bei Windows 10+
muss Defender komplett deaktiviert werden und es empfiehlt sich den Großteil der Bloatware zu deinstallieren um die
Hardwareanforderungen zu verringern).
Hier ist ein Beispiel der Software, die ich auf meine Windows 7-VM installiere. Der Einfachheit halber packe ich die
Dateien alle zusammen in eine ISO-Datei (mithilfe von mkisofs), die ich dann an die VM anhängen kann. Ebenfalls
interessant ist es, wenn man zusätzlich zu Software auch Dokumente und Bilder auf der VM ablegt, um eventuelles
Ransomware-Verhalten besser beobachten zu können. Das Skript `disable_win7noise.bat` wird mit CAPEv2 ausgeliefert.
```
~ $ ls isos/win7cuckoo
7z2301-x64.exe OpenJDK8U-jre_x64_windows_hotspot_8u392b08.msi windows6.1-kb2533552-x64_0ba5ac38d4e1c9588a1e53ad390d23c1e4ecd04d.msu
agent.py python-3.8.10.exe windows6.1-kb2533623-x64.msu
disable_win7noise.bat VC_redist.x64.exe windows6.1-kb976932-x64_74865ef2562006e51d7f9333b4a8d45b7a749dab.exe
ndp48-x86-x64-allos-enu.exe VC_redist.x86.exe Win_x64_576753_mini_installer.exe
```
Aufgrund der Weise, wie CAPEv2 funktioniert, muss der VM eine statische IP-Addresse vergeben werden:
<!-- TODO Bild Einfügen -->
Diese IP-Addresse muss dann später in der `/opt/CAPEv2/conf/kvm.conf` eingetragen werden.
Ebenfalls sollten UAC und die Windows Firewall deaktiviert werden:
<!-- TODO Bilder Einfügen -->
In der Regel setze ich die Auflösung der VM auch hoch, entweder auf 1280x768 oder 1920x1080. Für die Aktivierung von
Windows 7 und Office 2010 muss leider - sofern man keinen KMS Server besitzt, den man diesen VMs aussetzen möchte - die
Telefonische Aktivierung verwendet werden.
Bei der Installation von Python und MS-Office ist es wichtig, die 32-Bit-Variante zu verwenden, da die 64Bit-Variante
leider nicht mit allen Analyseverfahren kompatibel ist.
Sobald Python installiert (am besten im PATH registrieren und für alle Benutzer installieren)
ist sollte noch Pillow nachinstalliert werden:
```
> py -m pip install --upgrade pip
> py -m pip install Pillow==9.5.0
```
`agent.py` ist der Teil der Software, der in der VM mitläuft um die Aufgaben dort auszuführen. Dieser Datei gibt man
unter Windows 7 einen Unauffälligen Namen und legt sie unter
`C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp` ab, unter Linux lässt man sie entweder von systemd oder
cron beim (re)boot starten. Unter Windows 10/11 muss die Datei an einem anderen Ort abgelegt werden und dann ein
Scheduled Task erstellt werden, der dieses Skript beim Boot als Admin ausführt. Langfristig habe ich geplant, den Agent
und seine Dependencies mit PyInstaller zusammenzufassen.
Falls die Installation des Agents erfolgreich war, kann man nun auf port 8000 der VM einen JSON-String sehen:
<!-- BILD EINFÜGEN -->
Letztendlich ist noch zu empfehlen die Grafik auf VNC umzustellen von Spice und dadurch nicht mehr benötigte Geräte
zu entfernen. Dabei muss jedoch ein teil des XML-Codes der VM bearbeitet werden.
<!-- Bild einfügen -->
Diese Änderungen machen es möglich, später die Liveansicht im Webbrowser zu verwenden.
Sobald die VM fertig konfiguriert ist und der Agent erreichbar ist, muss nur noch im laufenden Zustand ein Snapshot
erstellt werden.