XZ Utilsにバックドアが仕込まれていた (CVE-2024-3094)
2024年3月9日にxzにバックドアが埋め込まれている脆弱性(CVE-2024-3094)が公開されました。
本脆弱性やRed HatとDebianなどの主要なLinuxディストリビューターのベータ版リリースに内包されている可能性を発表していますが、実稼働バージョンや安定バージョンでの利用はまだ報告されていません。
このバックドアは長年XZ Utilsのプロジェクトに関わっていた人物の1人である JiaT75 (Jia Tan) が関わっており、コミュニティから信頼を得て2年かけて実装されています。
目次
脆弱性の内容
悪意のある攻撃者が sshd 認証(他のサーバからsshで接続する時の設定)を破り、
リモートからシステム全体に不正アクセスできるようになる可能性があります。
現段階では安定稼働版のLinuxバージョンではまだ稼働しておらず、一般的な影響は発生していませんが、Andres Freund氏がバックドアを発見しなければ世界中に悪影響が発生していた可能性が高いです。
以下海外エンジニアによる、簡単な説明資料
脆弱性のあるxzバージョン
以下xzバージョンがこの脆弱性に該当します
・xz5.6.0
・xz5.6.1
Red HatとDebianなどの主要なLinuxディストリビューターのベータ版リリースに内包されている可能性を発表していますが、実稼働バージョンや安定バージョンでの利用はまだ報告されていません。
脆弱性が発する条件
・glibc (IFUNC 用) を使用するディストリビューションを実行する
・xz または liblzma のバージョン 5.6.0 または 5.6.1 がインストールされている。
LinuxのXZバージョンを確認するコマンド例
以下コマンド例ですxzの5.6.0 または 5.6.1がダウンロードされている場合、今回の脆弱性に該当します。コマンドはxz –versionでは正確に確認できません。
Debian/Ubuntu
apt list --installed | grep xz
Red Hat
rpm -q xz
Fedora
dnf list installed | grep xz
MacOS
brew list --versions xz
脆弱性発見の経緯
PostgreSQL 開発者でソフトウェアエンジニアのAndres Freund氏によって偶然発見されました。
Andres Freund氏はDebian Sidのsshが0.3秒が0.8秒になっている事や意図されて難読化しようとする
処理がある事からliblzmaのバックドアである事を指摘しています。
バックドアを仕込んだとされるユーザー: JiaT75 (Jia Tan)
このバックドアは長年XZ Utilsのプロジェクトに関わっていた人物の1人である
JiaT75 (Jia Tan) が関わっており、コミュニティから信頼を得て2年かけて実装されています。
JiaT75 (Jia Tan) の時系列の行動
JiaT75 (Jia Tan) の時系列の行動は以下です。
・2021年にGitHubのアカウントを作成し、初期のコミットはxzではありませんでした。
・2022年 新人物Jigar Kumar氏が xzへメンテナーを追加するよう圧力をかける
JiaT75がメンテナーとなり、定期的にコミットを実行するようになる。
・2023年1月に最初のコミットがマージ
・2023年3月にifuncに関してのPRを行う
・2023年7月にoss-fuzzにおいて、上記の変更に発生した問題のため、ifuncを無効にするPRが開かれた。これは、まもなく導入される悪意のある変更を隠すために意図的に行われた模様
・2024年2月バックドアを実行するためのコミットがリポジトリへ追加
・2024年3月 Andres Freund氏がバックドアの可能性を指摘
海外エンジニアによる時系列引用元:https://boehs.org/node/everything-i-know-about-the-xz-backdoor
今回はたまたまバックドアが見つかりましたが、OSSはメンテナーが不足している事が多く、他のOSS開発ソフトウェアでも同様の問題が発生します。そのため今後は企業自体がOSSの活動へのコミットやより活動的なサポートが必要になります。
その他閲覧されている記事