close search bar

申し訳ありませんが、この言語ではまだご利用いただけません

close language selection

Xz Utils のバックドアとは何か : サプライチェーン攻撃について知っておくべきこと

Apr 24, 2025 / 1 min read

Xz Utils のバックドアは何か、どのような脅威をもたらすのか

2024年3月29日、米国サイバーセキュリティ・インフラセキュリティ庁(CISA)は、xz Utils の 2つのバージョンが侵害されたことが判明したと警告しました。xz Utils のコードは改竄され、悪意のある「バックドア」が仕込まれていました。このバックドアにより、攻撃者は影響を受けたシステムに対して権限のある管理者と同等の権限を持つことができます。xz Libs は、世界中のサーバーインフラの大部分を支える Linux を含む Unix オペレーティングシステムの依存関係として広く使用されているオープンソースライブラリのセットです。

CISAが警告を発した同じ日に、オープンソース・ソフトウェア・プロバイダーの Red Hat は、Linux エコシステム製品 2 つが xz Utils マルウェアの影響を受けていることをユーザーに通知する緊急セキュリティアラートを発信しました。アラートには、「xz のバージョンをダウングレードできるようになるまで、Fedora 40 または Fedora Rawhide の使用を直ちに中止してください」と記されていました。

“これまでで最も巧妙に実行されたサプライチェーン攻撃…悪夢のようなシナリオです。悪意に満ちており、巧妙で、広範に使用されているライブラリの上流に、権限のある人物が入り込んだのです。”

驚くべきことに、この攻撃は3年もの間、準備段階にあったようです。2021年、正体不明の人物または組織によって GitHub アカウントが作成され、当初のメンテナーが過労と燃え尽き症候群を理由に更新の主要な監督権限を譲ったため、このアカウントの背後にいる組織は徐々に xz ライブラリの共同メンテナーへと移行していきました。

2024年初頭、新しいメンテナーに紐づく悪意のあるコードが xz Libs プロジェクトに挿入されました。「これはこれまで見た中で最も巧妙なサプライチェーン攻撃かもしれません…悪夢のようなシナリオです。悪意があり、有能で、広く使用されているライブラリのアップストリームに権限のある者が侵入したのです」と、別のオープンソースメンテナーは述べています。もしこのバックドアが検出されなかったら、「世界中の何億台ものコンピューターのマスターキーを、作成者に渡していたでしょう…」とコンピューター科学者のアレックス・スタモスは述べています。

2024 年の OSSRA レポートでは、アプリケーションの 49% に、過去 2 年間に新しい開発活動が行われなかったオープンソースが含まれていたことが指摘されています。

Xz Utils のバックドアの警告 1: メンテナーの燃え尽き症候群は深刻な問題

メンテナーの燃え尽き症候群は、多くのオープンソースプロジェクトに影響を与える危険な問題であり、xz Libs の場合も同様でした。OSSRA レポートで調査されたリスク評価を含む 900 件以上のアプリケーションのうち、49% には過去 2 年間に新規開発活動が行われていないオープンソースが含まれていました。

プロジェクトがメンテナンスされなくなったということは、機能のアップグレードもコードの改善も行われておらず、セキュリティ上の問題も修正されていないことを意味します。さらに悪いことに、xz Libs 攻撃が示すように、攻撃者はメンテナンスが減少している人気プロジェクトの信頼されるロールに潜り込み、最終的にはプロジェクトの汚染されたバージョンをサプライチェーンに送り込む機会を得る可能性があります。

メンテナンスが行き届いていない状態でありながら、依然として使用されている「ゾンビ」コードは、オープンソース・プロジェクトにとって珍しい問題ではありません。これらのプロジェクトは、プロジェクトのセキュリティと最新化を維持するために、無給のボランティアのメンテナーに大きく依存しています。一部のレポートによると、2022年にメンテナンスされていた Java や JavaScript のオープンソースプロジェクトの約20% が 2023年にはメンテナンスが終了しており、悪用やエクスプロイトの脅威にさらされています。

Xz Utils のバックドアの警告 2: オープンソースのインフラは、わずかな人々によって維持されている

オープンソースの依存関係が普及してしまうと、その代償として、(通常は無給の)メンテナー(バグ報告、機能リクエスト、コードレビュー、コードコミットなど、フリーソフトウェアのコードを管理する人々)へのプレッシャーが増大します。「メンテナー」が実際には一人の開発者であることも珍しくありません。人気のインターネット・コミック xkcd にある「ネブラスカ州出身の無名の人」といったようにです。

現代のソフトウェアが依存するオープンソース・インフラストラクチャでは、その一部を支える最後の砦となるのは、往々にしてそのような無名の人々です。オープンソース・プロジェクトの人気が高まるにつれ、プロジェクトを保守する開発者がそれに見合った増加を示さないまま、結果としてメンテナーが燃え尽き症候群に陥り、多くのオープンソース・プロジェクトが放棄されてしまうことになるのです。

この傾向の一因として、セキュリティ脆弱性の増加により、多忙を極めるメンテナーがコードの更新を維持するのが困難になり、決して結論が出ない作業を続けるよりもプロジェクトを放棄してしまう可能性が挙げられます。実際、OSSRA レポートによると、2023年にセキュリティリスクスキャンを受けたアプリケーションの 74%に高リスクの脆弱性が含まれていたと報告されており、これは前年と比べて大幅に増加しています。Qualys のサイバーセキュリティ調査によると、2023年には 26,000件を超える脆弱性(オープンソースやその他のサードパーティコードに影響を与えるものを含む)が公表され、前年より 1,500件増加しました。

残念ながら、メンテナンス作業が不規則であることと、多くのオープンソースの利用者がセキュリティ上の潜在的な問題を確認せずにコードをダウンロードする傾向があることから、オープンソースの リポジトリは攻撃者にとって格好の標的となっているのです。

Xz Utils のバックドアの警告 3: オープンソースのリスクがソフトウェア・サプライチェーンを脅かす

攻撃者は人気のあるプロジェクトに潜入し、汚染されたバージョンのプロジェクトをサプライチェーン・ストリームに拡散する可能性があります。

オープンソースの人気と利用が拡大するにつれ、ライセンスの互換性の問題や、脆弱性を悪用した攻撃、悪意のある攻撃まで、オープンソースのリスクも拡大しています。

ソフトウェア・サプライチェーンに対する計画的かつ意図的な攻撃は今や一般的であり、悪意のある攻撃者はコードの脆弱性を悪用するだけでなく、コードや開発パイプラインを実際に改ざんして汚染されたマルウェアを拡散させる手法へと移行しています。ReversingLabs は 2024年版レポート“The State of Software Supply Chain Security,” の中で、オープンソースパッケージのリポジトリに起因する脅威が過去 3年間で 1,300%以上増加したと報告しています。これには、攻撃者がソフトウェアパッケージを通じて直接マルウェアを拡散させるインシデントも含まれます。2つの人気オープンソースソフトウェアプラットフォームでは、悪意のある PyPI パッケージ( Python プログラミング言語用のサードパーティ製ソフトウェア)が、昨年だけで 400%増加しました。

自らのソフトウェアでオープンソースを使用する組織 (文字通りすべての組織) は、ソフトウェア・サプライチェーンをセキュリティ上の脅威から保護する一環として、これらの脅威を積極的に特定し、管理する必要があります。

Xz Utils のバックドアへの対処法

自分の組織を守るために何ができるでしょうか?

  • オープンソースの所有権とメンテナンス状況を確認してください。最近メンテナーが変更されたオープンソースを使用する場合は注意が必要です。新しいメンテナーを徹底的に審査し、移管後にパッケージに加えられた変更をすべて確認してください。悪意のある活動のリスクを最小限に抑えるため、信頼できるメンテナーによる実績のあるパッケージの使用を検討してください。
  • パッケージの信頼性と名前を検証してください。パッケージの評判と信頼性を再確認してください。偽アカウントやなりすましの兆候がないか確認し、インストール前にパッケージのソースの正当性を確認してください。偽造パッケージや悪意のあるパッケージの被害に遭わないよう、インストール前にパッケージ名と URL が正しいことを確認しましょう。
  • 機能変更について検討してください。オープンソースの新しいバージョンは、問題へのパッチ適用や機能拡張に役立ちますが、異なるバージョン間で機能が大幅に変更されている場合は、注意が必要です。あるバージョンが、以前のバージョンではアクセスできなかったファイルやシステムにアクセスしている場合は、特に注意が必要です。
  • 最新情報を入手してください。新たに特定された悪意のあるパッケージ、マルウェア、公開されたオープンソースの脆弱性について、情報を入手するための手段を確保してください。SBOM 内のオープンソースコンポーネントに影響を与える問題に関する実用的なアドバイスや詳細情報を提供するニュースフィードや定期的に発行されるアドバイザリを確認してください。
  • コードレビューを実施してください。ソフトウェアに組み込む前にコードを検査し、悪意のある行為を示唆する疑わしいパターンや予期しない動作がないか確認してください。ソースコードをレビューし、既知の脆弱性がないか確認してください。

-この記事のファクトチェックは Mike McGuire によって行われました。

Continue Reading

Explore Topics