$ fsstat partition_1.dd
[...]
METADATA INFORMATION
--------------------------------------------
First Cluster of MFT: 262144
First Cluster of MFT Mirror: 2
Size of MFT Entries: 1024 bytes
Size of Index Records: 4096 bytes
Range: 0 - 16832
Root Directory: 5
[...]
$ fsstat partition_1.dd
[...]
METADATA INFORMATION
--------------------------------------------
First Cluster of MFT: 262144
First Cluster of MFT Mirror: 2
Size of MFT Entries: 1024 bytes
Size of Index Records: 4096 bytes
Range: 0 - 16832
Root Directory: 5
[...]
Wie lässt sich mittels dd ein 10 Byte langes Passwort in den letzten 10 Byte des MFT-Eintrags der $MFT verstecken? Wie lautet dieser Befehl fur $MFTMirr?
Zunächst schauen wir uns die letzten Bytes des MFT-Eintrags an, um später die Ergebnisse nachvollziehen zu können.
Die letzten beiden Bytes des MFT-Eintrags sind bereits belegt. Diese dürfen wir nicht verändern, daher überspringen wir nun 1073742836 Bytes (262144*4096+1012).
Das Kopieren war also erfolgreich. Für $MFTMirr müssten wir den Offset lediglich weitere 1024 Byte weiterschieben, um die Änderung dort ebenfalls vorzunehmen.
Wie lassen sich die ersten 100 MFT-Einträge herausschreiben?
Hierfür müssen wir zunächst bestimmen, wie groß ein MFT-Eintrag ist. Die Information dazu steht am Offset 64 im MFT.
$ xxd -skip 64 -l 1 partition_1.dd \n0000040: f6
Als Dezimalzahl würde dies 246 bedeuten. Das macht auf den ersten Blick keinen großen Sinn. Nach einer kurzen Recherche hat sich ergeben, dass diese Zahl vorzeichenbehafted (signed) ist und daher erstmal umgewandelt werden muss. Hierfür invertieren wir alle Bits und addieren 1 darauf. Danach verwenden wir das Resultat als Exponent für 2n, um die Eintragsgröße zu ermitteln.
11110110 → 00001001
00001001 + 1 = 00001010
00001010 = 10
210 = 1024 Byte
Wir wissen nun, dass ein Record 1024 Byte groß sein muss. Für dd bedeutet dies, dass wir 102400 Byte herausschreiben müssen für 100 Records.
NTFS ermöglicht sogenannte Alternate Data Streams (ADS). Mit dieser Funktion können Daten vom Benutzer unsichtbar fest an eine Datei gebunden gespeichert werden. An jede Datei können beliebig viele andere Dateien angehängt werden, die nicht sichtbar sind, aber – solange der Vorgang innerhalb von NTFS-Laufwerken stattfindet – zusammen mit der Datei verschoben und kopiert werden. Der Zugriff auf die versteckten Dateifragmente findet mit einem Doppelpunkt statt: beispiel.txt:meinedatei.txt kennzeichnet einen zu der Datei beispiel.txt gehörigen Datenstrom namens meinedatei.txt. Neben Dateien können auch Ordner zusätzliche Datenströme enthalten..https://de.wikipedia.org/wiki/Alternativer_Datenstrom
Wie lasst sich unter Zuhilfenahme des Sleuthkit herausfinden, ob eine Datei einen ADS verwendet?
Mit fls können wir uns alle Dateien auf dem Dateisystem anzeigen lassen. Ein ADS ist am Doppelpunkt zwischen den Dateinamen zu erkennen. Beispielhaft suchen wir nun nach einer Datei, die auf g endet und einen ADS besitzt.
Wollen wir uns den Inhalt des ADS ansehen, müssen wir diesen über die Metadata Address ansprechen. Die 7821 steht für die Inode, die 128 für den Attribute Type und die 5 für eine einzigartige ID.
When a file’s attributes can fit within the MFT file record, they are called resident attributes. For example, information such as filename and time stamp are always included in the MFT file record. When all of the information for a file is too large to fit in the MFT file record, some of its attributes are nonresident. The nonresident attributes are allocated one or more clusters of disk space elsewhere in the volume.http://ntfs.com/ntfs-files-types.htm
Wenn die Attribute einer Datei kleiner als 700KiB sind, werden sie im MFT Record abgelegt. Sollten sie nicht mehr in den Record passen, werden sie als nonresident gekennzeichnet und werden anderweitig abgelegt. Zugriffe auf solche Attribute erzeugen folglich Performanzverluste.
Welche Bedeutung hat das Attribut $LOGGED_UTILITY_STREAM?
The $LOGGED_UTILITY_STREAM Attribute: Type 0x100 — layout and treatment is similar to $DATA attribute. Every EFS encrypted file will have this attribute to store the file encryption key used during encryption/de.http://www.c-jump.com/bcc/t256t/Week04NtfsReview/W01_0500_the_loggedutilitys.htm
Dieses Attribut wird scheinbar von einem Encrypting File System (EFS) genutzt, um darin die verwendeten Schlüssel während der Verschlüsselung abzulegen. Folglich besitzt jede verschlüsselte Datei dieses Attribut.
Ist Cluster 45904 alloziert?
Die Informationen zu den allozierten Clustern können wir $Bitmap entnehmen. Dafür brauchen wir aber noch etwas mehr Hintergrundwissen.
This file keeps track of all of the used and unused clusters on an NTFS volume. Each bit in the Bitmap represents 1 cluster, if that bit is “1” then the cluster is in use. For example if a byte in the BitMap is “F”, this means that 4 clusters are in use as F (hex) = 1111 in binary.https://whereismydata.wordpress.com/2009/06/01/forensics-what-is-the-bitmap/
Dank dieser Information wissen wir nun, dass jedes Bit ein Cluster repräsentiert. In der Binärdarstellung eines Bytes steht ganz rechts das kleinste Cluster und links das größte Cluster.
0xfe entspricht wird binär als 11111110 dargestellt. Gemäß unserer Definition steht rechts das kleinste Cluster. Cluster 45904 ist daher nicht alloziert.
Anwendungsforensik
In dieser Aufgabe sollen Sie ein paar Fragen zur Windows Registry beantworten. Bitte verwenden Sie im Folgenden partition_1.dd.
Welche Anwendungen werden beim Start des Systems aufgerufen?
Microsoft beschreibt, dass Informationen zum Autostart an den folgenden Stellen in der Registry gefunden werden kann.
List of common autorun locations: HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Run HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServicesOnce HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Explorer\Run HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Terminal HKLM\SOFTWARE\Microsoft\Active Setup\Installed Components HKLM\SOFTWARE\Wow6432Node\Classes\*\ShellEx\ContextMenuHandlers HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Browser Helper Objects HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Explorer\Browser Helper Objects HKLM\System\CurrentControlSet\Services HKLM\System\CurrentControlSet\Control\Terminal Server HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce.https://support.microsoft.com/de-de/kb/2647300/de
Mithilfe von regripper werten wir die Registry aus.
user_run v.20130329
(NTUSER.DAT) [Autostart] Get autostart key contents from NTUSER.DAT hive
Software\Microsoft\Windows\CurrentVersion\Run
CTFMON.EXE: C:\WINDOWS\system32\ctfmon.exe
Skype: "C:\Program Files\Skype\Phone\Skype.exe" /minimized /regrun
SSS15 Browser Monitor: "C:\Program Files\Steganos Privacy Suite 15\SteganosBrowserMonitor.exe"
recentdocs v.20100405
(NTUSER.DAT) Gets contents of user's RecentDocs key
RecentDocs
**All values printed in MRUList\MRUListEx order.
Software\Microsoft\Windows\CurrentVersion\Explorer\RecentDocs
LastWrite Time Sun Mar 30 17:38:32 2014 (UTC)
1 = Startup
0 = Microsoft .NET Framework v4 - Slow Windows XP Boot Fix.vbs
3 = My Pictures
9 = 4.jpeg
8 = 3.jpeg
7 = 2.jpeg
5 = index.jpeg
6 = Edoofy.jpeg
4 = images.jpeg
2 = imgres.htm
Software\Microsoft\Windows\CurrentVersion\Explorer\RecentDocs\.htm
LastWrite Time Sun Mar 30 17:08:51 2014 (UTC)
MRUListEx = 0
0 = imgres.htm
Software\Microsoft\Windows\CurrentVersion\Explorer\RecentDocs\.jpeg
LastWrite Time Sun Mar 30 17:15:37 2014 (UTC)
MRUListEx = 5,4,1,3,2,0
5 = 4.jpeg
4 = 3.jpeg
1 = 2.jpeg
3 = index.jpeg
2 = Edoofy.jpeg
0 = images.jpeg
Software\Microsoft\Windows\CurrentVersion\Explorer\RecentDocs\.vbs
LastWrite Time Tue Apr 1 02:58:37 2014 (UTC)
MRUListEx = 0
0 = Microsoft .NET Framework v4 - Slow Windows XP Boot Fix.vbs
Software\Microsoft\Windows\CurrentVersion\Explorer\RecentDocs\Folder
LastWrite Time Tue Apr 1 02:58:37 2014 (UTC)
MRUListEx = 0,2
0 = Startup
2 = My Pictures
Welche Anwendungen wurden zuletzt über den Common-Dialog aufgerufen?
comdlg32 v.20121008
Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32
LastWrite Time Sun Mar 30 16:53:10 2014 (UTC)
LastVisitedMRU
LastWrite: Sun Mar 30 17:14:43 2014
MRUList = bca
b -> EXE: firefox.exe
-> Last Dir: C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures
c -> EXE: Skype.exe
-> Last Dir: C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures
a -> EXE: IEXPLORE.EXE
-> Last Dir: C:\Documents and Settings\Owner\Local Settings\My Documents
OpenSaveMRU\*
LastWrite Time: Sun Mar 30 17:15:37 2014 Z
MRUList = ihgefdcba
i -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures.jpeg
h -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures.jpeg
g -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures
Zum Inhalt springen
$ fsstat partition_1.dd
[...]
METADATA INFORMATION
--------------------------------------------
First Cluster of MFT: 262144
First Cluster of MFT Mirror: 2
Size of MFT Entries: 1024 bytes
Size of Index Records: 4096 bytes
Range: 0 - 16832
Root Directory: 5
[...]
$ fsstat partition_1.dd
[...]
METADATA INFORMATION
--------------------------------------------
First Cluster of MFT: 262144
First Cluster of MFT Mirror: 2
Size of MFT Entries: 1024 bytes
Size of Index Records: 4096 bytes
Range: 0 - 16832
Root Directory: 5
[...]
Wie lässt sich mittels dd ein 10 Byte langes Passwort in den letzten 10 Byte des MFT-Eintrags der $MFT verstecken? Wie lautet dieser Befehl fur $MFTMirr?
Zunächst schauen wir uns die letzten Bytes des MFT-Eintrags an, um später die Ergebnisse nachvollziehen zu können.
Die letzten beiden Bytes des MFT-Eintrags sind bereits belegt. Diese dürfen wir nicht verändern, daher überspringen wir nun 1073742836 Bytes (262144*4096+1012).
$ dd if=passwort.txt of=partition_1.dd seek=1073742836 bs=1 count=10 conv=notrunc
10+0 Datensätze ein
10+0 Datensätze aus
10 Bytes (10 B) kopiert, 6,3537e-05 s, 157 kB/s
Wir überprüfen nun unsere Arbeit, indem wir uns den Hexdump am Ende nochmals anschauen.
Das Kopieren war also erfolgreich. Für $MFTMirr müssten wir den Offset lediglich weitere 1024 Byte weiterschieben, um die Änderung dort ebenfalls vorzunehmen.
Wie lassen sich die ersten 100 MFT-Einträge herausschreiben?
Hierfür müssen wir zunächst bestimmen, wie groß ein MFT-Eintrag ist. Die Information dazu steht am Offset 64 im MFT.
$ xxd -skip 64 -l 1 partition_1.dd
0000040: f6
Als Dezimalzahl würde dies 246 bedeuten. Das macht auf den ersten Blick keinen großen Sinn. Nach einer kurzen Recherche hat sich ergeben, dass diese Zahl vorzeichenbehafted (signed) ist und daher erstmal umgewandelt werden muss. Hierfür invertieren wir alle Bits und addieren 1 darauf. Danach verwenden wir das Resultat als Exponent für 2n, um die Eintragsgröße zu ermitteln.
11110110 → 00001001
00001001 + 1 = 00001010
00001010 = 10
210 = 1024 Byte
Wir wissen nun, dass ein Record 1024 Byte groß sein muss. Für dd bedeutet dies, dass wir 102400 Byte herausschreiben müssen für 100 Records.
NTFS ermöglicht sogenannte Alternate Data Streams (ADS). Mit dieser Funktion können Daten vom Benutzer unsichtbar fest an eine Datei gebunden gespeichert werden. An jede Datei können beliebig viele andere Dateien angehängt werden, die nicht sichtbar sind, aber – solange der Vorgang innerhalb von NTFS-Laufwerken stattfindet – zusammen mit der Datei verschoben und kopiert werden. Der Zugriff auf die versteckten Dateifragmente findet mit einem Doppelpunkt statt: beispiel.txt:meinedatei.txt kennzeichnet einen zu der Datei beispiel.txt gehörigen Datenstrom namens meinedatei.txt. Neben Dateien können auch Ordner zusätzliche Datenströme enthalten..https://de.wikipedia.org/wiki/Alternativer_Datenstrom
Wie lasst sich unter Zuhilfenahme des Sleuthkit herausfinden, ob eine Datei einen ADS verwendet?
Mit fls können wir uns alle Dateien auf dem Dateisystem anzeigen lassen. Ein ADS ist am Doppelpunkt zwischen den Dateinamen zu erkennen. Beispielhaft suchen wir nun nach einer Datei, die auf g endet und einen ADS besitzt.
Wollen wir uns den Inhalt des ADS ansehen, müssen wir diesen über die Metadata Address ansprechen. Die 7821 steht für die Inode, die 128 für den Attribute Type und die 5 für eine einzigartige ID.
When a file’s attributes can fit within the MFT file record, they are called resident attributes. For example, information such as filename and time stamp are always included in the MFT file record. When all of the information for a file is too large to fit in the MFT file record, some of its attributes are nonresident. The nonresident attributes are allocated one or more clusters of disk space elsewhere in the volume.http://ntfs.com/ntfs-files-types.htm
Wenn die Attribute einer Datei kleiner als 700KiB sind, werden sie im MFT Record abgelegt. Sollten sie nicht mehr in den Record passen, werden sie als nonresident gekennzeichnet und werden anderweitig abgelegt. Zugriffe auf solche Attribute erzeugen folglich Performanzverluste.
Welche Bedeutung hat das Attribut $LOGGED_UTILITY_STREAM?
The $LOGGED_UTILITY_STREAM Attribute: Type 0x100 — layout and treatment is similar to $DATA attribute. Every EFS encrypted file will have this attribute to store the file encryption key used during encryption/de.http://www.c-jump.com/bcc/t256t/Week04NtfsReview/W01_0500_the_loggedutilitys.htm
Dieses Attribut wird scheinbar von einem Encrypting File System (EFS) genutzt, um darin die verwendeten Schlüssel während der Verschlüsselung abzulegen. Folglich besitzt jede verschlüsselte Datei dieses Attribut.
Ist Cluster 45904 alloziert?
Die Informationen zu den allozierten Clustern können wir $Bitmap entnehmen. Dafür brauchen wir aber noch etwas mehr Hintergrundwissen.
This file keeps track of all of the used and unused clusters on an NTFS volume. Each bit in the Bitmap represents 1 cluster, if that bit is “1” then the cluster is in use. For example if a byte in the BitMap is “F”, this means that 4 clusters are in use as F (hex) = 1111 in binary.https://whereismydata.wordpress.com/2009/06/01/forensics-what-is-the-bitmap/
Dank dieser Information wissen wir nun, dass jedes Bit ein Cluster repräsentiert. In der Binärdarstellung eines Bytes steht ganz rechts das kleinste Cluster und links das größte Cluster.
0xfe entspricht wird binär als 11111110 dargestellt. Gemäß unserer Definition steht rechts das kleinste Cluster. Cluster 45904 ist daher nicht alloziert.
Anwendungsforensik
In dieser Aufgabe sollen Sie ein paar Fragen zur Windows Registry beantworten. Bitte verwenden Sie im Folgenden partition_1.dd.
Welche Anwendungen werden beim Start des Systems aufgerufen?
Microsoft beschreibt, dass Informationen zum Autostart an den folgenden Stellen in der Registry gefunden werden kann.
List of common autorun locations: HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Run HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServicesOnce HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Explorer\Run HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Terminal HKLM\SOFTWARE\Microsoft\Active Setup\Installed Components HKLM\SOFTWARE\Wow6432Node\Classes\*\ShellEx\ContextMenuHandlers HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Browser Helper Objects HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Explorer\Browser Helper Objects HKLM\System\CurrentControlSet\Services HKLM\System\CurrentControlSet\Control\Terminal Server HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce.https://support.microsoft.com/de-de/kb/2647300/de
Mithilfe von regripper werten wir die Registry aus.
user_run v.20130329
(NTUSER.DAT) [Autostart] Get autostart key contents from NTUSER.DAT hive
Software\Microsoft\Windows\CurrentVersion\Run
CTFMON.EXE: C:\WINDOWS\system32\ctfmon.exe
Skype: "C:\Program Files\Skype\Phone\Skype.exe" /minimized /regrun
SSS15 Browser Monitor: "C:\Program Files\Steganos Privacy Suite 15\SteganosBrowserMonitor.exe"
recentdocs v.20100405
(NTUSER.DAT) Gets contents of user's RecentDocs key
RecentDocs
**All values printed in MRUList\MRUListEx order.
Software\Microsoft\Windows\CurrentVersion\Explorer\RecentDocs
LastWrite Time Sun Mar 30 17:38:32 2014 (UTC)
1 = Startup
0 = Microsoft .NET Framework v4 - Slow Windows XP Boot Fix.vbs
3 = My Pictures
9 = 4.jpeg
8 = 3.jpeg
7 = 2.jpeg
5 = index.jpeg
6 = Edoofy.jpeg
4 = images.jpeg
2 = imgres.htm
Software\Microsoft\Windows\CurrentVersion\Explorer\RecentDocs\.htm
LastWrite Time Sun Mar 30 17:08:51 2014 (UTC)
MRUListEx = 0
0 = imgres.htm
Software\Microsoft\Windows\CurrentVersion\Explorer\RecentDocs\.jpeg
LastWrite Time Sun Mar 30 17:15:37 2014 (UTC)
MRUListEx = 5,4,1,3,2,0
5 = 4.jpeg
4 = 3.jpeg
1 = 2.jpeg
3 = index.jpeg
2 = Edoofy.jpeg
0 = images.jpeg
Software\Microsoft\Windows\CurrentVersion\Explorer\RecentDocs\.vbs
LastWrite Time Tue Apr 1 02:58:37 2014 (UTC)
MRUListEx = 0
0 = Microsoft .NET Framework v4 - Slow Windows XP Boot Fix.vbs
Software\Microsoft\Windows\CurrentVersion\Explorer\RecentDocs\Folder
LastWrite Time Tue Apr 1 02:58:37 2014 (UTC)
MRUListEx = 0,2
0 = Startup
2 = My Pictures
Welche Anwendungen wurden zuletzt über den Common-Dialog aufgerufen?
comdlg32 v.20121008
Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32
LastWrite Time Sun Mar 30 16:53:10 2014 (UTC)
LastVisitedMRU
LastWrite: Sun Mar 30 17:14:43 2014
MRUList = bca
b -> EXE: firefox.exe
-> Last Dir: C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures
c -> EXE: Skype.exe
-> Last Dir: C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures
a -> EXE: IEXPLORE.EXE
-> Last Dir: C:\Documents and Settings\Owner\Local Settings\My Documents
OpenSaveMRU\*
LastWrite Time: Sun Mar 30 17:15:37 2014 Z
MRUList = ihgefdcba
i -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures\4.jpeg
h -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures\3.jpeg
g -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures\2.jpeg
e -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures\index.jpeg
f -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures\Edoofy.jpeg
d -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures\images.jpeg
c -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures\imgres.htm
b -> C:\Documents and Settings\Owner\Local Settings\My Documents\SkypeSetup.exe
a -> C:\Documents and Settings\Owner\Local Settings\My Documents\Firefox Setup Stub 28.0.exe
OpenSaveMRU\exe
LastWrite Time: Sun Mar 30 16:54:29 2014 Z
MRUList = ba
b -> C:\Documents and Settings\Owner\Local Settings\My Documents\SkypeSetup.exe
a -> C:\Documents and Settings\Owner\Local Settings\My Documents\Firefox Setup Stub 28.0.exe
OpenSaveMRU\htm
LastWrite Time: Sun Mar 30 17:08:51 2014 Z
MRUList = a
a -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures\imgres.htm
OpenSaveMRU\jpeg
LastWrite Time: Sun Mar 30 17:15:37 2014 Z
MRUList = fedbca
f -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures\4.jpeg
e -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures\3.jpeg
d -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures\2.jpeg
b -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures\index.jpeg
c -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures\Edoofy.jpeg
a -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures\images.jpeg
Herzlich willkommen! Ich bin Max, ein Informatiker mit über 15 Jahren Berufserfahrung. Hier teile ich meine Leidenschaften, Erlebnisse und Perspektiven. Ich lade dich ein, gemeinsam mit mir auf eine Entdeckungsreise zu gehen.
Um dir ein optimales Erlebnis zu bieten, verwenden wir Technologien wie Cookies, um Geräteinformationen zu speichern und/oder darauf zuzugreifen. Wenn du diesen Technologien zustimmst, können wir Daten wie das Surfverhalten oder eindeutige IDs auf dieser Website verarbeiten. Wenn du deine Zustimmung nicht erteilst oder zurückziehst, können bestimmte Merkmale und Funktionen beeinträchtigt werden.
Funktional
Immer aktiv
Die technische Speicherung oder der Zugang ist unbedingt erforderlich für den rechtmäßigen Zweck, die Nutzung eines bestimmten Dienstes zu ermöglichen, der vom Teilnehmer oder Nutzer ausdrücklich gewünscht wird, oder für den alleinigen Zweck, die Übertragung einer Nachricht über ein elektronisches Kommunikationsnetz durchzuführen.
Vorlieben
Die technische Speicherung oder der Zugriff ist für den rechtmäßigen Zweck der Speicherung von Präferenzen erforderlich, die nicht vom Abonnenten oder Benutzer angefordert wurden.
Statistiken
Die technische Speicherung oder der Zugriff, der ausschließlich zu statistischen Zwecken erfolgt.Die technische Speicherung oder der Zugriff, der ausschließlich zu anonymen statistischen Zwecken verwendet wird. Ohne eine Vorladung, die freiwillige Zustimmung deines Internetdienstanbieters oder zusätzliche Aufzeichnungen von Dritten können die zu diesem Zweck gespeicherten oder abgerufenen Informationen allein in der Regel nicht dazu verwendet werden, dich zu identifizieren.
Marketing
Die technische Speicherung oder der Zugriff ist erforderlich, um Nutzerprofile zu erstellen, um Werbung zu versenden oder um den Nutzer auf einer Website oder über mehrere Websites hinweg zu ähnlichen Marketingzwecken zu verfolgen.
.jpeg
e -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures\index.jpeg
f -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures\Edoofy.jpeg
d -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures\images.jpeg
c -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures\imgres.htm
b -> C:\Documents and Settings\Owner\Local Settings\My Documents\SkypeSetup.exe
a -> C:\Documents and Settings\Owner\Local Settings\My Documents\Firefox Setup Stub 28.0.exe
OpenSaveMRU\exe
LastWrite Time: Sun Mar 30 16:54:29 2014 Z
MRUList = ba
b -> C:\Documents and Settings\Owner\Local Settings\My Documents\SkypeSetup.exe
a -> C:\Documents and Settings\Owner\Local Settings\My Documents\Firefox Setup Stub 28.0.exe
OpenSaveMRU\htm
LastWrite Time: Sun Mar 30 17:08:51 2014 Z
MRUList = a
a -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures\imgres.htm
OpenSaveMRU\jpeg
LastWrite Time: Sun Mar 30 17:15:37 2014 Z
MRUList = fedbca
f -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures.jpeg
e -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures.jpeg
d -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures
Zum Inhalt springen
$ fsstat partition_1.dd
[...]
METADATA INFORMATION
--------------------------------------------
First Cluster of MFT: 262144
First Cluster of MFT Mirror: 2
Size of MFT Entries: 1024 bytes
Size of Index Records: 4096 bytes
Range: 0 - 16832
Root Directory: 5
[...]
$ fsstat partition_1.dd
[...]
METADATA INFORMATION
--------------------------------------------
First Cluster of MFT: 262144
First Cluster of MFT Mirror: 2
Size of MFT Entries: 1024 bytes
Size of Index Records: 4096 bytes
Range: 0 - 16832
Root Directory: 5
[...]
Wie lässt sich mittels dd ein 10 Byte langes Passwort in den letzten 10 Byte des MFT-Eintrags der $MFT verstecken? Wie lautet dieser Befehl fur $MFTMirr?
Zunächst schauen wir uns die letzten Bytes des MFT-Eintrags an, um später die Ergebnisse nachvollziehen zu können.
Die letzten beiden Bytes des MFT-Eintrags sind bereits belegt. Diese dürfen wir nicht verändern, daher überspringen wir nun 1073742836 Bytes (262144*4096+1012).
$ dd if=passwort.txt of=partition_1.dd seek=1073742836 bs=1 count=10 conv=notrunc
10+0 Datensätze ein
10+0 Datensätze aus
10 Bytes (10 B) kopiert, 6,3537e-05 s, 157 kB/s
Wir überprüfen nun unsere Arbeit, indem wir uns den Hexdump am Ende nochmals anschauen.
Das Kopieren war also erfolgreich. Für $MFTMirr müssten wir den Offset lediglich weitere 1024 Byte weiterschieben, um die Änderung dort ebenfalls vorzunehmen.
Wie lassen sich die ersten 100 MFT-Einträge herausschreiben?
Hierfür müssen wir zunächst bestimmen, wie groß ein MFT-Eintrag ist. Die Information dazu steht am Offset 64 im MFT.
$ xxd -skip 64 -l 1 partition_1.dd
0000040: f6
Als Dezimalzahl würde dies 246 bedeuten. Das macht auf den ersten Blick keinen großen Sinn. Nach einer kurzen Recherche hat sich ergeben, dass diese Zahl vorzeichenbehafted (signed) ist und daher erstmal umgewandelt werden muss. Hierfür invertieren wir alle Bits und addieren 1 darauf. Danach verwenden wir das Resultat als Exponent für 2n, um die Eintragsgröße zu ermitteln.
11110110 → 00001001
00001001 + 1 = 00001010
00001010 = 10
210 = 1024 Byte
Wir wissen nun, dass ein Record 1024 Byte groß sein muss. Für dd bedeutet dies, dass wir 102400 Byte herausschreiben müssen für 100 Records.
NTFS ermöglicht sogenannte Alternate Data Streams (ADS). Mit dieser Funktion können Daten vom Benutzer unsichtbar fest an eine Datei gebunden gespeichert werden. An jede Datei können beliebig viele andere Dateien angehängt werden, die nicht sichtbar sind, aber – solange der Vorgang innerhalb von NTFS-Laufwerken stattfindet – zusammen mit der Datei verschoben und kopiert werden. Der Zugriff auf die versteckten Dateifragmente findet mit einem Doppelpunkt statt: beispiel.txt:meinedatei.txt kennzeichnet einen zu der Datei beispiel.txt gehörigen Datenstrom namens meinedatei.txt. Neben Dateien können auch Ordner zusätzliche Datenströme enthalten..https://de.wikipedia.org/wiki/Alternativer_Datenstrom
Wie lasst sich unter Zuhilfenahme des Sleuthkit herausfinden, ob eine Datei einen ADS verwendet?
Mit fls können wir uns alle Dateien auf dem Dateisystem anzeigen lassen. Ein ADS ist am Doppelpunkt zwischen den Dateinamen zu erkennen. Beispielhaft suchen wir nun nach einer Datei, die auf g endet und einen ADS besitzt.
Wollen wir uns den Inhalt des ADS ansehen, müssen wir diesen über die Metadata Address ansprechen. Die 7821 steht für die Inode, die 128 für den Attribute Type und die 5 für eine einzigartige ID.
When a file’s attributes can fit within the MFT file record, they are called resident attributes. For example, information such as filename and time stamp are always included in the MFT file record. When all of the information for a file is too large to fit in the MFT file record, some of its attributes are nonresident. The nonresident attributes are allocated one or more clusters of disk space elsewhere in the volume.http://ntfs.com/ntfs-files-types.htm
Wenn die Attribute einer Datei kleiner als 700KiB sind, werden sie im MFT Record abgelegt. Sollten sie nicht mehr in den Record passen, werden sie als nonresident gekennzeichnet und werden anderweitig abgelegt. Zugriffe auf solche Attribute erzeugen folglich Performanzverluste.
Welche Bedeutung hat das Attribut $LOGGED_UTILITY_STREAM?
The $LOGGED_UTILITY_STREAM Attribute: Type 0x100 — layout and treatment is similar to $DATA attribute. Every EFS encrypted file will have this attribute to store the file encryption key used during encryption/de.http://www.c-jump.com/bcc/t256t/Week04NtfsReview/W01_0500_the_loggedutilitys.htm
Dieses Attribut wird scheinbar von einem Encrypting File System (EFS) genutzt, um darin die verwendeten Schlüssel während der Verschlüsselung abzulegen. Folglich besitzt jede verschlüsselte Datei dieses Attribut.
Ist Cluster 45904 alloziert?
Die Informationen zu den allozierten Clustern können wir $Bitmap entnehmen. Dafür brauchen wir aber noch etwas mehr Hintergrundwissen.
This file keeps track of all of the used and unused clusters on an NTFS volume. Each bit in the Bitmap represents 1 cluster, if that bit is “1” then the cluster is in use. For example if a byte in the BitMap is “F”, this means that 4 clusters are in use as F (hex) = 1111 in binary.https://whereismydata.wordpress.com/2009/06/01/forensics-what-is-the-bitmap/
Dank dieser Information wissen wir nun, dass jedes Bit ein Cluster repräsentiert. In der Binärdarstellung eines Bytes steht ganz rechts das kleinste Cluster und links das größte Cluster.
0xfe entspricht wird binär als 11111110 dargestellt. Gemäß unserer Definition steht rechts das kleinste Cluster. Cluster 45904 ist daher nicht alloziert.
Anwendungsforensik
In dieser Aufgabe sollen Sie ein paar Fragen zur Windows Registry beantworten. Bitte verwenden Sie im Folgenden partition_1.dd.
Welche Anwendungen werden beim Start des Systems aufgerufen?
Microsoft beschreibt, dass Informationen zum Autostart an den folgenden Stellen in der Registry gefunden werden kann.
List of common autorun locations: HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Run HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServicesOnce HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Explorer\Run HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Terminal HKLM\SOFTWARE\Microsoft\Active Setup\Installed Components HKLM\SOFTWARE\Wow6432Node\Classes\*\ShellEx\ContextMenuHandlers HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Browser Helper Objects HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Explorer\Browser Helper Objects HKLM\System\CurrentControlSet\Services HKLM\System\CurrentControlSet\Control\Terminal Server HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce.https://support.microsoft.com/de-de/kb/2647300/de
Mithilfe von regripper werten wir die Registry aus.
user_run v.20130329
(NTUSER.DAT) [Autostart] Get autostart key contents from NTUSER.DAT hive
Software\Microsoft\Windows\CurrentVersion\Run
CTFMON.EXE: C:\WINDOWS\system32\ctfmon.exe
Skype: "C:\Program Files\Skype\Phone\Skype.exe" /minimized /regrun
SSS15 Browser Monitor: "C:\Program Files\Steganos Privacy Suite 15\SteganosBrowserMonitor.exe"
recentdocs v.20100405
(NTUSER.DAT) Gets contents of user's RecentDocs key
RecentDocs
**All values printed in MRUList\MRUListEx order.
Software\Microsoft\Windows\CurrentVersion\Explorer\RecentDocs
LastWrite Time Sun Mar 30 17:38:32 2014 (UTC)
1 = Startup
0 = Microsoft .NET Framework v4 - Slow Windows XP Boot Fix.vbs
3 = My Pictures
9 = 4.jpeg
8 = 3.jpeg
7 = 2.jpeg
5 = index.jpeg
6 = Edoofy.jpeg
4 = images.jpeg
2 = imgres.htm
Software\Microsoft\Windows\CurrentVersion\Explorer\RecentDocs\.htm
LastWrite Time Sun Mar 30 17:08:51 2014 (UTC)
MRUListEx = 0
0 = imgres.htm
Software\Microsoft\Windows\CurrentVersion\Explorer\RecentDocs\.jpeg
LastWrite Time Sun Mar 30 17:15:37 2014 (UTC)
MRUListEx = 5,4,1,3,2,0
5 = 4.jpeg
4 = 3.jpeg
1 = 2.jpeg
3 = index.jpeg
2 = Edoofy.jpeg
0 = images.jpeg
Software\Microsoft\Windows\CurrentVersion\Explorer\RecentDocs\.vbs
LastWrite Time Tue Apr 1 02:58:37 2014 (UTC)
MRUListEx = 0
0 = Microsoft .NET Framework v4 - Slow Windows XP Boot Fix.vbs
Software\Microsoft\Windows\CurrentVersion\Explorer\RecentDocs\Folder
LastWrite Time Tue Apr 1 02:58:37 2014 (UTC)
MRUListEx = 0,2
0 = Startup
2 = My Pictures
Welche Anwendungen wurden zuletzt über den Common-Dialog aufgerufen?
comdlg32 v.20121008
Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32
LastWrite Time Sun Mar 30 16:53:10 2014 (UTC)
LastVisitedMRU
LastWrite: Sun Mar 30 17:14:43 2014
MRUList = bca
b -> EXE: firefox.exe
-> Last Dir: C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures
c -> EXE: Skype.exe
-> Last Dir: C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures
a -> EXE: IEXPLORE.EXE
-> Last Dir: C:\Documents and Settings\Owner\Local Settings\My Documents
OpenSaveMRU\*
LastWrite Time: Sun Mar 30 17:15:37 2014 Z
MRUList = ihgefdcba
i -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures\4.jpeg
h -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures\3.jpeg
g -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures\2.jpeg
e -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures\index.jpeg
f -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures\Edoofy.jpeg
d -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures\images.jpeg
c -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures\imgres.htm
b -> C:\Documents and Settings\Owner\Local Settings\My Documents\SkypeSetup.exe
a -> C:\Documents and Settings\Owner\Local Settings\My Documents\Firefox Setup Stub 28.0.exe
OpenSaveMRU\exe
LastWrite Time: Sun Mar 30 16:54:29 2014 Z
MRUList = ba
b -> C:\Documents and Settings\Owner\Local Settings\My Documents\SkypeSetup.exe
a -> C:\Documents and Settings\Owner\Local Settings\My Documents\Firefox Setup Stub 28.0.exe
OpenSaveMRU\htm
LastWrite Time: Sun Mar 30 17:08:51 2014 Z
MRUList = a
a -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures\imgres.htm
OpenSaveMRU\jpeg
LastWrite Time: Sun Mar 30 17:15:37 2014 Z
MRUList = fedbca
f -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures\4.jpeg
e -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures\3.jpeg
d -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures\2.jpeg
b -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures\index.jpeg
c -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures\Edoofy.jpeg
a -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures\images.jpeg
Herzlich willkommen! Ich bin Max, ein Informatiker mit über 15 Jahren Berufserfahrung. Hier teile ich meine Leidenschaften, Erlebnisse und Perspektiven. Ich lade dich ein, gemeinsam mit mir auf eine Entdeckungsreise zu gehen.
Um dir ein optimales Erlebnis zu bieten, verwenden wir Technologien wie Cookies, um Geräteinformationen zu speichern und/oder darauf zuzugreifen. Wenn du diesen Technologien zustimmst, können wir Daten wie das Surfverhalten oder eindeutige IDs auf dieser Website verarbeiten. Wenn du deine Zustimmung nicht erteilst oder zurückziehst, können bestimmte Merkmale und Funktionen beeinträchtigt werden.
Funktional
Immer aktiv
Die technische Speicherung oder der Zugang ist unbedingt erforderlich für den rechtmäßigen Zweck, die Nutzung eines bestimmten Dienstes zu ermöglichen, der vom Teilnehmer oder Nutzer ausdrücklich gewünscht wird, oder für den alleinigen Zweck, die Übertragung einer Nachricht über ein elektronisches Kommunikationsnetz durchzuführen.
Vorlieben
Die technische Speicherung oder der Zugriff ist für den rechtmäßigen Zweck der Speicherung von Präferenzen erforderlich, die nicht vom Abonnenten oder Benutzer angefordert wurden.
Statistiken
Die technische Speicherung oder der Zugriff, der ausschließlich zu statistischen Zwecken erfolgt.Die technische Speicherung oder der Zugriff, der ausschließlich zu anonymen statistischen Zwecken verwendet wird. Ohne eine Vorladung, die freiwillige Zustimmung deines Internetdienstanbieters oder zusätzliche Aufzeichnungen von Dritten können die zu diesem Zweck gespeicherten oder abgerufenen Informationen allein in der Regel nicht dazu verwendet werden, dich zu identifizieren.
Marketing
Die technische Speicherung oder der Zugriff ist erforderlich, um Nutzerprofile zu erstellen, um Werbung zu versenden oder um den Nutzer auf einer Website oder über mehrere Websites hinweg zu ähnlichen Marketingzwecken zu verfolgen.
.jpeg
b -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures\index.jpeg
c -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures\Edoofy.jpeg
a -> C:\Documents and Settings\Owner\Local Settings\My Documents\My Pictures\images.jpeg
Herzlich willkommen! Ich bin Max, ein Informatiker mit über 15 Jahren Berufserfahrung. Hier teile ich meine Leidenschaften, Erlebnisse und Perspektiven. Ich lade dich ein, gemeinsam mit mir auf eine Entdeckungsreise zu gehen.
Um dir ein optimales Erlebnis zu bieten, verwenden wir Technologien wie Cookies, um Geräteinformationen zu speichern und/oder darauf zuzugreifen. Wenn du diesen Technologien zustimmst, können wir Daten wie das Surfverhalten oder eindeutige IDs auf dieser Website verarbeiten. Wenn du deine Zustimmung nicht erteilst oder zurückziehst, können bestimmte Merkmale und Funktionen beeinträchtigt werden.
Funktional
Immer aktiv
Die technische Speicherung oder der Zugang ist unbedingt erforderlich für den rechtmäßigen Zweck, die Nutzung eines bestimmten Dienstes zu ermöglichen, der vom Teilnehmer oder Nutzer ausdrücklich gewünscht wird, oder für den alleinigen Zweck, die Übertragung einer Nachricht über ein elektronisches Kommunikationsnetz durchzuführen.
Vorlieben
Die technische Speicherung oder der Zugriff ist für den rechtmäßigen Zweck der Speicherung von Präferenzen erforderlich, die nicht vom Abonnenten oder Benutzer angefordert wurden.
Statistiken
Die technische Speicherung oder der Zugriff, der ausschließlich zu statistischen Zwecken erfolgt.Die technische Speicherung oder der Zugriff, der ausschließlich zu anonymen statistischen Zwecken verwendet wird. Ohne eine Vorladung, die freiwillige Zustimmung deines Internetdienstanbieters oder zusätzliche Aufzeichnungen von Dritten können die zu diesem Zweck gespeicherten oder abgerufenen Informationen allein in der Regel nicht dazu verwendet werden, dich zu identifizieren.
Marketing
Die technische Speicherung oder der Zugriff ist erforderlich, um Nutzerprofile zu erstellen, um Werbung zu versenden oder um den Nutzer auf einer Website oder über mehrere Websites hinweg zu ähnlichen Marketingzwecken zu verfolgen.