diff --git a/content/blog/2023-12-20-cape-part2.md b/content/blog/2023-12-20-cape-part2.md new file mode 100644 index 0000000..eb54e76 --- /dev/null +++ b/content/blog/2023-12-20-cape-part2.md @@ -0,0 +1,70 @@ +--- +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: + + + +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: + + + +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: + + + +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. + + + +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.