5. August 2007

Kalifornien entscheidet (vorläufig) gegen Wahlmaschinen

Category: Allgemein,Politik — Christian @ 14:13

Die kalifornische Ministerin Debra Bowen hat die angekündigte Sicherheitsprüfung der amerikanischen Wahlmaschinen abgeschlossen. Ebenfalls wenig überraschend ist, dass keine einzige der bisher zertifizierten Wahlmaschinen grundlegende Sicherheitsanforderungen erfüllt. Soweit nichts neues.

Überraschend ist die Konsequenz mit der Frau Bowen dabei agiert. Sämtlichen(!) vier Anbietern von Wahlmaschinen wurde die Zulassung entzogen, trotz vermutlich heftigster Lobbyarbeit der Hersteller. Betroffen sind Diebold Election Systems, Hart InterCivic, Sequoia Voting Systems und Election Systems and Software. Dem letztgenannten Anbieter wurde die Zulassung für das Wahlsystem InkaVote Plus komplett entzogen, da er sich laut Rücknahmebescheid (PDF, 300 KB) geweigert hatte, sein System inklusive Source Code zur Überprüfung einem Sicherheitsteam der University of California zur Verfügung zu stellen.

Die anderen Systeme scheinen jedoch auch nicht viel besser zu sein. Die Source Code Analyse (PDF, 560 KB) der Wahlmaschine von Diebold kam zu folgenden Ergebnissen:

  • Vulnerability to malicious software
  • Susceptible to viruses
  • Failure to protect ballot secrecy
  • Vulnerability to malicious insiders

Die detaillierte Liste der „Issues“ enthält 45 Einzelsicherheitsprobleme!

Zusammenfassend lässt sich sagen, dass diese Wahlmaschinen durch Viren und Trojaner manipulierbar sind, das Wahlgeheimnis nicht ausreichend schützen und von Mitgliedern der Wahlaufsicht trivial manipuliert werden können. Erschreckend aber nicht erstaunlich. In diesem Zusammenhang noch ein paar Verweise:

  • Diebold stellt ja nicht nur Wahlmaschinen sondern auch Geldautomaten her, und die waren 2003 schon anfällig für Viren und Würmer. Da scheint sich nichts verbessert zu haben.
  • In den Niederlanden hat der Quasi-Monopol-Hersteller von Wahlmaschinensoftware Groenendaal versucht, die Behörden zu erpressen damit seine Software auf Nedap-Wahlmaschinen eingesetzt werden darf. Die gleichen Geräte kommen auch in Nordrhein-Westfalen zum Einsatz.
  • Der deutsche Importeur der Nedap-Wahlmaschinen war über die Sicherheitsprobleme vermutlich frühzeitig informiert, gab sich jedenfalls wenig überrascht, nur erstaunt darüber, dass die Veröffentlichung so lange gedauert hat.

Und mal wieder voll an der Realität vorbei ist die Prüfung der Geräte durch die Physikalisch-Technische Bundesanstalt. Die Prüfung der Manipulationsfreiheit kann wie folgt durchgeführt werden: „Am Wahlgerät werden nach entsprechender Betätigung die gespeicherten Daten der Hardware- und der Software-Version sowie zwei Checksummen des enthaltenen Programmspeichers zum Vergleich mit den Angaben auf dem Typenschild und der Baugleichheitserklärung des Herstellers angezeigt und ausdruckt.“ Diese Ausgabe kann natürlich trivial gefälscht werden, wenn die Software erst einmal manipuliert wurde. Die PTB hat das nur leider nicht realisiert, der Prüfbericht ist faktisch ein Witz. Die PTB sollte besser bei ihrer Atomzeit bleiben, das wenigstens kriegen sie gerade noch so hin.

30. Juli 2007

USA lässt Halvar Flake nicht einreisen

Category: Allgemein,Reisen — Christian @ 17:19

Hihi, dumm gelaufen. Die USA haben Halvar Flake, den Chef von Sabre Security nicht einreisen lassen, weil sein Vertrag mit der Black Hat Konferenz auf ihn persönlich und nicht auf seine Firma ausgestellt war. Da er mit einem Touristenvisum eingereist ist, darf er aber keinen persönlichen Arbeitsvertrag haben. Herausgekommen ist es, weil er die ausgedruckten Schulungsunterlagen dabei hatte. Dumm gelaufen. Hauptsächlich wohl für die USA, so bleibt das Wissen in Europa. Mehr in Halvars Blog.

25. Juli 2007

BSI Lagebericht IT-Sicherheit

Category: Allgemein,Internet,Work — Christian @ 10:20

Der BSI Lagebericht 2007 zur IT-Sicherheit in Deutschland ist da.

24. Juli 2007

Noch mehr gegen C++

Category: Allgemein — Christian @ 09:02

Bei Matasano gibt es eine kleine Liste von Fehlerklassen in C++:

Exceptions: When you throw an exception, you effectively “abort” your current function, and all the functions in the call chain up to the point where the exception was caught. If any of these functions aren’t written to anticipate getting preemptively aborted, and hold on to a pointer or a chunk of memory, you’ve got a memory lifecycle bug.

Destructors: If you call “delete[]” instead of “delete” you’ve introduced a potential vulnerability.

STL: The Standard C++ Library. If you modify an STL vector or dequeue, you invalidate all your outstanding iterators. If you hold references to those invalid iterators, they now point to invalid addresses.

Mehr auch hier.

Fefes Case Against C++

Category: Allgemein,Hacking — Christian @ 03:05

Fefe schreibt gerade, seine Folien für das Camp sind fertig.

Untertitel: „Why C++ is bad for the environment, causes global warming and kills puppies“

Ich weiß noch nicht, ob sich das für mich lohnt. Wenn da Sachen drinstehen, die man beim Code Review vielleicht brauchen kann schon, aber wenn es hauptsächlich um Coding Style und ein bisschen Rants gegen gcc, Ulrich Drepper und Dave Aitel geht, dann kann ich mir das wohl sparen. Und eigentlich gleich den ganzen ersten Tag.

Hmm

23. Juli 2007

Diverse Antivirus-Unsicherheiten

Category: Allgemein,Produkte — Christian @ 19:07

Ein paar Virenscanner sind mal wieder dadurch aufgefallen, dass sie nicht etwa zu wenig oder zu viele Viren erkannt haben sondern eigene Lücken enthalten, durch die sich Schadprogramme ausbreiten oder Systeme kompromittiert werden können. Zu den Übeltätern gehören:

  • Panda Antivirus
  • NOD32
  • Norman

Heise ist die Meldung sogar ein nein zwei Artikel wert. Ich weiß nicht, was daran jetzt neu und eine Meldung wert ist.

Spannender wäre es mal, sich ein paar Gedanken zu machen, warum wir insbesondere auf gehärteten Firmen-PCs nicht endlich zu Whitelists und Code Signing zu wechseln.

10. Juli 2007

Eigenes Blog oder Blog-Hosting

Category: Allgemein,Offtopic — Christian @ 22:01

Ein eigenes Blog auf einem eigenen Server hat eigentlich nur Nachteile:

  • Das Betriebssystem muss verwaltet werden
  • Die Blog-Software (hier WordPress) muss installiert und konfiguriert werden
  • Die Arbeit um Patches und Updates einzuspielen
  • Ergänzende Software um z.B. Zugriffsstatistiken zu erzeugen
  • usw. usf.

In diesem Zusammenhang spricht nichts für einen eigenen Server. Solange, bis man anfängt AGB mal wirklich zu lesen. Und da findet man so komische Sätze wie:

    Rechte an den Inhalten der Weblogs
    Zur Veröffentlichung der Inhalte im Rahmen von Portalen räumt der Benutzer dem Betreiber sämtliche erforderliche Bearbeitungs- und Veröffentlichungsrechte ein. Der Betreiber ist somit berechtigt Inhalte (Texte, Fotos, Illustrationen) zu bearbeiten und in bearbeiteter und unbearbeiteter Form zu veröffentlichen.

Ah, nein. Das will ich nicht.

(via Blogbar)

9. Juli 2007

Die Versteigerung von Zero Days

Category: Allgemein — Christian @ 11:34

Zero Days sind ein knallhartes Geschäft. Erst knobelt man tage- oder wochenlang an einer Sicherheitslücke rum, dann wird man beim Verkauf übers Ohr gehauen und wenn man Pech hat, gibt es vom Hersteller ruck zuck einen Patch.

Deshalb gibt es jetzt eine Auktionsplattform zur Versteigerung der Lücken.

Ob das sinnvoll ist, wird sich zeigen. Das Problem einer solchen Plattform ist natürlich, der Käufer will die Katze ja nicht im Sack kaufen. Auf der anderen Seite besteht die Gefahr, wenn zu viele Informationen bekanntgegeben werden, findet schnell jemand anderes (oder der Hersteller) die Lücke und dann ist sie nicht mehr viel wert.

Kucken wir uns eine solche Beschreibung an:

    „There is a command execution vulnerability in Squirrelmail GPG Plugin. The vulnerability has been tested on the latest versions of Squirrelmail, 1.4.10a, and GPG Plugin, 2.0.“

Das klingt anscheinend relativ vage und unspezifisch, ist es aber nicht. Squirrelmail ist eine Open Source PHP-Anwendung und wer sich mit PHP ein wenig auskennt, findet oft schon mit „grep“ die ersten Sicherheitslücken. Durch die Eingrenzung auf das GPG-Plugin und die Beschreibung als „command execution“ muss im Grunde nur noch das Plugin nach einer Argumentvariablen durchsucht werden, die nicht sauber initialisiert oder gefiltert wird, bevor sie zur Ausführung an die Shell übergeben wird:

    592 function gpg_check_sign_pgp_mime($message,$fullbodytext) {
    [...]
    639 //$messageSignedText = escapeshellarg($messageSignedText);
    640 $messageSignedText = ereg_replace("\"", "\\\"",$messageSignedText );
    [...]
    661 $command = "echo -n \"$messageSignedText\" | [blablabla]

Wir sehen, das Problem liegt in der Variable $messageSignedText, die nicht sauber gefiltert wird. Der Fix wiederum ist ganz einfach, statt „escapesshellarg“ wird zur Bereinigung „ereg_replace“ verwendet, dann ist die Lücke behoben.

Ob diese Lücke (bzw. der PoC-Exploit) noch 600 USD wert ist, muss jeder für sich entscheiden.

7. Juli 2007

EC-Karten-PINs und die Wahrscheinlichkeit von BGH-Richtern

Category: Allgemein,Hacking — Christian @ 19:12

These:

Lottospielende BGH-Richter kennen sich mit Wahrscheinlichkeitsrechnung nicht aus.

Beweis:

Betrachten wir das Samstagslotto. Simples 6 aus 49. Die Wahrscheinlichkeit für x richtige berechnet sich nach der klassischen Wahrscheinlichkeitsrechnung als hypergeometrische Verteilung. Die Formel ist etwas komplizierter, ich schreibe hier nur mal die Wahrscheinlichkeit für x richtige in einer Tabelle auf. Die Zufallszahl lassen wir mal außer acht.

Anzahl Richtige Wahrscheinlichkeit Wahrscheinlichkeit in %
1 1 : 2.421 41,302 %
2 1 : 7,554 13,238 %
3 1 : 56,656 1,7650 %
4 1 : 1.032,397 0,096862 %
5 1 : 54.200,837 0,0018450 %
6 1 : 13.983.816 0,0000071511 %

Um also sagen wir mal ein paar hundert oder tausend Euro zu gewinnen, braucht man als Spieler nach den aktuellen Quoten schon 5 Richtige, also eine Wahrscheinlichkeit von 1 : 54201 (BayernLotto vom 23.06.2007: Gewinnklasse 4 (5 Richtige) mit 3.572,90 Euro).

3.500 Euro könnte man jetzt auch von meinem Konto abheben, natürlich nur mit meiner EC-Karte und natürlich der Geheimzahl. Ich verrate jetzt sicher nicht zu viel wenn ich offenbare, daß „0000“ nicht die richtige PIN ist. Das ist auch nur zum einfacheren Rechnen. Bevor die Karte eingezogen wird, hat der Kartendieb 3 Versuche, bei 9999 verschiedenen PINs (die 0000 haben wir ausgeschlossen) also eine Wahrscheinlichkeit von 1 : 3333, an Geld zu kommen. Das ist mehr als Faktor 16 besser(!) als Lotto spielen. Und das schönste, man muß nichtmal einen finanziellen Einsatz tätigen. Lotto spielen kostet mindestens 1,25 Euro pro ausgefülltem Kästchen ohne Spiel 77 und Super 6. Ok, einen kleinen Nachteil hat das EC-Karten klauen, es ist strafrechtlich bewehrt.

Es ist also 16 mal so Wahrscheinlich, mit einer geklauten EC-Karte zufällig ein paar tausend Euro abzuräumen, als die gleichen paar tausend Euro im Lotto zu gewinnen. Nur der BGH sieht das offensichtlich anders. Die aktuelle Rechtsprechung ist da ganz eindeutig:

    In solchen Fällen spricht „der erste Anschein“ dafür, dass der Inhaber die EC-Karte und die PIN-Nummer nicht ausreichend getrennt aufbewahrt hat

Ein Lottospielender BGH-Richter kann folglich keine Ahnung von Wahrscheinlichkeitsrechnung haben. Die Wahrscheinlichkeit, daß mit einer geklauten EC-Karte „zufällig“ die richtige PIN erraten wird, wird als so unwahrscheinlich abgetan, daß der Inhaber die PIN wohl irgendwo notiert haben muß. Aber dann Lotto spielen! qed.

Wie sicher ist die EC-Karte?

Soweit ich weiß, ist in jeden Geldautomaten ein Hardware-Chip eingebaut, der anhand von Daten auf der EC-Karte die PIN ermitteln kann. Das war früher notwendig, als die Datenleitung zum Rechenzentrum nicht zuverlässig genug war und der Nutzer sein Geld auch abheben sollte, wenn die PIN nicht zentral überprüft werden konnte. Davon ist man jedoch weitgehend abgekommen, weil jeder Kartendieb den Zähler der PIN-Eingabe wieder auf 0 zurücksetzen kann, wenn die Fehleingaben nicht zentral sondern nur im Magnetstreifen der Karte gespeichert wird.

Die Entschlüsselung ist außerdem auch nur mit dem Hardware-Chip möglich, eine Software zur Berechnung ist nicht bekannt. Eigentlich eine recht sichere Lösung. Eigentlich. Inzwischen werden nämlich auch komplette Geldautomaten gestohlen. Natürlich mit dem Chip drin. Ich kann mir sehr gut vorstellen, daß ein kluger Bastler mit dem Geldautomaten und dem Chip und ein wenig Elektronik was basteln kann, um anhand der EC-Karte die PIN zu ermitteln.

Und selbst wenn das nicht möglich sein sollte, es gibt immer wieder Fälle von manipulierten Geldautomaten. Schön dabei ist, daß der Nutzer nachweisen muß, daß so ein Geldautomat manipuliert war. Dabei erkennen oft sogar geschulte Kriminalbeamte die Manipulation nicht. Inzwischen gibt es sogar Diebesbanden, die in Geschäfte einsteigen, dort jedoch nichts klauen sondern nur die Geräte für die EC-Kartenzahlung manipulieren um sich die PIN-Eingaben der genutzten Karten zu verschaffen. Und wer ist schon in der Lage zu prüfen, ob ein Lesegerät nicht manipuliert wurde.

Und die PIN?

Ein Ärgernis ist die in Deutschland gebräuchliche PIN mit nur vier Stellen. Ein Freund von mir (Franzose) arbeitet in Basel und hat ein Konto bei der UBS. Die Schweizer Banken erlauben durchgängig 6-stellige PINs, da hat man eine erheblich höhere Sicherheit als in Deutschland. Vermutlich ist der Schweizer an sich intelligenter und kann sich eine 6-stellige PIN merken, der dumme Deutsche aber nur 4 Stellen. An der 4-stelligen PIN ist übrigens Mrs Shepherd-Barron schuld, die Frau des Erfinders der Geldautomaten:

    One by-product of inventing the first cash machine was the concept of the Pin number. Mr Shepherd-Barron came up with the idea when he realised that he could remember his six-figure army number. But he decided to check that with his wife, Caroline. „Over the kitchen table, she said she could only remember four figures, so because of her, four figures became the world standard,“ he laughs.

Die BBC hat online einen längeren Beitrag über den Erfinder des Geldautomaten.

Vielleicht sind Kreditkarten doch keine so unsichere Erfindung?

6. Juli 2007

Haftung für ungeschütztes WLAN

Category: Allgemein — Christian @ 00:40

LG Frankfurt a.M., Urteil v. 22.02.2007, Az. 2-3 O 771/06

Leitsätze

  1. Der Anschlussinhaber haftet als Störer für Urheberrechtsverletzungen, die über seine ungeschützte WLAN-Verbindung begangen werden.
  2. Das Ausschalten des PC reicht als Schutz für die WLAN-Verbindung nicht aus.
  3. Der Anschlussinhaber hat sich über technische Möglichkeiten zum Schutz seiner WLAN-Verbindung zu informieren.

(via lawblog). Damit ist scheinbar alles gesagt. Aber nein, viele Fragen bleiben offen:

  1. Genügt WEP den Anforderungen des Gerichts?
  2. Was ist mit einem Hotel, das allen Gästen kostenfrei Internet zur Verfügung stellt?
  3. Wie weit trifft das Fonera und die diversen privaten Hotspot-Betreiber?

Deutsches Recht ist Verhinderungsrecht. Kein Wunder, dass es weder ein deutsches Yahoo noch ein deutsches Google und erst recht kein deutsches YouTube gibt.