PHPGangsta - Der praktische PHP Blog

PHP Blog von PHPGangsta


3 Konferenzen, 15% Rabatt-Codes, und 6 Abos!

with 7 comments

Es liegen noch einige Konferenzen an dieses Jahr, drei davon schneide ich hier kurz an weil ich eine davon dieses Jahr erneut besuchen werde, und ich 15% Rabatt-Codes ergattern konnte! Aber der Reihe nach.

Für die folgenden 3 Konferenzen kann ich Rabatt-Codes verteilen, jeweils 15%, natürlich auch noch anwendbar auf den Early-Bird-Preis bzw. den Kollegenrabatt, also der kleinsmögliche Preis:

JSD_2014_Banner_125x125_25368_v1Javascript Days

13. – 15. Oktober 2014 – Berlin. 18 Workshops zu je 3,5 Stunden. Die Themen umfassen unter anderem: AngularJS, JavaScript-Security, Web Application Architecture, ECMAScript 6, Hood.ie, Techniken für asynchrones JavaScript, Sass, Node.js, CouchApps, Regex für JavaScript, Website Performance, D3.js, Yeoman und Grunt.js, Responsive Webdesign

HTML5 Days

HTML5Days_125x125_2536713. – 15. Oktober 2014 – Berlin. 6 Workshops zu je 3,5 Stunden. Themen: Responsive Webdesign, CSS3, HTML5 Formulare, Touch-Oberflächen, und Web Components. Wem die 6 Workshops zu wenig sind: Alternativ können auch die Workshops der Javascript-Days besucht werden, die beiden Events finden parallel statt, und man darf beide besuchen.

PHP-Summit

PHP_Summit_125x125_25014_v324. bis 26. September 2014 – Düsseldorf. 18 Power-Workshops zu je 3,5 Stunden. Themen beispielsweise: Infrastruktur, Git, Sicherheit, SOA (Service oriented Architecture), Continuous Integration, Code-Qualität, Deployment ohne Wartungsfenster, Projekte erfolgreich beenden, Domain-Driven Design, wiederverwertbarer Code, Juristische Fallstruke, Typo3

 

Die Javascript-Days und HTML5-Days finden gleichzeitig in der selben Location statt, und wer eins von beidem besucht bekommt das andere umsonst mit dazu, man kann sich also aus beidem die jeweils interessantesten Vorträge raussuchen und hat noch mehr Auswahl.

Am PHP-Summit in Düsseldorf werde ich dieses Jahr wieder teilnehmen,  2012 war ich bereits beim Summit in Berlin dabei und hab es sehr genossen, kein reiner Frontalunterricht sondern Workshops mit direktem Kontakt, Hands-On und Eingehen auf die Fragen der Teilnehmer.

Wer an einem der drei Events teilnehmen möchte und einen Rabatt-Code braucht, schreibt einfach einen Kommentar hier im Blog und ich schicke einen Rabatt-Code raus per E-Mail.

Auf den ersten Blick sind die Preise etwas höher, das liegt daran dass es keine Massenveranstaltungen sind wie andere Konferenzen, wo 300 oder gar 1500 Entwickler zusammenkommen und ganze Kinos füllen, sondern hier nur wenige Dutzend Teilnehmer bei den Workshops sind, und auf jeden einzeln eingegangen werden kann. Ich kann das bestätigen durch den Besuch vor 2 Jahren beim Summit, ich konnte diverse Themen direkt ansprechen und wir haben diskutiert mit den Trainern und den anderen Teilnehmern, das ist cooler als “nur” Präsentationen zuzugucken. Größer ist nicht immer besser. Man bekommt 3 vollgepackte Tage, jeweils 8 bzw. 9 Stunden Programm, andere Konferenzen sind häufig “nur” 2 Tage.
Den Preis kann man sich in den meisten Fällen nicht privat leisten, da muss der Arbeitgeber schon mitspielen, was er auch ab und zu macht hoffe ich, denn Arbeitnehmer haben ein Recht auf Weiterbildungsmaßnahmen! Danke übrigens an meinen Chef, der mich da ab und zu unterstützt bei meinen Vorhaben!

Der Rabatt-Code ist mehr als 100€ wert, nutzt ihn!

Auch kann ich 6 Jahres-Abos an euch verlosen, 3 Mal das Entwickler-Magazin und 3 Mal das PHP Magazin! Sie verlängern sich nicht automatisch, also keine Bindung. Wer daran Interesse hat schreibt in die Kommentare entweder “+EntwicklerMagazin” ODER “+PHPMagazin”, jeder nur ein Mal versteht sich. Die 6 Abos verlose ich am 4. August 2014.

Also, viel Glück, bzw.: Wir sehen uns in Düsseldorf!

Written by Michael Kliewe

Juli 22nd, 2014 at 1:21 pm

OpenSSL: Heartbleed

with 5 comments

heartbleedIhr habt es wahrscheinlich schon alle mitbekommen, es klafft ein riesiges Loch in der häufig eingesetzten OpenSSL-Bibliothek. Webserver, Mailserver, Jabberserver, alles was irgendwie mit Verschlüsselung zu tun hat ist gefährdet. Ist bereits OpenSSL 1.0.1 bis 1.0.1f im Einsatz (das ist die aktuelle Version, seit 2 Jahren verfügbar) steht ein dringendes Update an auf 1.0.1g.

Nicht betroffen sind OpenSSL 1.0.0 und 0.9.8. Nicht betroffen ist auch OpenSSH (wichtiger Unterschied).

Die Lücke hat den Namen “Heartbleed” bekommen und ist unter der CVE-Nummer CVE-2014-0160 verzeichnet.

Mit Hilfe dieser Lücke können Angreifer auf “die nächsten 64KB” des Arbeitsspeichers des Prozesses zugreifen. “Die nächsten” ist aber variabel, je nachdem wo er gerade landet im Arbeitsspeicher, sodass mit einer gewissen Wahrscheinlichkeit auch der private SSL-Schlüssel zu finden ist. Dieser kann nun von außen ausgelesen werden, ohne dass es Logeinträge gibt, also völlig unsichtbar. Mit Hilfe dieses Private Keys kann der Angreifer die aufgezeichneten Trafficdaten der Vergangenheit entschlüsseln, aber auch in Echtzeit in der Zukunft den Traffic entschlüsseln. Er kann außerdem per Man-in-the-Middle anderen vorgaukeln dass sein Server gültig ist für die jeweilige Domain, und damit Phishing betreiben.

Sehr ausführliche Informationen befinden sich auf der Seite heartbleed.com.

Was ist zu tun:
Weiterlesen »

Written by Michael Kliewe

April 9th, 2014 at 4:34 pm

Verteilung der PHP-Versionen, Verbreitung von 5.5

with 6 comments

php5.5Da PHP 5.6 vor der Tür steht (die Beta müßte jeden Tag erscheinen, und die finale Version dann in einigen wenigen Wochen) fragte ich mich wie es mit der PHP 5.5 Verbreitung aussieht, immerhin ist 5.5 bereits am 20. Juni 2013 veröffentlich worden, also vor fast 10 Monaten. Bei mail.de sind wir erst Anfang Februar auf 5.5 umgestiegen, wir nutzen keine Software im Produktivbetrieb kurz nachdem sie released wurde und warten immer ein paar Wochen ab bis die ersten Bugfix-Releases erschienen sind. Wenn Zeit da ist versucht man sich bereits vorher an einer Testumgebung, aber diesmal fehlte die Zeit dies ausführlich machen zu können Mitte des Jahres. Ende des Jahres hatten wir so viel um die Ohren sodass wir erst Anfang dieses Jahres dazu gekommen sind.

Je größer die Umgebung, je umfangreicher die Applikationen und je mehr unterschiedliche Projekte mit externen Abhängigkeiten man hat, desto aufwändiger sind die Tests und die Änderungen die man machen muss. Mit der Version 5.5 gab es kaum Änderungen an Funktionen um die man sich kümmern muss wie man im Migration Guide 5.5 lesen kann. Wichtig sind vor allem die Backward Incompatible Changes, die Deprecated Features und die Changed Functions. Für uns jedoch war die wichtigste Änderung die Einführung des OpCache, der ehemals als Zend Optimizer+ bekannte Bytecode-Cache der nun mit PHP ausgeliefert wird. Wir nutzten bis dahin seit Jahren APC als Bytecode-Cache und auch als lokalen Usercache. Nun wechseln wir weg von APC hin zu OpCache und APCu. Da wir dort die meisten Probleme erwarteten mußten wir dies besonders gut testen, denn in den letzten Monaten sind noch einige kleine Bugs in APCu aufgetreten.

Weiterlesen »

Written by Michael Kliewe

März 30th, 2014 at 2:55 pm

GeoIP Fullsize Website

with one comment

GeoIP @mail.deWer schnell und unkompliziert sehen möchte wo eine IP-Adresse ungefähr beheimatet ist, der sucht sicherlich bei Google nach so etwas wie “ip geo location” oder ähnliches. Es finden sich dann einige Suchergebnisse mit Webseiten und Formularen, in die man die IP-Adresse einträgt und man dann Informationen zur IP bekommt, wie beispielsweise den Reverse-DNS-Eintrag oder vielleicht auch einer kleinen Karte, wo die IP-Adresse ungefähr zugewiesen wurde.

Doch diese Webseiten sind häufig nicht IPv6-ready, und man kann sich nicht nur die Karte anschauen wenn das das einzige ist was einen interessiert. Wir haben dazu nun einen kleinen Dienst erstellt bei mail.de, der frei nutzbar ist und wo nur die Karte angezeigt wird, und zwar Fullsize:

https://geoip.mail.de

Standardmäßig wird erstmal die IP-Adresse des aktuellen Besuchers genommen, es kann aber oben für das kleine Textfeld oder über den GET-Parameter q eine IP-Adresse übergeben werden. Außerdem lässt sich die Sprache der Karte umstellen. Es funktioniert mit IPv6-Adressen und ist über HTTPS erreichbar, sodass man keine Probleme mit Mixed-Content bekommt.

Ein Beispiel

Weiterlesen »

Written by Michael Kliewe

März 7th, 2014 at 11:09 am

Bug bei Authentifizierung in curl

without comments

CURLcurl hat in der aktuell verwendeten Version im stabilen Ubuntu 13.10 einen Bug, der sich auch rein bis in die PHP-Scripte auswirkt.

Wenn man bei der Nutzung von curl die Authentifizierung nutzt und im Passwort ein Semikolon enthalten ist (was gute Passwörter ja so an sich haben), dann wird dieses Passwort abgeschnitten. Folgender Beispielcode:

$curlSettings[CURLOPT_HTTPAUTH] = CURLAUTH_BASIC;
$curlSettings[CURLOPT_USERPWD]  = '1testuser' . ':' . 'pass;word';

$curl = curl_init('http://www.phpgangsta.de/download/curl_auth_test.php');
               // content:   echo 'Password: '.$_SERVER['PHP_AUTH_PW'];
curl_setopt_array($curl, $curlSettings);

curl_exec($curl);
// should output:   Password: pass;word
// wrong output:    Password: pass

Es wird mittels des curl-Parameters CURLOPT_USERPWD der Username und das Passwort übertragen, und wie man an der Antwort des Servers sieht kommt nur das Passwort bis zum Semikolon beim Server an, es wird abgeschnitten.

Weiterlesen »

Written by Michael Kliewe

Februar 20th, 2014 at 1:11 pm

Posted in PHP

Tagged with , , ,