長年にわたり、PHP は Web ベースのアプリケーションを実行するための安定した安価なプラットフォームでした。ほとんどの Web ベースのプラットフォームと同様、PHP は外部からの攻撃に対して脆弱です。開発者、データベースアーキテクト、システム管理者はすべて、PHP アプリケーションをサーバーに展開する前に予防措置を講じる必要があります。ほとんどの予防策は、数行のコードまたはアプリケーション設定のわずかな調整で実現できます。
1: インストール スクリプトを管理する
開発者がサードパーティ アプリケーション用の一連の PHP スクリプトをインストールしている場合、このスクリプトはアプリケーション全体の動作コンポーネントをインストールし、アクセス ポイントを提供するために使用されます。ほとんどのサードパーティ パッケージでは、インストール後にこのディレクトリに含まれるインストール スクリプトを削除することをお勧めします。ただし、インストール スクリプトを保持したい開発者は、ディレクトリへの管理アクセスを制御する .htaccess ファイルを作成できます。
AuthType Basic AuthName "管理者のみ" AuthUserFile /usr/local/apache/passwd/passwords Require valid-user |
不正なユーザーが試みた場合保護されたディレクトリにアクセスするには、ユーザー名とパスワードを求めるプロンプトが表示されます。パスワードは、指定された「パスワード」ファイル内のパスワードと一致する必要があります。
2: ヘッダー ファイル
多くの場合、開発者はアプリケーション内に分散されている複数のスクリプトを 1 つのスクリプトに含めることができます。これらのスクリプトには、個々のファイルを元のページのコードに統合する「include」ディレクティブが含まれます。 「インクルード」ファイルにユーザー名、パスワード、データベース アクセス キーなどの機密情報が含まれている場合、ファイルには通常の「.inc」拡張子ではなく「.php」拡張子が必要です。 「.php」拡張子により、PHP エンジンがファイルを処理し、不正なアクセスが防止されます。