
2026/10/28 20:03
Apple の Git は依然として、侵害された eMudhur シーテートに信頼を寄せている
RSS: https://news.ycombinator.com/rss
要約▶
Japanese 訳:
2026 年末時点において、Git、curl、Python 3 のような macOS 開発ツールは、改ざんされたシステム証明書を信頼しているため、HTTPS 中間者攻撃に対して批判的に脆弱である。この脆弱性により、ユーザーの知ることなく攻撃者がコードを静かに改ざんしたり、GitHub クレデンシャルなどの機密認証トークンを窃取したりすることが可能になる。最近のアップデートは、開発者がこれら不安全なデフォルトのルート証明書を検避するために以前に実装してきた手動の回避策を偶然にも逆転させ、重要な開発環境を再び暴露したままである。ボランティアプロジェクトは既に、Apple のツールと実際のセキュリティ要件のギャップに対処するためのパッチをリリースしているが、特別なコマンドラインフラグなしに標準的なネットワークリダイレクトだけで攻撃者が中間者攻撃を実行できる状態である。Apple がユーザーの緩和策を壊さずに影響を受けた証明書を削除する公式な修正を緊急で出荷するまで、開発者と継続的インテグレーションシステムは各アップデート後に手動で防御を再適用しなければならない。このリスクを無視することは、コンプロマイズされたソフトウェアビルドや深刻なデータ漏洩につながる可能性があり、このサプライチェーン脅威の解決は macOS セキュリティにおける最優先事項となっている。
本文
macOS ツール改ざん問題:現状と対策
問題の概要
Apple は 10 月 17 日に eMudhra 関連の事象を把握し、以下のような深刻な脆弱性が確認されました。
- macOS の開発者ツール(git, curl, python3 など)が、改ざんされた証明書を依然として信頼し続けています。
- 修正パッチの問題: 10 月 26 日にリリースされた macOS 27.2 はこの問題を修正しておらず、更にはユーザーの手作業による回避策まで無効化してしまいました。
- その結果、ユーザーは再び脆弱な状態に陥ってしまいました。
- 現状の状況: ユーザーが待機している間に、既に数多くのプロジェクト(多くはボランティア運営)から修正パッチがリリースされています。
なぜこれらが重要なのか?
これらのツールが HTTPS 接続を確立する際、通信経路上の攻撃者が通信内容を傍受・改ざんできてしまいます。
git への具体的な影響
- リモートリポジトリからの操作: HTTPS を使用したクローンやプル操作中に、攻撃者によって選択されたコードが配送される可能性があります。
- プッシュ操作の危険性: プッシュ中のデータも改ざんされる恐れがあります。
- 認証情報の漏洩: GitHub トークンなどの認証情報が傍受される危険性もあります。
git の影響確認方法
以下のコマンドを実行してください。
git ls-remote https://git-emudhra.we-have-a-problem.com/check.git
- 証明書エラーが発生した場合: その git は保護されている(問題ない)ことを意味します。
- コミットがリストされた場合: 当該の git が影響を受けていることを示しています。
- これは、GitHub や他の HTTPS Git リモートへの接続が傍受・改ざんされている可能性があることを意味します。
攻撃シミュレーション(デモ用)
攻撃の全体像を再現したい場合は、以下のコマンドを一時的なディレクトリで実行してください。このコマンドは、「GitHub」を偽装しているテストサーバーからリポジトリをクローンします。
- `-c オプションの役割: この一回限りのコマンドにおいてのみ、github.com のトラフィックをテストサーバーに迂回させる設定です。
- 証明書: テストサーバーからは、改ざんされた eMudhra 中間認証局によって発行された
証明書が提示されます。github.com
git -c http.curloptResolve=github.com:443:15.235.19.186 clone https://fake-user@github.com/galadran/emudhra-git-test
結果の判定
- クローンが拒否される場合: パッチ適用済みの git の動作(証明書エラーによりブロック)です。
- README.md が表示され、先頭行に「INTERCEPTED」がある場合: 攻撃が成功したことを意味します。
重要:現実の攻撃経路
現実の攻撃者にとって、この
-c オプション を使う必要はありません。
ユーザーと GitHub の間のネットワーク経路上にあるいかなるデバイスでも、自らのトラフィックを再ルーティングして傍受・改ざんできてしまいます。
デモ用リポジトリの代替方法
デモ用のリポジトリは、他のパブリックまたはプライベートな任意のリポジトリに置き換えても構いません。ただし、「fake-user@」というプレフィックスは維持する必要があります。
- このプレフィックスがない場合、git は認証情報(GitHub アカウント認証)をテストサーバーへ送信してしまいます。
git -c http.curloptResolve=github.com:443:15.235.19.186 clone https://fake-user@github.com/Homebrew/brew
curl と python3 への影響
やcurl
、Apple が提供するその他のツールも、同様の方法で影響を受けています。python3- curl の影響確認コマンド:
curl https://dv-g3b-noct-emudhra.we-have-a-problem.com/ curl https://dv-g3b-aaa-noct-emudhra.we-have-a-problem.com/
- 判定基準: 証明書のエラーが発生した場合、その
は保護されていることを意味します。curl
Apple が今後行うべきことについて
Apple はすでに、Safari や Apple 自家的のネットワークフレームワーク上で構築されているアプリケーションに対し、保護措置を講じています。しかし、macOS を開発する開発者コミュニティへの対応としては、速やかに修正パッチの提供を行う必要があります。
具体的な対策例:
から影響を受けているルート認証局(CA)を削除する方法など。/etc/ssl/cert.pem
当面の間、開発者が取るべきことについて
手動での回避策
- 影響を受けたルート認証局は、手作業で削除することも可能です。
- 参考資料: メインページにある macOS 向けの回避策手順書にて、具体的な作業手順が説明されています。
アップデート後の注意点
- Apple のガイドラインによれば、macOS のアップデートによって修正措置が再設定されることがあり得るため注意が必要です。
- Apple から正式な修正パッチが出るまで、すべてのアップデート実施後には、以下のステップを必ず実行してください。
- 確認ステップの実行
- 回避策の再実行
セキュリティチームへの提言
- CI(継続的インテグレーション)システムやその他のビルドインフラにおいて、macOS をランナーとして使用していないか点検してください。
- サプライチェーン上のリスクを評価することも検討すべきです。