Suhosin を使用して PHP スクリプト言語のセキュリティを強化する
PHP は非常に人気のある Web サイト スクリプト言語ですが、その固有のセキュリティは非常に弱いです。 PHP 拡張プラン (Hardened-PHP プロジェクト) と新しい Suhosi プラン、Suhosin は、拡張された PHP セキュリティ構成を提供します。
PHP は物議を醸していますが、最も人気のある Web サイト スクリプト言語です。低価格であるため人気がありますが、その低価格により、Web アプリケーションが PHP で記述されることが増え、同時に PHP 自体のセキュリティ上の脆弱性が露出するようになりました。特徴は、PHP が非常に信頼性が低いことを示しています。 (推奨学習: PHP ビデオ チュートリアル )
ただし、同時に、このスクリプト言語自体は非常に柔軟であり、それを使用してコードを簡単に実装できますが、コードはは肥大化しており安全ではありませんが、それでも多くのユーザーがいます。
実際の状況に基づいて、さまざまなアプリケーション ソフトウェアでこの脆弱性が何度も実証されていると推測できます。SQL インジェクション、クロスサイト スクリプティング、命令の任意の実行などに対して脆弱です。
safe_mode や open_basedir などの組み込みの PHP セキュリティ対策は無視されるため、PHP 拡張プランはより安全な PHP を作成し、PHP の検証チェックも実行します。
当初、これらは PHP 自体にパッチを適用して再コンパイルする必要がある拡張 PHP パッチによって実現されました。最近、PHP Enhancement Project は Suhosin と呼ばれる新しいプロジェクトをリリースしました。
Suhosin は、PHP プログラムの保護システムです。これは、PHP プログラムと PHP コアの既知および未知の欠陥からサーバーとユーザーを保護するように設計されています。
Sohosin は 2 つの部分で構成されています: 最初の部分は PHP 用のパッチです。このパッチは、バッファ オーバーフローの可能性を回避し、関連する弱点を防ぐために Zend エンジン自体を強化します。 2 番目の部分は、PHP のスタンドアロン モジュールである Suhosin の拡張です。 2 つの部分は連携して動作することも、拡張機能が独立して動作することもできます。
開発者は、セキュリティ上の理由から独自の PHP インストール設定を維持する必要はなく、ベンダーが提供する Linux ディストリビューション システム上で PHP を直接使用し、拡張モジュールを使用してより多くの機能を提供することを確実に好みます。 PHP 自体には備わっていない多くのセキュリティ機能があります。
拡張モジュールはインストールが簡単です。PECL を通じてインストールすることも、ダウンロード後にコンパイルしてインストールすることもできます:
$ tar xvzf suhosin-0.9.17 $ cd suhosin-0.9.17 $ phpize $ ./configure $ make $ sudo make install
suhosin を使用するには、次のことも行います。以下に示すように、/etc/php.ini を追加する必要があります。
extension=suhosin.so
ほとんどの人にとって、デフォルトの設定オプションで十分です。設定を強化するには、/etc/php.ini に対応する値を追加します。さまざまな設定オプションは Web サイトで詳しく紹介されており、これらの手順は初期設定に役立ちます。
Suhosin を使用すると、エラー ログを取得できます。これらのログをシステム ログに保存したり、同時に他のログ ファイルに書き込んだりできます。また、仮想ホストごとにブラックリストを作成することもできます。ホワイトリスト。GET リクエストと POST リクエスト、ファイルのアップロード、Cookie をフィルタリングできます。暗号化されたセッションや Cookie を送信したり、送信できないストレージを設定したりすることもできます。
オリジナルの PHP 強化パッチとは異なり、Suhosin は Zend Optimizer などのサードパーティの拡張ソフトウェアと互換性があります。
以上がPHP言語のWebサイトのセキュリティを強化する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。