© saicle/Shutterstock.com
Aber sicher!

Das Gästebuch, bitte!


Bisher ging es im Security-Workshop um die verschiedenen Schwachstellen: Was kann ein Angreifer darüber erreichen, wie können Sie sie erkennen, und welche Möglichkeiten haben Sie, um die Schwachstellen bzw. Angriffe zu verhindern? Jetzt betrachten wir das Problem von der anderen Seite: Wie entwickelt man eine Anwendung so, dass erst gar keine Schwachstellen entstehen? Als Beispiel dafür dient ein Gästebuch.

Es gibt zwei Grundvoraussetzungen, um eine sichere Anwendung zu entwickeln: Erstens müssen Sie natürlich programmieren können, und ich gehe davon aus, dass diese Voraussetzung erfüllt ist. Zweitens müssen Sie ein Grundwissen über mögliche Schwachstellen und Angriffe besitzen, denn nur, wenn Sie wissen, was Sie verhindern müssen, können Sie es auch tun. Dieses Grundwissen besitzen Sie z. B., wenn Sie die bisherigen Folgen des Security-Workshops verfolgt haben. Auch online finden Sie die entsprechenden Informationen, z. B. in vielen Folgen von „About Security“. Eine Übersicht der relevanten Artikel finden Sie auf der Heft-CD.

Vorbereitung: Die Idee

Zunächst müssen wir überlegen, was die Anwendung leisten soll. Ein Gästebuch erlaubt es den Benutzern, Einträge anzulegen und die vorhandenen Einträge zu lesen. Das soll natürlich auch in unserem Gästebuch möglich sein. Außerdem soll der Benutzer beim Erstellen eines Gästebucheintrags seine E-Mail-Adresse angeben können, auf die nur der Administrator Zugriff hat.

Schritt 1: Funktionen und Daten

Die Entwicklung beginnt mit dem grundlegenden Entwurf des Programms: Welche Funktionen gibt es, welche Daten werden benötigt? Das Gästebuch stellt lediglich drei Funktionen bereit, die Benutzereingaben verarbeiten:

  • Eine von allen Benutzern aufrufbare Funktion, die das Einfügen eines neuen Eintrags erlaubt: eintragen([Die Daten])

  • Eine von allen Benutzern aufrufbare Funktion zum Abfragen bestimmter Daten eines vorhandenen Eintrags: anzeigen(ID)

  • Eine nur den Administratoren des Gästebuchs zugängliche Funktion, die das Abfragen aller Daten eines vorhandenen Eintrags erlaubt: admin(ID)

Eine vierte Funktion, auflisten(), gibt eine Übersicht aller Gästebucheinträge aus und verarbeitet keine Parameter. Auf weitergehende Funktionen, z. B. zum Moderieren der Einträge, wird der Einfachheit halber verzichtet. Die Gästebucheinträge enthalten zwei Arten von Daten: die, die allen Benutzern zugänglich sind, und die, auf die nur die Administratoren Zugriff haben. Für alle Benutzer sichtbar sind:

  • Der Titel des Gästebucheintrags $tit...

Neugierig geworden?

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang