Bughunting - das Finden von Programmierfehlern in Software - ist in der
Informatik ein wichtiger Bestandteil der Softwareentwicklung. Während der
Programmierung werden Tests geschrieben, um die Software möglichst ohne Fehler
auszuliefern, denn sind die Fehler erst einmal bekannt, kann damit viel Unheil
angestellt werden. Einfach ist das Finden noch, wenn der Quelltext des Programms
vorliegt und man strukturiert an die Suche herangehen kann - mittlerweile
erledigen dies sogar andere Programme, die gezielt darauf trainiert wurden.
Liegt ein Programm nur in seiner kompilierten Form vor, wird die Fehlersuche
anspruchsvoller. Tobias Klein berichtet in seinem "Tagebuch eines
Bughunters", wie er dabei vorgeht. Sieben Beispielfälle geht er an, auf
verschiedensten Plattformen von Windows über Sun bis zum iPhone. Dabei findet
er Bugs, die nur durch das Ausführen weiterer Software auf den attackierten
Systemen ausgenutzt werden können, aber auch gefährlichere Fälle: das iPhone
wird nur durch das Aufrufen einer modifizierten Audiodatei angegriffen - solch
eine Datei kann einen Nutzer komplett überraschen, wenn er eigentlich nur auf
einen aus dem Internet geladenen Klingelton zugreifen möchte.
Neben den sieben zum Teil sehr technisch geschriebenen Fehlersuchen geht Klein
zum Schluss auch noch auf generelle Hinweise ein, wie man selbst zum Bughunter
werden kann. Dort erklärt er die grundlegenden Angriffspunkte, wie man sie mit
speziellen Programmen analysieren kann und wie ein Programmierer seine Software
gegen diese Angriffe schützen kann.
Fazit
Ein durchaus anspruchsvolles Buch! Selbst für mich als Informatik-Studenten
sind nicht alle Einzelheiten verständlich gewesen - klar, wären die Fehler so
offensichtlich, hätte es die erwähnten Bugs auch nicht gegeben. Klein gibt
einen interessanten Einblick in die Arbeit, mit der man sonst nicht in
Verbindung kommt (und angesichts der Möglichkeiten, die einem böswilligen
Hacker beim Ausnutzen der Fehler auch nicht in Verbindung kommen möchte!).
Vorgeschlagen von Nico Haase
[Profil]
veröffentlicht am 28. April 2010 2010-04-28 10:33:22