apache http serverの脆弱性について
回答済み以下URLのapacheに関する脆弱性についてですが、アップデートに関して注意点などございますでしょうか?冗長構成に影響は出ないでしょうか?
https://jvndb.jvn.jp/ja/contents/2021/JVNDB-2021-008068.html
現在のバージョン
kompira enterprise: 1.5.5.post8
httpd: 2.4.6
-
正式なコメント
ご確認ありがとうございます。
ご利用中の httpd が当該脆弱性に未対応のため、httpd のアップデートを検討されるかと思います。
httpd のアップデートに際しては(冗長構成であっても)一時的なサービスの停止を伴います。ジョブフローの動作も停止することになりますので、それが問題ない状況であることをご確認ください。もしくは、アップデートのためにメンテナンス期間を設けるなどをご検討ください。
ちなみに、当該脆弱性の httpd の mod_session 機能は kompira では利用していないため、実際に影響を受ける可能性は低いかとは思います。
以下に、簡単にアップデートの手順と注意点を示します。
冗長構成の場合、2台のサーバは正常に稼働していれば「アクティブ状態」または「スタンバイ状態」のいずれかになります。まずは、いずれかのサーバ上で pcs status コマンドを用いて、クラスタの状態を確認してください。
# pcs status
Cluster name: ha-kompira-XXXXXX
Stack: corosync
Current DC: ha-kompira1 (version 1.1.23-1.el7_9.1-9acf116022) - partition with quorum
Last updated: Thu Mar 17 11:48:17 2022
Last change: Tue Mar 15 23:24:02 2022 by root via cibadmin on ha-kompira2
2 nodes configured
9 resource instances configured
Online: [ ha-kompira1 ha-kompira2 ]
Full list of resources:
Resource Group: webserver
res_memcached (systemd:memcached): Started ha-kompira1
res_httpd (ocf::heartbeat:apache): Started ha-kompira1
res_kompirad (systemd:kompirad): Started ha-kompira1
res_kompira_jobmngrd (systemd:kompira_jobmngrd): Started ha-kompira1
res_lsyncd (systemd:lsyncd): Started ha-kompira1
Master/Slave Set: ms_pgsql [res_pgsql]
Masters: [ ha-kompira1 ]
Slaves: [ ha-kompira2 ]
Clone Set: res_rabbitmq-clone [res_rabbitmq]
Started: [ ha-kompira1 ha-kompira2 ]
Daemon Status:
corosync: active/enabled
pacemaker: active/enabled
pcsd: active/enabled手元での確認結果ですので多少の表示差異はあるかと思いますが、「Online:」に2台のサーバが表示されていること、「res_rabbitmq」リソースに2台のサーバが Started であること、「res_pgsql」リソースに Masters と Slaves に1台づつのサーバがあること、「webserver」グループのすべてのリソースがいずれかのサーバで Started であること、を確認してください。いずれかが、想定しない結果である場合は、クラスタ状態が正常でない可能性がありますので、アップデートの前にクラスタ構成の正常化をご検討ください。
クラスタ構成が正常であれば、スタンバイ状態のサーバ上では httpd が起動しておりませんでの、下記コマンドでそのままアップデートを実施いただくことが可能です。
# yum update httpd
httpd がアップデートできましたら、上と同様に対策済みのバージョンになっているかご確認ください。
# rpm -q httpd
# rpm -q httpd --changelog | grep CVE-2021対策されたことが確認できましたら、アクティブ系とスタンバイ系を切り替えて、もう1台のサーバに対しても同様のアップデート手順が必要になります。
(スタンバイ系のサーバが正常な状態で)アクティブ系のサーバで以下のコマンドを実行するとすべてのリソースが停止し、フェイルオーバーが発生してスタンバイ系のサーバがアクティブ状態になります。
# pcs cluster stop
しばらく待つと、旧スタンバイ系であったサーバ上ですべてのリソースが開始されるはずですので、pcs status コマンドで確認してください。
# pcs status
新アクティブ系が片系としてすべてのリソースが正常に動作していることが確認できましたら、旧アクティブ系のサーバにおいても先と同様に httpd のアップデートを実施してください。
その後、旧アクティブ系を再開させ新アクティブ系と同期するために、旧アクティブ系で以下のコマンドを実行してください。
# /opt/kompira/bin/sync_master.sh
これで旧アクティブ系がデータベースの同期を取って、新スタンバイ系としてクラスタに参加します。しばらく待つと、rabbitmq および postgresql が起動するはずですので、最初と同様に pcs status コマンドを用いて各リソースが正常であるかを確認してください。
# pcs status
以上の手順が問題なく実施できれば、両系の httpd はアップデートされて、アクティブ・スタンバイが実施前と入れ替わった状態、となります。
参考になさってください。
コメントアクション -
フィックスポイントの高橋です。
アップデートに際しては構成によって、注意点が異なってくるかもしれませんので、まずは、ご利用になられている OS のバージョンと、httpd 詳細バージョンを教えていただけますでしょうか。
なお、Red Hat の下記 errata によると、当該脆弱性は RHEL7 では httpd-2.4.6-97.el7_9.4 で修正済みで、
https://access.redhat.com/errata/RHSA-2022:0143CentOS では httpd-2.4.6-97.el7.centos.4 で修正済みである、といった情報が見受けられます。
手元の比較的最近構築した CentOS 7.8 環境では、以下のように対策済みであることが確認できます。
$ cat /etc/redhat-release
CentOS Linux release 7.8.2003 (Core)
$ rpm -q httpd
httpd-2.4.6-97.el7.centos.4.x86_64
$ rpm -q httpd --changelog | grep CVE-2021
- Resolves: #2031072 - CVE-2021-34798 httpd: NULL pointer dereference via
- Resolves: #2031074 - CVE-2021-39275 httpd: out-of-bounds write in
- Resolves: #1969226 - CVE-2021-26691 httpd: Heap overflow in mod_session
- Resolves: #2035058 - CVE-2021-44790 httpd: mod_lua: possible buffer overflow
- Resolves: #2015694 - proxy rewrite to unix socket fails with CVE-2021-40438 fix
- Resolves: #2011729 - CVE-2021-40438 httpd: mod_proxy: SSRF via a craftedよろしければ、上記同様のコマンド実行結果を教えていただけますでしょうか。
サインインしてコメントを残してください。
コメント
4件のコメント