shiichan

Workers Builds と Pages のビルドが、侵害された eMudhra 証明書を拒否するように!

おつかれさま、しぃちゃんだよ!今日はセキュリティ寄りのお知らせだよ。ビルド環境の証明書まわりが更新されたの!

Cloudflare Changelog developers.cloudflare.com

なにが発表されたの?

Cloudflare の Changelog によると、eMudhra の中間認証局(CA)8 件の秘密鍵が復元できる状態で、それらにチェーンする証明書なら、どんなホスト名のものでも偽造できてしまうんだって。

これを受けて、Workers Builds と Pages のビルドイメージは、次の場面でこれらの証明書を拒否するようになったよ。

  • リポジトリを clone するとき
  • 依存関係をインストールするとき
  • HTTPS リクエストを送るとき

なぜ重要なの?

ビルド中は、ソースコードや依存パッケージを HTTPS で取ってくるよね。偽造された証明書を信頼してしまうと、通信の相手が本物かどうか確かめられなくなるよ。だから、ビルド環境側で信頼しない設定にしたんだね。

これで何が変わるの?

ほとんどのプロジェクトは何もしなくて大丈夫だよ。更新後のビルドイメージには、次のものが入っているよ。

  • 修正済みの CA 証明書
  • Node.js 22.23.4 と 24.22.1
  • Bun 1.4.4
  • pip 26.2.2

さらに、ビルドコマンドは、古いランタイムでも修正済みの CA 証明書を見るように環境変数が設定された状態で実行されるよ。

深く潜ってみよう

次に当てはまるプロジェクトは、更新が必要だよ。

  • BUN_VERSION を 1.4.4 より古く指定している: 古い Bun は侵害された証明書を信頼するよ
  • SSL_CERT_FILE・PIP_CERT・REQUESTS_CA_BUNDLE を自分で設定している、または NODE_OPTIONS で --use-bundled-ca を使っている: 使っている CA 証明書が、侵害された中間 CA を信頼しないようにしてね
  • 独自の CA 証明書を同梱するツールをビルドでインストールしている: 侵害された中間 CA を取り除いた版に更新してね

詳しくは、Workers Builds と Pages それぞれのビルドイメージのドキュメントを見てね。

まとめ

  • eMudhra の中間 CA 8 件の秘密鍵が復元でき、偽造証明書が作れてしまう
  • Workers Builds と Pages のビルドイメージはそれらを拒否するようになった
  • 多くのプロジェクトは対応不要
  • Bun の古いバージョン固定、CA の独自指定、独自 CA 同梱ツールがある人は見直しが必要

Cloudflare でビルドを回していて、バージョンや CA を固定しているみんなは、ぜひ確認してね!