Why not login to Qiita and try out its useful features?

We'll deliver articles that match you.

You can read useful information later.

94
63

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【Chrome】ServiceWorkerを今度こそ決定的かつ完全に消去する

Last updated at Posted at 2022-01-17

前、Chromeを使うなら、必ずServiceWorkersを無効化しようという記事を書いたのですが、あの方法はてんで全然ダメダメでした。
chrome://serviceworker-internalsには無用なServiceWorkerが増え続け、chrome://flags/からはServiceWorkerの削除設定が削除されました。

そんなわけで、今度こそServiceWorkerを決定的かつ完全に消し去りたいと思います。

といっても自力でどうこうしたわけではなく、全面的に他人の力を借りただけですが。

Reject Service Worker

Reject Service Workerをインストールする。
おわり。

かんたん!

作者はtoshiさんです。
ありがとうございます。

アドオンの技術的内容はServiceWorkerを無効化するという記事に書かれているのですが、ServiceWorkerを登録する関数を書き替えて登録できないようにしているみたいです。
なかなかのハック感。

既存のServiceWorkerを削除

Reject Service Workerは、今後のServiceWorkerの新規登録こそ止めてくれますが、それまでに登録されてしまったServiceWorkerはそのままであり消去されません。

削除する方法はふたつ。

まずは、Reject Service Workerが有効な状態で、ServiceWorkerが登録されたサイトを再度訪問すれば、そのタイミングで消えます。

もうひとつは、URLにchrome://serviceworker-internalsと入力し、ひたすらUnregisterを連打することです。

もしくはコメントで、一括削除する方法を @negabaro さんが紹介してくれていました。

$$('.unregister').forEach(b => b.click())

ホワイトリスト

ホワイトリストが用意されています。

このサイトだけはServiceWorkerを許可したい、といった場合は以下の手順で登録できます。

・許可したいサイト上で拡張機能からReject Service Workerを選択する。
・するとAdd to Whitelistというボタンが出るので選択する。

01.png

とても簡単ですね。

まあ、そもそもデフォルトがホワイトリストであるべきで、勝手にインストールしてくる現状が異常なわけですが。

ソースコードを確認

せっかくServiceWorkerを消し去ることに成功したとはいえ、実はアドオンそものがマルウェアでしたみたいなことになったら台無しですね。
そんなわけでReject Service Workerが安全かを、実際にソースコードを見て確認してみましょう。

アドオンの位置は%LOCALAPPDATA%\Google\Chrome\User Data\Default\Extensions\falajmifjcihbmlokgomiklbfmgmnopdです。
Defaultはプロファイル名なので、環境によって異なる可能性があります。

幾つかファイルがありますが、中身はただのJavaScriptなので普通に読めます。
ソースコードはコメントを用意してくれているのでとても読みやすいです。

02.png

ソースコードを見るかぎりでは、何か怪しいことをやっていたり、外部と通信しているような素振りは全くありませんでした。
そもそも作者自身がアドオンのソースコードを確認する方法を提供していますからね。
これで変なことをやっていたら自爆でしかない。

ということで、このアドオンは所有者が変わらないかぎりきっと安全であり続けるでしょう。

まとめ

Reject Service Worker導入前後で、インターネット体験には何一つ変化がありません。

94
63
3

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

@rana_kualu's pickup articles

rana_kualu

@rana_kualu

不労所得で生きたい。

Linked from these articles

Comments

hoogee
@hoogee(Taro Hoge)

ソースコード確認までされているのが流石です。権限強いですから怖いですよね

1
DaisukeDaisuke
@DaisukeDaisuke
(Edited)

Reject Service Workerは2023年11月17日時点ではまだManifest V2なのでこのまま更新されなければ2024年6月以降のChrome 127で自動的に無効化されます
2023年11月17日時点でManifest V3に対応しているのはNo Service Workerしかないです
(安全であるかどうかについては保証しません)
Reject Service Workerと同様の動作にするにはNo Service Workerの設定で「delete」と「disable」にチェック入れる必要があります
少し使いましたがReject Service Workerと違ってYouTubeが恐ろしいほど不安定になります...

Manifest V3で広告ブロッカーが弱体化する事を考えると、firefoxに移行するのが正解かもしれません(Manifest V2をサポートし続けるわけじゃないけど...)

1
DaisukeDaisuke
@DaisukeDaisuke
(Edited)

Reject Service Workerについて、2024年1月12日辺りにmanifest v3対応したみたいです
ソースコード読んでたらgithubリポジトリを見つけたので掲載します
https://github.com/k08045kk/RejectServiceWorker

1

Let's comment your feelings that are more than good

94
63

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Login to continue?

Login or Sign up with social account

Login or Sign up with your email address