mirror of
https://gitlab.cs.fau.de/ik15ydit/latexandmore.git
synced 2024-11-24 20:49:33 +01:00
186 lines
9.7 KiB
TeX
186 lines
9.7 KiB
TeX
\documentclass{article}
|
|
\usepackage{amsmath}
|
|
\usepackage{nccmath}
|
|
\usepackage{graphicx}
|
|
\DeclareMathSizes{10}{10}{10}{10}
|
|
\newcommand{\xhspace}[0]{\noindent\hspace*{5mm}}
|
|
\setlength{\parindent}{0pt}
|
|
\title{Konfluenz}
|
|
\date{ }
|
|
\begin{document}
|
|
\subsection*{Anmerkungen:}
|
|
Diese Zusammenfassung fokusiert sich stark auf die Dinge die ich fuer wichtige gehalten habe
|
|
und enthaelt teilweise Information die nicht in der Vorlesung, sondern nur in den in der
|
|
Vorlesung erwaehnten Papern zu finden sind. Ich bin zu faul jedes mal wenn ich was aus einem
|
|
Paper zitiere das Paper hinzuschreiben, nehmt einfach mal an, dass nichts von dem was hier
|
|
steht auf meinem Mist gewachsen ist.
|
|
\section{Begriffserklaerungen}
|
|
\subsubsection*{Kriminalistik}
|
|
Verhinderung, Aufdeckung und Aufklaerung von Kriminalitaet (Naturwissenschaften/
|
|
Ingenieurwesen)
|
|
\begin{itemize}
|
|
\item Verbrechenstechnik (Wie wird das Verbrechen ausgefuehert?)
|
|
\item Kriminaltechnik (Einbringung von Sachbeweisen)
|
|
\item Kriminaltaktik (Planmaeßiges und Fallorientiertes Vorgehen, z.B.
|
|
Fahndung, Vernehmung, etc.)
|
|
\item Organisation der Verbrechensbekaempfung
|
|
\item Kriminalpsychologie (Schuldfaehigkeit, Motivforschung)
|
|
\end{itemize}
|
|
\subsubsection*{Kriminologie}
|
|
Erforschung von Ursachen und Erscheinungsformen von Kriminalitaet (Sozialwissenschaft/Psychologie)
|
|
\section{Qualivative Probability}
|
|
\subsubsection*{Vorbedingungen:}
|
|
\begin{itemize}
|
|
\item $H_1$ Person A war am Tatort
|
|
\item $H_2$ Person A war \textbf{nicht} am Tatort
|
|
\end{itemize}
|
|
\subsubsection*{Moegliche Fahndungs-Ergebnisse:}
|
|
\begin{itemize}
|
|
\item $E_1$ es gibt Beweise, dass Person A am Tatort war
|
|
\item $E_2$ es gibt \textbf{keine} Beweise, dass Person A am Tatort war
|
|
\end{itemize}
|
|
\textbf{Wahrscheinlichkeit, dass die Vorbedingungen $H_{1,2}$ im Angesicht bestimmter Ergebnisse korrekt sind.}
|
|
\[ Prob_1( E_1 | H_1 ) \hspace{2cm} Prob_2( E_1 | H_2 ) \]
|
|
\[ Prob_3( E_2 | H_1 ) \hspace{2cm} Prob_4( E_2 | H_2 ) \]\\
|
|
\textit{Also wie wahrscheinlich sind die Kombinationen:}\\\\
|
|
\begin{tabular}{|c|c|c|}
|
|
Person A am Tatort & Beweise & Wahrscheinlichkeit \\\hline
|
|
Ja & Ja & $Prob_1$ \\
|
|
Ja & Nein & $Prob_2$ \\
|
|
Nein & Ja & $Prob_3$ \\
|
|
Nein & Nein & $Prob_4$ \\
|
|
\end{tabular}
|
|
\subsubsection*{Staerke/Aussagekraft von Beweisen}
|
|
\[ Staerke\;des\;Beweises = \frac{Prob_1( E_1 | H_1 )}{Prob_2( E_1 | H_2 )} \]\\
|
|
Also z.B. wenn die Wahrscheinlichkeit von $Prob_1$ (war am Tatort und Beweise vorhanden) gleich
|
|
$0.4$ und $Prob_2$ (war am Tatort und keine Beweise vorhanden) gleich $0.6$ waere die Staerke
|
|
des Beweises $0.66$. Offensichtlicherweise, wenn nun $Prob_1 >> Prob_2$ ist der Beweis sehr
|
|
stark. Mit der gleichen Logik gilt fuer das Nichtvorhandensein von Beweisen das Gegenteil, also
|
|
das wenn $Prob_3 >> Prob_4$ der Beweis sehr schwach ist.
|
|
\section{Live-Analyse}
|
|
\subsubsection{Fluechtige Daten}
|
|
Informationen/Spuren die selbst bei dauerhafter Stromzufuhr erhalten bleiben (im engen Sinne) und solche die mit unterbrochener Stromzufuhr verloren gehen. Alle anderen werden als persistent bezeichnet.
|
|
\begin{itemize}
|
|
\item Inhalte Cache, Hauptspeicher, CPU-Register
|
|
\item Netzwerkverkehr, Puffer in Netwerkhardware, offene Netzwerk Verbinndungen
|
|
\item laufende Prozesse, angemeldete Benutzer, offene Dateien
|
|
\end{itemize}
|
|
Spuren muessen:
|
|
\begin{itemize}
|
|
\item identifiziert
|
|
\item gesichert
|
|
\item falls eine Sicherung nicht moeglich ist dokumentiert werden
|
|
\end{itemize}
|
|
\subsubsection{Gruende fuer Live-Analyse}
|
|
\begin{itemize}
|
|
\item Beschleunigung der Tot-Analyse
|
|
\item Sicherung von sonst verlorenen Spuren
|
|
\item Umgehung von Festplattenverschluesselung
|
|
\end{itemize}
|
|
\subsubsection{Moeglichkeiten}
|
|
\begin{itemize}
|
|
\item Nutzung der Hardware des zu untersuchenden Systems (Live-CD)
|
|
\item Nutzung von Hardware \textbf{UND} Software
|
|
\end{itemize}
|
|
\subsubsection{Probleme}
|
|
\begin{itemize}
|
|
\item System wird Veraendert
|
|
\item Aktivitaeten muessen dokumentiert werden (z.B. Videoaufzeichnungen)
|
|
\item System kann sich wehren (bei Nutzung des Betriebssystemes sowieso, aber im
|
|
schlimmesten Fall auch die Hardware)
|
|
\item einige, z.B. Rootkits koennen im laufenden Betrieb nicht zuverlaessig erkannt werden
|
|
|
|
\end{itemize}
|
|
\subsubsection{Sniffing}
|
|
Mitlesen des Netzwerkverkehrs, nur schwer bis gar nicht durch Maleware manipulierbar, allerdings Verschluesselung moeglich, was wiederum bedeutet, dass nur Metadaten gesammelt werden koennen.
|
|
\subsubsection{Hauptspeichersicherung}
|
|
\begin{itemize}
|
|
\item eingesetzte Werkzeuge soll System nicht veraendern (Integirtaet)
|
|
\item gesicherte Information sollen den RAM korrekt repraesentierten (Korrektheit)
|
|
\item wie wird die Sicherung durch laufden Aktivitaeten beeinflusst (Atomaritaet)
|
|
\end{itemize}
|
|
Man muss bedenken, dass sich der Hauptspeicher im laufenden System staendig aendert und in der
|
|
Regel nicht Atomar gedumpt werden kann. Deshalb dumpt man in der Regel Teile, die zusammen mit
|
|
einem
|
|
Zeitstempel gespeichert werden.\\\\
|
|
\textit{Ein Hauptspeicherabbild ist korrekt, falls alle Werte, die das Abbild enthaelt, die
|
|
Werte sind, die zum Speicherzeitpunkt an der entsprechenden Stelle im Hauptspeicher standen.}\\\\
|
|
Damit ist ein Abbild konsistent, wenn das Hauptspeicherabbild, das oft als \textit{Schnitt}
|
|
bezeicht korrekt ist.
|
|
\subsubsection{Technische Moeglichkeiten}
|
|
\noindent \includegraphics{pics/RAM-Sicherung.png}
|
|
\begin{itemize}
|
|
\item Crashdumps unter Windows
|
|
\item Modul Hijacking unter Linux
|
|
\item Linux-sysfs (/dev/mem)
|
|
\item Fireware/DMA/Hardware allgemein
|
|
\item Snapshot bei VM
|
|
\item Linux /dev/mem ist etwas broken kriegt man aber mit kernel-modules gebacken
|
|
\end{itemize}
|
|
Aus dem Hauptspeicher-Abbild kann der Systemzustand nachvollziehbar rekonstruiert werden oder
|
|
einfach nach \textit{strings} oder \textit{magic-bytes} gesucht werden.
|
|
\subsubsection{Hauptspeicherdumps auf MAC}
|
|
Relevantes Paper: \textit{Visualization in Testing a Volatile Memory Forensic Tool}
|
|
\begin{itemize}
|
|
\item kein /dev/mem mehr auf neueren Mac's, funktioniert nicht (richtig) ohne bestimmte \
|
|
Boot-Flags und funktioniert nicht auf einigen Intel-iMacs
|
|
\item auf aelteren MACs produziert ein \textit{dd} auf /dev/mem ein korrektes und
|
|
konsistentes Haupspeicherabbild, allerdings auf Kosten von verloren (nicht mehr genutzten,
|
|
aber vielleicht trotzdem noch interessanten Speicherseiten)
|
|
\end{itemize}
|
|
\subsubsection{Dotplot}
|
|
Die meisten Fehler in forensischen Tools sind systematischer Natur, die Leute die dieses Paper
|
|
oben geschrieben haben, haben effektiv jede Speicherseite gehasht und dann, die Hashes der
|
|
Speicherseiten an X/Y-Achse aufgetragen und alle identischen \textit{('aehnlichen')} Felder
|
|
schwarz markiert.\\\\
|
|
Dass zwei Seiten im Speicher die gleiche SHA-Sum haben, kann eigentlich (0er und 1er-Seiten
|
|
weggefiltert) nicht sein/ist sehr
|
|
unwahrscheinlich. Das bedeutet, wenn zwei Seiten den gleichen Hash haben aka, schwarz sind,
|
|
muss das Tool in irgendeiner Weise dafuer verantwortlich sein - z.B. weil das \textit{dd}, die
|
|
Daten die es aus /dev/mem liest, cached, und dann gleich nochmal aus dem Hauptspeicher liest.\\
|
|
\textbf{Long story short: Nutzlose aber ganz lustige Spielerrei um Probleme mit forensischen
|
|
Tools die das System beeinflussen zu zeigen, Praedikat 'nicht lesenswert'}
|
|
\subsubsection{Evalution von Live-Analyse Techniken}
|
|
\begin{itemize}
|
|
\item zwei identische VMs aufsetzen und Speicher in festen Abschnitten dumpen
|
|
\item moegliche Unterschiede beider VMs ohne Interaktion ueberpruefen (vorhanden aber
|
|
gering)
|
|
\item auf der einen Live-Analyse starten auf der anderen nicht -> Unterschied = Impact der
|
|
Untersuchung
|
|
\item suprise, Unterschiedliche Tools, unterschiedlich viel Impact
|
|
\end{itemize}
|
|
\begin{itemize}
|
|
\item das gleiche geht auch mit Xen aka dem ersetzen aller relevanten aufrufe durch
|
|
Hypercalls die man dann einzeln analysieren kann, am Ende auch nichts anderes als eine VM,
|
|
nur dass man jeden einzelnen Speicher-/Systemaufruf sieht (bzw. generell jeden Aufruf den
|
|
man sehen will).
|
|
\end{itemize}
|
|
\noindent \includegraphics{pics/Integritybymemsize.png}\\
|
|
Ziehmlich dumme Grafik, denn was man hier wirklich sieht, ist dass der Memory-Footprint des
|
|
Tools gleich bliebt, was natuerlich bedeutet, dass er relativ zum Gesamtspeicher einen
|
|
kleineren Impact hat umso groesser der Speicher ist, also der Anteil des Unveraenderten
|
|
Speichers steigt. \textit{(Bild aus Folien S.99)}
|
|
\subsubsection{Messung von Atomaritaet}
|
|
\begin{itemize}
|
|
\item ein Programm schreibt fuer gewisse Zeitscheiben bestimmte Werte in den Speicher,
|
|
umso weniger verschiedene dieser Werte wir sehen umso Atomarer ist der Vorgang.
|
|
\end{itemize}
|
|
\section{Versteckte Daten in Dokumenten}
|
|
\begin{itemize}
|
|
\item Aenderungshistorie von (Word-)Dukumenten
|
|
\item Versteckte Felder (Druckerinformationen, Benutzernamen, Versionsnummer etc..)
|
|
\item "geschaerzter" Text in PDF-Dokumenten (bekommt man potentiell noch aus dem
|
|
Postscript raus)
|
|
\item Thumbnails/unbekannte EXIF-Daten (nach Zuschneiden eines Bildes kann eine Version
|
|
des urspruenglichen Bildes noch in den EXIF-Daten vorhanden sein, weil das
|
|
Bildbearbeitungsprogramm diese, z.B. nicht parsen konnte)
|
|
\item Informationen ueber Kamera und verwendete Software
|
|
\item thumbd.db/Windows.edb (Tumbnails/Desktop-Search-Savefile)
|
|
\end{itemize}
|
|
\section{Freilings Weisheiten der Woche}
|
|
\begin{itemize}
|
|
\item Wenn der Zeitdruck hoch ist und das Ermittlungsziel breit bekommt man nur schwer
|
|
sinnvolle Priorisierungskriterien.
|
|
\end{itemize}
|
|
\end{document}
|