\documentclass{article}
\usepackage{charter}
\usepackage{hyperref}
\begin{document}
\section*{Homework 3}
\begin{enumerate}
\item What does the principle of least privilege say?
\item In which of the following situations can the access control mechanism of Unix
file permissions be used?
\begin{itemize}
\item[(a)] Alice wants to have her files readable, except for her office mates.
\item[(b)] Bob and Sam want to share some secret files.
\item[(c)] Root wants some of her files to be public.
\end{itemize}
\item What should the architecture of a network application under Unix
be that processes potentially hostile data?
\item How can you exploit the fact that every night root has a cron
job that deletes the files in \texttt{/tmp}? (Hint: cron-attack)
\item What does it mean that the program \texttt{passwd} has the \texttt{setuid}
bit set? Why is this necessary?
\item Assume format string attacks allow you to read out the stack. What can you do
with this information? (Hint: Consider what is stored in the stack.)
\item Assume you can crash a program remotely. Why is this a problem?
\item How can the choice of a programming language help with buffer overflow attacks?
(Hint: Why are C-programs prone to such attacks, but not Java programs.)
%\item How can a system that separates between \emph{users} and \emph{root}
%be of any help with buffer overflow attacks?
\end{enumerate}
\end{document}
%%% Local Variables:
%%% mode: latex
%%% TeX-master: t
%%% End: