Es ist ein sehr spannender Beruf, der täglich eine neue Herausforderung mit sich bringt. Als Penetration-Tester geht es darum, Sicherheitslücken in diversen Anwendungen zu finden. Vereinfacht ausgedrückt darf man als Penetration-Tester legal hacken und wird dafür bezahlt. Damit man jedoch ein erfolgreicher Penetration-Tester sein kann, sollte man einige Eigenschaften mitbringen. Wir haben unsere 7 wichtigsten Pentester Skills zusammengefasst, die jeder Penetration-Tester mitbringen sollte.
1. Hardware- und Netzwerk-Kenntnisse
Die Aufgabe als Pentester ist es bspw. in ein System einzudringen, oder Daten zu erlangen für die der Nutzer nicht autorisiert ist. Damit einzelne Systeme angegriffen werden können ist es zwingend notwendig, dass der Pentester weiß wie verschiedene Hardware aufgebaut ist. Dazu gehören Router aber auch verschiedene Server-Architekturen.
Neben den Kenntnissen der Hardware ist es wichtig zu wissen, wie verschiedene Systeme miteinander kommunizieren. Häufig sind Netzwerke in Unternehmen unsicher aufgebaut, wodurch wir als Pentester in der Vergangenheit viele Schwachstellen finden konnten. Damit Pentester solche Schwachstellen jedoch erst finden können, muss ein Grundkenntnis vorhanden sein, wie die vorhandene Hardware als auch das Netzwerk arbeitet.
2. Software- und Service-Kenntnisse
Neben dem Aufbau der Hardware, sollte jeder Pentester Skills im Bereich von Software haben. Um Schwachstellen in einem System zu finden werden häufig automatisierte Programme verwendet. Zu wissen wie solche Programme funktionieren ist fundamental, um diese Programme richtig zu verwenden.
Zu den verschiedenen Software-Kenntnissen sollte der Aufbau der verschiedenen Betriebssysteme bekannt sein. Die meisten Systeme, auf denen aktiv gearbeitet wird laufen mit dem Betriebssystem Windows. Die meisten Server dagegen laufen mit einer UNIX-Version. An welchen Stellen im jeweiligen Betriebssystem Schwachstellen vorhanden sein können, sollte jeder Pentester wissen.
Mit den oben genannten Kenntnissen können Schwachstellen an Systemen selber gefunden werden, jedoch benutzen viele Systeme verschiedene Services wie z.B. FTP. Die bekanntesten Services und auf welchen Ports diese jeweils laufen ist wichtig zu wissen, damit genau in diesen Anwendungen Schwachstellen gefunden werden können.
3. OSINT Technologien
Der Begriff OSINT umfasst viele Informationen und Wege, diese zu erlangen. Da es den Rahmen dieses Beitrags sprengen würde, genau auf den Begriff OSINT einzugehen, bleiben wir hier dabei, die wesentlichen Eigenschaften zusammen zufassen, die ein Pentester in diesem Bereich mitbringen sollte.
Jeder Pentester sollte Erfahrungen darin haben, auf welcher Seite welche Informationen gefunden werden können. Webseiten wie bspw. whois oder dnsdumpster sollten bereits besucht worden sein, damit man als Pentester Erfahrungen mit OSINT-Quellen gesammelt hat. Denn alle Informationen die aus öffentlichen Quellen gesammelt werden können, können auch von Kriminellen verwendet werden. Daher sollte in einem professionellen Pentest nach Schwachstellen gesucht werden, die mit OSINT-Informationen gefunden werden können.
4. Alles rund um das Passwort
Das Passwort ist immer noch die Authentifizierungsmethode Nummer 1. Als Pentester ist es ein sehr wichtiger Skill, dass wir wissen, wie der gesamte Ablauf vonstatten geht, wenn ein Nutzer sich mit einem Passwort anmeldet. Passwörter sollten verschlüsselt übertragen werden und gehasht auf der Datenbank gespeichert sein. In diesem gesamten Prozess gibt es mehrere Stellen, an denen häufig Fehler gemacht werden.
Damit ein Pentester diese Fehler ausnutzen kann muss das technische Wissen über die im Hintergrund laufenden Prozesse vorhanden sein.
Die bislang genannten Kenntnisse kann jeder durch ein Studium, eine Ausbildung oder durch das eigene Lernen erlangen. Viele Bücher, die sich mit dem Bereich Penetration-Testing befassen, behandeln in den ersten Kapiteln die oben genannten Grundlagen. Ein sehr bekanntes Buch, welches unter Penetration-Testern als “must have” gilt, erklärt auf den ersten 70 Seiten Grundlagen in den verschiedenen Bereichen wie z.B. HTTP-Protokolle.
Die letzten 3 Pentester-Skills die wir nun auflisten sind Eigenschaften, die man nicht direkt “lernen” kann.
5. Soft skills
Als Penetration-Tester arbeitet man nahezu immer im Team. Es gilt, ein System auf alle möglichen Schwachstellen zu analysieren. Häufig werden komplizierte Schwachstellen erst entdeckt, wenn verschiedene Ideen zusammengebracht werden. Es ist dementsprechend eine wichtige Eigenschaft, kommunikativ zu sein. Neben der Fähigkeit in einem Team arbeiten zu können ist es wichtig geduldig zu sein.
Es kann vorkommen, dass in großen Systemen keine große Schwachstelle vorhanden ist, oder man in mehreren Tagen kaum etwas findet. Man sollte die Fähigkeit mitbringen immer wieder mit voller Motivation nach einer neuen Schwachstelle zu suchen.
Hat man am Ende eines Tests mehrere Schwachstellen gefunden, gilt es diese verständlich in einem Bericht zu verfassen. Das Schreiben dieses Berichts ist für viele Pentester nicht der spannendste Teil der Arbeit, dennoch ist es wichtig, diese Arbeit mit voller Konzentration zu machen, da die Kunden mit diesem Bericht versuchen, die gefundenen Schwachstellen zu beseitigen.
6. Sorgfalt
Eine weiterer Pentester Skill ist die Sorgfalt. Wie wichtig eine gute Sorgfalt wirklich ist, fällt meist erst dann auf, wenn es zu spät ist. Bei einem Penetration-Test kommt es häufig dazu, dass jeder Pentester sich ein System vornimmt und dieses zu Beginn sorgfältig scannt. Werden diese Ergebnisse, die der Scan erzeugt, nicht sorgfältig gespeichert, kann es vorkommen, dass diese am Ende für den Report fehlen.
Problematisch wird dies besonders, wenn ein Penetration-Test vor Ort durchgeführt wird. Hierbei analysiert das Pentester-Team das System aus Sicht eines Mitarbeiters aus dem Firmennetzwerk. Werden die Testergebnisse, die vor Ort durchgeführt wurden, nicht gespeichert, können diese später nicht reproduziert werden.
7. Informiert bleiben
Es ist wichtig, in der IT-Sicherheit stetig informiert zu bleiben. Es gibt täglich neue Schwachstellen die gefunden werden, oder neue Versionen von bekannter Software. Damit bei jedem Penetration-Test die Systeme auf den aktuellen Sicherheitsstand analysiert werden, ist es wichtig aktuelle Informationen zu kennen.
Es gibt verschiedene Quellen, die einem aktuelle Informationen geben. Unser täglicher Blog ist eine gute Informationsquelle, aber auch Seiten wie Heise, oder einige Reddit-Foren bieten Informationen.
Für diejenigen, die lieber per Podcast informiert werden möchten, können wir unseren Sevencast empfehlen. In diesem Podcast fassen wir jeden Samstag alle Blogartikel der vergangen Woche zusammen. So sind Sie in ca. 30min über aktuelle Betrugsmaschen und neuen Informationen aus der IT-Sicherheit informiert.