Nachdem ich bereits einige bekannte Angriffsfahren und die aktuelle Sicherheitslage aus dem Jahr 2009 betrachtet habe, möchte ich in diesem Artikel nun versuchen zu erklären, was man gegen solche Sicherheitslücken tun kann und wie man vor allem als Programmierer von Webseiten seinen Code so erstellt, dass Sicherheitslücken gar nicht erst auftreten. Für die von euch, die Zugriff auf die Konfiguration des Webservers und des Datenbanksevers haben, sage ich auch noch kurz etwas zur sicheren Konfiguration zum Vermeiden von Sicherheitslücken. Dieser Bericht ist Teil einer meiner Arbeiten im Studium und auch im Wiki der FH veröffentlicht worden. Ich möchte ihn nun auch auf meinem Blog zur Verfügung stellen.
Maßnahmen für sichere Webseiten
Content Spoofing (Fälschen von Inhalten)
Das Fälschen von Inhalten wird häufig mit dem Phishing verwendet. Dabei werden entweder Teile einer Website oder auch der ganze Inhalt einer Website so nachgebaut, dass es kaum einen Unterschied zum Original gibt. Der Nutzer denkt also das er auf der Originalseite gelandet ist und schenkt dem Inhalt vertrauen. Die Seiten werden allerdings so angepasst, dass sie sensible Nutzerdaten ausspionieren sollen. Zum Weiterleiten auf diese gefälschten Inhalte wird häufig das Cross-Site-Scripting verwendet. Entweder werden die Nutzer anhand von direkten Links weitergeführt, oder sie werden durch die Manipulation des Servers von der Originalseite direkt auf die Seite des Angreifers geleitet.
Social Engineering (soziale Manipulation)
Die soziale Manipulation ist eine der ältesten Techniken, die auch in der Offline-Welt häufig zum Betrug genutzt wird. Mit der Entwicklung des Internets, wurde diese Methode auf die Online-Welt übertragen. Bei der sozialen Manipulation schlüpft der Angreifer in eine andere Rolle und versucht ein vertrauenswürdiges Verhältnis zu seinem Opfer aufzubauen, um an vertrauliche Informationen oder kostenlose Dienstleistungen zu kommen. Dabei sammelt der Angreifer soviel Informationen wie möglich über eine Person oder Firma.
Information Leakage (Informationslecks)
Das Preisgeben von Informationen zur Konfiguration oder internen Abläufen einer Webanwendung oder Datenbank ist neben dem Cross-Site-Scripting eines der häufigsten Probleme bei Webseiten. Bei dieser Sicherheitslücke werden vor allem Informationen gesammelt, die für andere Angriffsverfahren genutzt werden.
SQL-Injection
Das Einschleusen von SQL-Befehlen in Datenbankmanagementsystemen (DBMS) wird als SQL-Injection bezeichnet. Ähnlich beim Cross-Site-Scripting sind auch viele Web-Anwendungen anfällig für diese Methode.
Cross-Site-Scripting
Cross-Site-Scripting (XSS) ist eine der häufigsten Angriffsverfahren im Web, da viele Seiten Sicherheitslücken besitzen, die mit dieser Methode genutzt werden, um bösartigen und schadhaften Code, meist in Form von clientseitigen Scriptsprachen (JavaScript), in die Website einzuschleusen. Dabei gibt es verschiedene Varianten.
Sicherheitslage von Webseiten 2009
Gerade durch das Web 2.0 und die Verwendung von Ajax treten immer neuerer Sicherheitslücken auf. Dadurch, dass viele Nutzer mittlerweile selber Inhalte einstellen können, ist es leichter geworden schadhafte Codeteile einzuschleusen. Durch das asynchrone Laden einer Website, wird oft das aktiveren der aktiven Inhalte verlangt um eine Seite im Browser anzeigen zu können. Diese aktiven Inhalte können aus schadhaftem Code bestehen und somit für Angriffe genutzt werden. Da es viele Web 2.0 Anwendungen gibt, wird der Nutzer oft gezwungen diese Inhalte zu aktiveren.
Gründe für Angriffe auf unsichere Websites und deren Auswirkungen
Die Motive, die die Angreifer verfolgen sind unterschiedlichster Art. Je nach Typ des Angreifers unterscheidet sich auch das Motiv. Es gibt die sogenannten „Script-Kiddies“, die mit ihrer Tat Aufmerksamkeit erregen wollen, um in der Szene einen gewissen Bekanntheitsstatus zu erlangen. Die Wissensbasis ist hier allerdings sehr gering und somit ist die Gefahr, die von dieser Gruppe ausgeht, ehr klein. Allerdings sollte man die „Script-Kiddies“ trotzdem nicht unterschätzen. Bei einigen Gruppen steht auch der sportliche Ehrgeiz im Vordergrund. Diese Art von Angreifern sucht speziell auf sicher geltenden Seiten nach Sicherheitslücken, um die Systeme anzugreifen. Sie hinterlassen dann oft ihr Kennzeichen und wollen, dass dieses auch bekannt wird. Diese Typen von Angreifern sollte man zwar nie unterschätzen, sie richten aber in der Regel keinen bis nur geringen Schaden an.
Vermeiden von Spam durch Wegwerfadressen
Immer wieder stößt man im Internet auf Seiten, die auf den ersten Blick interessant sind, aber eine Anmeldung mit E-Mail-Adresse erfordern. Nachdem man sich testweise registriert hat, ist das Angebot oft nicht mehr so verlockend und man nutzt den Service nicht mehr. Allerdings bleibt die E-Mail-Adresse gespeichert und man erhält immer wieder Post vom Anbieter. In einigen Fällen stößt man sogar auf Seiten, die die E-Mail-Adresse an Adresshändler weitergeben und man bekommt immer wieder neue Werbemails. Bei neugierigen Internetnutzern, die gerne mal ein wenig rumtesten können die täglichen Webemails schnell die Anzahl von 100 überschreiten.


