Skip to content

otogawakatsutoshi/log4j2_exploit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 

Repository files navigation

log4j2_exploit

log4j2の脆弱性まとめ

初めに

内用に対して正しいと私が保証しているわけではないので、
必ず自分で調べること。

logj2について

log4j2
色々言われていますが、日本にあるほとんどのJavaプロジェクトより、ソースコードが綺麗に管理されています。
正直私はこれより綺麗に簡潔にJavaが管理されているプロジェクトに参加したことないです...
Java書く際の参考にした方がいいレベルです。複雑ですが、一つ一つは難解なところは少ないのでJava勉強している人は必見です。

バージョンの流れ

  • 2.14系以下 -> lookupによる脆弱性
  • 2.15.0 -> lookupをデフォルトで無効(rcだと脆弱性残ってるので注意。)
  • 2.16.0 -> lookupの機能自体削除。

javaのバージョンについて

log4j2側はjavaのバージョンはなんでもいいです。
ldap側はJavaが16未満で無いとエラーが発生するのでjava8やjava11を使いましょう。

対処法

バージョンを速やかに上げること

新しいバージョン持ってきてビルド、デプロイ。当然再起動。
Javaのバージョンは8以上で無いとlog4j2を2.15以上にあげられないので、
Java7の人はかなり困難かと思われる...

WAFを利用

ただし、WAFBYPASS(すり抜ける)の方法が既に共有されている。一時凌ぎにしかならない。

環境変数LOG4J_FORMAT_MSG_NO_LOOKUPSをtrueに設定する(バージョン2.10以降)

ただ、動いているプロセスの環境変数を直接いじるのって多分できないので一度Javaのシステムを再起動させないとダメなのでは?本番の再起動でどれぐらい時間がかかるか調べる必要あり。

JndiLookupをclasspassから除外(バージョン2.10未満)

classpathを動的に追加するのはできるっぽいけど、除外は動的にできるのかな...?
これも再起動しないとダメな気がする。

状況

脆弱性を利用したランサムウェアや、コインマイナーがすでに出ており、
複数のサイトに機械的に脆弱性があるかチェックするツールも出ている。
これらはセキュリティの素人でも扱えるレベルで簡単なので、被害は膨大になりそう...

ツール

どれも突発的に作ったプロジェクトなので、不具合があるかもしれない。
自分が最初見た時はlogshell-scanのライブラリが動かなかったので、何時間か後にライブラリ変更されてた。
ライブラリが動かない場合はissue等見ること。

log4shell-vulnerable-app
脆弱なコンテナ環境を作ってlocalで検証ができる。HelloWorld的な処理が書いてある。やり方の説明もあり。

CVE-2021-44228-Apache-Log4j-Rce
上と同じくHelloWorld的な処理。脆弱性を利用してWindows,macの電卓アプリを起動させている。

logshell-scan
log4jの脆弱性、WAFBYPASSのチェックができる。urlをリストで持てば複数のサーバーに対して実行可能。管理外のサーバーに対して使うと違法。

Logout4Shell
log4jの脆弱性を利用して、サーバーに侵入、log4jの脆弱性を修正するツール。管理外のサーバーに対して使うと違法。

local以外でツール使って検証、調査する場合は自分が立てたサーバーでもクラウドならawsや、gcp、vpsならconoha,やさくらなど提供している事業所に連絡する必要あるか調べること。

まとめ

自社開発とかで自社で事業が終わっているならいいけど(それでもお客さんいるから経営者通す必要ある。)、
Si事業だと、今いるメンバーが運用のみとかヘルプデスクとかになったり、
孫請け、ひ孫受けが現場に出ておりコード書ける人間がいる会社に決定権がないとかだと厳しそう...

Javaのシステム一度止める必要があっても、「決定権が他社の経営者だから
どうにかしてやる方法調べて!なんとかならない?」とか無理ゲー強要される人が出そうだ...

検証用のツールもpythonやらdockerやら使っているから、新たにソフトウェアインストールするのに
上位の会社通さないといけないところとかだとそれで時間かかるし。

年明けあたりに本格的に問題になるんだろうな...

外部サイト

ipaの記事

About

log4j2の脆弱性

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published