Simulierter Angriff
Im zweiten Schritt findet die eigentliche Schwachstellensuche statt. Jede Seite, die vom Scanner während des Crawl-Vorgangs erfasst wurde, wird einzeln und wiederholt untersucht. Dazu werden alle Formularfelder und Parameter innerhalb der Seite mit bestimmten Angriffsmustern vorbelegt und anschließend an die Web-Applikation geschickt, um deren Reaktion auszuwerten. An der Antwort lässt sich dann im Detail erkennen, wie die Anwendung auf den Angriff reagiert hat.
Nach Einschätzung der Security-Experten des BSI ist die Validierung und Filterung von Eingabe- und Ausgabedaten das A und O einer sicheren Web-Applikation. Insofern seien Web-Entwickler gut beraten, den Datenfluss nicht nur vom Benutzer zur Anwendung und umgekehrt, sondern auch zu den verschiedenen Subsystemen und von dort in die Ausgabe zu überprüfen und in ein ganzheitliches Konzept zur Data Validation zu integrieren. Eine Input-Validierung findet statt, bevor die Eingabedaten zum Zugriff auf Subsysteme, etwa eine Datenbank, genutzt werden. Dies geschieht zur Verhinderung von Injection-Angriffen. Dabei müssen Input-Daten auf potenziell gefährliche Zeichen untersucht und diese gegebenenfalls gefiltert werden. Hier bieten sich zwei Verfahren an: Beim "Blacklisting"-Ansatz werden die Zeichenmuster definiert, die aus dem Eingabestrom herausgefiltert werden sollen, während alles andere durchgelassen wird. Beim "Whitelisting" erfolgt dies umgekehrt: Alles, was nicht ausdrücklich erlaubt ist, ist verboten. Generell ist dem BSI zufolge das Whitelisting-Verfahren vorzuziehen. Der Grund: Wenn problematische Zeichenmuster vergessen oder bei der Implementierung nicht berücksichtigt wurden, werden sie beim Whitelisting-Verfahren automatisch geblockt, im anderen Fall nicht.
- Die 10 größten Security-Risiken in der Cloud
Lesen Sie, welche Security-Risiken der Einsatz einer Public oder Hybrid Cloud birgt und was Sie dagegen tun können. - Verletzung der Vertraulichkeit und Integrität der Daten:
Eine Lokalisierung der Daten ist in einer Public oder Hybrid Cloud für den Dateneigentümer nicht mehr einfach möglich. Daher ist der Schutz der Daten auf der Infrastruktur-, Plattform und Applikationsebene häufig nicht mehr mit üblichen Mitteln zu gewährleisten. - Löschung von Daten:
Daten müssen in vielen Fällen (etwa aufgrund gesetzlicher Bestimmungen) gelöscht werden. Auch hier besteht das Risiko einer nur unzureichenden oder unvollständigen Löschung auf allen Plattformen und Datenbanken der Cloud, da die Lokalisierung der Daten nur schwer möglich ist. - Ungenügende Mandantentrennung:
Bei nicht ausreichend abgesicherter Mandantentrennung besteht die Gefahr, dass Dritte unautorisiert Daten einsehen oder manipulieren können. - Verletzung der Compliance:
Da Daten in einer Public Cloud prinzipiell in allen Ländern der Welt in deren spezifischen Rechtsordnungen verarbeitet werden können, ist die Erfüllung aller gesetzlicher Anforderungen eine wesentliche Aufgabe bei der Nutzung von Public Cloud Leistungen. - Verletzung von Datenschutzgesetzen:
Es ist nicht von vornherein klar, in welchen Ländern, Rechenzentren, auf welchen Servern und mit welcher Software die Daten gespeichert und verarbeitet werden. - Insolvenz des Providers:
Die Insolvenz eines Providers bedeutet meist nicht die Insolvenz aller Rechenzentren, die der Provider verwendet hat. Rechenzentren werden zudem bei Insolvenz mit großer Wahrscheinlichkeit an andere Provider verkauft werden. - Problematik der Subunternehmer:
Ein weiteres Problem stellt die Auftragsweitergabe an Subunternehmer dar. Der Provider wird häufig Subunternehmer für gewisse Leistungen verpflichten. In einer Public Cloud bleibt auch diese Komplexität dem Benutzer häufig verborgen (und soll ja nach der Philosophie des Cloud Computing verborgen bleiben). - Beschlagnahmung von Hardware:
Eine Beschlagnahme von Hardware kann in allen Ländern erfolgen, in denen der Provider Computing-Ressourcen nutzt. Meist werden sich Daten des Auftraggebers auf beschlagnahmten Servern befinden. - Handel mit Ressourcen wird denkbar:
Denkbar ist auch, dass Provider einen Handel mit ihren Ressourcen untereinander aufbauen und damit eine "Ressourcenbörse" realisieren wie sie in obiger Abbildung angedeutet ist. Auf dieser Börse werden Ressourcen zu einem bestimmten Preis angeboten. - Erpressungsversuche:
Die Gefahr von Erpressungsversuchen steigt, da der Personenkreis mit Administrationsaufgaben für Ressourcen der Public Cloud unüberschaubar groß ist. Das eingesetzte Personal verfügt im Allgemeinen über unterschiedliches Ausbildungsniveau und Sicherheitsbewusstsein.
Session-Management
Auf der Logikebene geht es um die Art und Weise, wie die Fachprozesse in der Anwendung abgebildet sind und wie die Interaktion mit dem Benutzer gestaltet ist. Das Session-Management stellt dabei einen kritischen Punkt dar, mit dem sich Web-Entwickler intensiv befassen sollten.
Die semantische Ebene umfasst schließlich inhalts- und kommunikationsbezogene Aspekte und stellt den Vertrauenskontext für die Interaktion mit den Benutzern her. Wird in diesem Bereich kein hohes Maß an Sorgfalt aufgewendet, so erhöht sich die Gefahr, dass eine Web-Anwendung von Dritten missbraucht wird, um den Benutzer zu täuschen. Missbrauchsmöglichkeiten, die sich Fehler auf der semantischen Ebene zunutze machen, sind Social Engineering, Phishing sowie Identitätsdiebstahl. Das ist besonders gefährlich, denn neben Hackern stellen die Anwender das höchste Sicherheitsrisiko für Unternehmen dar. (ph)