はじめに
TOOD 加筆
気力と時間があればかく
本題
さて、書きたいことはこちらの方のツイートに全て書いてあります。
ファイル名検索で”log4j”探して「ありませんでした」じゃダメなんだよね。warファイルの中にあるかもしれないよ。
— 嶋田大貴 (@shimariso) 2021年12月10日
おそらく(直感として)多くの開発者の方は、 本件の対応について以下で済ませているのではないかと心配しています。
「ソースコードを grep して log4j が import されていなかった!ヨシ!」
ただ、本件の問題はそんな片手間だったり1日で終わるように簡単な問題じゃないはずです。 例えば以下は確認しましたか?
- 利用しているフレームワークが依存しているライブラリ一覧に log4j が存在しないか確認しましたか?
- gradle とかの dependency tree を表示する機能などを使って「ちゃんと」確認しましたか?
- 実はあって、しかもまだライブラリアップデートが存在しないとか、出会ってませんか?
- サーバーサイド以外に、クライアントサイド(Android App とか)は確認しましたか?
- 依存していた場合、そのアプリのアップデートをどうするかまで考えてますか?
- ミドルウェアが log4j に依存している場合のことも考えれていますか?
- ElasticSearch なども影響を受けると言われています。確認・どうするか検討しましたか?
- apt install XXX とかでインストールした場合、どうやって対応するか検討できましたか? これらは(自分が知る限り) Dependency Tree を直接出力する術がないはずです。
- SaaS などの利用しているサービスが攻撃を受ける可能性を検討しましたか?
漏れはあるでしょうが、おそらく観点としてはこの辺りがあるはずです。 本件は表層の問題も大きく、根深い問題も更に大きい厄介な案件です。
各位体調第一で頑張りましょう