最近コンプライアンスセキュリティスキャンを実行した場合、結果は次の例のようになります。
Apache HTTP Server Zero-Length Directory Name in LD_LIBRARY_PATH Vulnerability, CVE-2012-0883
Apache HTTP Server mod_rewrite Terminal Escape Sequence Vulnerability, CVE-2013-1862
Apache HTTP Server XSS Vulnerabilities via Hostnames, CVE-2012-3499 CVE-2012-4558
コードベースによっては、Apache®HTTPサーバーがこれらのセキュリティ問題をすでに軽減している場合があります。スキャンはサーバーのApacheバージョンをチェックして、インストールされているバージョンがセキュリティの問題を解決するかどうかを判断します。ただし、一部のコンプライアンスセキュリティスキャンでは、サーバーが脆弱性を直接検出するのではなく、Apacheのバージョンのみを使用してCommon Vulnerabilities and Exposures(CVE)に対して脆弱かどうかを判断します。
このようなスキャンは、ほとんどの場合、誤検知を生成します。自動更新を有効にすると、別のリリースで脆弱性にパッチが適用されても、バージョンが同じままになる可能性があります。したがって、スキャンによって脆弱性がポジティブとしてマークされる可能性があります。この結果は、以前のスキャンで脆弱性が特定された場合でも、プロバイダーのスキャンでサーバーの脆弱性がなくなったことが示された場合にも発生する可能性があります。
セキュリティ監査で、コンプライアンスセキュリティスキャンがApache2サーバーの脆弱性を特定するためにApacheのバージョンのみを使用していることが判明した場合は、次の手順を使用します。HypertextTransfer Protocolデーモン(HTTPd)の構成ファイルを編集します。
-
/etc/apache2/conf.d/httpd.confを開きます エディターで。
-
次の行を追加し、バージョン情報を削除します。
ServerSignature Off ServerTokens Prod
注 :サーバーはバージョン署名を提供するべきではなく、侵入テスト会社はバージョンを無効にすることを推奨する必要があります。
Apache2.2からApache2.4へのアップデート
次の手順を使用して、Apache2.2をApache2.4に更新します。
-
次のコマンドを実行して、
HTTPd
を停止します およびNimbus
などの監視プロセス アラートを回避するには:service httpd stop
-
次のコマンドを実行して仮想ホスト構成をバックアップし、
vhost
などの追加のディレクトリが含まれていることを確認します。 :cd /etc/httpd tar -cvf /tmp/apache_vhostconfig.tar conf conf.d vhosts
-
次のコマンドを実行して、
yum-plugin-replace
をインストールします パッケージ、パッケージ交換中のパッケージの競合を解決します:yum install yum-plugin-replace
-
続行する前に、次のコマンドを実行して、インストールされているバージョンとインストールするバージョンを確認してください。
apachectl -V yum search httpd yum info httpd
出力は、コマンド
yum info httpd24u.x86_64
を使用する次の例のように表示されます。 :Loaded plugins: replace, rhnplugin, security This system is receiving updates from RHN Classic or RHN Satellite. Available Packages Name : httpd24u Arch : x86_64 Version : 2.4.23 Release : 4.ius.el6 Size : 1.2 M Repo : rackspace-rhel-x86_64-server-6-ius Summary : Apache HTTP Server License : ASL 2.0 Description : The Apache HTTP Server is a powerful, efficient, and extensible : web server.
-
次のコマンドを実行して、HTTPd2.4をインストールします。
yum replace httpd --replace-with=httpd24u
-
次のコマンドを実行して、ライトウェイトディレクトリアクセスプロトコル(LDAP)もインストールする必要があります。
yum install mod_ldap
-
Apache 2.4では、
Require
を使用する必要がありますOrder
の代わりにインターネットプロトコル(IP)アクセス制限のディレクティブ 、Deny
、およびAllow
。その結果、Order
を変更する必要があります 、Deny
、およびAllow
/etc/httpd/conf.d/server-status.confのステートメントRequire
を使用するファイル ステートメント。これらは.htaccessにある可能性があるためです 他のWebサイトのファイルの場合は、Require
がないためにWebサイトが破損しないように、documentrootsを注意深く確認してください。 ディレクティブ。既存の/etc/httpd/conf.d/server-status.conf ファイルは次の例のように表示されます。
<Location /server-status> SetHandler server-status Order deny,allow Deny from all Allow from 127.0.0.1 </Location>
Order
を置き換えます 、Deny
、およびAllow
次の例の構成のステートメント。<Location /server-status> SetHandler server-status Require all granted Require host 127.0.0.1 </Location>
注 :この構文の変更は、 conf.dの仮想ホストにも適用されます およびhttpd.conf vhost構成。
-
Order
を変更します 、Deny
、およびAllow
conf.dのステートメント toRequire
ステートメント。# Order deny,allow # Deny from all Require all denied # Order deny,allow # Allow from all Require all granted
-
同じファイルで、
Options -Indexes FollowSymLinks
を変更します toOptions -Indexes +FollowSymLinks
。 -
/etc/httpd/conf/httpd.conf 、
Order
を変更します 、Deny
、およびAllow
Require
へのステートメント 手順8に示すように、ステートメント。 -
/etc/httpd/conf/httpd.conf 、コメントとして
LoadModule
を設定します 使用されなくなったモジュールのディレクティブ。#2.4 upgrade LoadModule authn_alias_module modules/mod_authn_alias.so #2.4 upgrade LoadModule authn_default_module modules/mod_authn_default.so #2.4 upgrade LoadModule authz_default_module modules/mod_authz_default.so #2.4 upgrade LoadModule disk_cache_module modules/mod_disk_cache.so
-
/etc/httpd/conf/httpd.confを編集します 次の行を他の
authz
に追加します モジュール。LoadModule authz_core_module modules/mod_authz_core.so
-
LoadModule
のブロックの下部に次の行を追加します ステートメント。LoadModule mpm_prefork_module modules/mod_mpm_prefork.so LoadModule unixd_module modules/mod_unixd.so LoadModule slotmem_shm_module modules/mod_slotmem_shm.so LoadModule ssl_module modules/mod_ssl.so LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
(オプション) 互換性のあるバージョンのAdobeExperienceManager(AEM)ディスパッチャーモジュールをダウンロードする
HTTPdインストールでAdobe®ExperienceManager(AEM)Dispatcherモジュールを使用する場合は、次の手順を使用して、Apache HTTPServer2.4と互換性のあるファイルをダウンロードする必要があります。
-
次のコマンドを実行して、 dispatcher-apache2.4-4.1.11.soを抽出します Tape ARchive(TAR)ファイルから / etc / httpd / modules /へのファイル 。この目的には、このファイルのみを使用してください。
cd /etc/httpd/modules rm mod_dispatcher.so ln -s /etc/httpd/modules/dispatcher-apache2.4-4.1.11.so mod_dispatcher.so
-
SSL Mutexは非推奨であるため、 /etc/httpd/conf.d/ssl.confを編集する必要があります。
SSLMutex default
を変更するには toMutex default
。
詳細については、MutexDirectiveに関するApacheのドキュメントを参照してください。
重要: HTTPdを再起動します
この記事の手順を完了したら、次の手順を使用してHTTPdを再起動し、HTTPdが有効で実行されていることを確認する必要があります。
-
次のコマンドを実行してHTTPdを再起動します。
service httpd start
-
サービスが有効で実行されていることを確認し、以前に有効にした監視を再度有効にします。
-
CentOS®7またはRedHat®EnterpriseLinux®(RHEL)7では、次のコマンドを実行します。
systemctl enable httpd systemctl status httpd
-
コメントや質問をするには、[フィードバック]タブを使用します。私たちと会話を始めることもできます。