Log4j 2.16で重大度「高」の脆弱性(CVE-2021-45105)が発見される
Jason Lane
2021年12月18日
0 分で読めます昨夜、Apacheにより公表された情報によると、Log4jバージョン2.16にもサービス拒否攻撃の脆弱性があり、アプリケーションが完全にクラッシュする可能性があります。深刻度は高(7.5)と分類されています。Snykは現在、広く流通している完成度の高いPoCやエクスプロイトを把握していません。CVE-2021-45105が付与され、Apacheから修正版(2.17.1)が公開されました。アップグレードをお勧めします。
Snykのリサーチチームは、状況が刻々と変化するLog4jの問題を引き続き注視し、新たな脆弱性の詳細が判明し次第お知らせします。
新しいバージョンにアップグレードすべきですか?
アプリケーションの脆弱性を排除することは常に重要ですが、Log4jライブラリでは複数の脆弱性が発生しているため、今回の脆弱性を適切に捉える必要があります。これは、前の2件のような任意コード実行ではなくサービス拒否の脆弱性であるため、潜在的なリスクはそれほど深刻ではありません。ここで最も重要なのは、悪用可能性です。前の2件は、成熟した実用的なエクスプロイトの例によって、明らかに悪用可能であることが証明されていました。今回のサービス拒否の脆弱性も悪用される可能性はありますが、執筆時点で入手できるデータからは、どの程度容易に、またどれほど頻繁に悪用されるかは明らかではありません。
まとめると、この脆弱性を修正する時間があり、対応可能であれば、バージョン2.17.1にアップグレードしてください。ただし、任意コード実行のリスクを軽減するには、すべてのLog4jのバージョンを最低でも2.16.0にすることが、すべてを2.17.1にアップグレードすることよりも重要です。まだアップグレードしていないサービスがある場合は、最近公表されたLog4jの問題をすべて修正するため、最新の2.17.1に直接アップグレードするのがよいでしょう。
なぜ突然、Log4jの脆弱性が次々に見つかっているのですか?
このライブラリで短期間に多くの脆弱性が公表され、それに対応するリリースが続いている理由を理解するには、何が起きているのか、その全体像と、新しいバージョンがリリースされてきた理由、そして今後もリリースされる可能性がある理由を把握することが重要です。
コミュニティによる注目の高まり — Log4jの重大なリモートコード実行の脆弱性が最初に公表されたことで、幅広いコミュニティがこのプロジェクトに注目するようになりました。その結果、これまで見落とされていた可能性のある多くのバグが、Javaオープンソースコミュニティの取り組みによって明らかになっています。この注目は他の類似プロジェクトにも広がり、さまざまな結果を招くこともあります。潜在的な脆弱性を急いで公表しようとする動きが、コミュニティの合意に先行してしまうためです。
初回のセキュリティ修正が急ぎすぎていた — CVE-2021-44228の公表に至った正確な経緯はまだ調査中ですが、通常設けられる責任ある脆弱性開示期間が厳密に守られず、完全な修正が用意される前に脆弱性の詳細が一般に漏えいしたと考えられます。Apacheチームは、できるだけ早く脆弱性の修正をリリースする必要がありました。その結果、追加の攻撃経路や問題が特定され、後続のリリースにつながりました。
後方互換性 — Log4jはJavaエコシステムの中核を担うコンポーネントです。不要な問題を引き起こしてユーザーが新しい安全なバージョンにアップグレードできなくなることを避けるため、新しいバージョンでも以前のバージョンとの後方互換性を維持する必要があります。しかし、この慎重な対応が必要なため、中核となる機能を大幅に変更することはできません。そのため、修正の公開時点では見つかっていなかった追加の攻撃経路や回避策が存在し、コミュニティによる脅威状況の調査が続くなかで明らかになる可能性があります。
今後、対応を容易にするためにできることは何ですか?
上記の状況を踏まえると、近い将来、追加の脆弱性とそれに対応するバージョンがリリースされる可能性は高いでしょう。Log4j(およびその他のオープンソースパッケージ)のユーザーは、こうした事態に備えることが重要です。ゼロデイの発生時に対応しやすくするため、AppSecプログラムを改善するベストプラクティスを以下に紹介します。
コードを毎日スキャンし、管理対象コードだけでなく管理対象外のコードにある最新の脆弱性も検出する
ソフトウェアサプライチェーンを把握するため、SBOMを作成する
可能な場合は、パッケージをより新しいリリースに更新し、オープンソースを適切に管理しましょう。そうすることで、緊急のセキュリティ修正を容易に適用でき、プロジェクトの互換性への影響も抑えられます。
Log4Shellやその他の重大な脆弱性に関する最新ニュースをチェックするには、LinkedIn、Twitter、またはFacebookでぜひフォローしてください。
