PHP ist eine sehr beliebte Website-Skriptsprache, aber ihre inhärente Sicherheit ist sehr schwach. Dieser Artikel beschreibt den PHP-Erweiterungsplan (Hardened-PHP-Projekt) und der neue Suhosi-Plan bietet eine erweiterte PHP-Sicherheitskonfiguration.
PHP ist die umstrittene, aber beliebteste Website-Skriptsprache. Es ist wegen seines niedrigen Preises beliebt. Dieser niedrige Preis hat jedoch dazu geführt, dass immer mehr Website-Anwendungen in PHP geschrieben wurden, und gleichzeitig sind immer mehr PHP selbst Sicherheitslücken ausgesetzt Die Funktionen zeigen, dass PHP extrem unzuverlässig ist, aber gleichzeitig ist die Skriptsprache selbst sehr flexibel und es ist einfach, Code damit zu implementieren, aber diese Codes sind aufgebläht und unsicher, obwohl es auf diese Weise immer noch viele gibt Benutzer. Man kann davon ausgehen, dass Anwendungen aller Art immer wieder diese Schwachstelle aufweisen: anfällig für SQL-Injection, Cross-Site-Scripting, willkürliche Ausführung und mehr.
Da integrierte PHP-Sicherheitsmaßnahmen wie „safe_mode“ und „open_basedir“ ignoriert werden, erstellt das PHP Enhancement Project PHP, das sicherer ist, und führt außerdem Validierungsprüfungen für PHP durch. Ursprünglich wurden diese mit erweiterten PHP-Patches erreicht, die ein Patchen und Neukompilieren von PHP selbst erforderten. Vor kurzem hat das PHP Enhancement Project ein neues Projekt namens Suhosin veröffentlicht.
Sohosin besteht aus zwei Teilen: Der erste Teil ist ein PHP-Patch. Dieser Patch stärkt die Zend-Engine selbst, um mögliche Pufferüberläufe zu vermeiden und damit verbundene Schwachstellen zu verhindern. Der zweite Teil ist die Erweiterung von Suhosin, einem eigenständigen Modul für PHP. Die beiden Teile können zusammenarbeiten oder die Erweiterung kann unabhängig voneinander arbeiten.
Entwickler möchten nicht ihre eigenen PHP-Installationen pflegen müssen, um Sicherheit zu erreichen, und sie ziehen es auf jeden Fall vor, PHP direkt auf dem vom Anbieter bereitgestellten Linux-Distributionssystem zu verwenden und Erweiterungsmodule zu verwenden, um mehr Sicherheitsfunktionen bereitzustellen, die PHP selbst nicht bieten kann.
Die Erweiterung ist einfach zu installieren; sie kann auch über PECL installiert oder heruntergeladen und kompiliert werden:
$ tar xvzf suhosin-0.9.17
$ cd suhosin-0.9.17
$ phpize
$ ./configure
$ make
$ sudo make install So
verwenden Sie suhosin , müssen Sie auch /etc/php.ini hinzufügen, wie unten gezeigt:
extension=suhosin.so
Für die meisten Leute reichen die Standardkonfigurationsoptionen aus. Um die Einstellungen zu verstärken, können Sie die entsprechenden Werte in /etc/php.ini hinzufügen. Die verschiedenen Konfigurationsmöglichkeiten werden auf der Website ausführlich vorgestellt. Diese Anleitung kann Ihnen bei der Erstkonfiguration helfen.
Mit Suhosin können Sie einige Fehlerprotokolle abrufen oder sie gleichzeitig in beliebige andere Protokolldateien schreiben. Außerdem können Sie für jeden virtuellen Host Blacklists und Whitelists erstellen Anfragen, Datei-Uploads und Cookies. Sie können außerdem verschlüsselte Sitzungen und Cookies senden, einen Speicher einrichten, der nicht gesendet werden kann, und vieles mehr. Im Gegensatz zum ursprünglichen PHP-Härtungspatch ist Suhosin mit Erweiterungen von Drittanbietern wie Zend Optimizer kompatibel.