Pentesting: Nutzen, Rechtliches und Kosten

news

Obwohl die DSGVO bereits vor einiger Zeit in Kraft getreten ist, sind sich viele Unternehmen immer noch unsicher, wie sie interne Prozesse mit den gesetzlichen Anforderungen in Einklang bringen können.

Es steht viel auf dem Spiel. Einzelpersonen scheinen sich des Wertes und des Schutzes ihrer eigenen Daten mehr bewusst zu sein als je zuvor..

Eine wichtige und effiziente Methode zur Verbesserung des Sicherheitsniveaus von Netzwerken und diversen Anwendungen ist der Penetrationstest.

Immer mehr Schwachstellen in Produkten des täglichen Bedarfs wie intelligenten Appliances, Routern und anderen verbundenen Geräten werden publik und Benutzer beginnen die zugrunde liegenden Verfahren (oder deren Fehlen) zu hinterfragen, um ihre privaten Informationen zu schützen. Hochrangige Sicherheitsexperten und ethische Hacker von SEC Consult haben hier einige Fragen zur Funktionsweise von Pentesting beantwortet:

  • What is Pentesting?
  • What does a pentest reveal?
  • When to test?
  • What to test?
  • What does it cost?
  • General recommendations

Was ist Pentesting und wofür ist ein Pentest gedacht?

Mittels Pentesting können Schwachstellen in Informationssystemen, bestehend aus Applikationen, Softwarekomponenten und Infrastruktur, identifiziert werden, die sonst übersehen werden könnten. Der Penetrationstest ist eine effiziente Möglichkeit zu testen, ob und wie diese Informations- oder IT-Systeme von Hackern penetriert werden können beziehungsweise für Cyberangriffe anfällig sind. Ein Softwareentwickler hat einen anderen Ansatz, andere Werkzeuge und eine andere Denkweise als ein motivierter und erfahrener Hacker oder Pentester.

Aus diesem Grund haben sich Penetrationstests (kurz: „Pentests“) als zeitsparende Sicherheitsüberprüfung etabliert. War diese Vorgehensweise vor einigen Jahren vor allem in sehr IT-lastigen Branchen wie dem Finanz- oder Telekommunikationssektor üblich, ist Pentesting durch die fortschreitende Digitalisierung für alle Branchen zumindest ratsam, meist sogar notwendig.

Es gibt immer etwas zu finden.
Johannes Greil, SEC Consult Vulnerability Lab

Es sollen möglichst viele Sicherheitslücken gefunden werden. Diese können sowohl Konfigurationsprobleme, fehlende Patches oder bis dato unbekannte Sicherheitslücken (sog. Zero-Days) sein. Die Suche eines Pentesters ist in der Regel durch das verfügbare Zeitbudget eingeschränkt, weshalb dieser Ansatz in Fachkreisen auch „Timebox“ oder „timeboxed“ genannt wird.

Ein Angreifer würde jedoch nicht aufhören, wenn er eine Applikation infiltriert hat, sondern weitermachen bis er sein eigentliches Ziel erreicht hat: Zugang zu persönlichen, klassifizierten oder anderen schützenswerten Daten, Verbreitung von Malware oder dergleichen. Egal ob es das Ziel ist, diese Daten zu stehlen oder zu einem späteren Zeitpunkt auszunutzen – all das kann die Existenz Ihres Unternehmens gefährden und zu erheblichen Reputationsverlusten führen.

Daher empfiehlt es sich, einem Sicherheitsexperten ausreichend Zeit zur Verfügung zu stellen und Pentests in gewissen Zeitabständen zu wiederholen. Nach mehreren Tausend Penetrationstests zeigt sich eindeutig: „es gibt immer etwas zu finden“.

Nicht-funktionale Anforderungen

Da es sich bei IT-Sicherheit nicht um eine funktionale Anforderung handelt, verhält sich Software möglicherweise wie beabsichtigt, kann aber dennoch kritische Sicherheitslücken aufweisen, die die Verwendung für einen Dienstanbieter und/oder Benutzer gefährden. Diese Sicherheitsanfälligkeiten können vom eigenen Code oder einer falschen Konfiguration der zugrunde liegenden Infrastruktur verursacht werden.

Ein professionell ausgeführter Pentest zeigt genau, was bei einem echten Angriff passieren könnte. Alle Organisationen, die Daten verarbeiten oder digitale Kommunikationsmethoden verwenden, sind anfällig für einen Cyberangriff. Dabei ist die Größe des der Organisation irrelevant. Wir leben in einer informationsgesteuerten, globalen Gesellschaft. Es nicht also nur darum, ob ein Angriff versucht wird, sondern wann, wie häufig und vor allem, wie erfolgreich Cyber-Angriffe überhaupt sein könnten.

Sind alle Sicherheitsüberprüfungen gleich effektiv?

Penetrationstests sind keine triviale Angelegenheit. Während das Ziel, ein Informationssystem in einem bestimmten Umfang zu beleuchten, gleich sein kann, ist das zu erwartende Ergebnis von der Methodik des Pentesters abhängig. Bei einem Black-Box-Ansatz hat das Pentesting-Team kein Vorwissen über interne Systeme und simuliert, was ein externer Hacker aus öffentlich verfügbaren Daten wissen würde. Beim „White Box“-Test hat der Tester bereits detaillierte Vorkenntnisse über System-Interna und kann deutlich effiziener arbeiten, z. B. weil Informationen nicht mühsam selbst gesucht werden müssen. Wenn nicht alle Informationen sondern nur ein Subset bekannt ist, wird als „Gray Box“ -Test bezeichnet.

Was ist ein Glassbox Test?

Um eine möglichst detaillierte Risikoanalyse durchzuführen, empfiehlt SEC Consult seinen Kunden möglichst vollständige Informationen über die Anwendung zur Verfügung zu stellen. Im Idealfall hat der Analyst sogar den Quellcode der relevanten Teile in einem vordefinierten Umfang vorliegen.

Ein Glass Box-Sicherheitsaudit ist ein Pentest mit einer (manuellen) Bewertung der unternehmenskritischen Teile des zugehörigen Quellcodes. Besonders sensible Bereiche sind zum Beispiel Datenbankverbindungen, Anmeldeverfahren, Integration externer Quellen, zentrale Eingabe- und Ausgabevalidierung und vieles mehr. Dieses Verfahren bietet eine sehr hohe Ergebnisqualität, die Kosten sind im Voraus gut einschätzbar und im Vergleich zu einem vollständigen Source-Code-Review deutlich geringer.

Welche Ergebnisse liefert ein Pentest?

Die überwiegende Mehrheit der Pentesting-Angebote am Markt bezieht sich auf die Ausnutzung bekannter Sicherheitsanfälligkeiten. Aber auch neue Schwachstellen können dazu führen, dass kritische Anwendungen akut heruntergefahren oder vertrauliche Daten gestohlen werden, bis eine solche Sicherheitslücke behoben werden kann. Im Rahmen des SEC Consult-Pentests werden daher auch bisher unbekannte, undokumentierte Sicherheitslücken aufgedeckt, die als Zero Day-Schwachstellen bezeichnet werden.

Besonders effektiv ist eine Sicherheitsüberprüfung bereits während der entscheidenden Entwicklungs- und Entwicklungsstadien.

Die teuersten Schwachstellen sind die, die durch eine schlechte Architektur oder ein schlechtes Design verursacht werden.
Ulrich Fleck, Chief Revenue Officer At SEC Consult Group

Manchmal ist ein Patch erforderlich, manchmal ist der Fehler eine Folge eines organisatorischen oder prozessualen Mangels. Durch Investitionen in regelmäßige Sicherheitsüberprüfungen und kontinuierliche Schulungen ihrer Mitarbeiter zielen technologie- und sicherheitsbewusste Unternehmen darauf ab, die Anzahl kritischen Risiken zu minimieren – ein entscheidendes Thema in der frühen Phase von Design und Entwicklung.

Ein Beispiel aus dem echten Leben

Angreifer nehmen gerne Kernsysteme wie z.b. Warenwirtschaftssystem (ERP-System) ins Visier, um Betriebsgeheimnisse und persönliche Daten von Mitarbeitern, Kunden und Partnerorganisationen abzugreifen. Durch die mittlerweile durch die EUDSGVO gesetzlich vorgeschriebene Offenlegungspflicht und hohe Geldstrafen von Aufsichtsbehörden können sich  entsprechend zu Buche schlagen. Die Risiken gehen jedoch weit über persönliche Daten oder finanzielle Einbußen hinaus. Wenn Datenbanken kompromittiert werden, kann sogar die Geschäftslogik manipuliert werden.  Dies bedeutet: gegenseitig vereinbarte Vertragsdetails, die Preisgestaltung für den Einzelhandel, Service-Level-Vereinbarungen für die Lieferkette etc. sind plötzlich geändert und die Änderung nicht nachvollziehbar. Der entstandene Schaden wird oft erst nach Monaten oder Jahren in vollem Umfang sichtbar.

Beispiele aus dem Alltag finden sich viele, darunter Bezahl-Apps (z.B: apple pay, Paypal, …), Online-Banking-Apps, Filesharing Anwendungen, Social Media, Smarthome Steuerungs Apps, CRM und ERP Apps. Es liegt in der Verantwortung des Software-Herstellers oder Service-Anbieters, sichere Produkte zu entwickeln und bereitzustellen. Weiters ist es seine Pflicht die Benutzer des Produkts auf potentielle Risiken, die aus der Unsachgemäßen Verwendung des Produktes entstehen können, aufmerksam zu machen. Dazu gehören „nicht geänderte Standard-Passwörter“ ebenso wie die unsichere Konfiguration des jeweiligen Softwareprodukts.

In einer perfekten Welt – in der praktische Penetrationstests in logischen Phasen eingesetzt werden – würden Sie den ersten Pentest nach dem Prototyp oder dem MVP ansetzen. Die zweite Phase folgt nach Abschluss des Release-Kandidaten und bevor der Produktivbetrieb aufgenommen wird, würde eine weitere Überprüfung durchgeführt werden. Dieser schrittweise Ansatz hat sich als Best Practice in der Branche etabliert und ist die kostengünstigste Methode zur Minimierung der mit der Anwendungsentwicklung verbundenen Risiken.

Wie entscheide ich, was der Pentest überprüfen soll?

Wenn Sie sich mit Pentesting noch nicht befasst haben, erklärt Ihnen ein SEC Consult-Experte gerne den Prozess in einem ersten Beratungsgespräch und hilft Ihnen dabei, den optimalen Zeitplan und mit Ihrem Budget abzugleichen. Anhand der dann vordefinierten Zeitleiste legen Sie fest, wie intensiv der Test ausfallen soll und auf welches Szenario Sie sich konzentrieren möchten (z. B. gezielte Phishing-E-Mails). Kritische, bekannte Schwachstellen sind in der Regel leicht zu finden. Daher ist es wichtig, jede Codeschicht zu untersuchen. Denken Sie daran, dass das übergeordnete Ziel eines Pentests nicht darin besteht, alles nur oberflächlich zu betrachten und zu bestätigen, dass auf den ersten Blick alles gut aussieht. Es sei denn, Sie möchten nur ein Zertifikat um Ihre Stakeholder zu beeindrucken. Die meisten Kunden möchten herausfinden, was nicht so offensichtlich ist, aber in der gesamten Organisation einen großen Einfluss haben kann.

Die beste Alternative zum Bauchgefühl des CTO

Ein guter Systemadministrator weiß normalerweise, was verbessert werden müsste, aber es fehlt ihm eventuell an praktischem Know-how für Probleme, für die es keine direkte Lösung gibt. Im Allgemeinen ist ein Pen-Test ein leistungsfähiges Werkzeug, um einen bestimmten Sicherheitsstatus objektiv zu bewerten, sodass die IT-Abteilung einen konkreten Sicherheitsstatus zusammen mit fundierten Argumenten an die nächsthöhere Unternehmensebene, in der Regel C-Level-Management, weiterleiten kann.

Was kostet ein Penetrationstest?

Zeit und Geld

Je komplexer und kritischer die Anwendung, desto höher sollte das Zeit- und Finanzierungsbudget für den Pentest sein. Beachten Sie bei der Festlegung Ihres Budgets außerdem, dass ein solches Projekt einen gewissen Konfigurations- und Koordinationsaufwand erfordert, bevor der eigentliche Test beginnen kann.

Für ein System das geschäftsrelevante Finanzdaten verwaltet, sollte (hoffentlich) ein größeres Budget für Sicherheitsüberprüfungen zur Verfügung stehen als für die statische HTML-Website der Kantine.

Fachwissen

Jeder erfahrene Angreifer würde all seine Bemühungen und sein Fachwissen einsetzen, um die schwächste Stelle im System zu finden. Im Durchschnitt kann der Pentest einer Web-App in ein paar Tagen durchgeführt werden, während z.B. das Testing eines Kundendienst-Helpdesks eines großen Telekommunikationsunternehmens Wochen dauern kann. Ein 360°-Pentest für ein DAX-Unternehmen kann leicht bis zu einer dreistelligen Anzahl von Tagen dauern. Es hängt tatsächlich vom Unternehmen und dem Projekt selbst ab: berücksichtigen Sie die Kritikalität Ihrer Anwendung, rechnen Sie mit den in der IT-Branche lokal üblichen Tagessätzen und Sie haben eine grobe Einschätzung, was Sie finanziell erwartet.

Zusammenfassung & Empfehlungen

Ein Pentest ist eine schnelle, gut geplante und relativ kostengünstige Maßnahme, um die Sicherheit eines Systems zu einem bestimmten Zeitpunkt zu analysieren. Er bietet die erforderliche Transparenz und Objektivität, um potenzielle Sicherheitsrisiken zu erkennen und zu mindern. Es ist ein Ausgangspunkt, um den Sicherheitsstatus von Anwendungen zu bewerten und zu verbessern, der häufig für die Einhaltung gesetzlicher Vorschriften erforderlich ist.

Das Auffinden möglicher Schlupflöcher erfordert Zeit, sowohl beim Testen als auch bei der Vorbereitung. Denken Sie daran: je lückenloser die Sicherheit Ihrer Systeme, umso frustrierender ist der Angriff für den Hacker. Im besten Fall verlässt ihn die Motivation und er stürzt sich auf ein einfacheres Ziel.

Jeder Test ist eine Momentaufnahme.

Da man immer an ein Zeitlimit gebunden ist, ist ein Pentest kein Beweis dafür, dass es keine Sicherheitsschwachstellen gibt oder dass alle vorhandenen Lücken gefunden wurden. Die Verbesserung alter bzw. die Einführung neuer Prozesse und das Bewusstsein für Sicherheit im gesamten Unternehmen zu entwickeln, kann sehr herausfordernd sein, ist aber langfristig lohnend. Regelmäßige Pentests, die Überprüfung von Firmware und ein angemessener Risikomanagementprozess in Ihrem Unternehmen sind ein guter Ausgangspunkt.

Mehr erfahren

Für eine individuelle Beratung wenden Sie sich einfach an unsere Experten an einem unserer Standorte.