ディスカッション (11件)
LinkedInがブラウザ上の拡張機能を6,278個もスキャンし、その結果を暗号化してすべてのリクエストに含めているという衝撃的な調査結果が報告されました。プライバシー面で懸念の声が上がっています。
LinkedInはサイトにアクセスするたびに、ハードコードされた6,278個ものChrome拡張機能リストに対してスキャンを行ってる。検知結果は暗号化されたテレメトリとしてパッケージ化されて、その後のセッションのAPIリクエストにHTTPヘッダーとして注入される仕組み。このデータを使えば、宗教的信条や所得階層、転職意欲なんかまで特定できちゃうんだよね。自分で検証して実装も追跡したから、技術的な詳細は記事に書いてあるよ。
「刑事捜査が始まったことは間違いのない事実だ」ってことか。結構なことだね。こういう企業は、石を投げられても文句言えないし、もっとひどい目に遭ってもおかしくない。
みんな、もし職場でこんな実装を求められたらどうする?「拒否して解雇される」か、「従順に従って仕事を続ける」か。実務家として、テレメトリと監視の境界線をどこに引くべきなんだろうね?
なんでChromeが勝手なWebサイトに、自分がインストールしてる拡張機能の情報を教えてるのさ?
これってハルシネーション?どこをどう探してもこの引用が見つからないんだけど。
browsergateによると、Milinda Lakkamが宣誓供述で「LinkedInは特定の拡張機能を入れているユーザーに対して措置を講じた」と認めたらしい。
ソース元から一番核心に近い部分を見つけたよ。
「Chrome拡張機能は、manifest.jsonのweb_accessible_resourcesフィールドを通じて、内部ファイルをWebページに公開できる。拡張機能がインストールされていてリソースが公開されている場合、chrome-extension://{id}/{file}へのfetch()リクエストは成功する。逆にインストールされていない場合、Chromeはリクエストをブロックしてpromiseは拒否されるんだ。
LinkedInはリストにある全ての拡張機能をこの方法でテストしているってわけ」
デバイスフィンガープリントとしては割と標準的なやり方だね。LinkedInはスクレイピング対策か何かでやってるんだろうけど、拡張機能のリストはユーザー識別のためのフィンガープリントとして十分なエントロピーがあるからね。
LinkedInの検知を回避するコツを一つ教えるよ。
LinkedInの検知の大半は、chrome-extension://{extension_id}/{file}というURLで既知の拡張機能リソースを探すやり方だ。Chromeストアから入れた拡張機能は全ユーザー共通のextension_idを持つけど、自分でソースコードを展開して読み込めば、新しいextension_idが割り振られる。中身や機能は同じでもIDが別物だから、LinkedIn側からはクエリを投げようがないんだ。まあ、LinkedInが使っている別のタイプの検知は回避できないけど、これだけでも結構防げるはずだよ。自分は悪意あるアップデートを防ぐために、普段から拡張機能のソースコードをクローンして使ってるよ。
他のサイトでも見かけるAkamaiのボット対策とやってることは変わらないほど侵害的だよね。Akamaiなんてマウスの動きのデータだけで個人特定できるレベルだし。LinkedInだけが叩かれてるけど、状況はもっと深刻だと思う。
プライバシー侵害っていうだけでもひどいけど、特にイスラム教関連の拡張機能を探し出してるっていうのがね。Microsoftや欧米のテック業界で働く知り合いが多い自分としては、イスラム教徒をターゲットにすること自体、別に驚きもしないよ。