セキュリティのトレンド:なぜLog4Shellの脆弱(ぜいじゃく)性は攻撃され続けるのか:Inside-Out
2021年12月、Apache Log4jの脆弱(ぜいじゃく)性であるLog4Shellの情報が公開された。本稿ではLog4Shellの概要と、なぜ攻撃者がLog4Shellを悪用するのかを解説する。
Apache Log4jとLog4Shell
Apache Log4jの脆弱(ぜいじゃく)性であるLog4Shellの情報が公開された。攻撃者は、なぜこの脆弱性を悪用するのか、どういった点が危険なのかを解説する。
本記事は、株式会社インターネットイニシアティブの許可をいただき、「IIJ.news Vol.169」の「セキュリティのトレンド 2022 Spring Apache Log4jとLog4Shell」(2022年4月号)を転載したものです。そのため、用字用語の統一ルールなどが、@ITのものと異なります。ご了承ください。
執筆者プロフィール
北山 啓思
IIJ セキュリティ本部 セキュリティオペレーション部 セキュリティオペレーションセンター
SOCアナリストとして、ログ分析・マルウェア解析・脆弱性検証などを担当。
Apache Log4jとは
Apache Log4j(以下、Log4j)は、プログラミング言語の一種であるJavaで使用されているライブラリです。おもにJava言語で開発されたソフトウェアにおいて、ログ出力機能を提供します。
ソフトウェアの開発者にとって Log4jの使用は定番となっており、無償で使えることや機能の柔軟性などから、多くのJavaアプリケーションで使用されています。
例えば、Log4jがチャットアプリで使用されている場合にはメッセージの履歴を記録するために、WEBサーバで使用されている場合にはユーザからアクセスされたURLを記録するためなどに使用されています。
このほかにも、アプリケーションで発生したエラーの詳細などを記録するために用いられることもあります。
Log4Shellとは
Log4Shell(CVE-2021-44228)*は、Log4j においてリモートから任意のコードを実行できるようにしてしまう脆弱性を指します。この脆弱性を含むLog4jを使用して開発されたソフトウェアのログに攻撃コードが出力されると、ソフトウェアが動いているコンピュータで攻撃者が意図する不正な命令が実行されてしまいます。
* 2021年12月9日、Apache Software Foundationは、同社の提供するApache Log4j 2の複数バージョンにリモートコード実行の脆弱性(CVE-2021-44228)が存在することを公表した。
例えば、ユーザからアクセスされたURLをログに記録するWEBサーバの場合、URLに攻撃コードが含まれていると、サーバ上で不正な命令が実行される恐れがあります。不正な命令の実行に成功した攻撃者は、コンピュータに保存されたファイルの改ざんや窃取、マルウェアのダウンロードおよび実行などを試みます。
攻撃者がLog4Shellを悪用する理由
CVEでLog4Shellの情報が公開されて以降もLog4Shellを悪用する攻撃が多数観測されています。攻撃者がLog4Shellを悪用する理由としては、下記の3つが挙げられます。
- 攻撃が容易であるため
- 攻撃の影響を受けるソフトウェアが多いため
- 脆弱性への対策が不十分な環境が多いため
Log4Shellにおいては、脆弱性への対策が不十分であったために攻撃されてしまう事例が確認されています。その背景には、Log4Shellが他の脆弱性と比較して、影響範囲の特定が困難であることが挙げられます。
Copyright© Digital Advantage Corp. All Rights Reserved.