Assignment-5 #2
1 changed files with 18 additions and 0 deletions
|
@ -70,4 +70,22 @@
|
||||||
\sheetnr{5}
|
\sheetnr{5}
|
||||||
% <-- Anpassen %
|
% <-- Anpassen %
|
||||||
\begin{document}
|
\begin{document}
|
||||||
|
\begin{exercise}[Crackme]{2}
|
||||||
|
Die Funkion \lstinline{verify_key} leitet das Passwort aus einem geheimen Schlüssel ab, indem der ASCII-Wert jedes Zeichens, abhängig von dessen Position, verändert wird.
|
||||||
|
Dem ASCII-Wert jedes Zeichens wird der doppelte Positionswert, bei 0 startend, abgezogen.
|
||||||
|
|
||||||
|
Die Funktion gibt den Wert \lstinline{1} zurück, falls das abgeleitete Passwort mit der konstanten Zeichenkette \lstinline{MMNNQ} übereinstimmt.
|
||||||
|
Andernfalls wird der Wert \lstinline{0} zurückgegeben.
|
||||||
|
\end{exercise}
|
||||||
|
|
||||||
|
\begin{exercise}[System Calls und Shellcode]{3}
|
||||||
|
\begin{subexercises}
|
||||||
|
\item Ein Linux-Syscall auf der x86-Architektur ist als i386-Architektur in \lstinline{syscall(2)} der Linux Manpages spezifiziert.
|
||||||
|
oohhh
|
||||||
|
Dabei wird die Zahlenkennung des Syscalls in Register eax übergeben.
|
||||||
|
Bis zu 6 Argumente können in den Registern \lstinline{ebx}, \lstinline{ecx}, \lstinline{edx}, \lstinline{esi}, \lstinline{edi} und \lstinline{ebp} übergeben werden.
|
||||||
|
Mit dem Aufruf der Instruktion \lstinline{int $0x80} wird der Syscall ausgelöst und der Syscall-Handler im Kernel durch Auslösen eines Interrupts ausgeführt.
|
||||||
|
Ausgaben des Syscalls werden in den Registern eax und edx zurückgegeben.
|
||||||
|
\end{subexercises}
|
||||||
|
\end{exercise}
|
||||||
\end{document}
|
\end{document}
|
||||||
|
|
Loading…
Reference in a new issue