Freek Lijten Blog: Das eigentliche Problem der Hash-Tabelle vor DoS-Angriffen

Als Antwort auf einige der Kommentare wird über die Hash-Tabelle Denial of Service Angriff gemacht kürzlich veröffentlichtes Freek Lijten hat über das eigentliche Problem mit der ganzen Situation – wie es von den beteiligten Gemeinden behandelt wurde.

Interessante sie auch sein mögen, aber ich möchte zu begegnen, was meiner Meinung nach ist das eigentliche Problem: Die Art und Weise der Kommunikation, es war bestimmt durch verschiedene Projekte und die Tatsache, dass die ausgenutzt werden könnte überhaupt noch existieren behandelt. […] In der Präsentation Wälde und Klink sprechen über ihre Offenlegung Prozess. Die PHP-Projekt hatte sie warten 3 Wochen für eine erste Antwort, während das ist offensichtlich eine ernste Angelegenheit.

Er argumentiert, dass Dinge wie eine Commit-Nachricht Erwähnung eines DoS Prävention statt fix von nur erwähnen das Update haben das Potenzial, mehr Schaden anrichten als Gutes tun. Er weist auch darauf hin, dass andere Gemeinden das Problem gemeldet wurden (wie Python) und einige noch nicht auf die Frage geantwortet.

Dieser Angriff war das Ergebnis von guter Forschung, und es ist wichtig, dass sie weitergegeben wird. Noch wichtiger ist jedoch die Tatsache, dass Unternehmen durch jahrelange nicht zu bemerken, es wurde und noch schlimmer, reagierte sehr schlecht, nachdem sie informiert. Ich kann nicht sagen, ich habe eine fertige Lösung für diese Art von Dingen in der Zukunft, vielleicht erweisen sich eine interessante Diskussion werden zu vermeiden.

PHPDeveloper.org

Richard McIntyre Blog: Mit OAuth in Lithium

Richard McIntyre hat einen neuen Beitrag in seinem Blog zeigt, wie er eingerichtet OAuth Unterstützung in einer Lithium-basierte Anwendung mit Hilfe eines handlichen Plugin (li3_oath).

Die OAuth -Protokoll ist ein fantastischer Weg, um Remote-Services und Websites anmelden. Leider ist die spec ist anders in OAuth 1.0 und der noch un-verfestigte 2,0, ist die Umsetzung auch anders auf verschiedene Dienste. Im Moment ist dies ein bisschen wie ein Phantom nachjagen, sondern Bibliotheken wie li3_oauth können helfen! […] Ich mag die Kontrolle und das Sagen werden! Ich möchte auch, dass die Benutzer haben die Möglichkeit, zu anderen Diensten unter einem Dach anmelden. In direkter Zusammenarbeit mit OAuth ist, was ich tun wollte. Natürlich war ich tue dies in Lithium, weil es klar ist das beste PHP Framework!

Sein Verfahren ist in vier Schritte unterteilt:

  • Besorgen Sie sich die neueste Version der li3_oauth plugin
  • Fork und Refactoring des Plugins
  • den Tweet und Facebook-Controller
  • Refactor ein bisschen mehr, um es in einen Dienst zu aktivieren

Die Code-Änderungen sind ziemlich minimal und sind in der Post enthalten.

PHPDeveloper.org

Mark Story Blog: New Fehler in PHP 5,4

In diesem schnellen neuen Beitrag in seinem Blog Mark Story Gespräche über zwei neue Fehler er ganz bei der Aktualisierung seiner Installation auf PHP 5,4 lief, beide zeigen sich unter E_ALL.

Ich habe seit dem PHP5.4 RC baut für den letzten Monaten, und es gibt einige interessante Veränderungen in den kommenden PHP Version. Am Anfang aller großen neuen Features in PHP5.4. Nach dem Update auf PHP5.4-RC4, ein paar Dinge, die nicht ausgelöst Fehler und geräuschlos das Falsche zu tun, jetzt auch ausgelöst, Hinweise oder Warnungen verwendet.

Die beiden nennt er sich mit einer neuen Warnung auf illegale String-Offsets und die andere über String-Offsets („Notice: String Offset cast aufgetreten“). Sie können sich über weitere Änderungen in der PHP 5,4 Serie in die verschiedenen Changelogs für jedes Release Candidate und Beta-Release.

PHPDeveloper.org

Nikita Popov Blog: Supercolliding ein PHP-Array

In einem neuen Beitrag in seinem Blog Nikita Popov Gespräche über einen kleinen Trick mit dem Einfügen von Werten in Arrays, dass es viel länger, als es sollte (weil, wie PHP speichert seine Array-Werte in Hashtabellen) kann.

PHP intern verwendet Hashtables Arrays zu speichern. Die oben schafft eine Hash-Tabelle mit 100% Kollisionen (dh alle Tasten werden die gleichen Hash haben). […] Da jede Hash-Funktion hat Kollisionen dieser C-Arrays nicht wirklich den Wert speichern wir wollen, aber eine verlinkte Liste der möglichen Werte. […] Normalerweise wird es nur eine kleine Anzahl von Kollisionen, so in den meisten Fällen der verketteten Liste hat nur einen Wert. Aber die [inklusive Skript] erzeugt einen Hash, wo alle Elemente kollidieren.

Er erklärt, warum es funktioniert, stellt fest, dass es relativ einfach ist, in PHP, weil, wie sie sich einen Tisch Maske zu tun. Die Langsamkeit kommt, wenn PHP ist gezwungen, durch die gesamte Liste zu gehen, wenn es um einzufügen versucht. Aufgrund dieses Problems gibt es das Potenzial für einen Denial of Service Attacke, die möglicherweise nehmen könnte ein Server heruntergefahren. Es gibt ein Update bereits vorhanden für das Problem, obwohl, so halten Sie ein Auge für das nächste Release ( das wird eine max_input_vars Einstellung, um sie zu verhindern).

PHPDeveloper.org

Dzone.com: Open Source PHP-Projekte des Jahres 2011

Auf Dzone.com heute Giorgio Sironi hat geschrieben, was er zu einigen der beliebtesten Open Source PHP-Projekte des Jahres 2011 einschließlich Symfony2, Lehre und HipHop.

Diese nicht-wissenschaftliche Analyse der beliebte und spannende PHP-Projekte geht von Untersuchungen an aktiven Projekten auf SourceForge und GitHub, die letztere ist, wo die meisten der Zusammenarbeit und Beteiligung der PHP-Entwickler heute ist. Ich habe auch die Frage auf Twitter Crowdsourcing, um Projekte, die ich nicht kannte fangen, und ich hoffe, das gleiche mit dir machen.

Andere Projekte in seiner Liste enthalten sind:

  • Symfony2 Komponenten
  • Moodle
  • Komponist und Packagist
  • Drupal, Joomla, WordPress

Haben Sie ein Projekt du, er vermisst? Lassen Sie ihn wissen!

PHPDeveloper.org

Joshua Thijssen Blog: facter: Zend Server

Joshua Thijssen hat gemeinsam einen praktischen Tipp für die Verwendung von Zend Server auf einem pupptet-ed-Server – mit einem facter Plugin zu prüfen, für die ZS installieren und nur installieren, was gebraucht wird (anstatt am Ende mit mehreren PHP installiert).

Das heißt, Sie sollten nicht installieren Sie die Standard-PHP-Paket für Ihre Distribution, wenn die Verteilung läuft auch auf Zend Server. Diese facter Plugin ermöglicht es Ihnen, die $ zendserver Tatsache, innerhalb Ihrer eigenen manifestiert Verwendung zu prüfen, ob Zend Server installiert ist, so können Sie Maßnahmen gegen die Installation Zeug, das darauf geachtet ist durch ZendServer sich zu nehmen.

Sie können das Plugin von seinem github Konto herunterladen,
PHPDeveloper.org

NetTuts.com: Zehn Neujahrsvorsätze Jeder Web Developer sollten

NetTuts.com hat ihre Liste von dem, was sie denken, geschrieben werden soll :

In weniger als einer Woche werden wir im Jahr 2012 sein. Ich weiß, es ist ein Klischee, aber wo ist das Jahr geblieben? Natürlich sind wir jetzt an die Zeit des Jahres, wenn die Leute Ziele gesetzt für das neue Jahr. Während Sie einige Ziele für Ihre „echte“ Leben haben könnte, wie wäre es mit ein paar Auflösungen für Ihre Entwickler das Leben?

Vorschläge beinhalten:

  • Get Better At What You Know
  • Engage der Gemeinschaft
  • Nehmen Sie besser auf sich
  • Bessere Programming Practices
  • Take a Break

PHPDeveloper.org

Community News: PHP Advent 2011 ist abgeschlossen!

Die diesjährige PHP Adventskalender hat und beendet, wenn Sie nicht die Chance, um einige der großen Content in der diesjährigen Ausgabe bekommen haben, sollten Sie auf einen Blick an die vollständige Liste zu nehmen . Es Beinhaltet Themen wie:

  • Front-End-Tests mit SimpleTest
  • Skalierbare Anwendungen
  • Cross-Herkunft ajax
  • Zusammenarbeit mit Chef
  • Fehlerbehandlung
  • Daten und Zeiten

Die Artikel sind durch mehrere gut knowns sowohl in der PHP-Community und außen. Während Sie dort sind, lesen Sie bitte einige von die zurück Jahre auch!

PHPDeveloper.org