Thomas Dullien
Fakultät für Mathematik » CITS » Mitarbeiter

Thomas Dullien



Forschungschwerpunkte:

  • Symmetrische Kryptographie
  • Algebraische Methoden in der symmetrischen Kryptographie
  • Kryptanalyse symmetrischer Strukturen
  • Besonderheiten für die Kryptographie interessanter Polynomringe

Reverse Engineering

Ausserhalb meines Interesses für Kryptographie habe ich einen signifikanten Teil meiner Jugend auf Probleme im Bereich "Reverse Engineering" und "Ausnutzen von Speicherkorruptionen" verwandt. Ein Teil der Resultate führte zur Gründung der Firma zynamics, die sehr spezialisierte Programme für die Programmanalyse entwickelt und vertreibt. Von besonderem Nutzen erwies es sich, Programmvergleich als ein Problem der Berechnung eines "maximalen Subgraph-Homomorphismus" zu betrachten. Dies führte dann zu folgendem:

Deutsche IT-Sicherheitspreis 2006

Eine Anwendung der oben erwähnten Programmvergleichsmethode wurde prämiert:
1. Preis - 100.000 Euro

Detektor für Trojaner


Es wurde ein weltweit einmaliges Verfahren ausgetüftelt, das schnell und effektiv auch bislang unbekannte Malware aufspürt. Das zynamics-Programm VxClass ermittelt die Funktionsstrukturen des Quellcodes (aus dem Binärcode) und erkennt durch eine Ähnlichkeitsanalyse sofort neue Viren, die auf schon bekannten Strukturen basieren.
zynamics GmbH

Publikationen im Reverse-Engineering

Since 2000, I have given lectures at a number of important IT-Security conferences. I have stopped counting a long while ago. I have removed all lectures that didn't contribute anything new (the nature of these conferences is that you give the same presentation up to three times -- in Europe, Asia, and the US):

  • [BH Europe 2000] Finding holes in closed-source software
  • [BH Windows 2001] Auditing binaries for security vulnerabilities (Included format-string bug scanning in IDC)
  • [BH USA 2001] Finding holes in COTS software (Included low-importance vulnerabilities in Checkpoint FW1)
  • [BH Europe 2001] Third generation exploits (First discussion of Win32 Heap corruptions and their abuse)
  • [BH Windows 2002] Third generation exploits on NT/Win2k platforms (More on these heap corruptions)
  • [BH USA 2002] (with M. Dowd, N. Herath, N. Meetha, C. Spencer)
    Professional Source Code Auditing (First public discussion of integer overflows - the bug class that accounted for the majority of high-profile vulnerabilities in the following years)
  • BH Federal 2003 More fun with Graphs (BinDiff / Static Analysis)
  • CanSecWest 2003 Automated bug detection in binaries (Static Analysis, Partial type reconstruction)
  • BH USA 2003 More fun with Graph (BinDiff / Static Analysis / Differential Debugging)
  • BH Europe 2003 Data flow analysis on binaries (an intermediate SPARC-like language and DFlow on top of it)
  • BH Asia 2004 Diff / Navigate / Audit (Executable comparison, differential debugging, static analysis)
  • CanSecWest 2005 Binary Difference Analysis (Patch analysis and input crafting)
  • BH Europe 2005 (with R. Rolles) Compare, Port, Navigate (Further patch analysis improvements)
  • BH Federal 2006 Attacks on uninitialized local variables (First public discussion of the topic)
  • CanSecWest 2006 More on uninitialized local variables
  • BH USA 2006 Reverse Engineering: New challenges, new tools (List of open problems in reverse engineering -- some partially solved since, some not)
  • BH Japan 2007 Automated structural classification of malware