Software-Sicherheit ist ein schwieriges Thema: Nicht nur, weil es trotz zahlreicher Maßnahmen zur Fehlervermeidung nahezu unmöglich ist, komplett fehlerfreie Software zu schreiben, sondern auch, weil das Beheben eines Fehlers dessen Gefahrenpotential extrem steigern kann. Im Umfeld von OpenSource-Software haben sich daher verschiedene Vorgehensweisen zum Umgang mit gemeldeten Fehlern etabliert, die von Full Disclosure, über Responsible Disclosure bis hin zu Irresponsible Disclosure reichen. Einen Vertreter der letzteren Kategorie möchte ich heute einmal vorstellen, da in diesem Fall einige Dinge zwar richtig angegangen wurden, in ihrer Umsetzung aber eine unnötige Gefährdung der Nutzer resultierte. (more…)
15.02.2017
06.03.2016
Erkennen der verfügbaren Cipher-Suites
Nicht nur, wenn man gegen Verbrechen und Monster kämpfen möchte, ist es interessant zu erfahren, welche Cipher Suites ein Server unterstützt. Prinzipiell ist hierfür eine Testseite wie der SSL-Test von Qualys interessant, aber leider ist dieser etwas unflexibel, wenn es darum geht, beim Probieren verschiedener Setting behilflich zu sein. (more…)
02.04.2014
Statische FreePascal-Bibliotheken mit GCC verwenden
Nachdem Martok nach Erhalt des Tumbleweed-Awards bereits drohte, auf dessen goldene Ausführung zuzusteuern, und ich für eines meiner Projekte eh noch mal etwas Unterstützung brauchte, habe ich mich mal des Cases angenommen, um zu schauen, wie man Code von FreePascal statisch in sein C-Programm eingebunden bekommt. War auch – ehrlichgesagt – nicht ganz uneigennützig, da die betroffene Bibliothek durchaus für eigene Projekte bereits ins Auge gefasst wurde, nur wegen „falsche Programmiersprache“ bisher noch nicht näher betrachtet wurde. (more…)
13.03.2014
BIND9 mit Stoßdämpfer
Nachdem ich ja längere Zeit eher Probleme hatte mit Bind9, weil er sich nicht wie gewünscht mit DNS Dampening betreiben ließ, sondern nur mit DNS Response Rate Limiting, was eher schlecht als recht funktioniert, gibt es inzwischen einen Lichtblick. Mit der Unterstützung von Wonka ist es gelungen, den Patch von Lutz Donnerhacke auf aktuelle Bind9-Versionen zu portieren. Bereits nach kurzer Zeit gab es positives Feedback von Upstream, weshalb an dieser Stelle auf das Repository mit den gepatchten Debian-Quellen verwiesen sein soll, aus denen sich leicht eigene Packete mit DNS Dampening erzeugen lassen. (more…)
10.11.2013
SSL und das Caching
Manche Leute könnten es vielleicht mitbekommen haben, aber falls nicht, dann hier die kurze Info: In letzter Zeit war das Blog in Bezug auf SSL leicht kaputt, weil das Caching gesponnen hat. Das dürfte sich jetzt aber erledigt haben. (more…)
02.09.2013
Kaputt dank Implementierung
Irgendwie frustriert einen der aktuelle Zustand unserer Kryptographie-Softwarelandschaft. Einerseits möchte man es dem Nutzer so einfach wie möglich machen, andererseits aber einem Angreifer so schwierig wie möglich. Prinzipiell sind alle hier gängigen Bibliotheken, sei es OpenSSL, GnuTLS, NSS, NaCl und die diversen OpenPGP-Implementierungen zwar an sich einig, wie die verschiedenen kryptographischen Verfahren umzusetzen sind, aber in den Details stecken so einige Stolpersteine, die einfach nicht sein müssen. (more…)
22.08.2013
Mehr Farbe für Git
So eine Kommandozeile ist in der Regel Grün auf Schwarz, zumindest, wenn man sein Terminal ganz klassisch eingerichtet hat. (more…)
16.06.2013
Hürdenlauf beim Firefox in Sicher
Nachdem man inzwischen niemandem mehr trauen kann, ist eine der häufigsten Fragen, wie man sich beim Surfen im Web absichern kann. Nun mag die Verwendung von SSL naheliegen, da aber auch den CAs nicht zu trauen ist – ganz abgesehen davon, dass das zu Grunde liegende zentralistische und hierarchische System kaputt ist – bleibt einem nicht viel Übrig, als jedem Website-Zertifikat einzeln zu vertrauen. Wie das geht, und welche Fallstricke es dabei gibt, möchte ich an dieser Stelle einmal zusammenfassen. Wer jedoch keine fundierten Kenntnisse über Kryptographie und die ganzen Zusammenhänge hat, sei ausdrücklich darauf hingewiesen, dass diese Anleitung eine Umgehung des in Firefox integrierten Trust Models darstellt und man daher nachfolgend vollständig auf sich selbst gestellt ist!
WARNUNG: Finger weg, wenn man sich nicht sicher ist!!! (more…)
09.05.2013
Fuzzy Passwords
Jeder kennt das: Man möchte sich bei einem Dienst seiner Wahl mit seinem ultra-sicheren 42-stelligen Passwort mit 1337 Byte Entropie anmelden und stellt 0.23 Sekunden nach dem Absenden fest, dass man an der 5. Stelle statt dem Kanji* für 10^28 nur 10^4 geschrieben hat. Und da der Server wie so häufig überlastet, und das Mobilfunknetz am Handy schon vor 3 Minuten wegen obligatorischer Überlastung von jeder toten Schnecke überholt wird, denkt man sich, wie froh man doch sein kann, dass man nach weiteren 5 Minuten Bildschirm-Starren endlich erneut seine kostbare Zeit darauf verwenden darf, sein aus Buchstaben, Zahlen, Sonderzeichen, Keilschrift, Rhunen, Kanji und Klingonisch zusammengesetztes 42-stelliges Passwort auf der 3 Millimeter großen Touch-Tastatur einzutippen.
Doch dies muss nicht sein! (more…)
12.03.2013
Automatische Vollständigkeit
Wer kennt es nicht: Man schreibt gerade so schön in der Konsole einen kilometerlangen Bash-Einzeiler und hat gerade keine Lust die Halbzeilenlange Option seines Lieblingsbefehls – für die es, trotz dem das halbe Alphabet bei den Kurzoptionen noch frei ist, keine Abkürzung gibt – auszuschreiben, als man sich nun schon zum hundertsten (oder tausendsten) Male darüber ärgert, dass die Auto-Vervollständigung der Shell mal wieder nicht funktioniert. Man wollte schon immer einmal eine Vereinfachung haben, die einem genau hier hilft und den lästigen Tippaufwand stark verringert. Mit etwas Bash-Skripting kann hier nachgeholfen werden. (more…)