CVE-2021-44228 Log4jの脆弱性のAWS環境への影響

ざっとSecurity Bulletinの2件を読みながらのメモ。12月18日21:00時点。誤りや情報が古いなどありましたらご指摘いただけるとありがたいです。

# AWS（Amazon Web Services）のCVE-2021-44228関連情報

* [Apache Log4j2 セキュリティ速報 (CVE-2021-44228)](https://aws.amazon.com/jp/security/security-bulletins/AWS-2021-005/) 
* [Apache Log4j2 のセキュリティ速報 (CVE-2021-44228) の更新情報](https://aws.amazon.com/jp/security/security-bulletins/AWS-2021-006/)

日本語情報が遅れることがあります。原文は、上記各ページ右上（モバイルブラウザではページ最下部）で言語「English」を選ぶと確認できます。

## 影響があるもの

* **Amazon Kinesis** は修正済みの[Kinesis Agentが利用可能](https://github.com/awslabs/amazon-kinesis-agent)になっている。
* **Amazon Kinesis Data Analytics** は修正済み。利用者は、アプリケーションを日本時間2021年12月13日(月)11:30以降に起動または更新することで、UpdateApplicationでLo4jの更新済みバージョンを利用できる。
* **Amazon Kinesis Data Streams** は修正を適用中。またKinesis Client Library (KCL) 1.xの利用者は、KCL 1.14.5以降への更新を強く推奨する。
* **Amazon OpenSearch** はすべてのリージョンでR20211203-P2をリリースした。利用者は、OpenSearchクラスターのこのリリースへの更新が強く推奨される。
* **Amazon SageMaker** は修正済み。利用者は、Log4J脆弱性の影響の有無にかかわらず、アプリケーションおよびサービスを再起動し既知問題修正を反映することが推奨される。なおLog4J脆弱性の影響が疑われる利用者には、Personal Health Dashboard (PHD)経由で通知が送られている
* **Amazon WorkSpaces** は修正済み。2021年6月以前のWindows WorkSpacesの利用者は、Log4jコンポーネントを含むWorkDocs Syncクライアントが含まれており、更新が必要。
* **AWS CloudHSM** はJCE SDKに該当版が含まれており、修正済みのJCE SDK v3.4.1を12月10日にリリースした。
* **AWS Greengrass** (v1)および(v2)はすでにアップデートが利用可能。利用者は、Stream Managerおよび(v2)のSecure Tunnelingコンポーネントを使用している場合、最新バージョンへの更新が強く推奨される。
* **AWS IoT SiteWise Edge** は2021年12月13日に更新されたOPC-UA collector (v2.0.3)、Data processing pack (v2.0.14)、Publisher (v2.0.2)コンポーネントがデプロイ可能になった。利用者は、これらのコンポーネントを使用している場合、SiteWise Edgeゲートウェイから最新版をデプロイすることが推奨される。
* **NICE EngineFrame** は2020.0から2021.0-r1307までの版に影響があり、最新版への更新を推奨する。

## 利用者責任範囲について確認が推奨されるもの

AWSは責任共有モデルをとっており、私の理解では利用者はリソース（例えばEC2におけるインスタンス）の **利用** とその中/上に作成したアプリケーションやデータの管理に責任を持つ。上記Security Bulletinでは、利用者責任範囲についても以下を確認するようアドバイスがされている。

* **Amacon Conect** では、コンタクトフローから呼び出されるLambda関数など、サービス外のコンポーネントの評価が推奨される。
* **Amazon ECS** では、コンテナ内で脆弱性のあるLog4j2を使用している場合、影響を緩和するホットパッチを[Amazon Linuxパッケージ](https://alas.aws.amazon.com/announcements/2021-001.html)としてオプトインできる。Windowsコンテナの場合は[Microsoftのガイド](https://msrc-blog.microsoft.com/2021/12/11/microsofts-response-to-cve-2021-44228-apache-log4j2/)を参照。
* **Amazon EKS** では、コンテナ内で脆弱性のあるLog4j2を使用している場合、影響を緩和するホットパッチを[DaemonSet](DaemonSet)としてオプトインできる。Windowsコンテナの場合は[Microsoftのガイド](https://msrc-blog.microsoft.com/2021/12/11/microsofts-response-to-cve-2021-44228-apache-log4j2/)を参照。
* **Amazon Elastic Map-Reduce (EMR)** では、EMR5およびEMR6リリースで起動されたEMRクラスターに含まれるApache Hive、Apache Flink、HUDI、Presto、Trinoなどを使用して信頼できないソースからの処理やログ記録をしてい場合、これらは該当版数のApacheLog4jを使用するので適切な対策の適用を推奨する。
* **Amazon Kinesis Data Analytics** では、アプリケーションを日本時間2021年12月13日(月)11:30以降に起動または更新することで、UpdateApplication APIが呼び出すLo4jについて更新済みバージョンを利用できる。
* **AWS Lambda** では、関数でaws-lambda-java-log4j2ライブラリを使用している場合、利用者はバージョン1.4.0（Log4Jを2.16.0を使用）への更新と再デプロイが強く推奨される。なお、Log4j2の該当版数が含まれている関数にはLambda Javaマネージドランタイムとベースコンテナーイメージに影響を軽減するパッチが適用されている。
* **Amazon Linux 2** の一部であるAmazon Kinesis Agentは新しい版数で本脆弱性に対応している。Amazon Linuxではこのほかに[ホットパッチ](https://alas.aws.amazon.com/announcements/2021-001.html)を利用できる。
* **Amazon Managed Workflows for Apache Airflow (MWAA)** では、環境にLog4j2を追加している場合、最新バージョンへの更新が強く推奨される。
* **AWS Elastic Beanstalk** では、アプリケーションでLog4jを追加、使用していないか確認し、対応をとることが推奨される。
* **AWS Fargate** では、コンテナ内で脆弱性のあるLog4j2を使用している場合、影響を緩和するホットパッチをオプトインできるようになる見込み。Windowsコンテナの場合は[Microsoftのガイド](https://msrc-blog.microsoft.com/2021/12/11/microsofts-response-to-cve-2021-44228-apache-log4j2/)を参照。
* **AWS Glue** では、該当版数のApache Log4jカスタムjarファイルをETLジョブまたは開発エンドポイントへアップロードした場合は、最新バージョンのApache Log4jを使用するようにjarの更新が推奨される。

## 修正済みのもの（修正反映のための再起動影響などはある）

* **Amazon API Gateway** は修正済み。
* **Amazon AppStream 2.0** は修正済み。
* **Amazon Cloud Directory** は修正済み。
* **Amazon ElastiCache** は修正済み。
* **Amazon InspectorとAmazon Inspector Classic** は修正済み。
* **Amazon Key Spaces (for Apache Cassandra)** は修正済み。
* **Amazon Managed Workflows for Apache Airflow (MWAA)** は修正済み。
* **Amazon Managed Service for Kafka (MSK)** は修正済み。
* **Amazon MQ** サービスは修正済み。オープンソースのApache ActiveMQメッセージブローカーは影響を受けない。
* **Amazon RDS Oracle** は修正済み。ほかの**Amazon RDS** にはLog4j2ライブラリは含まれない（更新情報V3）。 **Amazon Aurora**は修正を適用中。アップストリームベンダーからの指示があれば修正が適用される（更新情報V3）。
* **Amazon S3** は修正済み。
* **Amazon Simple Notification Service (SNS)** は修正を適用中。
* **Amazon Simple Queue Service (SQS)** は修正済み。
* **Amazon Timestream** は修正済み。
* **AWS Directory Service** は修正済み。
* **AWS Elastic Beanstalk** はこの問題の影響を受けない。
* **AWS Glue** は修正済み。
* **AWS Lake Formation** は修正済み。

## 影響を受けないもの

* **Amazon Athena** の顧客に販売されているJDBCドライバーはこの問題の影響を受けない。
* **Amazon Corretto** は10月19日にリリースされた最新版はLog4j2を含まず影響を受けない。
* **Amazon EC2** は特段の影響が記されていない。責任共有モデル上、EC2インスタンスのOS内は利用者の責任範囲で利用者自身で確認が必要だと思われる。
* **Amazon ECR PublicとAmazon ECR** は、登録されているAmazon-ownedのイメージはCVE-2021-4422の影響を受けない。
* **Amazon Elastic Map-Reduce (EMR)** は、該当版数のLog4jを使用するApache Hive、Apache Flink、HUDI、Presto、Trinoなどのオープンソースフレームワークが含まれるが、デフォルトでは信頼できないソースからの入力を処理しないので、影響を受けない。
* **Amazon Elastic Load Balancing (ELB)** はJavaで作成されていないため影響を受けない。
* **AWS Lambda** は管理対象のランタイムまたはベースコンテナイメージに Log4j2 が含まれない。
* **Amazon MQ for RabbitMQ** はこの問題の影響を受けない。
* **Amazon Neptune** はこの問題の影響を受けない。
* **AWS SDK** はlogging facade（Simple Logging Facade for Javaのこと？）を使っており、Log4Jへのランタイム依存はない。修正不要だと認識している。

## その他

* 以下のサービスが、本脆弱性による問題の軽減のために更新（update to mitigate the issue）されている。
    * Amazon AppFlow
    * Amazon Athena
    * Amazon ChimeとAmazon Chime SDK
    * Amazon CloudFront
    * Amazon CloudWatch
    * Amazon Connect
    * Amazon Cognito
    * Amazon DocumentDB
    * Amazon DynamoDBおよびAmazon DynamoDB Accelerator (DAX) 
    * Amazon Elastic Load Balancing
    * Amazon EventBridge
    * Amazon Fraud Detector
    * Amazon Kendra
    * Amazon Lex
    * Amazon Lookout for Equipment
    * Amazon Macie
    * Amazon Macie Classic
    * Amazon Monitron
    * Amazon Neptune （クラスターは自動的に更新される）
    * Amazon Pinpoint
    * Amazon Polly
    * Amazon QuickSight
    * Amazon RDSとAmazon Aurora
    * Amazon Redshift （クラスターは自動的に更新される）
    * Amazon Rekognition
    * Amazon Route53
    * Amazon Simple Workflow Service (SWF)
    * Amazon Single Sign-On
    * Amazon VPC（Internet GatewayとVirtual Gatewayを含む）
    * AWS AppSync
    * AWS Certificate ManagerとACM Private CA
    * AWS CodePipeline
    * AWS CodeBuild
    * AWS Key Management Service (KMS)
    * AWS Secrets Manager
    * AWS Service Catalog
    * AWS Step Functions
    * AWS Systems Manager
    * AWS Textract
* Log4j脆弱性問題への対応に役だつAWSサービスが以下にまとめられている。  
  [Log4j 脆弱性に対する AWS セキュリティサービスを利用した保護、検知、対応 | Amazon Web Services ブログ](https://aws.amazon.com/jp/blogs/news/using-aws-security-services-to-protect-against-detect-and-respond-to-the-log4j-vulnerability/) / [原文](https://aws.amazon.com/blogs/security/using-aws-security-services-to-protect-against-detect-and-respond-to-the-log4j-vulnerability/)
* Apache Log4jの脆弱性(CVE-2021-44228)に関連して、Correttoチームからホットパッチが出ている。  
  [Open source hotpatch for Apache Log4j vulnerability | AWS Security Blog](https://aws.amazon.com/blogs/security/open-source-hotpatch-for-apache-log4j-vulnerability/)

# 参考

* [Apache Log4j2 セキュリティ速報 (CVE-2021-44228)](https://aws.amazon.com/jp/security/security-bulletins/AWS-2021-005/) 
* [Apache Log4j2 のセキュリティ速報 (CVE-2021-44228) の更新情報](https://aws.amazon.com/jp/security/security-bulletins/AWS-2021-006/)
* [Open source hotpatch for Apache Log4j vulnerability | AWS Security Blog](https://aws.amazon.com/blogs/security/open-source-hotpatch-for-apache-log4j-vulnerability/)
* [Log4j 脆弱性に対する AWS セキュリティサービスを利用した保護、検知、対応 | Amazon Web Services ブログ](https://aws.amazon.com/jp/blogs/news/using-aws-security-services-to-protect-against-detect-and-respond-to-the-log4j-vulnerability/) / [原文](https://aws.amazon.com/blogs/security/using-aws-security-services-to-protect-against-detect-and-respond-to-the-log4j-vulnerability/)

CVE-2021-44228については以下など。

* [Apache Log4jの任意のコード実行の脆弱性（CVE-2021-44228）に関する注意喚起](https://www.jpcert.or.jp/at/2021/at210050.html)
* [Log4jの深刻な脆弱性CVE-2021-44228についてまとめてみた - piyolog](https://piyolog.hatenadiary.jp/entry/2021/12/13/045541)

蛇足気味だけどAzure、GCP、VMwareはこの辺り。

* Azure: [CVE-2021-44228 Apache Log4j 2 に対するマイクロソフトの対応 – Microsoft Security Response Center](https://msrc-blog.microsoft.com/2021/12/12/microsofts-response-to-cve-2021-44228-apache-log4j2-jp/) / [原文](https://msrc-blog.microsoft.com/2021/12/11/microsofts-response-to-cve-2021-44228-apache-log4j2/)
* GCP: [Apache Log4j 2 Vulnerability Security Advisory  |  Google Cloud](https://cloud.google.com/log4j2-security-advisory)
* VMware: [VMware Response to Apache Log4j Remote Code Execution Vulnerability (CVE-2021-44228)](https://www.vmware.com/security/advisories/VMSA-2021-0028.html) / [関連公式ブログ](https://blogs.vmware.com/security/2021/12/investigating-cve-2021-44228-log4shell-vulnerability.html)

----
本ページ内容は筆者が参照の便のためにある時点でまとめた個人的なメモです。内容を保証するものではありません。
また筆者の所属組織等とは一切かかわりがありません。