29. Dezember 2007

24C3: Grundlagen der sicheren Programmierung

Category: CCC,Hacking — Christian @ 23:09

Tonnere Lombard ist einer der NetBSD-Entwickler und u.a. Maintainer des FVWM, eines X11 Windowmanagers, der zu meiner Unix-Anfangszeit State-of-the-Art war.

Die Präsentation von ihm behandelte typische Programmierfehler die zu Sicherheitslücken und diversen Problemen führen können. Insgesamt eher ein Vortrag für Leute die sich neu mit sicherer Programmierung beschäftigen, unabhängig davon aber zwar etwas chaotisch aber sehr kompetent präsentiert.

Wichtige Fehler:

  • Buffer Overflows (Stack, Heap)
  • Integer Overflows (z.B. 32-bit Code auf 64-bit Systemen)
  • Synchronisierungsprobleme (Race Conditions, Signalbehandlungsfehler)
  • Format String Bugs
  • Injectionsangriffe (XSS, XSFR, SQL-Injection)
  • Authentisierungsfehler

Das spannende war, die meisten Fehler wurden anschaulich direkt live vorgeführt.

Ein Beispiel: Integer Overflow (Fehler auf 64-bit Systemen)

  • Falsch: unsigned long fl = (_flags & 0xffff0000) > 16;
  • Richtig: unsigned long fl = (_flags & 0xffff0000L) > 16;

Der Source Code seiner fehlerhaften Programme ist bereits auf vulns.bsdprojects.net veröffentlicht.

Sehr amüsant fand ich seinen Kommentar beim Öffnen des Webbrowsers: „Hoffentlich kommt nicht der Schäuble angerollt, beim Öffnen dieses Terrortools“ und sein Fazit: „Es gibt keine Programmiersprache welche es erlaubt, das Gehirn abzuschalten„.

Nachtrag:

Ebenfalls eine lustige Idee ist die Gründung eines „Vereins“ mit dem Namen „‚ or 1=1 —“ um den Vereinsnamen als Login in Webformularen verwenden zu können. Das muss doch sogar für den GröIaZ legal sein.

1 Kommentar

  1. Kommentare gesperrt wegen Spam

    Comment by Christian — 7. Juni 2012 @ 09:42

RSS feed for comments on this post.

Sorry, the comment form is closed at this time.