Audit-Etappen: Von der Bestandsaufnahme zur Detailanalyse

Audit-Etappen: Von der Bestandsaufnahme zur Detailanalyse

Artikel erschienen in IT Magazine 2021/06

Landung geglückt – Aktivierung und Ausbreitung

Ein gutes Sicherheitskonzept geht davon aus, dass irgendwann ein Angreifer oder ein Agent in Form eines Schadprogrammes im Firmennetz landet. Auch wenn die Intrusion schlussendlich nicht erfolgreich war, empfiehlt sich die Durchführung des Cyber Security Audits unter Annahme eines eingedrungenen Angreifers. So lässt sich die Wirksamkeit des Sicherheitskonzeptes für diesen Fall verifizieren.

Ein Schadprogramm muss zunächst aktiviert werden, damit es mit seiner Aufgabe (Lateral Movement) beginnen kann. Ob dies gelingt, hängt von den lokal auf dem Rechner vorliegenden Gegebenheiten ab. Die Aktivierung lässt sich durch Systemhärtung, die sichere Konfiguration von Office-Applikationen oder auch durch tiefer im System verankerte Produkte wie Anti-Virus oder Endpoint Detection and Response verhindern oder erschweren. Der Auditor kann direkt auf dem Rechner prüfen, ob Aussicht auf die erfolgreiche Aktivierung eines Schadprogrammes besteht.

Dann wird angenommen, dass die Aktivierung gelungen ist und das Schadprogramm versucht, zusätzlichen Code oder Instruktionen aus dem Internet nachzuladen. Der Auditor sucht also, ausgehend vom angenommenen Landepunkt des Schadprogramms, nach Verbindungsmöglichkeiten ins Internet. Dabei beschränkt er sich nicht auf das Auffinden von Direktverbindungen durch die Fire­wall, sondern prüft auch mögliche ­Umwege über den Web-Proxy und verschleierte Pfade wie DNS- oder ICMP-Tunneling. Die gefundenen Kommunikationskanäle werden zudem auf ihre Eignung zum Nachladen von weiterem schädlichem Code geprüft. Es kann beispielsweise sein, dass die Verbindung via Web-Proxy zwar möglich ist, der Download von zusätzlichen Werkzeugen jedoch durch die gleiche Komponente verhindert wird.

Zusätzlich prüft der Auditor, welche Systeme und Dienste im internen Netz vom Landepunkt aus gesehen erreichbar sind. Im Unterschied zu einem echten Angreifer sind dem Auditor hier durch das zur Verfügung stehende Auftragsbudget enge Grenzen gesetzt. Je mehr Zeit zur Verfügung steht, umso eher kann sich der Auditor wie ein echter Angreifer verhalten und zum Beispiel auch die Möglichkeiten zur Ausbreitung auf Systeme von Kunden des Angegriffenen austesten. Tatsächlich sind im Moment Angriffe, die sich auf Systeme von Kunden oder Zulieferer ausweiten, ein grosses Thema in der Supply Chain Security oder in der Industrie 4.0.

Somit hat sich der Auditor einen ersten Überblick zu den Möglichkeiten der Aktivierung (Execution), Verbindungsaufnahme (Command & Control) und Ausbreitung (Lateral Movement) verschafft.

Aus dieser ersten Bestandesaufnahme kann der Auditor auf grundlegende Schwachstellen in der Systemhärtung, beim Internetzugang und bei der Netzwerktopologie hinweisen und initiale Massnahmen vorschlagen, um die Sicherheit allgemein zu verbessern.

Ein echter Angreifer kann sein Ziel über Tage, Wochen oder Monate verfolgen. Dem Auditor sind in dieser Hinsicht enge Grenzen gesetzt. Ausgehend von der ersten Bestandesaufnahme, welche sich in einem überschaubaren Zeitrahmen durchführen lässt, kann das Budget für weitere Aktivitäten entlang der Cyber Kill Chain erweitert werden. Beispielsweise für die Wahl eines neuen Landepunktes oder mit dem Ziel, Administrator zu werden (Privilegieneskalation).

Ins Detail – Audits für Webapplikationen

Online-Dienste sind gezwungenermassen gegenüber dem ganzen Internet exponiert, auch wenn sich der Kundenkreis nur aus einem winzigen Bruchteil aller Internet-Teilnehmer zusammensetzt. Die Bedeutung von modernen Webapplikationen für das Unternehmen erschliesst sich bereits aus ihrer Benennung: Support-Portal, Online-Shop, Bewerbungsplattform, Online-Schalter. Am «traditionellen» Gemeindeschalter, bei der Versicherungsagentur oder im Ladengeschäft hat der Anwender keinen direkten Zugang auf die Geschäftssysteme, denn die Applikationen werden durch geschultes Personal bedient. Bei einem Online-Dienst ist aber der Browser des Anwenders quasi das Applikationsterminal. Die korrekte Bedienung durch geschultes Personal oder die eng begrenzte Interaktionsmöglichkeit mittels des speziellen Tastenfeldes eines Bancomaten ist hier nicht sichergestellt. Daraus ergeben sich hohe Anforderungen an die Eintrittskontrolle zum geschützten Bereich sowie die Zugriffssteuerung auf die verwalteten Informationen. Damit sich bekannte Fehler in der Webentwicklung nicht wiederholen, gibt es Standards wie beispielsweise den Application Security Verification Standard (ASVS) von OWASP, nach dem sich der Prüfer richten kann (siehe Infobox).

Ein grosser Teil der im ASVS formulierten Anforderungen lässt sich mit wenig Aufwand daraufhin prüfen, ob die Webanwendung diese erfüllt. Es gibt aber auch anspruchsvollere Teile wie die Prüfung der Geschäftslogik auf Schwachstellen. Hier empfiehlt es sich, dem Penetrationstester eine detaillierte Beschreibung der Anwendungsfälle und der Behandlung von Ausnahmefällen abzugeben. Der Tester kann so nicht nur die korrekte Umsetzung prüfen, sondern auch auf konzeptuelle Lücken hinweisen.

Häufig wird das Audit einer Webapplikation nur aus der Sichtweise eines Angreifers im Internet durchgeführt. Bei besonders kritischen Anwendungen empfiehlt sich jedoch eine weiter gefasste Untersuchung, bei der auch konzeptionelle und interne Themen betrachtet werden. Dazu werden entsprechende Informationen benötigt, welche der Auftraggeber entweder in Form von Dokumenten oder im Rahmen von Interviews zur Verfügung stellt. Je nach Umfang und Komplexität können weitere Stellen (Entwicklung, Betrieb, Fachspezialisten etc.) einbezogen werden. Zunächst geht es um die Frage, ob und in welcher Weise die im Standard formulierten Anforderungen berücksichtigt wurden. Dann wird die korrekte Umsetzung durch technische Tests oder Vorführung verifiziert.

Während also bei einem «leichten» Penetrationstest nur die aus dem Internet erreichbaren Komponenten berücksichtigt werden, werden bei einer Detailanalyse auch die internen Komponenten wie zum Beispiel Datenbank, Mail- und SMS-­Schnittstelle, Anbindung zum Payment-System-Provider, Test- und Entwicklungssysteme, sicherheitsrelevante Konfigurationen, aber auch Betriebs- und Entwicklungsprozesse auf konzeptionelle Schwächen, mangelhafte Umsetzung und technische Schwachstellen hin untersucht.
ASVS
Der Application Security Verification Standard ist eine Sammlung von konzeptuellen und technischen Anforderungen, die in ihrer Gesamtheit die Sicherheit einer (Web-)Applikation gewährleisten sollen. Beachtet man diese Anforderungen, so dient dies auch der Vermeidung der bekannten OWASP Top-10-Risiken bei Webapplikationen.

Neuen Kommentar erfassen

Anti-Spam-Frage Vor wem mussten die sieben Geisslein aufpassen?
Antwort
Name
E-Mail
SPONSOREN & PARTNER