Linux ディストリビューション全体に対する信頼を誤用した攻撃 (Trust-Trust Attack)

2026/09/05 20:25

Linux ディストリビューション全体に対する信頼を誤用した攻撃 (Trust-Trust Attack)

RSS: https://news.ycombinator.com/rss

要約

Japanese Translation:

Ken Thompson の「信頼の連鎖」攻撃は、以前はコンパイラレベルでの改ざんが必要とされていたものが、GNU strip 内でも実行可能であることを実証した。本研究では、GNU strip が完成済みの ELF ファイルを改変することで、ソースコードを確認せず・改変せずにも、Linux 全体のビルド環境に永続的なバックドアを埋め込むことを示している。NixOS のブートストラッププロセスにおいて、バイナリシードに含まれる GNU strip の単一のパッチ済みバージョンによってペイロードが挿入され、それが次のビルド世代へと伝播し、シードが依存関係の閉じ外に出た後の最終的な標準環境においても存続する。実際の nixpkgs リビジョンにおいて、この攻撃は障害なく完全なグラフィカルインストールメディアを構築でき、任意の悪意のある挙動を行う汚染されたバイナリを生み出した。この発見は、NixOS のような不変系ディストリビューションに依存するユーザーや組織に対し、一見安全なツールが大規模な侵害の主要なベクトルとなるリスクを提起している。この研究成果は Aman Sharma(メール:[メールを表示])によって提出され、UTC 2026 年 7 月 27 日 12:59:15 に投稿された(バージョン 1)。

本文

GNU strip を用いた信頼連鎖攻撃:コンパイラ以外での完全なバイナリ改ざん

研究の概要と結論

ケン・トンプソンの**「信頼連鎖攻撃」**は長年、コンパイラの脆弱性としてのみ認識されていました。しかし、本研究では以下のような重要な発見を報告しています。

  • コンパイラに限定されない脅威:信頼連鎖攻撃はコンパイラ特有のものではなく、通常のビルドユーティリティでも可能であることが示されました。
  • ツール:GNU strip:ソースコードの検査も生成も行わない標準的なツール「strip」を用いるだけで、完成した ELF ファイルを直接改ざんし、裏口(バックドア)を埋め込むことができます。
  • 攻撃の性質:単なる脆弱性の利用ではなく、ビルドプロセスそのものが悪意のあるバイナリを広めるメカニズムとして機能します。

攻撃手法:NixOS ブートストラップの乗っ取り

本研究は NixOS のパッケージ管理システムにおける「ブートストラッププロセス」を標的としています。このプロセスにおいて、以下の連鎖反応が引き起こされます。

  • 感染源:バイナリシード内に含まれる単一かつ改ざんされた
    strip
    コマンド
  • 感染メカニズム
    • この悪意のあるコマンドによって埋め込まれたペイロードは、strip の処理が繰り返される各世代から次の世代へと伝播します。
    • シードが依存関係のクロージャー(閉じたセット)を離れても、最終的な標準環境構築時にこの改ざんは存続し続けます
  • 波及効果:ビルドツールの信頼連鎖を切断された後も、出力されたすべてのバイナリが裏口を含む状態に保たれます。

実証実験と成果

実際の

nixpkgs
リビジョンを使用した攻撃実験では、以下のような深刻な結果が得られました。

  • 完全な攻撃実行:失敗なく、完全なグラフィカルなインストールプログラムを構築することに成功しました。
  • バイナリの全面感染:生成されたほぼすべてのバイナリに裏口が埋め込まれました。
  • 悪意のある振る舞いの実装:改ざんされたパッケージに対して、攻撃者が任意のコードを実行できる環境を作り出すことが可能です。

技術的詳細

コマンド例(改ざんのイメージ)

通常、

strip
は非圧縮された符号を除去するだけで済みますが、悪意のある設定では以下のように変更されます。

# 正常な strip の動作(期待される挙動)
strip --remove-section=.note.gnu.build-id ./bin/app

# 攻撃的な strip の想定挙動(裏口埋込み)
strip --add-backdoor "./bin/*" && strip --compress ./bin/*

影響範囲のまとめ

項目状態
対象ツールGNU strip
ソースコード検査なし(バイナリのみをターゲット)
伝播経路ブートストラッププロセスの世代間連鎖
最終影響標準環境全体のバイナリ感染

結論

この研究は、ビルドツールの信頼性がシステム全体のセキュリティにおいて極めて重要であることを再認識させます。「コンパイラ以外でも」、看似無害なツールが悪意あるコードを拡散するキャリアとなり得ることが証明されました。

同じ日のほかのニュース

一覧に戻る →

2026/09/08 3:52

ロサンゼルスが一つ一つのビル建設を通じて発展していく姿を見てください(1880 年~2026 年)

## Japanese Translation: 本テキストは、ロサンゼルス独自の視覚マップを説明している。既存の構造物それぞれが建設年によって配置された一つの箱として表現されており、現在も存続している建物のみが含まれ、取り壊されたものは除外されている。その結果、この可視化は都市の歴史的景観や完全なタイムラインではなく、現在の建築環境を示している。これは生存する建築への明確な年代的概要を提供する一方で、過去の構造物や将来の開発については洞察を与えず、ロサンゼルの進化を現在にのみ焦点を当てており不完全な画像として提示する。 ## Text to translate : This text describes a unique visual map of Los Angeles where each existing structure is shown as one box arranged by its construction year. Only buildings still standing today are included; those that have been demolished are excluded. As a result, the visualization shows the current built environment rather than the city's historical appearance or full timeline. While it provides a clear chronological overview of surviving architecture, it offers no insight into former structures or future developments, presenting an incomplete picture of Los Angeles's evolution by focusing solely on the present.

2026/09/04 1:06

WeatherNext 3

## 日本語翻訳: ## サマリー:Google は、年間毎日ごとに正確な時間ごとの予報を生成する、これまで最も高度な全球気象 AI モデル「WeatherNext 3」をローンチしました。以前のモデルとは異なり、本モデルは生きた衛星画像を直接分析することで、降雨や降雪といった急速な変化を追跡し、トレーニングが施されたことのない場所であっても精密なローカルデータを提供します。この機能は、ジャマイカでのハリケーンメリサの上陸地点を特定して予測することを支援するなど、最近のイベントにおいて極めて重要であることを実証しました。Google Search、Maps、Gemini などの日常的な消費者向け利用に加え、WeatherNext 3 は風力発電所や太陽光発電所向けの放射線量および雲量予測という重要な産業用途に最適化されています。これにより、運営者は運用コストを削減しながら再生可能エネルギー源をより効率的に管理できるようになります。また、温度などの地表変数を 5km〜10km の高精度で予測することで、インフラがより信頼性高く動作するよう確保するとともに、ユーザーには日々の意思決定を賢く行うための精密なローカルデータを提供します。

2026/09/05 5:20

Dummit and Foote の『抽象代数学』に存在するバグを発見する

## Japanese Translation: 以下に示す改良版は、主たるメッセージを維持しつつ、キーポイントリストに含まれていた欠落している具体的な事項を取り入れ、必要な場合定義の明確化も行ったものとなる: Recurse Center の第 2 週目において、著者は Dummit and Foote の *Abstract Algebra* テキストブックを Rocq で形式化する作業を開始した。標準的な命題として、「関数 $f: A \to B$ が全単射であることと、すべての $a \in A$ について $g(f(a)) = a$ を満たす左逆関数 $g: B \to A$ が存在することとの同値性」が主張されている。この命題を形式化するには、以下の点を注意する必要がある: - 関数は、$A$ の異なる 2 つの要素が $B$ の同一の要素へ写像しないときに全単射である(例:整数上の $f(x)=x^2$ は全単射ではない)。 - 左逆関数が存在するのは、ちょうど $B$ から $A$ への写像が存在し、それが $f$ を打ち消す場合のみである。 この命題は、$A = \{\}$ および $B = \{1\}$ の場合に成り立たない。ここで、唯一つの関数 $f: \emptyset \to \{1\}$(ペアの集合が空となる)は自明的に全単射であるが、関数 $g: \{1\} \to \emptyset$ は存在しないため、左逆関数は存在しない。著者はこの同値性を証明するために、追加の仮定が必要であることを示すしかなかった(例えば、$A$ が inhabited であるか、あるいは $B$ が空集合である場合など)。Rocq でこれを証明する試みが続いた後、著者はテキストブックの記述が誤っていることに気づき、書籍の Errata を確認して既にその誤りが記録されていることを確認した。このエピソードは、形式検証が広く使用されているテキストにおいても微妙な過ちを捉えるための価値を示すと同時に、標準的な演習に頼る際には Errata の確認が必要であるという点も強調する。

Linux ディストリビューション全体に対する信頼を誤用した攻撃 (Trust-Trust Attack) | そっか~ニュース