Entwickler vs. Tester Marc Ruef | 16.11.2009 Ein Arbeitskollege sagte mal zu mir: "Wenn man etwas kann, dann entwickelt man Neues. Wenn man das nicht kann, dann lehrt man Dinge. Und wenn man das auch nicht kann, dann wird man halt Kritiker." Diese Worte muntern mich immerwieder auf, wenn ich irgendwo eine inhaltslose oder polemische Kritik zu meiner Person oder einer Arbeit von mir lese. Und doch muss ich eingestehen, dass man als Security Consultant im Allgemeinen oder als Penetration Tester im Speziellen auch eigentlich "nur" ein Kritiker ist. Vielleicht kennt der eine oder andere den legänderen Tester Bob Bastard, der in der zweiten Folge der ersten Staffel von Dilbert (http://www.imdb.com/title/tt0118984/episodes#season-1) (Testing, Original Air Date 22 February 1999) vorgekommen ist: Ein verbitterter Mann, der seine latente Aggression gegen sich und die Welt in seinen vernichtenden Abnahmetests auslässt. Einerseits verehren ihn die Entwickler (vor allem Wally), weil er alles kaputt machen kann. Andererseits ist er gefürchtet und gehasst sogleich (vor allem von Dilbert). Dies klint so wie ein Auszug aus dem Leben eines so manchen Penetration Testers. Dass den Security-Leuten nicht immer Freundlichkeit entgegenschlägt, wird besonders aus einem Posting (http://lists.immunitysec.com/pipermail/dailydave/2009-July/005823.html) von Linus Torvalds offensichtlich, das am 27. Juli 2009 auf DailyDave veröffentlicht wurde. Darin reagiert er auf die Aufforderung, dass zwischen normalen Bugfixes und sicherheitsbezogenen Bugfixes unterschieden werden sollte: "Ok, so this is a perfect example of the kind of IDIOTIC blathering that I hate to hear from security people. (...) I absolutely despise most security people, because they are idiots who do not understand development. They are idiots who do not understand basic facts. They are idiots, who think the world is some kind of black-and-white place where you can sort bugs into 'security' and 'not security'." Die Authentizität des Postings konnte ich zuerst nicht verifizieren. Und deshalb wollte ich mich zurst auch gar nicht darauf fokussieren Kritik daran zu üben, ob und inwiefern man Leute mit einer anderen Sichtweise pauschal als Idioten bezeichnen sollte (vor allem, wenn man selbst ihnen Pauschalisierung vorwirft). Dennoch schneidet Torvalds eine Diskussion an, die in ihren Grundzügen nicht falsch ist. So mancher, der sich auf den Bereich IT-Security fokussiert vergisst, dass IT-Security nicht um seiner selbst Willen betrieben wird. Sicherheit ist eine Komponente, die ohne ein Produkt in der Realität nicht existieren kann (als losgelöstes Gedankenspiel akademischer Natur hingegen schon). So hat das Absichern einer Lösung stets den Schutz von Mechanismen und Informationen zum Ziel. Ohne diese würde das Schützen nur mehr wenig Sinn machen. Da der Bereich der IT-Security durch neue Produkte und neue Technologien immerwährend vielschichtiger und komplexer wird, muss man sich immer mehr auf diesen fokussieren. So bleiben den meisten Security Consultants und Penetration Testern nicht mehr viel Zeit, sich intensiv und umfassend mit Development und Administration auseinanderzusetzen. Es ist schon schwierig genug sein Wissen bezüglich Pufferüberlauf-Schwachstellen auf exotischen Plattformen frisch zu halten. Da kann man dann nicht auch noch nebenher alle neuen Programmiersprachen lernen und sich mit den Release Candidates der neuesten Betriebssysteme auseinandersetzen. Dieses Fehlen des Blickwinkels des Gegenübers gipfelt sodann schnell in einem Interessenskonflikt, bei dem der Betrieb die Sicherheit nicht akzeptieren will, weil die Sicherheit den Betrieb bzw. die Schwierigkeiten dessen angeblich nicht genügend zu schätzen weiss. Die Eskalation mit emtionalen Beschimpfungen ist in diesem Fall nicht intelligent, da nicht problemlösend. (In den meisten anderen Fällen übrigens ebenso wenig.) Wie so oft im Leben sollte eine Kommunikation angestrebt werden, da nur durch diese die erforderliche Transparenz für gegenseitigen Respekt geschaffen werden kann. Ich sage jedem Administrator, dessen Installation ich analysiere, dass ich niemals im Leben seine Arbeit einfachso auch mal schnell machen könnte. Ein Netzwerk zu administrieren heisst nicht nur, mit ifconfig durch die Gegend zu rennen. Es heisst zum Beispiel die diametral entgegengesetzten Bedürfnisse von Management und Benutzern unter einen Hut zu bringen. Zeitgleich füge ich aber zudem mit Nachdruck an, dass er mir bezüglich meiner Tätigkeit den gleichen Respekt entgegenzubringen hat. Penetration Testing heisst ebenso wenig nur, mit nmap durch die Gegend zu stampfen. Es heisst eine Vielzahl an Mechanismen in ihrem gesamten Zusammenspiel erkennen zu könenn. Auch wenn ich das Bestreben von Torvalds sehr schätze, sollte er in dieser Hinsicht vielleicht ebenfalls einen Strategiewechsel in Betracht ziehen. Er wäre schliesslich nicht der erster Held der Open-Source Szene, der sich durch sein Verhalten unbeliebt macht. Damit würde er allen schaden: Sowohl Entwicklern als auch Testern.