36
10

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Polyfill.ioを放置したサイトで不審なダイアログが表示されている件

36
Posted at

この記事は筆者のブログに投稿した記事をQiita向けに再構成したものです。

2024年にサプライチェーン攻撃に使われたpolyfill.ioを放置していたWebサイトで現在、polyfill.ioのユーザー名とパスワードの入力を求める不審なダイアログが表示されるようになっています。

一部サイトでpolyfill.ioのログイン画面が表示されている

現在、一部のWebサイトを開いた際に次のようなダイアログが表示されるようになっています。なお、具体的な文言は使用しているブラウザーによって異なります。

  • https://polyfill.ioにはユーザー名とパスワードが必要です。
  • ログイン https://polyfill.io
  • https://polyfill.ioでは認証が必要となります
  • https://polyfill.io is requesting your username and password.
  • このサイトがログインすることを求めています。警告:あなたのログイン情報はpolyfill.ioと共有されます。この共有は現在訪れているウェブサイトだけとは限りません。

polyfill.ioの認証画面が表示されているようすのスクリーンショット
Webサイトに表示されているダイアログの例

これらのダイアログは、ブラウザーが表示しているHTTP認証(いわゆるベーシック認証)の画面です。

今回一部のWebサイトで表示されるようになっているpolyfill.ioは、2024年に大規模なサプライチェーン攻撃(サイバー攻撃)に利用されたもので、polyfill.ioを削除していないサイトに今回のようなダイアログが表示されるようになっています。

筆者が確認した範囲では、三井ショッピングパーク系列の各施設のWebサイトとオートバックス公式通販サイトでこのダイアログが表示されていました。また、音声合成ソフト「VoiSona」のWebサイトでもダイアログが表示されていたようです。

いずれのWebサイトも現在は修正済みですが、ほかにも多くのWebサイトで表示されており、修正されていないWebサイトもあります。

polyfill.ioが復活した可能性

今回のようなダイアログが表示されている原因は、開いたWebサイトが外部スクリプトとしてpolyfill.ioを読み込んでいることです。

polyfill.ioは、古いブラウザーでも最新の機能を使えるようにするためのポリフィルを提供していましたが、2024年に中国企業に買収されマルウェア化し、大規模なサプライチェーン攻撃に利用された過去があります。

2024年6月25日、polyfill.ioの新しい中国系のオーナーがソースコードを変更し、polyfill.ioを読み込んでいるWebサイトを通じて世界中のモバイル端末にマルウェアを注入しました。

このマルウェアは検知されにくいように構築されており、被害に遭った一部のユーザーを詐欺サイトにリダイレクトしていたとされています。

CDNサービスを提供するAkamaiのレポートによれば2024年当時、polyfill.ioを読み込んでいた10万件以上のWebサイトがサプライチェーン攻撃にさらされたとのことです。

CDNを提供する別の企業のCloudflareによると、この攻撃は2024年6月8日から始まり、同年6月27日にCloudflareとNamecheapがドメインに介入・無効化したことで収束しました。

ところが筆者が確認したところ、日本時間2026年5月22日に当該ドメインが登録日を保ったままNamecheapからGoDaddyへ移管されており、polyfill.ioが復活した可能性があります。

`whois polyfill.io`の実行結果のスクリーンショット
polyfill.ioのドメインの登録情報。2026年5月21日(日本時間では22日)に登録情報が更新されており、GoDaddyがレジストラーになっていることがわかる

Wayback Machineのアーカイブは、少なくとも5月23日から5月30日にわたってpolyfill.ioのWebサイトが復活していたことを示しており、差し止められたはずのpolyfill.ioのドメインがもとの所有者の手に戻った可能性があります。

なお、polyfill.ioのドメイン所有者の情報は非公開になっており、厳密にはサプライチェーン攻撃を実施していた攻撃者のもとにドメインが戻ったのか、ほかの悪意のある攻撃者の手にわたったのか、あるいは“善意の”第三者が取得したのかは不明です。

対応方法は?削除して終わりではない

もしWebサイトにpolyfill.ioのダイアログが表示されている場合は、すぐにpolyfill.ioの読み込みを削除してください。

ソースコード内で次のような文字列を検索するとよいでしょう。

  • polyfill.io
  • cdn.polyfill.io
  • polyfill.min.js

個人情報や機密情報が漏洩するリスクがあるため、すぐに削除できない場合はWebサイトを一時的に非公開にすることも検討するべきです。

polyfill.ioを削除することで一部の古いブラウザーでWebサイトを閲覧できなくなる可能性があることに注意してください。

しかし、そもそも現在のpolyfill.ioはポリフィルとしての機能を果たしておらず、polyfill.ioの削除で動かなくなるような環境では現在も動かない状態でしょうから、削除したとしてもほとんど問題は生じないと考えます。

どうしてもポリフィルが必要な場合は、Cloudflareのミラーなどの信頼できる配信元に置き換えてください。

- <!-- 削除対象の例 -->
- <script src="https://cdn.polyfill.io/v3/polyfill.min.js"></script>
+ <!-- 置き換え先の例 -->
+ <script src="https://cdnjs.cloudflare.com/polyfill/v3/polyfill.min.js"></script>

この記事を読んで上記のコードに置き換えようとしたあなたは注意が必要です。本当にこの記事は信頼できますか?上記のコードはCloudflareの正式なミラーですが、ネットで見かけた信頼できるかわからないコードをむやみにコピペするべきではありません。

また、polyfill.ioを削除したり置き換えたりしただけでは不十分であることに留意してください。

第一に、2024年にWebサイトの訪問者の一部を詐欺サイトに転送していた可能性があり、第二に今回のダイアログで個人情報や機密情報が漏洩した可能性があります。

2024年当時、polyfill.ioの問題はWeb業界でかなり大きく報じられていたことから、マルウェア化したあとに新規でWebサイトにpolyfill.ioを導入した可能性は低いと考えます。

そのため、今回影響を受けているWebサイトのほとんどは2024年以前からpolyfill.ioを読み込んでいた可能性が高く、2024年のサプライチェーン攻撃の際には訪問者の一部を詐欺サイトに転送していた可能性があります。

さらに、今回表示されているダイアログに顧客が個人情報やパスワードなどを入力してしまっている可能性があり、その場合はユーザーの情報が漏洩した可能性があります。

polyfill.ioをすぐに削除できない場合はWebサイトを非公開にするべき、と説明したのはこれが理由です。

入力した情報をpolyfill.io側が収集しているかはわかりませんが、収集していないという証拠もないため、入力した情報は漏洩しているものとして考えるべきでしょう。

したがって、polyfill.ioを削除するだけでなく情報漏洩案件として何らかの対応が必要になる場合があります。

加えて、polyfill.ioを2年近くにわたって放置していたようなWebサイトには、ほかにも脆弱性が存在している可能性があり、Webサイトの管理体制に問題があると考えます。

Webサイトのほかの箇所も併せて点検することを強くオススメします。

36
10
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
36
10

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?