区分
JVN番号
タイトル
JVN
深刻度
深刻度
最終更新日
CVE番号
Update
JVNDB-2021-005429
Apache Log4j における任意のコードが実行可能な脆弱性
10.0
2022/03/30 14:15
CVE-2021-45046
JVNDB-2021-005429
Apache Log4j における任意のコードが実行可能な脆弱性
- 概要
- Log4j には JNDI Lookup 機能による外部入力値の検証不備に起因して任意の Java コードを実行可能な脆弱性が存在します。
The Apache Software Foundation が提供する Log4j は、Java ベースのロギングライブラリです。Log4j には、ログに記載された文字列から一部の値を変数として評価する Lookup 機能が実装されています。
その Lookup 機能の内、JNDI Lookup 機能を悪用することにより、ログに含まれる外部の URL もしくは内部パスから Java のクラス情報をデシリアライズして実行してしまう問題(CWE-20, CVE-2021-44228)が発見されました。
これにより、遠隔の攻撃者が細工した文字列を脆弱なシステムのログに記載させ、結果として任意の Java コードをシステムに実行させることが可能です。
- 想定される影響と対策
- 遠隔の攻撃者により細工された文字列を Log4j がログに記録することにより、システム上で任意の Java コードが実行される可能性があります。
[アップデートする] 開発者により、本脆弱性を修正した以下のバージョンが提供されています。 開発者が提供する情報をもとに、最新版にアップデートしてください。 なお、本アップデートでは、Log4j の Lookup 機能が削除されており、JNDI へのアクセスがデフォルトで無効化されています。 * Java 8のユーザ向け修正版 * Log4j 2.17.1 * Java 7のユーザ向け修正版 * Log4j 2.12.4 * Java 6のユーザ向け修正 * Log4j 2.3.2 開発者は当初、本脆弱性に対する修正版として 2.15.0 をリリースしていましたが、特定の構成において任意のコード実行が行われる可能性があることが判明し、Lookup 機能を削除した上で JNDI 機能そのものをデフォルトで無効化した 2.16.0 および 2.12.2 が改めてリリースされました。この問題に対しては CVE-2021-45046 が採番されています。 2021年12月18日、開発者は Log4j 2.0-alpha1 から 2.16.0 までのバージョンにおいて、再帰的(self-referential)なLookup を行う設定下において、サービス運用(DoS)が行われる脆弱性が新たに発見されたとして、バージョン 2.17.0 をリリースしました。この脆弱性に対しては CVE-2021-45105 が採番されています。 2021年12月21日、開発者は一連の脆弱性を修正したバージョンとして、Java 6 ユーザ向けに 2.3.1 を、Java 7 ユーザ向けに 2.12.3 をリリースしました。 2021年12月28日、開発者は Log4j2 2.0-beta7 から 2.17.0(2.3.2 および 2.12.4 を除く)において、攻撃者がログ出力設定を変更できる場合に限り任意のコード実行が行われる可能性があるとして、Log4j 2.17.1、2.12.4、2.3.2 をリリースしました。この修正では、JNDI のデータソースを Java プロトコルに制限する変更が行われました。この脆弱性に対しては CVE-2021-44832 が採番されています。 [ワークアラウンドを実施する] 以下の回避策を適用することにより、本脆弱性の悪用を防ぐことが可能です。 * JndiLookup クラスをクラスパスから除外する * 例: zip -q -d log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class * この回避策は CVE-2021-45046 に対しても有効です * Log4j を実行する Java 仮想マシンを起動する際に log4j2.formatMsgNoLookups を true に設定する(Log4j 2.10 およびそれ以降のバージョンが対象) * 例: -Dlog4j2.formatMsgNoLookups=true * この回避策は CVE-2021-45046 に対して有効ではありません * 環境変数 LOG4J_FORMAT_MSG_NO_LOOKUPS を true に設定する(Log4j 2.10 およびそれ以降のバージョンが対象) * この回避策は CVE-2021-45046 に対して有効ではありません また、本脆弱性の影響を軽減するため、システムから外部への接続を制限するアクセス制御を実施または強化することも有効です。 - JVN情報 ※( )内はCVSS v2の値
-
深刻度 10.0 9.3CVECVE-2021-45046公表日2021/12/13 00:00登録日2021/12/14 16:37更新日2022/03/30 14:15
- CVSS v3情報
-
…
- 全ての情報を閲覧するにはユーザー登録(無料)またはログインが必要です。
Update
JVNDB-2021-005429
Apache Log4j における任意のコードが実行可能な脆弱性
10.0
2022/03/30 14:15
CVE-2021-44228
JVNDB-2021-005429
Apache Log4j における任意のコードが実行可能な脆弱性
- 概要
- Log4j には JNDI Lookup 機能による外部入力値の検証不備に起因して任意の Java コードを実行可能な脆弱性が存在します。
The Apache Software Foundation が提供する Log4j は、Java ベースのロギングライブラリです。Log4j には、ログに記載された文字列から一部の値を変数として評価する Lookup 機能が実装されています。
その Lookup 機能の内、JNDI Lookup 機能を悪用することにより、ログに含まれる外部の URL もしくは内部パスから Java のクラス情報をデシリアライズして実行してしまう問題(CWE-20, CVE-2021-44228)が発見されました。
これにより、遠隔の攻撃者が細工した文字列を脆弱なシステムのログに記載させ、結果として任意の Java コードをシステムに実行させることが可能です。
- 想定される影響と対策
- 遠隔の攻撃者により細工された文字列を Log4j がログに記録することにより、システム上で任意の Java コードが実行される可能性があります。
[アップデートする] 開発者により、本脆弱性を修正した以下のバージョンが提供されています。 開発者が提供する情報をもとに、最新版にアップデートしてください。 なお、本アップデートでは、Log4j の Lookup 機能が削除されており、JNDI へのアクセスがデフォルトで無効化されています。 * Java 8のユーザ向け修正版 * Log4j 2.17.1 * Java 7のユーザ向け修正版 * Log4j 2.12.4 * Java 6のユーザ向け修正 * Log4j 2.3.2 開発者は当初、本脆弱性に対する修正版として 2.15.0 をリリースしていましたが、特定の構成において任意のコード実行が行われる可能性があることが判明し、Lookup 機能を削除した上で JNDI 機能そのものをデフォルトで無効化した 2.16.0 および 2.12.2 が改めてリリースされました。この問題に対しては CVE-2021-45046 が採番されています。 2021年12月18日、開発者は Log4j 2.0-alpha1 から 2.16.0 までのバージョンにおいて、再帰的(self-referential)なLookup を行う設定下において、サービス運用(DoS)が行われる脆弱性が新たに発見されたとして、バージョン 2.17.0 をリリースしました。この脆弱性に対しては CVE-2021-45105 が採番されています。 2021年12月21日、開発者は一連の脆弱性を修正したバージョンとして、Java 6 ユーザ向けに 2.3.1 を、Java 7 ユーザ向けに 2.12.3 をリリースしました。 2021年12月28日、開発者は Log4j2 2.0-beta7 から 2.17.0(2.3.2 および 2.12.4 を除く)において、攻撃者がログ出力設定を変更できる場合に限り任意のコード実行が行われる可能性があるとして、Log4j 2.17.1、2.12.4、2.3.2 をリリースしました。この修正では、JNDI のデータソースを Java プロトコルに制限する変更が行われました。この脆弱性に対しては CVE-2021-44832 が採番されています。 [ワークアラウンドを実施する] 以下の回避策を適用することにより、本脆弱性の悪用を防ぐことが可能です。 * JndiLookup クラスをクラスパスから除外する * 例: zip -q -d log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class * この回避策は CVE-2021-45046 に対しても有効です * Log4j を実行する Java 仮想マシンを起動する際に log4j2.formatMsgNoLookups を true に設定する(Log4j 2.10 およびそれ以降のバージョンが対象) * 例: -Dlog4j2.formatMsgNoLookups=true * この回避策は CVE-2021-45046 に対して有効ではありません * 環境変数 LOG4J_FORMAT_MSG_NO_LOOKUPS を true に設定する(Log4j 2.10 およびそれ以降のバージョンが対象) * この回避策は CVE-2021-45046 に対して有効ではありません また、本脆弱性の影響を軽減するため、システムから外部への接続を制限するアクセス制御を実施または強化することも有効です。 - JVN情報 ※( )内はCVSS v2の値
-
深刻度 10.0 9.3CVECVE-2021-44228公表日2021/12/13 00:00登録日2021/12/14 16:37更新日2022/03/30 14:15
- CVSS v3情報
-
…
- 全ての情報を閲覧するにはユーザー登録(無料)またはログインが必要です。
Update
JVNDB-2021-005429
Apache Log4j における任意のコードが実行可能な脆弱性
10.0
2022/03/30 14:15
CVE-2021-45105
JVNDB-2021-005429
Apache Log4j における任意のコードが実行可能な脆弱性
- 概要
- Log4j には JNDI Lookup 機能による外部入力値の検証不備に起因して任意の Java コードを実行可能な脆弱性が存在します。
The Apache Software Foundation が提供する Log4j は、Java ベースのロギングライブラリです。Log4j には、ログに記載された文字列から一部の値を変数として評価する Lookup 機能が実装されています。
その Lookup 機能の内、JNDI Lookup 機能を悪用することにより、ログに含まれる外部の URL もしくは内部パスから Java のクラス情報をデシリアライズして実行してしまう問題(CWE-20, CVE-2021-44228)が発見されました。
これにより、遠隔の攻撃者が細工した文字列を脆弱なシステムのログに記載させ、結果として任意の Java コードをシステムに実行させることが可能です。
- 想定される影響と対策
- 遠隔の攻撃者により細工された文字列を Log4j がログに記録することにより、システム上で任意の Java コードが実行される可能性があります。
[アップデートする] 開発者により、本脆弱性を修正した以下のバージョンが提供されています。 開発者が提供する情報をもとに、最新版にアップデートしてください。 なお、本アップデートでは、Log4j の Lookup 機能が削除されており、JNDI へのアクセスがデフォルトで無効化されています。 * Java 8のユーザ向け修正版 * Log4j 2.17.1 * Java 7のユーザ向け修正版 * Log4j 2.12.4 * Java 6のユーザ向け修正 * Log4j 2.3.2 開発者は当初、本脆弱性に対する修正版として 2.15.0 をリリースしていましたが、特定の構成において任意のコード実行が行われる可能性があることが判明し、Lookup 機能を削除した上で JNDI 機能そのものをデフォルトで無効化した 2.16.0 および 2.12.2 が改めてリリースされました。この問題に対しては CVE-2021-45046 が採番されています。 2021年12月18日、開発者は Log4j 2.0-alpha1 から 2.16.0 までのバージョンにおいて、再帰的(self-referential)なLookup を行う設定下において、サービス運用(DoS)が行われる脆弱性が新たに発見されたとして、バージョン 2.17.0 をリリースしました。この脆弱性に対しては CVE-2021-45105 が採番されています。 2021年12月21日、開発者は一連の脆弱性を修正したバージョンとして、Java 6 ユーザ向けに 2.3.1 を、Java 7 ユーザ向けに 2.12.3 をリリースしました。 2021年12月28日、開発者は Log4j2 2.0-beta7 から 2.17.0(2.3.2 および 2.12.4 を除く)において、攻撃者がログ出力設定を変更できる場合に限り任意のコード実行が行われる可能性があるとして、Log4j 2.17.1、2.12.4、2.3.2 をリリースしました。この修正では、JNDI のデータソースを Java プロトコルに制限する変更が行われました。この脆弱性に対しては CVE-2021-44832 が採番されています。 [ワークアラウンドを実施する] 以下の回避策を適用することにより、本脆弱性の悪用を防ぐことが可能です。 * JndiLookup クラスをクラスパスから除外する * 例: zip -q -d log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class * この回避策は CVE-2021-45046 に対しても有効です * Log4j を実行する Java 仮想マシンを起動する際に log4j2.formatMsgNoLookups を true に設定する(Log4j 2.10 およびそれ以降のバージョンが対象) * 例: -Dlog4j2.formatMsgNoLookups=true * この回避策は CVE-2021-45046 に対して有効ではありません * 環境変数 LOG4J_FORMAT_MSG_NO_LOOKUPS を true に設定する(Log4j 2.10 およびそれ以降のバージョンが対象) * この回避策は CVE-2021-45046 に対して有効ではありません また、本脆弱性の影響を軽減するため、システムから外部への接続を制限するアクセス制御を実施または強化することも有効です。 - JVN情報 ※( )内はCVSS v2の値
-
深刻度 10.0 9.3CVECVE-2021-45105公表日2021/12/13 00:00登録日2021/12/14 16:37更新日2022/03/30 14:15
- CVSS v3情報
-
…
- 全ての情報を閲覧するにはユーザー登録(無料)またはログインが必要です。
Update
JVNDB-2021-005429
Apache Log4j における任意のコードが実行可能な脆弱性
10.0
2022/08/09 16:45
CVE-2021-45105
JVNDB-2021-005429
Apache Log4j における任意のコードが実行可能な脆弱性
- 概要
- Log4j には JNDI Lookup 機能による外部入力値の検証不備に起因して任意の Java コードを実行可能な脆弱性が存在します。
The Apache Software Foundation が提供する Log4j は、Java ベースのロギングライブラリです。Log4j には、ログに記載された文字列から一部の値を変数として評価する Lookup 機能が実装されています。
その Lookup 機能の内、JNDI Lookup 機能を悪用することにより、ログに含まれる外部の URL もしくは内部パスから Java のクラス情報をデシリアライズして実行してしまう問題(CWE-20, CVE-2021-44228)が発見されました。
これにより、遠隔の攻撃者が細工した文字列を脆弱なシステムのログに記載させ、結果として任意の Java コードをシステムに実行させることが可能です。
- 想定される影響と対策
- 遠隔の攻撃者により細工された文字列を Log4j がログに記録することにより、システム上で任意の Java コードが実行される可能性があります。
[アップデートする] 開発者により、本脆弱性を修正した以下のバージョンが提供されています。 開発者が提供する情報をもとに、最新版にアップデートしてください。 なお、本アップデートでは、Log4j の Lookup 機能が削除されており、JNDI へのアクセスがデフォルトで無効化されています。 * Java 8のユーザ向け修正版 * Log4j 2.17.1 * Java 7のユーザ向け修正版 * Log4j 2.12.4 * Java 6のユーザ向け修正 * Log4j 2.3.2 開発者は当初、本脆弱性に対する修正版として 2.15.0 をリリースしていましたが、特定の構成において任意のコード実行が行われる可能性があることが判明し、Lookup 機能を削除した上で JNDI 機能そのものをデフォルトで無効化した 2.16.0 および 2.12.2 が改めてリリースされました。この問題に対しては CVE-2021-45046 が採番されています。 2021年12月18日、開発者は Log4j 2.0-alpha1 から 2.16.0 までのバージョンにおいて、再帰的(self-referential)なLookup を行う設定下において、サービス運用(DoS)が行われる脆弱性が新たに発見されたとして、バージョン 2.17.0 をリリースしました。この脆弱性に対しては CVE-2021-45105 が採番されています。 2021年12月21日、開発者は一連の脆弱性を修正したバージョンとして、Java 6 ユーザ向けに 2.3.1 を、Java 7 ユーザ向けに 2.12.3 をリリースしました。 2021年12月28日、開発者は Log4j2 2.0-beta7 から 2.17.0(2.3.2 および 2.12.4 を除く)において、攻撃者がログ出力設定を変更できる場合に限り任意のコード実行が行われる可能性があるとして、Log4j 2.17.1、2.12.4、2.3.2 をリリースしました。この修正では、JNDI のデータソースを Java プロトコルに制限する変更が行われました。この脆弱性に対しては CVE-2021-44832 が採番されています。 [ワークアラウンドを実施する] 以下の回避策を適用することにより、本脆弱性の悪用を防ぐことが可能です。 * JndiLookup クラスをクラスパスから除外する * 例: zip -q -d log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class * この回避策は CVE-2021-45046 に対しても有効です * Log4j を実行する Java 仮想マシンを起動する際に log4j2.formatMsgNoLookups を true に設定する(Log4j 2.10 およびそれ以降のバージョンが対象) * 例: -Dlog4j2.formatMsgNoLookups=true * この回避策は CVE-2021-45046 に対して有効ではありません * 環境変数 LOG4J_FORMAT_MSG_NO_LOOKUPS を true に設定する(Log4j 2.10 およびそれ以降のバージョンが対象) * この回避策は CVE-2021-45046 に対して有効ではありません また、本脆弱性の影響を軽減するため、システムから外部への接続を制限するアクセス制御を実施または強化することも有効です。 - JVN情報 ※( )内はCVSS v2の値
-
深刻度 10.0 9.3CVECVE-2021-45105公表日2021/12/13 00:00登録日2021/12/14 16:37更新日2022/08/09 16:45
- CVSS v3情報
-
…
- 全ての情報を閲覧するにはユーザー登録(無料)またはログインが必要です。
Update
JVNDB-2021-005429
Apache Log4j における任意のコードが実行可能な脆弱性
10.0
2022/08/09 16:45
CVE-2021-45046
JVNDB-2021-005429
Apache Log4j における任意のコードが実行可能な脆弱性
- 概要
- Log4j には JNDI Lookup 機能による外部入力値の検証不備に起因して任意の Java コードを実行可能な脆弱性が存在します。
The Apache Software Foundation が提供する Log4j は、Java ベースのロギングライブラリです。Log4j には、ログに記載された文字列から一部の値を変数として評価する Lookup 機能が実装されています。
その Lookup 機能の内、JNDI Lookup 機能を悪用することにより、ログに含まれる外部の URL もしくは内部パスから Java のクラス情報をデシリアライズして実行してしまう問題(CWE-20, CVE-2021-44228)が発見されました。
これにより、遠隔の攻撃者が細工した文字列を脆弱なシステムのログに記載させ、結果として任意の Java コードをシステムに実行させることが可能です。
- 想定される影響と対策
- 遠隔の攻撃者により細工された文字列を Log4j がログに記録することにより、システム上で任意の Java コードが実行される可能性があります。
[アップデートする] 開発者により、本脆弱性を修正した以下のバージョンが提供されています。 開発者が提供する情報をもとに、最新版にアップデートしてください。 なお、本アップデートでは、Log4j の Lookup 機能が削除されており、JNDI へのアクセスがデフォルトで無効化されています。 * Java 8のユーザ向け修正版 * Log4j 2.17.1 * Java 7のユーザ向け修正版 * Log4j 2.12.4 * Java 6のユーザ向け修正 * Log4j 2.3.2 開発者は当初、本脆弱性に対する修正版として 2.15.0 をリリースしていましたが、特定の構成において任意のコード実行が行われる可能性があることが判明し、Lookup 機能を削除した上で JNDI 機能そのものをデフォルトで無効化した 2.16.0 および 2.12.2 が改めてリリースされました。この問題に対しては CVE-2021-45046 が採番されています。 2021年12月18日、開発者は Log4j 2.0-alpha1 から 2.16.0 までのバージョンにおいて、再帰的(self-referential)なLookup を行う設定下において、サービス運用(DoS)が行われる脆弱性が新たに発見されたとして、バージョン 2.17.0 をリリースしました。この脆弱性に対しては CVE-2021-45105 が採番されています。 2021年12月21日、開発者は一連の脆弱性を修正したバージョンとして、Java 6 ユーザ向けに 2.3.1 を、Java 7 ユーザ向けに 2.12.3 をリリースしました。 2021年12月28日、開発者は Log4j2 2.0-beta7 から 2.17.0(2.3.2 および 2.12.4 を除く)において、攻撃者がログ出力設定を変更できる場合に限り任意のコード実行が行われる可能性があるとして、Log4j 2.17.1、2.12.4、2.3.2 をリリースしました。この修正では、JNDI のデータソースを Java プロトコルに制限する変更が行われました。この脆弱性に対しては CVE-2021-44832 が採番されています。 [ワークアラウンドを実施する] 以下の回避策を適用することにより、本脆弱性の悪用を防ぐことが可能です。 * JndiLookup クラスをクラスパスから除外する * 例: zip -q -d log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class * この回避策は CVE-2021-45046 に対しても有効です * Log4j を実行する Java 仮想マシンを起動する際に log4j2.formatMsgNoLookups を true に設定する(Log4j 2.10 およびそれ以降のバージョンが対象) * 例: -Dlog4j2.formatMsgNoLookups=true * この回避策は CVE-2021-45046 に対して有効ではありません * 環境変数 LOG4J_FORMAT_MSG_NO_LOOKUPS を true に設定する(Log4j 2.10 およびそれ以降のバージョンが対象) * この回避策は CVE-2021-45046 に対して有効ではありません また、本脆弱性の影響を軽減するため、システムから外部への接続を制限するアクセス制御を実施または強化することも有効です。 - JVN情報 ※( )内はCVSS v2の値
-
深刻度 10.0 9.3CVECVE-2021-45046公表日2021/12/13 00:00登録日2021/12/14 16:37更新日2022/08/09 16:45
- CVSS v3情報
-
…
- 全ての情報を閲覧するにはユーザー登録(無料)またはログインが必要です。
Update
JVNDB-2021-005429
Apache Log4j における任意のコードが実行可能な脆弱性
10.0
2022/08/09 16:45
CVE-2021-44228
JVNDB-2021-005429
Apache Log4j における任意のコードが実行可能な脆弱性
- 概要
- Log4j には JNDI Lookup 機能による外部入力値の検証不備に起因して任意の Java コードを実行可能な脆弱性が存在します。
The Apache Software Foundation が提供する Log4j は、Java ベースのロギングライブラリです。Log4j には、ログに記載された文字列から一部の値を変数として評価する Lookup 機能が実装されています。
その Lookup 機能の内、JNDI Lookup 機能を悪用することにより、ログに含まれる外部の URL もしくは内部パスから Java のクラス情報をデシリアライズして実行してしまう問題(CWE-20, CVE-2021-44228)が発見されました。
これにより、遠隔の攻撃者が細工した文字列を脆弱なシステムのログに記載させ、結果として任意の Java コードをシステムに実行させることが可能です。
- 想定される影響と対策
- 遠隔の攻撃者により細工された文字列を Log4j がログに記録することにより、システム上で任意の Java コードが実行される可能性があります。
[アップデートする] 開発者により、本脆弱性を修正した以下のバージョンが提供されています。 開発者が提供する情報をもとに、最新版にアップデートしてください。 なお、本アップデートでは、Log4j の Lookup 機能が削除されており、JNDI へのアクセスがデフォルトで無効化されています。 * Java 8のユーザ向け修正版 * Log4j 2.17.1 * Java 7のユーザ向け修正版 * Log4j 2.12.4 * Java 6のユーザ向け修正 * Log4j 2.3.2 開発者は当初、本脆弱性に対する修正版として 2.15.0 をリリースしていましたが、特定の構成において任意のコード実行が行われる可能性があることが判明し、Lookup 機能を削除した上で JNDI 機能そのものをデフォルトで無効化した 2.16.0 および 2.12.2 が改めてリリースされました。この問題に対しては CVE-2021-45046 が採番されています。 2021年12月18日、開発者は Log4j 2.0-alpha1 から 2.16.0 までのバージョンにおいて、再帰的(self-referential)なLookup を行う設定下において、サービス運用(DoS)が行われる脆弱性が新たに発見されたとして、バージョン 2.17.0 をリリースしました。この脆弱性に対しては CVE-2021-45105 が採番されています。 2021年12月21日、開発者は一連の脆弱性を修正したバージョンとして、Java 6 ユーザ向けに 2.3.1 を、Java 7 ユーザ向けに 2.12.3 をリリースしました。 2021年12月28日、開発者は Log4j2 2.0-beta7 から 2.17.0(2.3.2 および 2.12.4 を除く)において、攻撃者がログ出力設定を変更できる場合に限り任意のコード実行が行われる可能性があるとして、Log4j 2.17.1、2.12.4、2.3.2 をリリースしました。この修正では、JNDI のデータソースを Java プロトコルに制限する変更が行われました。この脆弱性に対しては CVE-2021-44832 が採番されています。 [ワークアラウンドを実施する] 以下の回避策を適用することにより、本脆弱性の悪用を防ぐことが可能です。 * JndiLookup クラスをクラスパスから除外する * 例: zip -q -d log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class * この回避策は CVE-2021-45046 に対しても有効です * Log4j を実行する Java 仮想マシンを起動する際に log4j2.formatMsgNoLookups を true に設定する(Log4j 2.10 およびそれ以降のバージョンが対象) * 例: -Dlog4j2.formatMsgNoLookups=true * この回避策は CVE-2021-45046 に対して有効ではありません * 環境変数 LOG4J_FORMAT_MSG_NO_LOOKUPS を true に設定する(Log4j 2.10 およびそれ以降のバージョンが対象) * この回避策は CVE-2021-45046 に対して有効ではありません また、本脆弱性の影響を軽減するため、システムから外部への接続を制限するアクセス制御を実施または強化することも有効です。 - JVN情報 ※( )内はCVSS v2の値
-
深刻度 10.0 9.3CVECVE-2021-44228公表日2021/12/13 00:00登録日2021/12/14 16:37更新日2022/08/09 16:45
- CVSS v3情報
-
…
- 全ての情報を閲覧するにはユーザー登録(無料)またはログインが必要です。
Update
JVNDB-2021-005429
Apache Log4j における任意のコードが実行可能な脆弱性
10.0
2022/12/15 10:24
CVE-2021-45046
JVNDB-2021-005429
Apache Log4j における任意のコードが実行可能な脆弱性
- 概要
- Log4j には JNDI Lookup 機能による外部入力値の検証不備に起因して任意の Java コードを実行可能な脆弱性が存在します。 The Apache Software Foundation が提供する Log4j は、Java ベースのロギングライブラリです。Log4j には、ログに記載された文字列から一部の値を変数として評価する Lookup 機能が実装されています。 その Lookup 機能の内、JNDI Lookup 機能を悪用することにより、ログに含まれる外部の URL もしくは内部パスから Java のクラス情報をデシリアライズして実行してしまう問題(CWE-20, CVE-2021-44228)が発見されました。 これにより、遠隔の攻撃者が細工した文字列を脆弱なシステムのログに記載させ、結果として任意の Java コードをシステムに実行させることが可能です。
- 想定される影響と対策
- 遠隔の攻撃者により細工された文字列を Log4j がログに記録することにより、システム上で任意の Java コードが実行される可能性があります。
[アップデートする] 開発者により、本脆弱性を修正した以下のバージョンが提供されています。 開発者が提供する情報をもとに、最新版にアップデートしてください。 なお、本アップデートでは、Log4j の Lookup 機能が削除されており、JNDI へのアクセスがデフォルトで無効化されています。 * Java 8のユーザ向け修正版 * Log4j 2.17.1 * Java 7のユーザ向け修正版 * Log4j 2.12.4 * Java 6のユーザ向け修正 * Log4j 2.3.2 開発者は当初、本脆弱性に対する修正版として 2.15.0 をリリースしていましたが、特定の構成において任意のコード実行が行われる可能性があることが判明し、Lookup 機能を削除した上で JNDI 機能そのものをデフォルトで無効化した 2.16.0 および 2.12.2 が改めてリリースされました。この問題に対しては CVE-2021-45046 が採番されています。 2021年12月18日、開発者は Log4j 2.0-alpha1 から 2.16.0 までのバージョンにおいて、再帰的(self-referential)なLookup を行う設定下において、サービス運用(DoS)が行われる脆弱性が新たに発見されたとして、バージョン 2.17.0 をリリースしました。この脆弱性に対しては CVE-2021-45105 が採番されています。 2021年12月21日、開発者は一連の脆弱性を修正したバージョンとして、Java 6 ユーザ向けに 2.3.1 を、Java 7 ユーザ向けに 2.12.3 をリリースしました。 2021年12月28日、開発者は Log4j2 2.0-beta7 から 2.17.0(2.3.2 および 2.12.4 を除く)において、攻撃者がログ出力設定を変更できる場合に限り任意のコード実行が行われる可能性があるとして、Log4j 2.17.1、2.12.4、2.3.2 をリリースしました。この修正では、JNDI のデータソースを Java プロトコルに制限する変更が行われました。この脆弱性に対しては CVE-2021-44832 が採番されています。 [ワークアラウンドを実施する] 以下の回避策を適用することにより、本脆弱性の悪用を防ぐことが可能です。 * JndiLookup クラスをクラスパスから除外する * 例: zip -q -d log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class * この回避策は CVE-2021-45046 に対しても有効です * Log4j を実行する Java 仮想マシンを起動する際に log4j2.formatMsgNoLookups を true に設定する(Log4j 2.10 およびそれ以降のバージョンが対象) * 例: -Dlog4j2.formatMsgNoLookups=true * この回避策は CVE-2021-45046 に対して有効ではありません * 環境変数 LOG4J_FORMAT_MSG_NO_LOOKUPS を true に設定する(Log4j 2.10 およびそれ以降のバージョンが対象) * この回避策は CVE-2021-45046 に対して有効ではありません また、本脆弱性の影響を軽減するため、システムから外部への接続を制限するアクセス制御を実施または強化することも有効です。 - JVN情報 ※( )内はCVSS v2の値
-
深刻度 10.0 9.3CVECVE-2021-45046公表日2021/12/13 00:00登録日2021/12/14 16:37更新日2022/12/15 10:24
- CVSS v3情報
-
…
- 全ての情報を閲覧するにはユーザー登録(無料)またはログインが必要です。