Add standards in it-forensic

This commit is contained in:
Moritz Eckert 2019-03-14 19:14:02 +01:00
parent b24c4dbfbd
commit 32118000ab

View File

@ -59,59 +59,60 @@
des Beweises $0.66$. Offensichtlicherweise, wenn nun $Prob_1 >> Prob_2$ ist der Beweis sehr des Beweises $0.66$. Offensichtlicherweise, wenn nun $Prob_1 >> Prob_2$ ist der Beweis sehr
stark. Mit der gleichen Logik gilt f\"ur das Nichtvorhandensein von Beweisen das Gegenteil, also stark. Mit der gleichen Logik gilt f\"ur das Nichtvorhandensein von Beweisen das Gegenteil, also
das wenn $Prob_3 >> Prob_4$ der Beweis sehr schwach ist. das wenn $Prob_3 >> Prob_4$ der Beweis sehr schwach ist.
\section{Flash-Speichertechnologie} \section{Flash-Speichertechnologie}
\subsection{NAND-Flash-Speicherzelle} \subsection{NAND-Flash-Speicherzelle}
\noindent \includegraphics[width=\textwidth]{pics/nand-speicherzelle.png} \noindent \includegraphics[width=\textwidth]{pics/nand-speicherzelle.png}
\begin{itemize} \begin{itemize}
\item NAND-Speicher bestehen aus Transistoren \item NAND-Speicher bestehen aus Transistoren
\item Durch Oxid-Schicht elektrisch isoliertes Gate, dessen Ladung durch den Quanten-mechanischen Tunneleffekt Auswirkungen hat auf die Source-Drain-Strecke \item Durch Oxid-Schicht elektrisch isoliertes Gate, dessen Ladung durch den Quanten-mechanischen Tunneleffekt Auswirkungen hat auf die Source-Drain-Strecke
\item Ladung des Gates bewirkt eine Änderung (Erhöhung) der Schwellspannung, bei der der Transistor auf der Source-Drain-Strecke leitend wird. \item Ladung des Gates bewirkt eine Änderung (Erhöhung) der Schwellspannung, bei der der Transistor auf der Source-Drain-Strecke leitend wird.
\item Schreiben (Programmieren) der Speicherzelle: das Einbringen von Elektronen auf das Floating Gate (Zustand: logische \enquote{0}) \item Schreiben (Programmieren) der Speicherzelle: das Einbringen von Elektronen auf das Floating Gate (Zustand: logische \enquote{0})
\item Löschen der Speicherzelle: das Entfernen von Elektronen von dem Floating Gate (Zustand: logische \enquote{1}) \item Löschen der Speicherzelle: das Entfernen von Elektronen von dem Floating Gate (Zustand: logische \enquote{1})
\item Lesen einer logische \enquote{0}: die Source-Drain-Strecke ist nicht leitend beim Anlegen einer Spannung oberhalb der \enquote{normalen} Schwellspannung \item Lesen einer logische \enquote{0}: die Source-Drain-Strecke ist nicht leitend beim Anlegen einer Spannung oberhalb der \enquote{normalen} Schwellspannung
\item Lesen einer logische \enquote{1}: die Source-Drain-Strecke ist leitend beim Anlegen einer Spannung oberhalb der \enquote{normalen} Schwellspannung \item Lesen einer logische \enquote{1}: die Source-Drain-Strecke ist leitend beim Anlegen einer Spannung oberhalb der \enquote{normalen} Schwellspannung
\item Bei einem Löschzyklus durchtunneln die Elektronen die Oxidschicht. Dafür sind hohe Spannungen erforderlich. \item Bei einem Löschzyklus durchtunneln die Elektronen die Oxidschicht. Dafür sind hohe Spannungen erforderlich.
\item Dadurch wird bei jedem Löschvorgang die Oxidschicht, die das Floating-Gate umgibt, ein klein wenig beschädigt (Degeneration, \enquote{wear out}). \item Dadurch wird bei jedem Löschvorgang die Oxidschicht, die das Floating-Gate umgibt, ein klein wenig beschädigt (Degeneration, \enquote{wear out}).
\item nach einer endlichen Anzahl von Schreib- und Löschvorgängen nimmt die Zahl der Elektronen, die die Isolierungsschicht durchqueren können, ab \item nach einer endlichen Anzahl von Schreib- und Löschvorgängen nimmt die Zahl der Elektronen, die die Isolierungsschicht durchqueren können, ab
\item Resultat: Schwellspannung beim Lesevorgang zeigt keinen ausreichenden Unterschied, um zwischen 0 und 1 zu unterscheiden. \item Resultat: Schwellspannung beim Lesevorgang zeigt keinen ausreichenden Unterschied, um zwischen 0 und 1 zu unterscheiden.
\item Unterscheidung Page vs. Block \item Unterscheidung Page vs. Block
\begin{itemize} \begin{itemize}
\item Page: kleinste Einheit, die geschrieben werden kann (\"ublich 2-16 KiB) \item Page: kleinste Einheit, die geschrieben werden kann (\"ublich 2-16 KiB)
\item Block: kleinste Einheit, die gel\"oscht werden kann (üblich 4-8 MiB) \item Block: kleinste Einheit, die gel\"oscht werden kann (üblich 4-8 MiB)
\item Grund: Der Löschvorgang erfordert das Anlegen einer hohen Spannung in mehreren Schritten, die Abschirmung benachbarter Bereiche von Zellen vor ungewollter Beeinflussung sowie das Überprüfen (Lesen) aller Zellen, ob der Löschvorgang erfolgreich war. \item Grund: Der Löschvorgang erfordert das Anlegen einer hohen Spannung in mehreren Schritten, die Abschirmung benachbarter Bereiche von Zellen vor ungewollter Beeinflussung sowie das Überprüfen (Lesen) aller Zellen, ob der Löschvorgang erfolgreich war.
\end{itemize} \end{itemize}
\end{itemize} \item Billige Chips verwenden meist Multi Level Cell (MLC) oder Three Level Cell (TLC): Anstatt einem Spannungsthreshold unterscheidet man 2 oder 3 und kann so mit mehrere Bit mit einer Zelle darstellen und Speicher. Das spart Platz und Material ist aber nicht so zuverl\"assig und anf\"alliger f\"ur wear-out
\end{itemize}
\subsection{Flash-Speicherformate} \subsection{Flash-Speicherformate}
\begin{itemize} \begin{itemize}
\item Solid State Drives (SSDs) \item Solid State Drives (SSDs)
\item USB-Sticks \item USB-Sticks
\item Speicherkarten \item Speicherkarten
\item Wichtige Standards \item Wichtige Standards
\begin{itemize} \begin{itemize}
\item Multimedia Card (MMC) \item Multimedia Card (MMC)
\item Secure Digital (SD) \item Secure Digital (SD)
\item Universal Flash Storage (UFS) \item Universal Flash Storage (UFS)
\end{itemize} \end{itemize}
\end{itemize} \end{itemize}
\subsubsection{embedded MMC (eMMC)} \subsubsection{embedded MMC (eMMC)}
\begin{itemize} \begin{itemize}
\item Speichermedium als interner Datenspeicher in mobilen Ger\"aten \item Speichermedium als interner Datenspeicher in mobilen Ger\"aten
\item Speicherkarte als Chip, werden in Smartphones verbaut, oft auch als Chip in USB-Speichersticks \item Speicherkarte als Chip, werden in Smartphones verbaut, oft auch als Chip in USB-Speichersticks
\item Standardisiert von JEDEC (2015: v.5.1 (JESD84-B51)) \item Standardisiert von JEDEC (2015: v.5.1 (JESD84-B51))
\item 64 Befehle mit 32 Bit Parameter \item 64 Befehle mit 32 Bit Parameter
\item Beispiel TRIM/Secure TRIM seit v.4.4 \item Beispiel TRIM/Secure TRIM seit v.4.4
\begin{itemize} \begin{itemize}
\item While it is similar to ATA TRIM, the manufacturer can define what is returned after a read (kein DRAT oder DZAT) \item While it is similar to ATA TRIM, the manufacturer can define what is returned after a read (kein DRAT oder DZAT)
\item Secure TRIM muss zus\"atzlich sofort ausgef\"uhrt werden und kann nich delayed werden \item Secure TRIM muss zus\"atzlich sofort ausgef\"uhrt werden und kann nich delayed werden
\item More similar to ATA TRIM is \enquote{discard} (since v.4.5) (Habe nichts gefunden was diese Behauptung st\"utzt) \item More similar to ATA TRIM is \enquote{discard} (since v.4.5) (Habe nichts gefunden was diese Behauptung st\"utzt)
\end{itemize} \end{itemize}
\item eMMC Chips werden of recycelt, z.B. Handy-Speicher wiederverwendet in USB-Sticks \item eMMC Chips werden of recycelt, z.B. Handy-Speicher wiederverwendet in USB-Sticks
\item Je nach Standard ist sicheres L\"oschen der Daten vorher m\"oglich \item Je nach Standard ist sicheres L\"oschen der Daten vorher m\"oglich
\item Nicht alle Hersteller f\"uhren sicheres L\\"oschen auch durch \item Nicht alle Hersteller f\"uhren sicheres L\"oschen auch durch
\item $->$ Daten k\"onnen wiederhergestellt werden \item $->$ Daten k\"onnen wiederhergestellt werden
\end{itemize} \end{itemize}
\section{Live-Analyse} \section{Live-Analyse}
@ -153,23 +154,23 @@
\item System kann sich wehren (bei Nutzung des Betriebssystemes sowieso, aber im \item System kann sich wehren (bei Nutzung des Betriebssystemes sowieso, aber im
schlimmesten Fall auch die Hardware) schlimmesten Fall auch die Hardware)
\item Einige, z.B. Rootkits, k\"onnen im laufenden Betrieb nicht zuverl\"assig erkannt werden \item Einige, z.B. Rootkits, k\"onnen im laufenden Betrieb nicht zuverl\"assig erkannt werden
\item Nur ein Versuch, keine Wiederholung, deshalb evtl. Videoaufzeichung oder Vier Augen-Prinzip \item Nur ein Versuch, keine Wiederholung, deshalb evtl. Videoaufzeichung oder Vier Augen-Prinzip
\end{itemize} \end{itemize}
\subsubsection*{Sniffing} \subsubsection*{Sniffing}
Mitlesen des Netzwerkverkehrs, nur schwer bis gar nicht durch Maleware manipulierbar, allerdings Verschl\"usselung m\"oglich, was wiederum bedeutet, dass nur Metadaten gesammelt werden k\"onnen. Mitlesen des Netzwerkverkehrs, nur schwer bis gar nicht durch Maleware manipulierbar, allerdings Verschl\"usselung m\"oglich, was wiederum bedeutet, dass nur Metadaten gesammelt werden k\"onnen.
\begin{itemize} \begin{itemize}
\item LAN-Sniffing \item LAN-Sniffing
\begin{itemize} \begin{itemize}
\item Mirror/Monitorport am Switch/Router \item Mirror/Monitorport am Switch/Router
\item LAN/Ethernet Tabs \item LAN/Ethernet Tabs
\item Switch-Jamming oder ARP-Spoofing \item Switch-Jamming oder ARP-Spoofing
\end{itemize} \end{itemize}
\item WLAN-Sniffing \item WLAN-Sniffing
\begin{itemize} \begin{itemize}
\item Aufsp\"uren von Netzen: Aktiv (Probe-Request), Passiv (Monitor-Mode) \item Aufsp\"uren von Netzen: Aktiv (Probe-Request), Passiv (Monitor-Mode)
\item Sniffing von Traffic in verbundenem (evtl. verschl\"usseltem) Netz: Promiscuous Mode \item Sniffing von Traffic in verbundenem (evtl. verschl\"usseltem) Netz: Promiscuous Mode
\end{itemize} \end{itemize}
\end{itemize} \end{itemize}
\subsection{Hauptspeichersicherung} \subsection{Hauptspeichersicherung}
\begin{itemize} \begin{itemize}
\item eingesetzte Werkzeuge sollen System nicht ver\"andern (Integrit\"at) \item eingesetzte Werkzeuge sollen System nicht ver\"andern (Integrit\"at)
@ -186,21 +187,21 @@
\subsubsection*{Technische M\"oglichkeiten} \subsubsection*{Technische M\"oglichkeiten}
\noindent \includegraphics{pics/RAM-Sicherung.png} \noindent \includegraphics{pics/RAM-Sicherung.png}
\begin{itemize} \begin{itemize}
\item Hardware (DMA) \item Hardware (DMA)
\begin{itemize} \begin{itemize}
\item Vorteil: Keine Interaktion mit dem OS, Int\"agrit\"at des RAMs wird gewahrt \item Vorteil: Keine Interaktion mit dem OS, Int\"agrit\"at des RAMs wird gewahrt
\item Nachteil: Braucht Hardware-Zugriff \item Nachteil: Braucht Hardware-Zugriff
\item Meist Zugriff auf DMA-f\"ahigen Bus \item Meist Zugriff auf DMA-f\"ahigen Bus
\item z.B. Tribble (PCI card) oder FireWire bus \item z.B. Tribble (PCI card) oder FireWire bus
\end{itemize} \end{itemize}
\item Software \item Software
\begin{itemize} \begin{itemize}
\item Linux-sysfs (/dev/mem) + Data Dumper (dd) \item Linux-sysfs (/dev/mem) + Data Dumper (dd)
\item Linux /dev/mem ist etwas broken kriegt man aber mit kernel-modules gebacken \item Linux /dev/mem ist etwas broken kriegt man aber mit kernel-modules gebacken
\item Crashdumps unter Windows \item Crashdumps unter Windows
\item Modul Hijacking unter Linux \item Modul Hijacking unter Linux
\item Snapshot bei VM (Nur bei VMs) \item Snapshot bei VM (Nur bei VMs)
\end{itemize} \end{itemize}
\end{itemize} \end{itemize}
Aus dem Hauptspeicher-Abbild kann der Systemzustand nachvollziehbar rekonstruiert werden oder Aus dem Hauptspeicher-Abbild kann der Systemzustand nachvollziehbar rekonstruiert werden oder
einfach nach \textit{strings} oder \textit{magic-bytes} gesucht werden. einfach nach \textit{strings} oder \textit{magic-bytes} gesucht werden.
@ -215,10 +216,10 @@
\end{itemize} \end{itemize}
\subsubsection*{Dotplot} \subsubsection*{Dotplot}
Die meisten Fehler in forensischen Tools sind systematischer Natur. Die meisten Fehler in forensischen Tools sind systematischer Natur.
Die Autoren des Papers haben effektiv jede Speicherseite gehasht und die resultierenden Hashes an X/Y-Achse aufgetragen und alle identischen \textit{('\"ahnlichen')} Felder schwarz markiert.\\\\ Die Autoren des Papers haben effektiv jede Speicherseite gehasht und die resultierenden Hashes an X/Y-Achse aufgetragen und alle identischen \textit{('\"ahnlichen')} Felder schwarz markiert.\\\\
Der Fall dass zwei Seiten im Speicher die gleiche SHA-Sum haben kann eigentlich (0er und 1er-Seiten weggefiltert) nicht sein bzw. ist sehr unwahrscheinlich. Der Fall dass zwei Seiten im Speicher die gleiche SHA-Sum haben kann eigentlich (0er und 1er-Seiten weggefiltert) nicht sein bzw. ist sehr unwahrscheinlich.
Das bedeutet, wenn zwei Seiten den gleichen Hash haben aka schwarz sind, muss das Tool in irgendeiner Weise daf\"ur verantwortlich sein. Das bedeutet, wenn zwei Seiten den gleichen Hash haben aka schwarz sind, muss das Tool in irgendeiner Weise daf\"ur verantwortlich sein.
Das Tool \textit{dd} zum Beispiel cached die aus dem Hauptspeicher gelesenen Daten und schreibt diese somit ein zweites mal in den Hauptspeicher. Das Tool \textit{dd} zum Beispiel cached die aus dem Hauptspeicher gelesenen Daten und schreibt diese somit ein zweites mal in den Hauptspeicher.
\textbf{Long story short: Nutzlose, aber ganz lustige Spielerrei um Probleme mit forensischen \textbf{Long story short: Nutzlose, aber ganz lustige Spielerrei um Probleme mit forensischen
Tools die das System beeinflussen zu zeigen. Pr\"adikat 'nicht lesenswert'.} Tools die das System beeinflussen zu zeigen. Pr\"adikat 'nicht lesenswert'.}
\subsubsection*{Evalution von Live-Analyse Techniken} \subsubsection*{Evalution von Live-Analyse Techniken}
@ -372,7 +373,7 @@
\item Gefahrenabwehr $->$ Pr\"avention, konkrete Gefahr als Anlass (Polizeirecht$->$Landesrecht, Ausnahme: BKA-Gesetz$->$Bundesrecht) \item Gefahrenabwehr $->$ Pr\"avention, konkrete Gefahr als Anlass (Polizeirecht$->$Landesrecht, Ausnahme: BKA-Gesetz$->$Bundesrecht)
\end{itemize} \end{itemize}
\subsection{Paragraphen zur Strafverfolgung} \subsection{Paragraphen zur Strafverfolgung}
\subsubsection*{\S \S 100a Strafprozessordnung (Telekommunikations\"uberwachung)} \subsubsection*{\S \S 100a Strafprozessordnung ((Quellen-)Telekommunikations\"uberwachung)}
\begin{itemize} \begin{itemize}
\item Auch ohne Wissen der Betroffenen darf die Telekommunikation überwacht und \item Auch ohne Wissen der Betroffenen darf die Telekommunikation überwacht und
aufgezeichnet werden, wenn: aufgezeichnet werden, wenn:
@ -487,6 +488,7 @@
\item Aber ohne konkreten Anlass \item Aber ohne konkreten Anlass
\item Schutz der Daten aus "Kernbereichs privater Lebensgestaltung" durch \S 5a \item Schutz der Daten aus "Kernbereichs privater Lebensgestaltung" durch \S 5a
\end{itemize} \end{itemize}
\item Die Regelung des \S 7a lässt es zu, dass der BND - hierfür braucht er die Zustimmung des Bundeskanzleramtes - an ausländische Geheimdienste Daten übermittelt
\item \S 10 regelt das Verfahren zur Anordnung von TK\"U nach \S 3 und 5 \item \S 10 regelt das Verfahren zur Anordnung von TK\"U nach \S 3 und 5
\begin{itemize} \begin{itemize}
\item F\"ur Inhaltsdaten und Suchbegriffe bei \S 5 m\"ussen BND und Co. vorher die sog. G-10 Kommission um Erlaubnis fragen. \item F\"ur Inhaltsdaten und Suchbegriffe bei \S 5 m\"ussen BND und Co. vorher die sog. G-10 Kommission um Erlaubnis fragen.
@ -568,6 +570,41 @@
mit mehreren VMs mit Daten Unbeteiligter) mit mehreren VMs mit Daten Unbeteiligter)
\item VM-Carving (Wiederherstellung von gel\"oschten VM, vielleicht aus Backups) \item VM-Carving (Wiederherstellung von gel\"oschten VM, vielleicht aus Backups)
\end{itemize} \end{itemize}
\section{Standards in der IT-Forensik}
\subsection{IT-Sachverst\"andige in Deutschland}
\begin{itemize}
\item \enquote{freie} Sachverst\"andige: kein gesch\"utzter Titel
\item \enquote{\"offentlich bestellte und vereidigte} Sachverst\"andige: Gesch\"utzter Titel (\S 132a StGB)
\item Im Bereich IT/Computerforensik
\begin{itemize}
\item IHKs als K\"orperschaften \"offentlichen Rechts vom Staat mit Aufgabe der Bestellung beliehen
\item Fixiert in Sachverst\"andigenordnung,Bestellungsvoraussetzungen
\item u.a. auf 5 Jahre befristet, ausreichend Lebens- und Berufserfahrung, erheblich \"uber dem Durchschnitt liegende Fachkenntnisse, lebt in geordneten wirschaftlichen Verh\"altnissen,...
\item \enquote{Besondere Sachkunde} nach DIHK: Abgeschlossenes Studium, Berufserfahrung im Bereich Infermationsverarbeitung, Mindestens 5 Gutachten, zus\"atzlich IHK-Pr\"ufung
\item Es wird gepr\"uft ob Sachverst\"andige geeignet ist (zusammengefasst in keiner Weise befangen)
\item Auftr\"ager k\"onnen nur bei wichtigem Grund verweigert werden
\item Sachverst\"andige k\"onnen ihre Haftung nicht ausschlie\ss{} oder beschr\"anken und brauchen entsprechende Haftpflichtversicherung
\end{itemize}
\end{itemize}
\subsubsection{Was darf der \"obuv Sachverst\"andige}
\begin{itemize}
\item Aufkl\"arung und Akteneinsicht \S 80 StPO: Akten einsehen, Vernehmnung von Zugen und Beschuldigten
\item Im Gerichtsverfahren: \S 73 StPO: Richter entscheiden welche Sachverst\"andige in welcher Anzahl hinzugezogen werden
\item Unterschied ermittler: \"obuv Sachverst\"andiger ist absolut Neutral, \enquote{Werkzeug} des Richters, ist selbst f\"ur alles zust\"andig und haftbar
\end{itemize}
\subsubsection{BSI-Leitfaden IT-Forensik}
\begin{itemize}
\item (Ver-)Alte(te)r Leitfahden f\"ur Forensische Gutachten
\item Es existieren Internationale Standards, aber oft nicht spezifisch genug f\"ur deutsches Rechtssystem:
\begin{itemize}
\item ISO 27000
\item Council of Europe: Electronic Evidence Guide (2013)
\item Department of Justice: Electronic Crime Scene Investigation (2008)
\item Scientific Working Group on Digital Evidence (SWGDE): Best Practices for Computer Forensics (2014)
\item ...
\end{itemize}
\end{itemize}
\section{Date-Loss though Abstraction} \section{Date-Loss though Abstraction}
Ehrlich gesagt wei\ss{} ich nicht was ich hier genau mitnehmen soll. Mehr Abstraktion Ehrlich gesagt wei\ss{} ich nicht was ich hier genau mitnehmen soll. Mehr Abstraktion
bedeutet logischerweise mehr abstrakte Informationen, w\"ahrend Low-Level bedeutet logischerweise mehr abstrakte Informationen, w\"ahrend Low-Level