X-Git-Url: https://git.siccegge.de//index.cgi?p=talk%2Ffrida.git;a=blobdiff_plain;f=vortrag.tex;h=75f8b2636d00094df5177df854bfc6e3d01337e2;hp=a0cbe8c7862cd8b8735c2940882a7fbc8c9bc32d;hb=HEAD;hpb=f7a9f6374a19ee0c7e9ee8dbf4e1946d751925f1 diff --git a/vortrag.tex b/vortrag.tex index a0cbe8c..75f8b26 100644 --- a/vortrag.tex +++ b/vortrag.tex @@ -14,7 +14,7 @@ %%%% September 2015 %%%% -\documentclass[12pt]{beamer} +\documentclass[12pt,aspectratio=43]{beamer} \usepackage{BeamerColor} \usepackage{textcomp} @@ -102,6 +102,35 @@ \end{frame} } +\begin{frame}{About me} + \begin{itemize} + \item Founding member of FAUST + \item CS Student in Erlangen + \item Debian Developer + \end{itemize} +\bigskip + \begin{tabular}[ht]{lcr} + \parbox{3.0cm}{ + \centering + \includegraphics[width=3.0cm]{images/faust} + } & + \parbox{4.0cm}{ + \centering + \includegraphics[width=3.5cm]{images/fau-logo} + } & + \parbox{3.0cm}{ + \centering + \includegraphics[width=2.5cm]{images/openlogo-nd} + } + \end{tabular} +\end{frame} + +\begin{frame}{Overview} + \tableofcontents{} +\end{frame} + +\input{chapters/disassembler} +\section*{} \begin{frame} \centering \includegraphics[width=.7\textwidth]{images/frida} @@ -135,109 +164,26 @@ \end{tabular} \end{frame} -\begin{frame}{Overview} - \tableofcontents{} -\end{frame} -\section{Current State} -\subsection{Disassembler Core} -\begin{frame}{Disassembler Core} - \begin{itemize} - \item Recursive Disassembler - \item MachO / PE / ELF handling - \item Whatever ISA LLVM supports, frida supports (x86, arm, POWER, - mips, \dots{}) - \item Use Symbols when available, still find \texttt{\_start} if not - \item Assembly dialect suckless\texttrademark{} configurable - \end{itemize} -\end{frame} +\input{chapters/design} +\input{chapters/implementation} +\input{chapters/vision} -\subsection{GUI} -\begin{frame}{GUI} - \begin{itemize} - \item Classical Control-Flow Diagram - \item Hyperlinked references - \item Automagic Layout - \item Grouping for functions - \end{itemize} -\end{frame} - -\subsection{Scripting} -\begin{frame}{Scripting} - \begin{itemize} - \item Plugin Interface, Plug your own! - \item GUILE bindings with access to the core datastructures - \begin{itemize} - \item Full geiser support (Connect your editor to frida when - writing scripts)! - \item Missing: wrapper for nicer interface - \end{itemize} - \item iPython currently explored - \begin{itemize} - \item Qt IPython Widget - \item Alternative socket connection - \end{itemize} - \end{itemize} -\end{frame} - -\section{Design Overview} -\subsection{Serialization} -\begin{frame}{Serialization} - \begin{itemize} - \item Storing \emph{Facts} (and later \emph{Patches}) for the Binary - \item ZIP archive with base state and linear sequence of - transactions - \begin{itemize} - \item Each transaction with enough information to reverse-apply it - \item Transactions can not only be written to disk but also - e.\,g. sent over the network to remote viewers - \end{itemize} - \end{itemize} -\end{frame} - -\subsection{QSignals} -\begin{frame}{QSignals} - \begin{itemize} - \item Only option really for the GUI part - \item Properly handles passing messages between - (Q)Threads. Disassembler already runs asyncron to the GUI and the - interpreter - \end{itemize} -\end{frame} - -\subsection{Scripting} -\begin{frame}{Scripting} - \begin{itemize} - \item Keep complex logic out of the core as far as possible - \begin{itemize} - \item finding probably functions in the text section - \item Detecting structure of \texttt{libgcc\_s} \texttt{\_start} - \end{itemize} - \end{itemize} -\end{frame} - -\section{Vision} -\begin{frame}{Vision} +\section*{} +\begin{frame}{Name Wanted} \begin{itemize} - \item LLDB - \item clang-based indexing of \texttt{/usr/include} - \item Calculation of Path-Conditions - \item XMPP PubSub based Multiplayer mode + \item Mit der AS/400-Standardsoftware Frida 4.0 \dots + \item Frida Software: FRamework for Image Dataset Analysis + \item Frida: Inject JavaScript to explore native apps on Windows, + Mac, Linux, iOS and Android + \item Die selbstlernende Antibetrugs-Software FRIDA unterstützt + Fraud-Manager \dots + \item Instrument Repair \& Calibration, Inc. is proud of our + F.R.I.D.A. asset management program. F.R.I.D.A. is a web based + software program \dots \end{itemize} \end{frame} -\begin{frame}{Name Wanted} - \begin{block}{} - Mit der AS/400-Standardsoftware Frida 4.0 \dots - \end{block} - \begin{block}{} - Frida Software: FRamework for Image Dataset Analysis - \end{block} - \begin{block}{} - Frida: Inject JavaScript to explore native apps on Windows, Mac, Linux, iOS and Android - \end{block} -\end{frame} - \begin{frame}{Questions?} \vspace*{\fill} \begin{center} @@ -245,7 +191,13 @@ \end{center} \vspace*{\fill} - Download: https://static.siccegge.de/talks/frida-FAU-2015-10-09.pdf\\ + Download: https://static.siccegge.de/talks/frida-CLT-2016-03-19.pdf\\ https://git.siccegge.de/?p=talk/frida.git \end{frame} \end{document} + +%%% Local Variables: +%%% mode: latex +%%% TeX-engine: luatex +%%% TeX-PDF-mode: t +%%% End: \ No newline at end of file