Neulich  bei einer großen Entwicklungskonferenz: Zwei Programmierer, verantwortlich für Intranet-Webapplikationen in einer großen Firma, stellen eine harmlose Frage am Microsoft-Stand: "Wie kann man eigentlich aus einer ASP.NET Webapplikation eine Prozeß mit bestimmten Benutzerrrechten starten?". Meine Antwort: "Äh, mit CreateProcessAsUser oder so, glaube ich ... äh, ich denke das war doch LogonUser... also jedenfalls gibt's in Windows dafür eine Funktion, die können Sie aufrufen, äh --- warum brauchen Sie diese Funktion?". Die Antwort läßt mir das Blut in den Adern gefrieren: "Ja, wir müssen auf dem Server eine Applikation starten, die unter den Benutzerrechten des jeweiligen eingeloggten Users läuft. Und da dachten wir, der Benutzer kann seine Domänen-Anmeldedaten einfach in unsere Webapplikation eingeben und wir starten dann auf dem Server mit diesem Account die entsprechende Applikation". Vorsichtige Frage von mir: "Verwenden Sie HTTPS?". Antwort: "Nein, wieso?".

Wenn das so online geht, sendet diese Firma völlig unverschlüsselte Domänen-Usernamen mit passendem, ebenfalls unverschlüsselten Paßwörtern quer durch's Intranet. Jeder, der den Netzwerkeverkehr irgendwie mitprotokolliert, hat die Chance auf unlimierterten Zugriff auf geheimste Daten. Ich weise die Zwei darauf hin.

"Ach, das macht nix, ist ja alles nur innerhalb unserer Firma, und deshalb sicher".

Bitte nicht falsch verstehen: Ich möchte die Zwei nicht schlecht machen, oder über irgend jemand herziehen. Aber diese kleine Geschichte ist der Beweis, daß Security kein Thema ist, welches "die von Microsoft" oder "die von Sun" oder "die von IBM" durch "bessere Sicherheitsfeatures" lösen können. Keine IT-Sicherheit ohne Sicherheitsbewußtsein und Kenntnis der Grundlagen der Technologien, mit denen man arbeitet.

Fingerzeigen bringt uns auch nicht weiter: "Microsoft" ist nicht "unsicher", "Sun" ist nicht "unsicher", "IBM" ist nicht "unsicher". Unsicher ist, Ausbildung und Aufklärung zu vernachlässigen, oder sich nicht für Security zu interessieren.

Die Entwickler und Entscheider wiegen sich in falscher Sicherheit: "Wird schon niemand abhören". Falsch: Jemand wird sich finden. Jemand der gerade Streit mit seinem Chef hatte und zufällig in der IT-Abteilung arbeitet. Wenn das passiert, sind  Existenzen bedroht - von einzelnen Sündenböcken (wahrscheinlich die Entwickler oder ihr Chef) oder ganzen Firmen.Und wer gibt den Programmierern Zeit, sich mit sichereitsrelevanten Fragen zu befassen? Sind die ökonomischen Zwänge so groß, daß für relevantes Training keine Zeit bleibt?

Da muß sich die Industrie an der eigenen Nase fassen: Wir brauchen viel mehr verständliche Informationen über Sicherheit, wir müssen klarmachen das Security kein Feature ist (wie ein großer Datenbankhersteller unermüdlich behauptet). Microsofts Security Whitepapers sind ein erster Schritt, und die Security-Vorträge auf Konferenzen sind in letzter Zeit auch gut besucht.

Ach ja, was ist die Lösung für das Problem der Beiden? Eine zweite Webapplikation, die über Windows Authentication authentifiziert und den Benutzer impersoniert, dann die Applikation startet. Kein Passwort wird ausgetauscht, und das Ganze ist auch bequemer, weil der Benutzer nichts eingeben muß.

Security: Mach's nie ohne!