ホームページ >運用・保守 >Linuxの運用と保守 >Web アプリケーションをファイル アップロードの脆弱性から保護するように CentOS システムを構成する方法
Web アプリケーションをファイル アップロードの脆弱性から保護するように CentOS システムを構成する方法
Web アプリケーションの普及に伴い、ファイル アップロード機能は多くの Web サイトで共通の要件になりました。ただし、ファイルのアップロード構成が正しくないと、重大なセキュリティ上の脆弱性が発生し、攻撃者が悪意のあるファイルをアップロードして任意のコードを実行できる可能性があります。 Web アプリケーションをファイル アップロードの脆弱性から保護するには、CentOS システムのいくつかの主要なコンポーネントと設定を構成する必要があります。この記事では、いくつかの重要な構成手順を説明し、関連するコード例を示します。
まず、攻撃対象領域を減らすために、不要なファイル アップロード機能を無効にする必要があります。 Apache 設定ファイルで、次の行を見つけてコメント アウト (または削除) します。
LoadModule cgi_module modules/mod_cgi.so
これにより、Apache の CGI モジュールが無効になり、攻撃者が CGI スクリプトをアップロードして実行することによってシステムに侵入するのを防ぎます。また、その他の不要なファイルアップロードモジュールがないか確認し、無効にしてください。
アップロード ファイルのサイズを制限することは、攻撃者による大きな悪意のあるファイルのアップロードを防ぐ効果的な方法です。 Apache の構成ファイルで、次の行を見つけて、適切な値 (たとえば、1MB に制限) に設定します。
LimitRequestBody 1048576
これにより、リクエスト本文のサイズが 1MB に制限され、このサイズを超えるファイルは削除されます。アップロードを拒否します。
ファイルのアップロード プロセス中に、攻撃者による悪意のあるファイルのアップロードを防ぐためにファイルの種類を確認することが非常に重要です。ファイルの種類は、Apache の mod_mime
モジュールを使用して確認できます。以下は、画像ファイル (JPEG、PNG、GIF) のみのアップロードを許可する設定例です。
<IfModule mod_mime.c> <FilesMatch ".(jpe?g|png|gif)$"> ForceType image/jpeg </FilesMatch> </IfModule>
この設定では、JPEG、PNG、GIF タイプ以外のファイルはすべてアップロードされます。アップロードが拒否されました。
アップロードされた悪意のあるファイルを通じて攻撃者が機密システム ファイルにアクセスできないように、アップロードされたファイルを別のディレクトリに保存することが非常に重要です。 Apache 設定ファイルで、アップロードされたファイルを保存するためのディレクトリを設定し、そのディレクトリが実行可能でないことを確認します。
<Directory /path/to/upload/directory> Options -Indexes -ExecCGI AllowOverride None Require all granted </Directory>
/path/to/upload/directory
を実際のディレクトリに置き換えてください。アップロードディレクトリのパス。
Web アプリケーションのアップロード機能へのアクセスを制限するようにファイアウォールを構成することは非常に重要です。以下は、firewalld
ツールを使用して CentOS 7 でファイアウォール ルールを構成し、特定の IP アドレスからのアップロード機能へのアクセスのみを許可するコマンドの例です:
# 允许HTTP和HTTPS流量 sudo firewall-cmd --zone=public --add-service=http --permanent sudo firewall-cmd --zone=public --add-service=https --permanent # 允许来自特定IP地址的访问上传功能 sudo firewall-cmd --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.1.100" port port="80" protocol="tcp" accept' --permanent # 重新加载防火墙规则 sudo firewall-cmd --reload
192.168 を変更してください。 1.100
アップロード機能へのアクセスを許可する特定の IP アドレスに置き換えます。
要約すると、Web アプリケーションをファイル アップロードの脆弱性から保護するように CentOS システムを構成するには、一連の重要な設定が必要です。不要なファイルのアップロードの無効化、アップロード ファイル サイズの制限、ファイル タイプの確認、アップロード ディレクトリの分離、ファイアウォール ルールの構成はすべて重要な手順です。正しい構成とセキュリティを実践すれば、ファイル アップロードの脆弱性から Web アプリケーションを効果的に保護できます。
以上は CentOS システムにおけるファイルアップロードの脆弱性対策の設定方法です。もちろん、これらは基本的な設定の一部にすぎず、具体的な設定は実際の状況に応じて調整および改善する必要があります。構成の前に、重要なデータをバックアップし、システムのセキュリティを構成および維持するための十分な理解と経験があることを確認することをお勧めします。
以上がWeb アプリケーションをファイル アップロードの脆弱性から保護するように CentOS システムを構成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。