Die wunderbare Welt von Isotopp
MySQL: Integer Overflow
Der Fotodienst
Flickr
wurde vor 5 Jahren in Betrieb genommen.
Am 29. Dezember wurde
das Foto 2147483647
auf Flickr hochgeladen.
Diese Zahl ist 2 hoch 31 minus 1, also MAXINT für einen 32 Bit Signed Integer.
Dies hat zu einem
Integer Overflow in einer Bibliothek
geführt, die Signed Integer als ID für Flickr-Bilder verwendet hat.
Hier sind ein paar simple Abfragen von INFORMATION_SCHEMA, mit denen man offensichtliche Designdummheiten bei Datenbankschemata finden kann:
mysql> select table_schema, table_name, column_name, column_type
from information_schema.columns
where table_schema not in ("information_schema", "mysql")
and column_name like "%id%"
-- and column_type not like "%unsigned%";
+--------------+------------+-------------+---------------------+
| table_schema | table_name | column_name | column_type |
+--------------+------------+-------------+---------------------+
| rootforum | counter | id | bigint(20) unsigned |
| rootforum | s | id | bigint(20) unsigned |
| rootforum | t | id | bigint(20) unsigned |
| rootforum | telefon | id | bigint(20) unsigned |
+--------------+------------+-------------+---------------------+
4 rows in set (0.01 sec)
Diese Query durchsucht INFORMATION_SCHEMA.COLUMNS nach allen Spalten, die ein id im Namen haben, aber, wenn man den auskommentierten Teil aktiviert, nicht als UNSIGNED definiert sind.
Das ist schon mal ein recht offensichtlicher Fehler, den man sich von vorneherein schenken kann.
Für die meisten Menschen - im Grunde jeder außer Flickr - sollte ein INTEGER UNSIGNED als PRIMARY KEY ausreichen.
Ein BIGINT UNSIGNED ist doppelt so groß, und speichert 2^32 mal mehr Daten.
Kann man benutzen, muss man aber nicht dringend tun und hat so ein wenig was von Größenwahn.
Wir sind die Guten!
Zum Thema Vertrauensvorschuß nun auch eine passende Meldung aus Deutschland beim Lawblog :
Die Affäre um Angehörige der Gewerkschaft der Polizei (GdP), die sich von Polizei-Anwärtern private Adressen und persönliche Daten beschafft haben sollen, um damit Versicherungspolicen zu verkaufen, weitet sich aus.
Sehr schön. Zentrale Datenspeicher, Mißbrauch bei der Polizei selbst und die Gewerkschaften selbst noch mitten drin.
Gesundheitskarte, Vorratsdatenspeicherung, Online-Durchsuchung… Wir bauen gerade einen großen Haufen solcher sinnloser, zentral abfragbarer Datenspeicher. Man kann davon ausgehen, daß dies hier sowohl nur der Anfang als auch die Spitze des Eisberges ist. Zu viele Menschen mit zu vielen Zugriffsrechten auf mein Zeugs.
Bug #31876: MySQL Commit in Windows
Bug #31876 : Neulich war ich bei einem Kunden, der ein kleines Testscript hatte, das im wesentlichen 500 Mal hintereinander eine Row in eine InnoDB-Tabelle eingefügt hat, und dann ein Commit gesendet hat. Das Script war unter Linux unmöglich schnell, und unter Windows unmöglich langsam - insbesondere war es unter Windows viermal langsamer als dasselbe Script unter DB/2 und MS SQL Server. Das ist natürlich verdächtig und nicht akzeptabel.
Was macht man, wenn man ein Performance-Problem hat? Richtig, man misst nach. Hier wollten wir erst einmal sehen, was MySQL denn so mit dem Betriebssystem macht, wenn es committed. Dazu brauchen wir so etwas wie einen Systemcall-Monitor für Windows. Das gibt es zum Glück, und zwar bei der von Microsoft aufgekauften Firma Sysinternals von Mark Russinovich. Wir messen also mit FileMon und ProcMon, was genau MySQL da tut.
Bundestrojaner in den Tagesthemen
Welches Dateisystem für meinen Datenbank-Server
Hier wieder eines meiner berüchtigten Irc-Logs. Ich geh dann mal wieder ins Bett.
SiMOON> Weiß einer von Euch, wie viele Dateien ich sinnvollerweise in einem Verzeichnis haben sollte, maximal, ohne daß es langsam wird?
e-voc> 255 :) Oder ist das heute nicht mehr so?
Isotopp> e-voc: Das ist sehr vom Dateisystem abhängig, und im Fall von ext2/ext3 auch davon, ob du Debian verwendest.
Wenn du ein Dateisystem verwendest, das Verzeichnisse als Baumstrukturen verwaltet, dann spielt die Anzahl der Dateien in einem Verzeichnis kaum noch eine Rolle.
Das ist bei XFS und Reiserfs immer der Fall, und bei ext2/ext3 ist es der Fall, wenn das Dateisystem mit dem Feature dir_index angelegt worden ist.
Fertig gelesen: The Atrocity Archives
The Atrocity Archives , Charles Stross
Zu Charles Stross schrieb ich im IRC:
Isotopp> Msch, Lies mal Charles Stross, The Atrocity Archives. Das ist ein wenig so, wie man sich Shadowrun vorstellt, wenn es im Stil von Fefe’s Blog geschrieben wird.
Isotopp> In Charles Stross “Bob Howard” Universum sind Mathematik und Dämonologie dasselbe und man öffnet Dimensionstore, wenn man die falschen Beweise führt.
Erdferkel> Oh!
Isotopp> Und ein britischer Geheimdienst, genannt “The Laundry” ist a la “Men in Black” dabei, unsere Realität zu schützen vor Leuten, die das Turing-Lovecraft-Theorem neu entdecken. Der Held war auch so einer, der aus Versehen um ein Haar Nyarlathotep bewiesen hätte.
Wie teuer ist SSL?
Ich hatte als amtierender Securityfuzzi einmal die Aufgabe, die benötigte Verschlüsselungskapazität eines großen Webdienstleisters für eine Konsolidierungsmaßnahme auszurechnen.
Das gesamte Rechenzentrum dieses Ladens hatte damals eine Leistungsaufnahme von ca. 2 Megawatt (2 Millionen Watt), das sind etwa 2500 PS (zwei dicke Schiffsdiesel als Notstromaggregate) und hatte damals knapp 100 Megabyte pro Sekunde an Traffic raus gepustet. Davon waren etwa 80 % verschlüsselt, denn dort hat man Verschlüsselung eingeschaltet, wenn immer ein Passwort oder andere benutzerspezifische Daten übertragen werden und bleibt dann im SSL-Modus, um die Session zu schützen.
Alte Männer mit Kugelschreibern
Bov Bjerg schreibt in Alte Männer mit Kugelschreibern für die Jungle World:
Machen wir uns nichts vor: In den vergangenen Jahren ist, nicht nur in Deutschland, eine gefährliche Parallelgesellschaft entstanden. Eine Gegengesellschaft von alten Männern, die sich kurz nach Erfindung des Kugelschreibers vom technischen Fortschritt abgekoppelt haben. Reaktionär, dogmatisch, unbelehrbar - und auch noch mächtig stolz darauf.
Unsere grundlegenden Werte sind ihnen fremd. Soweit sie davon auch nur Kenntnis erlangen, wollen sie diese Werte zerstören. Die freie Information behindern und die freie Rede bestrafen. Sie wollen über unsere Rechner bestimmen, obwohl sie kaum imstande sind, ihren eigenen auch nur einzuschalten. Sie sind längst dabei, uns zu kolonialisieren. Ihre Missionare heißen Polizist und Staatsanwalt. Ihr liebster Psalm und Schlachtruf zugleich lautet: »Das Internet ist kein rechtsfreier Raum!«
Echte Helden
Man hat mich gebeten, auf den Kieler Linuxtagen am 7/8. September etwas salbungsvolles zum Thema 15 Jahre Linux zu erzählen. Und das etwas mit Kiel zu tun hat.
Damit bin ich offiziell ein alter Sack.
Sobald man gebeten wird, über Rückblicke zu referieren und von der guten alten Zeit zu schwelgen ist man offiziell ein alter Sack.
So die Sorte Typ, die von den Helden vergangener Zeiten erzählt. Für die Richard Dean Anderson noch McGyver war, der mit dem Taschenmesser in der Hand noch selber Leben rettete, und nicht Sesselpuper bei Stargate. Damals hatten Telefone noch Drehscheiben, und das Leben war generell noch viel härter und damals es brauchte noch echte Helden…
Mehr Online-Durchsuchungs-Nebelkerzen
Laut Heise Newsticker äußert sich IT-Laie Jörg Ziercke:
Ziercke sagte, der Aufwand für eine einzige Online-Durchsuchung sei beträchtlich, “weil wir jeweils eine eigene Software entwickeln müssen”. Diese Software werde immer nur für den Einzelfall erarbeitet, “ein Unikat, das speziell auf die Rechner-Umgebung eines Verdächtigen zugeschnitten wird”.
Mal sehen, ob ich das richtig geparsed bekomme, was Ziercke da erzählt: Er möchte in einer missionskritischen Anwendung in einer Gefahrensituation unter Zeitdruck eine ungetestete Software in einer Situation einsetzen, in der er das Zielsystem nicht vollständig kontrollieren kann. Faßt es das in etwa zusammen?