This repository has been archived on 2024-10-30. You can view files and clone it, but cannot push or open issues or pull requests.
swb6-it-sec/Lab02/documentation/format-string/format-string.tex

31 lines
1.3 KiB
TeX

\section{Part 3: Format String Exploitation}
\subsection{Exploit}
Der erste Versuch ist, viele Format-Strings als Vorname und Nachname einzugeben und das Ergebnis zu beobachten. Mit einem Debugger kann die Speicheraddresse der 3 Wichtigen Variablen ausgelesen werden.
\begin{figure}[H]
\begin{center}
\includegraphics[width=0.9\textwidth]{format-string/stack}
\caption{Vorname, Nachname und Key im Stack}
\label{fig:Vorname, Nachname und Key im Stack}
\end{center}
\end{figure}
Der Key ist im Speicher unter der Adresse 0xbffff2ec abgespeichert und kann mit dem Format String \verb|%19$i| erreicht und dezimal ausgegeben werden.
\begin{figure}[H]
\begin{center}
\includegraphics[width=0.8\textwidth]{format-string/done}
\caption{Zahl richtig geraten}
\label{fig:Zahl richtig geraten}
\end{center}
\end{figure}
\subsection{Warum so gefährlich \& was getan werden muss}
Durch einen Format String Exploit kann jede Stelle im Speicher ausgelesen werden. Damit ist die Vertraulichkeit, ein Teil der ``CIA'', gebrochen.
Gegenmaßnahmen:
Format Strings sollten immer als Teil des Programms angegeben werden, nicht als Teil der Eingabe. Außerdem könnten die Formatzeichenfolgen als konstanten deklariert werden.