JPCERT コーディネーションセンター

Apache Tomcat の脆弱性 (CVE-2020-1938) に関する注意喚起

各位

JPCERT-AT-2020-0009
JPCERT/CC
2020-02-25(新規)
2020-02-28(更新)

JPCERT/CC Alert 2020-02-25


Apache Tomcat の脆弱性 (CVE-2020-1938) に関する注意喚起

https://www.jpcert.or.jp/at/2020/at200009.html


I. 概要Apache Software Foundation は、2020年2月24日 (現地時間) に、ApacheTomcat の脆弱性 (CVE-2020-1938) に関する情報を公開しました。脆弱性(CVE-2020-1938) では、Apache JServ Protocol (AJP) における Attributeの取り扱いに問題があり、悪用された場合、遠隔の第三者が AJP を介し、情報を窃取するなどの可能性があります。

また、Web アプリケーションがファイルのアップロードおよび保存を許可している場合、遠隔の第三者が任意のコードを実行する可能性があります。

脆弱性の詳細については、Apache Software Foundation からの情報を参照してください。

Apache Software Foundation
[SECURITY] CVE-2020-1938 AJP Request Injection and potential Remote Code Execution
https://lists.apache.org/thread.html/r7c6f492fbd39af34a68681dbbba0468490ff1a97a1bd79c6a53610ef%40%3Cannounce.tomcat.apache.org%3E


II. 対象次のバージョンの Apache Tomcat が本脆弱性の影響を受けます。

- Apache Tomcat 9.0.0.M1 から 9.0.30
- Apache Tomcat 8.5.0 から 8.5.50
- Apache Tomcat 7.0.0 から 7.0.99


III. 対策Apache Software Foundation より、修正済みのバージョンが提供されています。修正済みのバージョンを適用することをご検討ください。

- Apache Tomcat 9.0.31
- Apache Tomcat 8.5.51
- Apache Tomcat 7.0.100


IV. 回避策アップデートの実施が難しい場合には、次の回避策を検討してください。なお、アップデートと回避策を併用することでシステムをより堅牢化することができます。

- AJP が不要な場合は、無効にする
- AJP が必要な場合は、認可設定などアクセス制限を行う

【認可設定の例】
- Tomcat 側の設定
- <CATALINA_BASE>/conf/server.xml における Connector port に次の設定を行う

=====================================================================

<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" address="YOUR_TOMCAT_IP_ADDRESS" requiredSecret="YOUR_TOMCAT_AJP_SECRET" />

=====================================================================

- Apache 側の設定
- /conf/httpd.conf における ProxyPass に次の設定を行う

=====================================================================

ProxyPass "URL" secret = "YOUR_TOMCAT_AJP_SECRET"

=====================================================================

YOUR_TOMCAT_AJP_SECRET については、簡単に推測できない値を使用してください。設定の詳細は、Tomcat、mod_proxy 及び mod_proxy_ajp のマニュアルを参照してください。

** 更新: 2020年2月28日追記 ****************
【認可設定の例】に関して外部からご指摘があり、JPCERT/CC で改めて検証しなおしたところ、現時点の最新バージョン (2.4.41) の Apache では、【認可設定の例】が動作しない事を確認しました。なお、開発者からの情報によると当該機能は、Apache 2.4.42 にて実装されるとのことです。

各ディストリビュータが配布する Apache によっては、既にパッチが適用されており【認可設定の例】が設定できる場合 (JPCERT/CC では CentOS7にて確認)があります。詳細は各ディストリビュータへお問い合わせください。

また、JPCERT/CC では、Apache Tomcat Connectors (mod_jk) に認可情報を設定することで回避策が動作することを確認しています。設定の詳細は、Apache Software Foundation の情報を参照してください。

Apache Software Foundation
The Apache Tomcat Connectors: mod_jk, ISAPI redirector, NSAPI redirector
http://tomcat.apache.org/connectors-doc/

The Apache Tomcat Connectors - Reference Guide
workers.properties configuration
https://tomcat.apache.org/connectors-doc/reference/workers.html
**************************************************


V. 参考情報
Apache Software Foundation
Fixed in Apache Tomcat 9.0.31
http://tomcat.apache.org/security-9.html#Fixed_in_Apache_Tomcat_9.0.31

Apache Software Foundation
Fixed in Apache Tomcat 8.5.51
http://tomcat.apache.org/security-8.html#Fixed_in_Apache_Tomcat_8.5.51

Apache Software Foundation
Fixed in Apache Tomcat 7.0.100
http://tomcat.apache.org/security-7.html#Fixed_in_Apache_Tomcat_7.0.100

Apache Software Foundation
Apache Tomcat 9 Security Considerations
https://tomcat.apache.org/tomcat-9.0-doc/security-howto.html

Apache Software Foundation
Apache Tomcat 8 Security Considerations
https://tomcat.apache.org/tomcat-8.5-doc/security-howto.html

Apache Software Foundation
Apache Tomcat 7 Security Considerations
https://tomcat.apache.org/tomcat-7.0-doc/security-howto.html

Apache
Apache Module mod_proxy
https://httpd.apache.org/docs/trunk/en/mod/mod_proxy.html

Apache
Apache Module mod_proxy_ajp
https://httpd.apache.org/docs/trunk/en/mod/mod_proxy_ajp.html

** 更新: 2020年2月28日追記 ****************
上記は Apache 開発バージョンのマニュアルです。IV. 回避策【認可設定の例】の当該機能 (secret) の説明が記載されています。なお、現時点の最新バージョン(2.4.41) のマニュアルには、当該機能の説明は記載されていません。
**************************************************

今回の件につきまして当センターまで提供いただける情報がございましたら、ご連絡ください。

________
改訂履歴
2020-02-25 初版
2020-02-28 「IV. 回避策」、「V. 参考情報」の更新

==============================
一般社団法人 JPCERT コーディネーションセンター (JPCERT/CC)
早期警戒グループ
TEL: 03-6811-0610 Email: ew-info@jpcert.or.jp
Topへ
最新情報(RSSメーリングリストTwitter