Web 開発では、ディレクトリは Web アプリケーションに必要なリソースを提供する重要な部分です。ただし、ファイル ディレクトリのアクセス許可が不適切な場合、Web セキュリティの問題が発生しやすくなります。たとえば、権限のない第三者が悪意のあるファイルをサーバーにアップロードし、サーバーが攻撃される可能性があります。そのため、Web アプリケーションの開発プロセスでは、不正アクセスや悪意のあるファイルのアップロードを防ぐために、ディレクトリのアクセス許可制御を強化する必要があります。
ディレクトリのアクセス許可の制御を強化するには、次の措置を講じることができます。
- ディレクトリのアクセス許可を制限する
#Linux システムでは、次の方法を使用できます。 chmod コマンドを使用してディレクトリのアクセス許可を制御します。具体的なコマンドは次のとおりです。
chmod 700 /var/www/html/uploads/
ログイン後にコピー
上記のコマンドの意味は、ディレクトリ所有者 (通常は Web サーバー プロセス) だけがディレクトリにアクセス、書き込み、実行する権限を持ち、他のユーザーには権限がないことを意味します。アクセス許可。
スクリプト ファイルの実行の禁止
一部のディレクトリは、Web サーバー プロセスによって実行される可能性のある PHP スクリプト ファイルなどのスクリプト ファイルを保存するために使用されます。 Web サーバーのプロセスが侵害された場合、このディレクトリは悪意のあるスクリプトの保存と実行に使用される可能性があります。これを防ぐには、Apache 設定ファイルを通じてディレクトリ内のスクリプト ファイルの実行を無効にすることができます。具体的な方法は次のとおりです。
Apache 構成ファイルで、次のコードを見つけます。
<Directory /var/www/html/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
ログイン後にコピー
これを次のように変更します。
<Directory /var/www/html/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
AddHandler txt .txt
AddHandler html .html
AddHandler htm .htm
AddHandler php .php .inc
</Directory>
<FilesMatch ".(php|inc)$">
Order Deny,Allow
Deny from all
</FilesMatch>
ログイン後にコピー
上記の構成ファイルに、次のコードを追加しました。 Apache サーバーが HTML、TXT、および PHP ファイルを提供できるようにするいくつかの MIME タイプ。次に、
タグで PHP および INC ファイル名を一致させることにより、すべてのディレクトリ内の PHP および INC ファイルの実行を無効にします。
ファイル アップロードの脆弱性の防止-
一部の Web アプリケーションでは、ユーザーが写真、ドキュメント、その他のファイルをアップロードできます。ただし、これらのアップロードされたファイルには悪意のあるコードが含まれている可能性があり、攻撃者はペイロード ファイルのアップロードの脆弱性を悪用して、悪意のあるファイルをサーバーに送信します。攻撃を防ぐために、次の方法でファイル アップロードのセキュリティを強化できます。
アップロードされるファイルの種類を制限します。 - 写真、ドキュメント、オーディオなど、安全なファイル タイプのみをアップロードできます。EXE、BAT、DLL などの危険なファイル タイプはアップロードできません。
アップロードされたファイルをフィルタリングします。 - アップロードされたファイルをフィルタリングして、アップロードされたファイルのセキュリティを確保します。サードパーティのプラグインまたはオープンソース ツールを使用して、アップロードされたファイルに悪意のあるコードが含まれているかどうかを確認できます。
アップロードされたファイルは安全なディレクトリに保存します。 - Web サーバーがアップロードされたファイルを実行する権限を持たないように、アップロードされたファイルを安全なディレクトリに保存します。同時に、ファイルアップロードの脆弱性を悪用して送信される悪意のあるファイルの実行も防ぐことができます。
一般に、Web アプリケーションを開発する場合、ディレクトリのアクセス許可制御を強化することは、Web 攻撃を防御するための重要な手段です。ファイル ディレクトリのアクセス許可を合理的かつ厳密に制御することで、悪意のある動作を効果的に削減できます。ディレクトリのアクセス許可制御は Web セキュリティにとって必要な前提条件であり、プログラマと管理者の両方がこれに注意を払う必要があります。 以上がPHP セキュリティ保護: ディレクトリのアクセス許可制御を強化するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。