Der aspectra-Blog seit 2012

Die 10 grössten Sicherheitslücken von Websites und wie man sie behebt

Web-Applikationen weisen oft Sicherheitslücken auf, die von Angreifern ausgenutzt werden können. Welches sind die grössten Lücken und was können Sie dagegen tun?

Das OWASP (Open Web Application Security Project) will die Sicherheit von Anwendungen im World Wide Web verbessern. Es gibt darum regelmässig eine Liste der 10 grössten Sicherheitslücken heraus:

1. Injection

Ein Angreifer sendet textbasierte Attacken, welche die Syntax des Interpreters ausnützen. Fast jede Datenquelle kann als Vektor missbraucht werden, auch interne.

2. Fehler in Authentisierung und Session Management

Funktionen von Applikationen, die der Authentisierung oder dem Session Management dienen, sind oft nicht korrekt implementiert (z.B. Bei Timeouts oder bei der Abmeldung). Dadurch kann der Angreifer die Identität eines legitimen Nutzers übernehmen.

3. Cross-Site Scripting (XSS)

Die Anwendung übernimmt nicht vertrauenswürdige Daten und sendet sie an eine Web Browser, ohne sie vorab zu validieren. Dadurch können zum Beispiel Benutzer-Sessions übernommen, Websites kompromittiert oder falsche Inhalte eingefügt werden.

4. Unsichere direkte Objektreferenzen

Entsteht, wenn eine Anwendung den internen Namen eines Objekts (z.B. einer Datei, eines Verzeichnisses oder eins DB Schlüssels) nutzt, um auf dieses zu verweisen. Durch die Änderung eines Parameters kann der Angreifer auf Objekte zugreifen, für die er nicht autorisiert ist.

5. Sicherheitsrelevante Fehlkonfiguration

Damit sind sämtliche fehlerhaften Konfigurationen der Applikation, der Web- und Applikationsserver, des Frameworks sowie des Programmcodes gemeint. Diese erlauben es einem Angreifer unautorisierten Zugang oder Kenntnis über das Zielsystem zu erlangen.

6. Verlust der Vertraulichkeit sensibler Daten

Oft werden sensitive Daten wie Kreditkarteninformationen oder Passwörter nicht genügend geschützt. Entweder werden sie gar nicht oder zu schwach verschlüsselt oder die Schlüssel werden statisch gespeichert. Angreifer können so auf sensitive Daten zugreifen.

7. Fehlerhafte Authentisierung auf Anwendungsebene

Wenn private Seiten einer Anwendung nur geschützt werden, indem der entsprechende URL nicht angezeigt wird und nicht durch ein Login-Verfahren. Ein Angreifer kann den URL trotzdem herausfinden und so direkt auf die private Seite zugreifen.

8. Cross-Site Request Forgery (CSRF)

Ein User wird mit Social Engineering dazu gebracht, einen Link zu öffnen, der dazu führt, dass ungewollte Aktionen auf einer Web Applikation ausgeführt werden, auf der der User gerade authentisiert ist.

9. Benutzen von Komponenten mit bekannten Schwachstellen

Entwickler stellen nicht immer sicher, dass Komponenten wie Libraries, Frameworks und andere Software Module auf dem aktuellsten Stand sind. Allfällige Lücken dieser Komponenten können ausgenutzt werden.

10. Ungeprüfte Um- und Weiterleitungen

Web Applikationen benutzen oder erlauben oft Um- und Weiterleitungen auf andere Seiten. Werden diese nicht geprüft, können Angreifer Besucher auf bösartige Sites um- oder weiterleiten.

Gegenmassnahmen

Die erste und offensichtlichste Gegenmassnahme ist, die Sicherheitslücken zu schliessen. Das kostet Zeit und Geld und beides ist bei IT-Projekten in der Regel rar. Ausserdem werden Applikationen weiterentwickelt, die Verantwortlichen ändern und Wissen geht verloren. Darum empfiehlt sich eine zweite Massnahme und zwar der Einsatz einer Web Application Firewall (WAF). Diese kontrolliert und filtert sämtliche Anfragen auf eine Applikation und lässt gar nicht zu, dass potentielle Sicherheitslücken ausgenützt werden. Die Empfehlung lautet darum: „Das eine tun und das andere nicht lassen“.
 

Weiterführende Links
Open Web Application Security Project: OWASP
Web Application Firewall: Airlock

Suche