HOME > WAFとWebセキュリティ > サイト運営者のためのWebサイトセキュリティ対策入門

Log4Shell脆弱性

セキュリティ対策の専門家でないサイト運営者の皆さんにとって、Webサイトセキュリティは疑問だらけ。EC/オンラインショップ、顧客/会員管理、企業ホームページ、BtoBサイト…など、様々なWebサイトに共通の対策を分かりやすく解説します!

- サイト運営者のためのWebサイトセキュリティ対策入門 -

【3】Log4Shell脆弱性 ― あなたのシステムが知らぬ間に危険に?

SQLインジェクションなど、よく知られた脆弱性の問題と比べると、まだ認知度は高くないかもしれませんが、2021年末に発見されたLog4Shell(CVE-2021-44228)は、システムが完全に制御を奪われてしまう可能性のある、とても深刻な脆弱性です。特に怖いのは、自分のシステムが影響を受けているかどうかが分かりにくく、気づかないうちに危険な状態になっているかもしれない点です。
2025年5月更新

ガンブラーによるサイト改ざん被害

Log4Shellって何?

多くのWebシステムでは、システムの動作状況を記録する「ログ」という機能を使用しています。Apache Log4jは、このログを記録するためのプログラムの一つで、世界中の多くのシステムで使われています。実は皆さんが普段使っているWebサービスの裏側でも、このLog4jが使われているかもしれないのです。

この問題が特に深刻だと考えられている理由は、主に3つあります:

  • 脆弱性の深刻度を示す「CVSS」という指標で、最高スコアの10.0を記録
  • 世界中のクラウドシステムの93%が影響を受ける可能性があったと報告
  • 攻撃が非常に簡単で、特別な技術がなくても実行できてしまう

例えば、Webサイトのお問い合わせフォームやチャット機能に、特殊な文字列を入力するだけで攻撃が可能です。攻撃に成功すると、システム内で攻撃者が用意した不正なプログラムが実行されてしまいます。

実際にどんな被害が起きているの?

この脆弱性が公開された直後から、世界中で大規模な攻撃が始まりました。セキュリティ企業のCheck Pointによると、1分間に100件以上の攻撃が観測され、世界中の企業システムの40%以上が影響を受けたと報告されています。具体的な被害として以下のようなものが確認されています。

  • 仮想通貨を勝手に採掘するプログラムの埋め込み
  • パスワードなどの重要な情報の窃取
  • システムをロックして身代金を要求するランサムウェアの実行
  • 国家が支援するハッカー組織による情報窃取

どうやって対策すればいいの?

2021年12月に修正プログラム(パッチ)がリリースされており、こうしたパッチの適用や安全なバージョンへのアップデートが対策の基本となります。そのほか、新たな脆弱性への対応を積極的に行っているWAFが防御してくれることもあります。
ただし、Log4jはあまりにも多くのシステムの奥深くで使われているため、根本的な対策が、すべてのシステムで完了するには10年程度かかるとの予測もあります。実際、2023年5月の時点でも、最も多く悪用される脆弱性の一つとして報告されています。

Log4Shellの脆弱性の仕組み

Log4jには、ログメッセージの中に「${変数名}」という形式で変数を埋め込める機能があります。これは、ログにシステムの情報を含めたい時に便利な機能でした。例えば「${java:version}」と書くと、使用しているJavaのバージョンが自動的にログに記録されます。また、同じような書き方でさらに柔軟な機能があり、「${jndi:...}」のような書き方をするとネットワーク経由で別のサーバから情報を取得できてしまいました。これは単にログの記録を目的としたソフトウェアには、明らかに不要な機能です。攻撃者はこのJNDIと呼ばれる別のサーバから情報を取得する機能を巧みに悪用し、悪意のあるプログラムを実行することが可能でした。

この問題が特に深刻だったのは、ログに記録される情報は、ユーザー名やメールアドレス、問い合わせ内容など、一般的なWebサイトでよく使われる入力項目だったことです。攻撃者は、これらの一般的な入力欄に特殊な文字列を入れるだけで、簡単に攻撃を実行できてしまいました。

こうした、広く使われているシステムに関して新たに見つかった脆弱性は、攻撃者から見ると攻撃を仕掛けられるWebサイトが多いこともあり、発見されると全世界で一気に攻撃が広まる恐れがあります。
いつ発生するか予測が難しいだけに対策しにくい面はありますが、まずはソフトウェアのアップデート、WAFの導入、定期的な脆弱性診断といった、他の脆弱性にも共通する基本的な対策によって影響を減らすことで被害を軽減できます。