Artikel über Antiforensik in iX 08/2007

iX 08/07In iX 08/2007 ist ein Artikel über Antiforensik- und Antidetektionsmethoden von Angreifern erschienen. Angreifer möchten weder als solche erkannt noch ihrer Taten überführt werden. Aus diesem Grund kommen immer häufiger Verfahren zum Einsatz, die entweder Angriffsspuren verwischen oder gezielt Ermittlungswerkzeuge kompromittieren sollen. Jeder Ermittler oder Sicherheitsspezialist sollte Weiterlesen…

ForensiX-CD veröffentlicht [Update]

Cover ForensiX-CDPlötzlich entwickeln Systeme ein Eigenleben, der Administrator entdeckt unbekannte Prozesse, Anwendungen werden langsamer – der Verdacht kommt auf, dass sich jemand in einen Rechner eingehackt und dort manipuliert hat. Was tun? Mit speziellen Werkzeugen kann man diesen Verdacht erhärten und die Spuren des Einbruchs für polizeiliche Ermittlungen oder gerichtliche Beweisführung sichern. Auf der Heft-CD in iX 07/2007 befindet sich eine Auswahl passender Werkzeuge nebst Anleitung.

Nach meiner Meinung handelt sich hierbei um die derzeit beste Sammlung von Werkzeugen für die Live Response. 😉 Weiterlesen…

Readme zur angepassten Version des Windows Forensic Toolchest (WFT)

Das Windows Forensic Toolchest (WFT) zeichnete sich bereits in der Version 2 durch seinen komfortablen HTML Report aus. In der seit kurzem von Monty McDougal veröffentlichten Version 3 sind viele neue Funktionen integriert worden, die die Durchführung einer Live Response von Windows Systemen erleichtern. Die zwei herausragendsten Neuerungen sind ein interaktiver Modus und die Möglichkeit, die Werkzeuge, die das Incident Response Skript benötigt, aus dem Internet herunterzuladen.

Einige der benötigten Werkzeuge, insbesondere Programme von Microsoft und damit auch Sysinternals, unterliegen Copyrights die ein Weiterverbreiten der Werkzeuge untersagen. Aus diesen Grund ist die beiliegende Heft-CD für die Live Response von Windows Systemen zunächst zu vervollständigen und anschließend die fertige Incident Response CD zu brennen. Wie dazu vorzugehen ist, ist im Folgenden beschrieben.

Da WFT Systemdateien kopiert, dürfen die folgenden Schritte ausschließlich auf einem vertrauenswürdigen System durchgeführt werden! Der Inhalt der CD ist in ein Verzeichnis (im Folgenden %DIR% genannt) auf einen lokalen Datenträger zu kopieren. An der Eingabeaufforderung (cmd.exe) wechseln Sie in das Verzeichnis %DIR%\IR\Windows\WFT. WFT kann die Werkzeuge nicht über einen Proxy beziehen. Ein direkter Internetzugang ist somit Vorausetzung. Der Befehl „wft -fetchtools“ startet den Bezug der Werkzeuge für WFT aus dem Internet bzw. aus dem Systemverzeichnis des vertrauenswürdigen Systems. Im Ergebnis werden neben den noch fehlenden Systemwerkzeugen der verbleibenden Betriebssysteme die folgenden drei Werkzeuge nicht heruntergeladen, wie mit dem Befehl „wft -checkcfg wft.cfg“ überprüft werden kann.

Sysinternals: psuptime.exe
Microsoft: tlist.exe, regdmp.exe

Hier kann man manuell nachhelfen. PsUptime ist nicht mehr verfügbar und die Funktion ist in das Werkzeug PsInfo integriert worden. Regdmp befindet sich im Ressource Kit von Windows 2000 und tlist in den Microsoft Debugging Tools. Welche Werkzeuge von welcher Quelle zu beziehen sind, ist in der aktuellen Version nicht konfigurierbar. Jedoch ist das Vorhandensein aller Werkzeuge auch keine Bedingung für die einwandfreie Funktion von WFT. Eine komfortable Alternative bietet die Verwendung der Live CD Helix. Befindet sie sich zum Zeitpunkt des Aufrufs von „wft -fetchtools“ im Laufwerk, kopiert WFT die Werkzeuge automatisch von der CD.

Die eigentliche Konfiguration von WFT befindet sich in der selbsterklärenden Konfigurationsdatei wft.cfg. Hier lässt sich unter anderem festlegen, welche Werkzeuge wie und unter welchen Voraussetzungen aufzurufen sind. Neue Werkzeuge können problemlos integriert werden. Aufgrund von neuen bzw. aktualisierten Werkzeugen nicht mehr übereinstimmende Prüfsummen, können mit dem Aufruf „wft -fixcfg wft.cfg <Name der neuen cfg> korrigiert werden.

Nachdem der Werkzeugkasten für WFT vorhanden ist, sollte das Verzeichnis %DIR% wieder auf eine CD-ROM gebrannt werden um spätere Manipulationen auszuschließen und die fertige Incident Response CD zu erstellen.

Im Fall der Fälle ist dann für die Sicherstellung der flüchigen Informationen eines Windows Systems die CD in das Laufwerk des verdächtigen Systems zu legen und der interaktive Modus von WFT mit dem Aufruf „\IR\Windows\WFT\wft“ zu starten. Die meisten Fragen können in der Regel mit den Standardeinstellungen beantwortet werden. Das Zielverzeichnis darf nicht auf einem Datenträger des verdächtigen Systems liegen, da dadurch freier Speicherbereich und damit Speicherbereiche mit potentiell evidenten Daten überschrieben werden. Idealerweise werden die Daten auf eine leere externe Festplatte geschrieben.

Entscheidend sind die Fragen nach der Ausführung von Werkzeugen, die eine lange Laufzeit haben und die schreibend auf den verdächtigen Datenträger zugreifen. Schreibzugriffe sollten im Rahmen der Live Response tunlichst vermieden werden. Aus diesem Grund wurde die Standardkonfiguration von WFT so angepasst, dass Werkzeuge, die schreibend zugreifen und Werkzeuge, die für die Sicherstellung aller flüchtigen Daten nicht erforderlich sind, erst durch positive Beantwortung der Frage nach Schreibzugriff ausgeführt werden.

Beide Parameter haben wesentliche Auswirkungen auf die Laufzeit des Skriptes. Sofern beides aktiviert ist, kann die Laufzeit mehr als eine Stunde betragen. Das spiegelt sich ebenfalls in der zu erwarteten Datenmenge wieder, die in diesem Fall bei etwa der zweifachen Größe des Hauptspeichers liegen würde.

Nach dem erfolgreichen Durchlauf von WFT befindet sich im angegebenen Zielverzeichnis der HTML Report index.htm und die Rohdaten der Werkzeuge im Verzeichnis txt. Da WFT in der Grundeinstellung ausschließlich die flüchtigen Daten sicherstellt, sollte das verdächtige System nach Beendigung von WFT umgehend hart ausgeschaltet werden – am besten durch Ziehen des Netzsteckers – und von den Datenträgern ein forensisches Duplikat erstellt werden. Im Rahmen der post mortem Analyse können dann die persistenten Daten untersucht werden. Sofern das System nicht ausgeschaltet werden darf, ist es sinnvoll WFT mit Schreibzugriff und langer Laufzeit auszuführen.

Sebastian Krause <krauseAThisolutionsDOTcom> 2007/05

README zur Benutzung des Incident Response Toolkits V0.21

====================================================

Das Incident Response Toolkit ist zur Sicherstellung der volatilen
Daten eines eingeschalteten Linux-Rechners mit x86-Prozessor unter den
Kernel-Versionen 2.4 und 2.6 gedacht.

Generelle Verfahrensweise:
– Aufnahme der Daten mit Hilfe des Scripts “ir-linux.sh”
Die Daten sollten moeglichst ueber Netz (TCP) auf einen anderen Rechner
geschrieben werden, um moeglichst wenig im Speicher zu aendern.

Notfalls koennen die Daten auch in einer Datei auf einem in das
Filesystem eingehaengten externen Datentraeger (USB-Stick) geschrieben
werden.

– Notfalls koennen haendische Untersuchungen mit Hilfe der statisch
gelinkten Shells und den mitgelieferten Binaries ausgefuehrt werden.

– Nach Aufnahme der Daten sollte der Rechner hart abgeschaltet werden
(Netzstecker ziehen!).

Keinesfalls sollte er per “shutdown” heruntergefahren werden – eventuell
loest der “Power”-Knopf einen geregelten Shutdown aus.

Danach kann dann ein Abzug der Festplatte “offline” erstellt werden
(d.h. durch Ausbau und Lesen durch ein Dritt-System ueber eine
Schreibsperre bzw. notfalls online durch Booten von einem externen
Medium).

WARNUNG
========
Vom Incident Response Script werden nur die minimal noetigen Dateien auf dem
zu untersuchenden Host-System angefasst.

Benoetigte Dateien (nur /dev/null und das /proc-Filesystem):

/dev/null /dev/null _muss_ existieren. Das Script schreibt auf
dieses Device. Leider gibt es keinen portablen Weg,
/dev/null auf der CD-ROM zu integrieren.

Auf Linux hat /dev/null normalerweise Major 1, Minor 3.
$ ls -l /dev/null
crw-rw-rw- 1 root root 1, 3 Dec 12 17:21 /dev/null

Um ein /dev/null zu erstellen:
# mknod /dev/null c 1 3
# chmod 555 /dev/null

(Das Script prueft auf das Vorhandensein von /dev/null)

/proc Ohne das /proc-Filesystem koennen praktisch keine
relevanten Daten aufgenommen werden.

Sollte das /proc-Filesystem nicht eingehaengt sein, kann
es mit folgendem Befehl gemountet werden:
# mount -n -t proc none /proc

Gelesene Dateien:

/dev/mem Diese Device bietet Zugriff auf den physischen Speicher
des Systems. Wenn es nicht existiert, fehlt der Speicher-
auszug (unkritisch). Auf einigen 2.6-Systemen kann sowieso
nur das erste Megabyte des Speicher gelesen werden.

Speicherdumps der einzelnen Prozesse sind trotzdem
moeglich.

/etc/passwd Diese Dateien werden fuer die User-Zuordnung und die
/var/run/utmp Liste der letzten Logins sowie gerade angemeldeten
/var/log/wtmp Benutzer benoetigt.

Bestandteile:
==============
ir-linux.sh Incident-Response-Script zur Aufnahme volatiler Daten
auf dem Zielrechner vor dem Abschalten.

Nimmt die volatilen Daten auf dem System auf und schreibt
die Ergebnisse ueber TCP an den angegebenen Host oder in
eine lokale Ausgabedatei. Die Ausgabedatei sollte
unbedingt auf einem externen Medium mit genuegend
Speicherplatz liegen. Der Speicherbedarf liegt bei
bis zu 2 x (RAM-Groesse) des zu untersuchenden Rechners.

Aufruf (wenn bereits die statische Bash von der CD
laeuft):
./ir-linux.sh <host> <port>
./ir-linux.sh <ausgabedatei>

Aufruf (wenn die Host-Shell laeuft):
bin-x86-2.6/bash ./ir-linux.sh <host> <port>
bin-x86-2.6/bash ./ir-linux.sh <ausgabedatei>

Fuer die Ausgabe auf einem externen Host sollte auf diesem
ein Netcat gestartet werden:
nc -l <port> > <ausgabedatei>
oder
nc -l <port> | tee <ausgabedatei>

start-2.4.sh Startet interaktive “bash” mit dem Pfad
start-2.6.sh “./bin-x86-2.X/bash”. Ignoriert Startup-Dateien
.bashinit (/etc/profile, ~/.bashrc usw.) und vermeidet das Schreiben
der Bash-History in das Home-Directory.

bin-x86-2.4/ Verzeichnis mit statischen Binaries fuer Linux-Systeme
mit 2.4.x-Kernel auf x86-Plattformen.
Die Binaries laufen groesstenteils auch mit hoeheren
Kernel-Versionen.

bin-x86-2.6/ Verzeichnis mit statischen Binaries fuer Linux-Systeme
mit 2.6.x-Kernel auf x86-Plattformen.

tools/ Mit extract.pl koennen die im UUENCODE-Format geschriebenen
extract.pl Speicherdumps aus dem Logfile extrahiert werden.

Aufruf:
…/extract.pl <logdatei>

Alle enthaltenen Dateien werden in das lokale Verzeichnis
geschrieben. Das Script ueberschreibt keine Dateien,
sondern bricht ab, falls Dateien gleichen Namens bereits
vorliegen.

Eine von den UUencode-Daten befreite Logdatei wird mit dem
Namen “<logdatei>.stripped.txt” abgelegt.

Beispiel
===========
Beispiel fuer einen Rechner mit Linux 2.6-Kernel, bei dem die Daten auf
den Logrechner mit der IP 10.2.2.2 auf Port 3333 geschrieben werden sollen.

Auf dem Logrechner:
1. Starten von Netcat zum Loggen in eine Datei:
> $ nc -l 3333 > /…/Ausgabe-Host1.log

Auf dem zu untersuchenden Rechner:
2. CD-ROM-Mounten
Dies geht nur mit dem Systembefehlen des zu untersuchenden Systems bzw.
per Automount.
> # mount -r -n /dev/xxx /mnt/cdrom

3. Starten der statischen Shell:
> # cd /..<pfad zum cdrom>../Linux/IR
> # ./start-2.6.sh
== BASH: /mnt/cdrom/IR/Linux/bin-x86-2.6/bash
== HOME: /mnt/cdrom/IR/Linux/
== PATH: /mnt/cdrom/IR/Linux/bin-x86-2.6
bin-x86-2.6/bash ~ # _

Nun steht eine statisch gelinkte Bash zur Verfuegung, die nur Binaries
aus dem entsprechenden Pfad auf der CD benutzt. Ab jetzt werden keine
Dateien auf dem zu untersuchenden System benutzt.

4. Starten des Scripts
> bin-x86-2.6/bash ~ # ./ir-linux.sh 10.2.2.2 3333
=== Start of ir-linux.sh $Revision: 1.4 $ ===
=== CMD: ./ir-linux.sh 10.2.2.2 3333
=== BASH: /mnt/cdrom/IR/Linux/bin-x86-2.6/bash
=== PATH: /mnt/cdrom/IR/Linux/bin-x86-2.6
=== OUTPUT: remote /dev/tcp/10.2.2.2/3333

Start TCP listener on target host 10.2.2.2 port 3333:
e.g.: # nc -l 3333 | tee logfile.out
> Press Enter to start>

Auf dem Logrechner:
5. Das Logfile ist meistens sehr lang, da Speicherinhalte im UUENCODE-Format
im Log enthalten sind. Mit dem Script “tools/extract.pl” koennen die
Dateien aus dem Log extrahiert werden. Dabei wird auch eine komprimierte
Version des Logfile ohne die Dateiinhalte herausgeschrieben.

> $ …/extract.pl Ausgabe-Host1.log

Hinweis zur Auswertung
=======================

Das Script benutzt fuer die Ausgabe des Prozess-Speichers den “Process Dumper”
von Tobias Klein (http://www.trapkit.de/research/forensic/pd/). Dieses Tool
hat gegenueber “pcat” den Vorteil, das es die Meta-Daten zum Prozess in einem
maschinenlesbaren Format mit abspeichert und so eine einfache Auswertung
erlaubt.

Die Auswertung des Prozessspeichers kann allerdings nur mit dem
Windows-basierten “Memory Parser (MMP)” vom selben Autor erfolgen. Dieses Tool
ist ebenfalls auf der CD enthalten.

Enno Ewers <ewersAThisolutionsDOTcom> 2007/05

Listing ForensiX-CD 07/2007

Forensik-Software

Ausgewählte Tools für Linux/Unix und Windows

  • FileAlyzer
  • RunAlyzer
  • X-Ways Trace
  • foremost
  • Ontrack Easyrecovery Datarecovery
  • Ontrack Easyrecovery Professional Filerecovery
  • PC Inspector Smart Recovery
  • scalpel
  • testdisk & photorec
  • fatback
  • Paraben-Forensics E-Mail-Examiner
  • Autopsy
  • Sleuthkit
  • ssdeep
  • SSDeepFE
  • sha1deep & sha256deep & md5deep
  • sha1sum
  • WinHex
  • explore2fs
  • Ext2IFS_1_10c
  • dd
  • LiveView
  • MountImagePro
  • Virtual Forensic Computing
  • dcfldd
  • dd_rescue
  • mmp
  • PTFinderFE
  • pd
  • volatools
  • chaosreader
  • ngrep
  • nstreams
  • tcpflow
  • tcpxtract
  • tshark
  • FTK
  • DCode
  • unxuils

Incident Response

Tools für Linux

  • arp
  • cat
  • date
  • df
  • dmesg
  • grep
  • hostname
  • ifconfig
  • last
  • ls
  • lsof
  • lspci
  • netstat
  • printenv
  • ps
  • rpcinfo
  • sysctl
  • uname
  • uptime
  • w
  • who
  • extract.pl
  • ir-linux.sh

Tools für Windows

  • WinAudit
  • cryptcat
  • nc
  • putty
  • FTimes
  • lads
  • TaskMan
  • ScreenHunter
  • WFT

Anti-Rootkit-Tools

Werkzeuge zum Entdecken und Entfernen von Rootkits für Linux/Unix, Mac OS X und Windows

  • Root Kit Hunter
  • chkrootkit
  • Rootkit Hunter
  • Rootkit Profiler
  • Zeppoo
  • Panda Antirootkit
  • AVG
  • Avira
  • Darkspy
  • F-Secure Blacklight
  • Helios und Helios Lite
  • ICESword
  • Trend Micro
  • Sophos
  • System Virginity Verifier
  • UnHackMe


Forensik CD aus iX 07/2007

ForensiX CD 07/2007

ForensiX-CD: Hilfe bei Systemeinbrüchen

Plötzlich entwickeln Systeme ein Eigenleben, der Administrator entdeckt unbekannte Prozesse, Anwendungen werden langsamer – der Verdacht kommt auf, dass sich jemand in einen Rechner eingehackt und dort manipuliert hat. Was tun? Mit speziellen Werkzeugen kann man diesen Verdacht erhärten und die Spuren des Einbruchs für polizeiliche Ermittlungen oder gerichtliche Beweisführung sichern. Auf der Heft-CD befindet sich eine Auswahl passender Werkzeuge nebst Anleitung.

Meine Kollege Sebastian Krause hat die Werkzeugsammlung zusammengetragen, während Enno Ewers endlich ein robustes Skript zum Sammeln flüchtiger Daten unter Linux erstellt hat, welches auch die strukturierte Sicherung des Hauptspeichers ermöglicht (siehe unten).

Kontakt: forensix at computer-forensik dot org

ForensiX-CD Skripte

ForensiX-CD Linux Incident Response Skript

ForensiX-CD Linux Incident Response Readme

ForensiX-CD Linux Incident Response Build Script für statische Binaries

ForensiX-CD angepasste Konfiguration für Windows Forensic Toolchest (WFT)

ForensiX-CD Windows Forensic Toolchest Readme

nach Erscheinen der ForensiX-CD aktualisierte Werkzeug

Windows Forensic Toolchest (WFT) Version 3.0.0.1

ForensiX-CD Grafiken

ForensiX-CD Cover

ForensiX-CD Label

ForensiX-CD Inhaltsverzeichnis

  • WFT – Windows Forensic Toolchest
    CD-Image zur Computeruntersuchung erstellen.
    Bitte vorher genau die Anleitung lesen!
  • Incident Response Script für Linux
    Eine Adaption des WFT für Linux, um einen Linux-Rechner bei Einbruchsverdacht live zu untersuchen.
    Bitte auch hier unbedingt die Anleitung lesen!
  • Forensik-Software
    Ausgewählte Tools für Linux/Unix und Windows
  • Incident Response
    Tools für Linux und Windows
  • Anti-Rootkit-Tools
    Werkzeuge zum Entdecken und Entfernen von Rootkits für Linux/Unix, Mac OS X und Windows
  • Computer-Forensik. Systemeinbrüche erkennen, ermitteln, aufklären (PDF)
    Auszüge aus dem deutschsprachigen Standardwerk zum Thema Forensik.
    Autor: Alexander Geschonneck; Verlag: dpunkt; 2. Auflage 2006

ForensiX-CD Version 0.2 ISO-Image

Download (SHA1 5165b45c0e475a14b01175d682add38be7842616)

Forensik-Werkzeug Artikel in iX 03/2006

ix 03/06 Im Rahmen der Titelgeschichte zum Thema „Dateisystemforensik und Datenrettung“ habe ich in der ix 03/2006 einen Artikel veröffentlicht, der sich mit der Leistungsfähigkeit von kommerziellen Forensik-Tools beschäftigt. Im Rahmen dieser Betrachtung wurden grundsätzliche Anforderungen an Open und Closed Source Forensik-Tools beschrieben und wie diese letztendlich auch vor Gericht zu bewerten sind.

Ergänzung: 2006-03-02 um 11:34:51: In den Artikel hat sich der Fehlerteufel eingeschlichen. Die URL zum Download des Testimages der lautet [wpdm_package id=’1694′]