Eigentlich hat mal wieder alles wie üblich harmlos angefangen. Eigentlich ging es mir nur darum, die Funktionen von RRDTool in meinen Scripten nutzen zu können, ohne auf Prozesssteuerbefehle wie system, exec, popen & Co. zurückgreifen zu müssen, da diese auf meinem Server aus gutem Grund deaktiviert sind. Dafür begab ich mich nun auf die Suche, ob es für PHP ggf. bereits eine entsprechende Extension gibt und wurde auch recht schnell fündig: Für PHP4 hatte bereits vor mehreren Jahren jemand sich die Mühe gemacht und eine entsprechende, kleine Erweiterung geschrieben. Glücklicherweise ließ sich diese (nach Download der benötigten Header) auch problemlos für PHP5 compilieren. Da die Dokumentation wie üblich aus dem bestand, was der C-Compiler zu gesicht bekommt, hab ich natürlich einen Blick dorthinein geworfen und musste feststellen, dass eine Reihe von Funktionen, insbesondere das Dumpen von RRD-Files, das Lesen von Infos und ein paar der neueren Funktionen von RRDtool bisher nicht über die Extension ansprechbar waren. (more…)
26.08.2009
22.07.2009
RRDTool für PHP
Mehr oder weniger aus eigenem Interesse habe ich die Tage einmal nach einer Möglichkeit gesucht, die Funktionalität von Mailgraph und Bindgraph, die auf meinem Webspace werkeln, mit einem eigenen PHP-Skript nutzen zu können. Diese Scripte nutzen beide RRDTool, also so ziemlich der Standard in dieser Hinsicht. Bindings sind auch für Python und Perl vorhanden – jedoch für PHP gibt es kein offizielles. Durch einen Blogeintrag bei IONCANNON, der zugleich eine einfache Einführung in die Nutzung gibt, bin ich auf einen etwas älteren Versuch aufmerksam geworden, mit dem jemand eine solche Möglichkeit geschaffen hat. (more…)
10.07.2009
Konsequent inkonsistent
PHP ist eine wunderbare Programmiersprache … zumindest für Masochisten. Wer zudem noch auf Inkonsistenz steht, hat spätestens mit PHP eine verlässliche Quelle für tägliche Überraschungen zur Verfügung. Wer das nicht glaubt, sollte sich PHP einmal anschauen: Hier also einmal ein Einsteiger-Kurs, für alle die, die schon immer eine Sprache haben wollten, die mehr Ausnahmen wie das deutsche Steuerrecht besitzt und komplizierter wie Brainfuck zu programmieren ist. Gut: Beides war vor PHP da, von daher könnte man maximal schlechte Immitation konstatieren, aber selbst das passt zur Sprache an sich ja bereits mehr als treffend. (more…)
09.07.2009
Der evil-Modifier
Eine der bemerkenswerten Bibliotheken, die PHP zur Nutzung anbietet – sofern sie mal nicht wie so oft überfordert ist – ist die PCRE-Bibliothek (Perl Compatible Regular Expressions), mit der sich auf einfache Weise (naja, wenn man die Syntax einmal verstanden hat) umfangreichste Dinge vollführen lassen. Eine häufige Anwendung, die man hierbei regelmäßig als Betrachter fremder Bibliotheken zu Gesicht bekommt, ist hierbei Quelltext, der elegant Parsing von Eingabedaten vornimmt, Sicherheitsprüfungen ausführt oder auf andere Art einen Eingabestring verarbeitet. Mit ein wenig Magic drumherum lässt sich so ein ziemlich schneller Syntax-Highlighter schreiben, der mit einem Schlag ganze Gruppen von Schlüsselworten highlighted und dabei abhängig von den gefundenen Schlüsselworten z.B. Links auf deren Dokumentation fertigt.
Doch wie so häufig bei PHP gibt es eine Reihe von Fallstricken. Einer dieser liegt bei eben dieser genannten Bibliothek. Diese bietet für umfangreiche, nicht statisch ausführbare Ersetzungen mit preg_replace einen speziellen Modus: Den /e-Modifier, der auf Grund seiner Arbeitsweise auch gern Evil-Modifier genannt werden darf. Aber dazu sollten wir erst einmal klären, was diese Funktion tut. (more…)
30.01.2009
PHP als SSL-Client
Es ist ja nicht so, als ob PHP nichts kann, ganz im Gegenteil: PHP kann alles, nur nicht das, was man brauch – naja, oder zumindest nicht ausreichend einfach. Da wäre z.B. die Geschichte mit der sicheren Kommunikation über SSL/TLS. PHP selber muss, wenn es auf einem Server läuft, SSL nicht weiter beherrschen wie das Auslesen der Umgebungsvariablen, die vom Apache gesetzt werden. Möchte man nun aber von einem fremden Server via PHP ein paar Daten sicher abfragen oder übertragen bekommen, darf man eine Krücke nach der anderen benutzen. (more…)
01.01.2009
Firefox und SSL
Erstmal hoffe ich, dass alle meine LEser gut in’s neue Jahr 1984v2 gekommen sind und man sich nun nach den etwas stressigen letzten Tagen des alten Jahres gut erholt hat. Aber halt! Da war ja der 25C3 mit einer ganzen Reihe interessanter Vorträge zum Thema Sicherheit, u.a. in Bezug auf verschiedene Protokolle wie DNS und TCP, aber auch in Bezug auf eine ganze Reihe neuer Angriffe, die wie eigentlich in jedem Jahr, auf dem Kongress vorgestellt wurden, darunter Cold Boot Attacks gegen den Speicher frisch ausgeschalteter Computer, Angriffe gegen Web Services, aber auch Angriffe gegen verschlüsselte PHP-Anwendungen.
Nein, ich möchte jetzt nicht den gesamten Kongress im Detail wiedergeben – zu dem ich ohnehin aus verschiedenen Gründen leider nicht fahren konnte: ich möchtee eher ein anderes Problem hervorheben, wo der Kongress einmal mehr überaus deutlich gezeigt hat, dass ein Umdenken und eine alternative Lösung mehr als notwendig ist, da die vorhandenen Mittel auf lange Sicht nicht weiter vor einer Katastrophe schützen können, wie der Vortrag zu SSL und der Erstellung eines gültig-unterschriebenen CA-Zertifikates gezeigt haben. (more…)
28.11.2008
Update leicht gemacht
Die Jungs von WordPress haben wieder mal ganze Arbeit geleistet: Wieder ist eine neue Version draußen. Und nun stellt sich die Frage: Wie am einfachsten aktualisieren, ohne die in der eigenen Installation vorhandenen Patches erneut einpflegen zu müssen? (more…)