Javaライブラリ「Log4j」にゼロデイ脆弱性、任意のリモートコードを実行可能 iCloudやSteam、Minecraftなど広範囲のJava製品に影響か [少考さん★]
■ このスレッドは過去ログ倉庫に格納されています
※ITmedia NEWS
「やばすぎる」 Javaライブラリ「Log4j」にゼロデイ脆弱性、任意のリモートコードを実行可能 iCloudやSteam、Minecraftなど広範囲のJava製品に影響か
https://www.itmedia.co.jp/news/articles/2112/10/news157.html
2021年12月10日 16時42分 公開
Javaで使われるログ出力ライブラリ「Apache Log4j」に悪意のある文字列を記録させることで、任意のリモートコードを実行できるようになる(Remote Code Execution, RCE)、ゼロデイ脆弱性があることが12月10日に分かった。広範囲に影響が及ぶ可能性があることから、ITエンジニアを中心に議論の的になっている。
例えばMinecraftでは、チャットに悪意のある文字列を書き込んだりすることでログに記録させるだけで任意のリモートコードを実行できてしまうことが報告されている。すでに、Minecraftの一部サーバでは閉鎖やパッチの適用などの対応を進めている。
Webセキュリティ製品などを手掛ける米LunaSecの報告によると、Minecraftの他、ゲームプラットフォームのSteamやAppleの「iCloud」もこの脆弱性を持つことが分かっており、影響は広範囲に及ぶと考えられるという。
この脆弱性の影響があるのは、Log4jのバージョン2.0から2.14.1までと当初みられていたが、Log4jのGitHub上の議論では、1.x系も同様の脆弱性を抱えていることが報告されている。対策には、修正済みのバージョンである2.15.0-rc2へのアップデートが推奨されている。
セキュリティニュースサイト「Cyber Kendra」によれば、この脆弱性に対して付与されるCVE番号は「CVE-2021-44228」という。
脆弱性の報告を受け、Twitter上ではITエンジニアたちが続々反応。「やばすぎる」「思っていたよりずっとひどいバグだった」「なぜこんな(外部からプログラムを取得する)機能が実装されていたのか」などの声が上がっている。
https://twitter.com/nullpo_head/status/1469152015637151745
(略)
※省略していますので全文はソース元を参照して下さい。
https://twitter.com/5chan_nel (5ch newer account) >>91
自前のソフトはまだいいけど使ってるサードパーティやライブラリは全部調べないとな
ちゃんとしたところだと早々に通達が行くはず 一通り探してlog4j使ってないと結論づけたけど
本当に大丈夫なのかわかんないな
依存ライブラリが使ってるかはdependency tree見ればいいのか? >>92
あれはHTTPのリクエストを契機にSQL実行みたいなやつやわな
これはログの書き込みが契機なわけやから外部というより内部犯行向き?
重要情報がどこかに筒抜けみたいな? >>106
外から操作できるんでね?どっかにツールが公開されてるはず。 SLF4JとLogbackは2021年現在では積極採用しない方が良い
https://blog.kengo-toda.jp/entry/2021/05/31/200807
こんな記事見つけて、ふ〜んと思ったわ
結果論だけど Javaってまーーーだロガーの競争やってんのかい
いい加減言語機能に入れて統一するべき 1に乗ってる例は、Webサーバが普通のWebアクセスのログを1行出力したらアウト、っていう手順だからね
何らかの文字列を記録する処理があって、その文字列にユーザー側から送り付けられる文字列が含まれてたら、それだけで終わる仕組み 今日はたまたまlog4jsの調査をしていた。
こっちは流石に関係ねえだろうなw logbackにまで飛び火すると俺がヤバいから震えてる >>115
slf4jにほぼ統一された
出力ロガー任意に選べるし >>75
アウトだな
実害あるかどうか関係なしに使ってるだけでアウト
テスト工程の脆弱性チェックなんてそんなもん 日系メーカーの「独自のフレームワーク」に多用されてそうな予感
でもって政府系のお友達発注がグダグダでまたもや… 開発なんてとっくにやめて偉そうに講釈垂れてるだけの立場になったので気楽だわw
お前ら開発者には同情してる すげえな。バグじゃなく機能なのか
特定のキーワードを参照してその中に含まれているURLでダウンロードしたclassファイルを勝手にロードする機能が実装されてる
ゲームとかだとチャットとか入力できるものでログに記録させるだけでダウンロードさせてコード実行させれるとか 何でロガーにこんなやっかいな機能があるんだよ。週明けは間違いなく会社が祭になってるわ。勘弁して。 バグじゃなくてわざとなのがタチ悪いな
Log4jの信頼性ダダ下がり こういうのって十分時間を空けてから公開されるもんじゃないの? サイバー兵器として仕込まれた脆弱性というだけのこと
カードは1枚ずつ切って行く >>141
これな
なんでわざわざこんなの仕込んでるんだか >>142
どういう経緯で発覚したんだこれ
タイミング的にも今まで被害が報告されてなかったのもなんか怪しいよな 自称天才プログラマーのお前らに聞くけど、修正版が出るまで何日くらい掛かりそう? >>147
SIでも無くて申し訳ないけど、BigTechならすぐに対応してくれる(じゃないとマジでヤバすぎるので)。
でかいシステムは1ヶ月かかったりするかもね…
根幹だし…。
問題はあまりに広範囲かつどこでも使われてるから、実は使われてましたー!なんてのが平気で起こること。やばいのよ。 >>142
本来はそう。0-dayにならないように慎重なはず。
発見の発端になったPullRequestはこれ
Restrict LDAP access via JNDI by rgoers · Pull Request #608 · apache/logging-log4j2 · GitHub
ttps://github.com/apache/logging-log4j2/pull/608 >>149
悪用済みやで
(中国とかだとビットコイン送信とかさせてるという噂)
なので、みんな必死に対応しとる
あと >>150でPRでバレたと言ったけど、そもそもあまりにバカみたいに簡単に任意コード実行可能な話では!?となったのでバレちゃった感じかもしれん(詳しい背景事情はわからん) アメリカさんへ
こういうのも バックドア と言うんですよね 三国人の反米のカルト国際犯罪テロリストの連中は
これで マジだったか と 理解できたのだろうよ
wwwwww ログ出力とか汎用的すぎてやばいな
日本の基幹サーバも全滅か 発生機構見たが、似たような穴をもってるやつが他にも居そう 上手いこと権限奪取できたら夢のrm -rf も可能? 中国人やロシア人がマージ権限持ってるやつは全部危ないってことじゃんw >>161
今時じゃないプロジェクトが生き残ってるんだよ いやいや、ソース公開なら外部コード実行部を洗い出すだろーがよ!で、そこ潰して再構築。
提供するサービスに不要ならそうするのが普通じゃねーのかよ(笑)
念の為にそこに来た場合の引数テキストに吐き出しておくのがせいぜいだな
コールスタックも必要なら書き出す
つーかマジで世界中のIT技術者の質が落ちてねえか?ソース引っ張ってきて実装するだけとかPG以下だぞ?(笑) まだ、被害報告されてないよね?
コイン発掘とかに使われているとCPU負荷が上がるだけで気づかれにくい? >>163
スターの数とか見てみんな使ってるから大丈夫って判断してるからなー
そもそもバグを踏まない限り他所のライブラリのコードなんて読まないし
リフレクション系のクラスなんて使っているところはザラにあるよね >>161
納品して動いているから厄介なんだろ
納品したことないんだろ 認知のコードってJUMP命令一行でシステムダウンさせられるのか >>168
金融や大手じゃなけりゃ数ある中から狙われる可能性は少ないからな これSIer全滅レベルのヤバいやつじゃね?
業務系のJavaシステム全部該当するだろ。 しかし、log中に置換パターン入れられると便利だとはいえ ldap サーバから
class ファイルまで取り込んで実行できるとは >>163
世の中、お前が思ってるほど暇じゃねーんだわ。
他人の書いたコードなんか眺めて楽しいかよ。
動かしてから確認しろっつうの。
セキュリティが心配なら脆弱性診断受けろっつうの。 ヤバいと言っても変な実行命令が書かれてるソフトをインストしない限り問題ない
ゲーム系はMODで変なのを入れない限り問題ない
ヤバいってのはWindowsアップデートの再起不能バグみたいのを言うんだわ 核ミサイルが世界中で発射されまくる位じゃないと納得せんぞ
この手の話はいつも期待はずれだ だからJavaなんてそもそもマナー違反なんだから
これに懲りたらさっさと捨てろっつーの ま〜た来週、前の会社から教えてくださいの電話がかかってくるのか。
俺の後任で採ったSEがパソコンもロクに使えないレベルの超絶無能らしい。彼に職場PCのJDKを入れ替えるなんて無理だろう。
今度から電話応対1分10000円取るからな。 log4jかよヤベエな
使ってないシステムないんじゃないか >>2
構造体が使えちゃったり、
staticメソッドの継承ができなかったり、
double型の除算がデフォルトで銀行丸めだったり、
Java使いが触ると「えっ?」ってのはある。 仕様らしいけど、じゃあどういう目的でこんな機能を実装してたんだろう。本来意図してたユースケースが知りたいよ。 >>135
JapanのjじゃなくてJavaのjだから全世界共通 >>161
正直ログになに使ってるとかどうでもいいこと気にしない クライアント側で出来る対策はなく
サーバー対応まちってこと? Borlandと言えば、Turbo C++愛用してた log4jサーバにメッセージごりごり複数のプロセスで送ったら
割と簡単にハングアップして解析するのいやになって内製しよう
と提案していま安泰です
あ、log4cxxはつこうてます >>150
オープンソースだから修正内容を誰でも見られて悪用しようと思えばできちゃうってことかな
むつかしいね 誰だ、うちはバージョン1系だから安全ですなんてドヤ顔で言ってるのは 古いlog4j使ってたらきついな
枯れたライブラリだから更新もしてない log4jってlog for javaの略なんだぜ 北朝鮮のサイバー攻撃って日本より発達してるんやで
知らん日本人はびっくりこくやで >>2
C#はメソッド名を大文字で始めるのが受け入れられなかった ■ このスレッドは過去ログ倉庫に格納されています