システムの重要な基盤「Log4j」の脆弱性が、世界中に“破壊的”な影響を及ぼしている
コメント
注目のコメント
Javaの開発者にとっては最も簡単にログを拾うことができるツール(エラーなどを調査したり、アプリケーションやマシンの動作に基づく情報を収集する)なので、広く使われている。この記事(https://www.kaspersky.com/blog/log4shell-critical-vulnerability-in-apache-log4j/43124/)によると、Amazon, Apple iCloud, Cisco, Cloudflare, ElasticSearch, Red Hat, Steam, Tesla, Twitterなどなどあらゆるところで使われている。非常に簡単にこの脆弱性を悪用できるとのことで、データが盗まれたり、人質に取られて身代金を要求されるなどの被害に繋がる可能性がある。
SolarWindsの一件といい今回のも含めてSBOMが加速する要因になるでしょう
バイデン政権が出した大統領令「Executive Order on Improving the Nation’s Cybersecurity」を確実に加速させる
https://www.whitehouse.gov/briefing-room/presidential-actions/2021/05/12/executive-order-on-improving-the-nations-cybersecurity/
しかしSIerさん阿鼻叫喚でしょうね。。。オープンソースの時代とは恐ろしいもので、今回の脆弱性についても問題となるコードを誰が何時書いたか簡単に特定出来てしまいます。
今回の問題はちょうど10年前の、まだlog4j(2)が開発初期の段階に加えられたある機能追加に原因を遡る事が出来ます。コードを読んだ評価では本来別の目的で作られたある仕組みをこの機能追加に流用した際の設計ミスです。便利な仕組みだったのでポンと本来あるべきでは無い場所で使ってしまった印象。
Javaのログ出力に関してはlog4jは人気のあるライブラリですがオンリーワンではなく、他にもlogback等のライブラリが存在します。例えば人気のあるWebフレームワークであるSpring Bootは標準ではlog4jではなくlogbackを使用するため今回の脆弱性の影響を受けません。
またlog4jにはバージョン1.2系列と2系列(log4j2)があって、今回報告があったのはlog4j2です。バージョン1.2系列はメンテナンスが終了しているのですが現実には未だ彼方此方で使われています(私が使っているSpark等のBig Data関連も多くが幸か不幸か未だに1.2)。1.2系列は今回の脆弱性の影響を受けないという見立てが多いです。
http://slf4j.org/log4shell.html
また今回報告されたJNDIとLDAPを用いた攻撃に関してはある程度新しいマイナーバージョン番号のJavaで防げるという報告もあり、現実にはアプリケーション毎に複数の手法を組み合わせて対応することになるでしょう。