Penetration Tests sind individuell auf den Kunden und dessen Auftrag abgestimmt. Daher ist es wichtig, einige immer wiederkehrende Stolperstellen zu umgehen, um für beide Seiten einen reibungslosen Ablauf und ein befriedigendes Ergebnis zu erreichen. Organisatorische Details vorher klären​ Ein typisches Problem in der Praxis ist eine mangelnde Vorbereitung beiderseits – sowohl des Pentesters als auch des Auftraggebers. So wird im Vorfeld z.B. nicht ausreichend geklärt, wie der erste Tag abläuft und welche Voraussetzungen zu erfüllen sind. Je nach Szenario benötigt der Pentester Test-Accounts und Zugänge sowie verschiedene Dokumente und – wenn es sich nicht um einen externen Test handelt – oft nicht zuletzt einen Arbeitsplatz im Unternehmen mit entsprechendem Netzzugang zu den Zielsystemen. Es kommt leider häufig vor, dass insbesondere der erste Tag eines Pentests eher unproduktiv abläuft, da verschiedene organisatorische und technische Voraussetzungen geschaffen werden müssen, was im Vorfeld versäumt wurden. Daher sollte der Pentester dem Auftraggeber rechtzeitig vorher eine Checkliste an die Hand geben, die seine vorbereitenden Aufgaben enthält und sicherstellen, dass der Penetration Test am ersten Tag effektiv beginnen kann. Insbesondere Kontaktdaten aller Verantwortlichen sollten bekannt sein, damit Probleme schnell und zielgerichtet gelöst werden können. Komunikation mit dem Kunden Insbesondere externe Pentester werden von internen Mitarbeitern im Netzwerk- und Sicherheitsbereich oftmals nicht als »Freunde« empfangen. Stattdessen schlägt ihnen eine ordentliche Portion Skepsis entgegen und die Kooperationsbereitschaft hält sich in Grenzen, da sich die Verantwortlichen Administratoren leider in einigen Fällen durch den Pentest bedroht fühlen und somit einige Befindlichkeiten zu berücksichtigen sind. Hier gilt es, die Zielstellung klar zu kommunizieren und vorab sicherzustellen, dass alle Beteiligten von ihren Vorgesetzten instruiert wurden – immer vorausgesetzt, es handelt sich um einen internen Test im Hause des Kunden. Bei externen Black-Box-Tests ist diese Thematik natürlich entschärft. Wichtig ist, die verantwortlichen IT-Mitarbeiter, deren Systeme im Rahmen des Pentests geprüft werden sollen, ins Boot zu holen. Niemand möchte bloßgestellt werden und seine Fehler vorgeführt bekommen. Hier sollten sowohl Geschäftsführung als auch der Pentester nach Möglichkeit klar kommunizieren, dass es nicht darum geht, jemandem seine Fehler aufzuzeigen und ihn an die Wand zu stellen, sondern um eine inhaltliche Analyse der IT-Sicherheit mit anschließender Optimierung. Mit anderen Worten sollten die betreffenden Mitarbeiter ins Boot geholt werden und auch als Pentester darf man sich hier durchaus auch einmal löblich äußern, wenn eine Komponente besonders gut gewartet oder ein Prozess sicher implementiert ist. Vorbereitung auf Seiten des Pentesters​ Abgesehen von den bisher geschilderten Problemen, die in erster Linie auf Kundenseite auftreten, kann auch der Pentester seinen Beitrag für einen reibungslosen und effizienten Ablauf leisten. Er sollte sich gut auf seinen Auftrag vorbereiten und im Vorfeld bereits einen genauen Ablaufplan festlegen. Je nach Vorkenntnissen über das Ziel kann das Vorgehen detailliert geplant werden. In diesem Sinne sollte er auch schon in den ersten Gesprächen mit dem Kunden so viele Informationen sammeln wie möglich. Im Anschluss kann der Pentester einen Pentest-Plan und entsprechende Checklisten erstellen. Wichtig ist auch die Prüfung des eigenen Equipments – nichts ist peinlicher, als ohne entsprechende Ausrüstung beim Kunden anzukommen und festzustellen, dass der eigene Laptop eine veraltete Version der benötigten Software hat oder bestimmte Hardware-Komponenten, wie z.B. der HackRF One (https://greatscottgadgets.com/hackrf/one/) oder eine Verstärkerantenne fehlen. Virtuelle Labs bereitstellen​ In vielen Szenarien ist es dem Kunden möglich, seine Produktivsysteme in einer virtuellen Umgebung zu klonen. Dies hat den großen Vorteil, dass auch bei aggressiveren Tests kein echter Schaden angerichtet werden kann und erhöht ggf. die Aussagekraft eines Pentests. So kann der Ethical Hacker die Zielsysteme mehr oder minder ohne Rücksicht auf Verluste angreifen und austesten. Falls das betreffende System abstürzt, wird ein Snapshot eingespielt und von vorn begonnen. In dieser Art kann der Pentester herausfinden, welche Schwachstellen auf dem Produktivsystem in welcher Form ausgenutzt werden könnten, ohne die Integrität der Produktivumgebung zu beeinträchtigen. Je nach Auftrag und Szenario wird dies jedoch nicht mit allen Zielsystemen möglich sein, so dass dieser Ansatz eine wertvolle Hilfe bei der Durchführung eines aussagefähigen Pentests sein kann, aber in den meisten Umgebungen nur als Ergänzung zum Einsatz kommen wird. Aufgrund der Abhängigkeiten von anderen Systemen ist es auch möglich, dass die Komplexität der Produktionsumgebung nicht vollumfänglich abgebildet werden kann und somit die Aussagekraft eingeschränkt wird. Weitere Tipps zur Durchführung​ Der Pentester wird engagiert, um eine möglichst umfassende und treffende Analyse zur Angreifbarkeit der IT-Systeme zu erstellen. Während Vulnerability-Scanner nach Schema-F vorgehen, sind echte Hacker unberechenbar und gehen Wege, die nicht immer einfach vorhersehbar sind. In dieser Art sollte auch ein Pentester denken und arbeiten: Er sollte dorthin schauen, wo es niemand erwartet. In einigen Fällen existieren Schwachstellen an Punkten, die niemand erwartet hätte. Daher ist es unbedingt erforderlich, über den Tellerrand auch nach links und rechts zu schauen und nach ungewöhnlichen Mitteln und Wegen zu suchen. In diesem Zusammenhang sollte der Pentester nichts als gegeben hinnehmen! Wenn der Admin eines Systems Stein und Bein schwört, dass er das System übertrieben gehärtet hat und selbst andere Pentester schon daran gescheitert wären, sollte der Pentester dieses System ebenso intensiv testen, als ob er diese Information nie erhalten hätten. Er sollte auf keinen Fall davon ausgehen, dass der Versuch Zeitverschwendung sei. Letztlich ist es nicht bekannt, was der Admin konkret gemacht hat und was der damalige Pentester versucht hat. Auch die eigenen Annahmen sollten immer hinterfragt werden. Kein Test ist zu dumm, keine Phishing-Mail zu blöd, als dass sie nicht doch die Chance beinhalten, zu einem überraschenden Ergebnis zu gelangen. Last but not least gelangen wir an einen Punkt, den der Pentester nicht selbst in der Hand hat und auch wenn dies zunächst als Vertriebsaktivität gedeutet werden könnte: Es ist wichtig, Penetration Tests regelmäßig zu wiederholen. Häufig zeigt sich, dass ein Re-Test z.B. nach drei Monaten zum einen bereits bekannte Schwachstellen erneut aufzeigt und zum anderen neue Schwachstellen hinzugekommen sein könnten. Durch einen angekündigten, erneuten Test werden die Verantwortlichen unter den positiven Druck gesetzt, die zuvor gefundenen Schwachstellen zu beseitigen.