Der CA-Supergau

Ups, da geht gerade mal der letzte Funke Vertrauenswürdigkeit der kommerziellen IT-Gesellschaft verloren und die breite Masse bekommts noch nicht mal mit :-D…. Wie gibts den sowas?

Ich glaube hier muss man erstmal kurz die Grundlagen klären. Nachdem das WWW erfunden war, ging es in der nächsten Stufe gleich darum, wie kann man sowas fürs Business benutzen? Für Banken bot sich das WWW fürs Online-Banking an, und als Plattform für Online-Shops ist das WWW natürlich auch verlockend. Um zumindest einen gewissen Grad von Sicherheit zu gewährleisten erfand die Firma Netscape damals die erste Version von SSL. SSL wird zum Beispiel bei HTTPS verwendet – wir erinnern uns das war die Geschichte mit diesem kleinen Schloss wenn man im Web-Browser Online-Banking macht.

Der IT-Experte hatte bei dem netten Schlösschen ja schon immer ein ziehen in der Magengegend, seit kurzem kann man dieses Schlösschen aber getrost in die Tonne kippen!

Wir machen am besten mal ein Beispiel und gehen auf die Webseite https://www.bund.de/DE/Home/homepage_node.html. Jeder Web-Browser bietet irgendwo die Möglichkeit sich das Zertifikat für diese Webseite anzusehen. Für www.bund.de sieht das etwa so aus (Text verkürzt):

Certificate Data:
  Version: 3 (0x2)
  Serial Number:
      e9:44:00:01:00:02:e8:5b:37:3c:fb:81:1c:3e
  Signature Algorithm: sha1WithRSAEncryption
  Issuer: C=DE, O=TC TrustCenter GmbH, 
          OU=TC TrustCenter Class 2 L1 CA, 
          CN=TC TrustCenter Class 2 L1 CA XI
  Validity
      Not Before: Mar 24 08:30:02 2011 GMT
      Not After : Jun 22 07:29:44 2014 GMT
  Subject: C=DE, ST=NRW, L=Koeln, O=Bundesverwaltungsamt, 
           OU=BIT B 5, CN=www.bund.de
  Subject Public Key Info:
      Public Key Algorithm: rsaEncryption
          Public-Key: (2048 bit)
  X509v3 extensions:
    X509v3 Authority Key Identifier: 
      keyid:66:B3:C6:91:F9:B6:CD:B2:5F:9A:
            37:56:46:0C:E2:6B:D5:B1:7C:B4
    X509v3 Subject Key Identifier: 
      24:9E:C0:C7:F8:17:EE:47:B3:51:B5:1B:0B:58:8A:54:B7:DC:85:4D
    X509v3 Extended Key Usage: 
        TLS Web Server Authentication, TLS Web Client Authentication
    Netscape Cert Type: 
        SSL Client, SSL Server
    X509v3 Subject Alternative Name: 
        email:it-sicherheit@bva.bund.de, DNS:www.bund.de, 
        DNS:editor.bund.de, DNS:m.bund.de, DNS:bund.de

Wichtig ist für wenn das Zertifikat ausgestellt wurde (Subject) und wer es ausgestellt hat (Issuer). In meinem Beispiel wurde das Zertifikat von der Firma TrustCenter GmbH für das Bundesverwaltungsamt ausgestellt. Den Issuer nennt man auch CA – (Certificate Authority / Zertifizierungsstelle). D.h. die Zertifizierungsstelle ist im Prinzip die Wurzel für die gesamte Vertrauenswürdigkeit dieses Systems. Hihihi, und jetzt kommt die Preisfrage – Was passiert wenn jemand mal eben Vollzugriff auf so eine Zertifizierungsstelle erlangt und beliebige Zertifikate ausstellen kann?

Tja und seit Fukushima sprechen wir ja nur noch von Supergau wenn es gleich an mehreren Stellen knallt und so ist es hier auch:

Das is halt wieder so ein Hacker-Thema? nene, leider nicht! Zumindest in den Niederlanden bebt gerade gewaltig die Erde. Und zwar so heftig (heise.de): Niederländische Regierung übernimmt Kontrolle über DigiNotar.

Tja und weils so schön ist, bei dem Thema ist eben mit Internet-Sicherheit alleine noch lange nicht Schluss. Genau die gleichen Zertifikate, Firmen und Technologien werden zum Beispiel bei folgenden Vorzeigeprojekten ebenfalls eingesetzt:

Ich hatte in einem der letzten Posts geschrieben das vieles in der modernen IT auf Sand gebaut ist. In diesem Fall muss ich mich korrigieren, es ist wohl eher Treibsand!

Elektronische Gesundheitskarte eGK – jetzt gehts los

Ach, es gibt so viele Themen über die es sich lohnen würde zu schreiben. Wenn da nur nicht das Zeitproblem wäre… aber nach dem ich ein Blogger-freundliches Hotelzimmer mit Espresso-Maschine bekommen habe, wird es Zeit das ich etwas über die Elektronische Gesundheitskarte (eGK) schreibe.

Eigentlich ist mir das Thema schon sehr lange bekannt, da ich damals (2005) bei dem super Vortrag von Thomas Maus auf dem 22C3 – Elektronische Gesundheitskarte und Gesundheitstelematik – 1984 reloaded? war. Tja, und letzte Woche kommt doch nun ein Schreiben von meiner Krankenkasse mit der Bitte um ein Foto für die neue Gesundheitskarte….

Aber der Reihe nach, was ist den so schlimm an der eGK? Das Gesundheitswesen in Deutschland ist ja sympthomatisch für die politische Lage. Da gibt es unterschiedlichste Interessengruppen und jeder möchte DAS BESTE für sich selber. Krankheit ist eben ein krisensicheres Geschäft – eine gute Lobby vorausgesetzt :-). In IT-Projekten potenzieren sich solche “systembedingten” Probleme dann gerne mal zum informationstechnischen Super-GAU. Aber hey, was kann schon viel schief gehen – sind ja nur die Patientendaten.

Was macht mich den so sicher, das dieses Projekt schief laufen wird? Dazu einfach eine kleine Auswahl an Schlagzeilen der letzten Monate:

Zur Gesundheitskarte gibts jede Menge Hintergrundinfos:

Ich für meinen Teil mache erstmal überhaupt nichts! Meine alte Karte ist noch bis Ende 2015 gültig. Bis dahin hat sich der Spassfaktor der Gesundheitskarte schon voll entfaltet… Wenn man kein Bild schickt sollte es zumindest zunächst keine Kosequenzen geben (krankenkassen-direkt.de – Anforderung biometrischer Fotos für E-Card zweifelhaft)

Die Software-Krise der Politik

Nachdem ich seit letztem Freitag bei Kunden auf der Suche nach Software-Bugs war, greife ich das Thema gleich nochmal hier auf. Das Thema Softwarequalität oder dazu wie wir Software typischer Weise entwickeln hat durchaus auch eine politische Dimension. Zudem passt das Thema gut zum Titel meines Blogs “Scheiss Software” 😉

Kümmern wir uns zunächst mal um die Frage: Warum ist es eigentlich so schwer fehlerfreie Software zu Entwicklen? Software ist eben rein virtuell, es gibt keine Einschränkungen und dem Programmierer stehen alle Freiheiten offen. Dadurch entsteht so manches kleine Programm das bereits eine enorme Komplexität aufweist. Dieses Problem ist seit über 40 Jahren unter dem Begriff – Softwarekrise – bekannt. Klar hat sich seitdem viel getan, aber trotz agilem Test Driven Development, Scrum und Extreme Programming schaffen wir es nicht Software ohne Fehler zu produzieren.

Auf absehbare Zeit müssen wir also mit den Unzulänglichkeiten moderner Software leben. Es ist nur wichtig das wir uns dessen immer bewusst sind! Das WWW zum Beispiel war zunächst nur für den Austausch unter Wissenschaftlern gedacht, erst ein schnell draufgezimmerter Überbau mit dem Secure Sockets Layer (SSL) macht Online-Banking mehr schlecht als recht sicher. Unsere Netz ist also ganz schön auf Sand gebaut, wenn man es so sieht…

Was hat das nun mit Politik zu tun? Die Probleme der Software-Entwicklung stehen dann schon mal so manchem Politiker beim nächsten innovativen Vorzeigeprojekt im Weg. Drei Beispiele dazu:

  1. Der neue PersonalausweisWeitere Sicherheitslücke beim elektronischen Personalausweis (heise.de). Sollte man diesen Ausweis dann wirklich nutzen um sich im Internet beweissicher ausweisen zu können?
  2. Wahlcomputerwahlcomputer.ccc.de. Wollen wir in Zukunft wirklich mit solchen Computern unsere Wahlen durchführen?
  3. Vorratsdatenspeicherung / Digitale Beweisewww.vorratsdatenspeicherung.de. Wie sicher sind den Beweise die auf einem so wackligen Konstrukt aufbauen?

Ich finde es schon sehr bezeichnend wenn die Computerfreaks die sonst jede IT-Mode mitmachen plötzlich zu Mahnern werdern und vor unabsehbaren Folgen warnen.

Komplexität und Wahlkampf 2.0

Wir leben in einer verdammt komplexen Welt, das war mir schon immer klar. Als IT-Berater habe ich mich unter anderem auf Cluster-Systeme spezialisiert, dort erlebe ich es immer wieder wie Kunden mit der Komplexität von Cluster-Systemen baden gehen – von wegen Performance und Hochverfügbarkeit. Bei einigen Kunden kann dann das schicke neue Cluster-System nicht mal mit den 10 Jahre alten System das zuvor im Einsatz war mithalten. Politik und unsere Gesellschaft an und für sich sich ebenfalls komplex. Wir leben in einer globalisierten und eng gekoppelten Welt, dadurch erfährt auch die Komplexität eine bisher nie dagewesene Dynamik.

Anders kann ich mir die Äusserungen von Ute Vogt (Landesvorsitzende der SPD Baden-Württemberg) im Interview mit der Zeitung Mannheimer Morgen (Quelle: “Mehr um die Menschen kümmern“) nicht erklären. Dort ist zu lesen:

Frage: Die SPD erboste die junge Internet-Gemeinde mit dem Gesetz gegen Kinderpornografie. Ein Fehler?

Vogt: Ich selbst bedauere es, dass wir diesem Gesetz in der Großen Koalition zugestimmt haben. Viele Abgeordnete haben sich offenbar noch nicht intensiv genug mit dem Thema befasst und wissen nicht, inwieweit Internet-Sperren zielführend sind – und inwieweit eben nicht.

Dies finde ich ziemlich schockierend. Dieses Thema wurde – unter anderem aufgrund der Online-Petition – im Vorfeld doch sehr breit getreten, die Argumente gegen die Internetsperren wurden im Internet rauf und runter gebetet. Was mich aber wirklich schockiert, das Thema Internetsperren ist meiner Meinung nach vom Komplexitätsgrad her gesehen noch halbwegs überschaubar. Nehmen wir mal ein wirklich komplexes Thema wie z.B. Afganistan. Wenn unsere Abgeordnete im Bundestag hier genauso wenig Ahnung haben wie bei den Internetsperren ist es für mich kein Wunder das der Aufbau im Sand stecken bleiben muss!

In der Süddeutschen Zeitung steht das ähnlich: Kinderpornographie – Simple Lösungen für ein komplexes Problem – “Wem hilft die Internetzensur?”.

Ok, ich bin ehrlich, ich wusste bis zur Finanzkrise nicht was man unter einem Zinstender versteht. Warum versucht eigentlich keine Partei unser Finanzsystem zu erklären? Man hört viel von bösen Banken und den bösen Manager-Boni. Aber wo liegen die wirklichen Probleme? Es gibt reale Probleme, die Mehrzahl der Politiker setzt hier aber nur Meinungen dagegen. Genau das ist falsch! Die Debatten wie sie heute im Bundestag geführt werden sind viel zu oberflächlich um wirklich Probleme lösen zu können. Hier bringt gerade die Piratenpartei neue Ansätze (z.B. ein offenes Wiki) wie sich vielleicht zukünftig komplexe Themen strukturieren und Lösungen erarbeiten lassen.