Chrome、シークレットモードを検知できる手法まだ残る
2019年8月17日 11:56
Anonymous Coward曰く、
7月にリリースされたChrome 76では、JavaScriptを使ってブラウザがシークレットモードで動作しているかどうか検出する手法に対する対策が導入された(過去記事)。しかし、この仕組みを回避する手法が導入されたという(CNET Japan、INTERNET Watch)。
シークレットモードで動作している場合、「FileSystem API」は利用できないことから、今まではこれを利用してシークレットモードかどうかの判定ができたという。しかし、Chrome 76ではシークレットモードでFileSystem APIを利用した場合、Chromeによって作られた仮想ファイルシステムがあたかも端末のファイルシステムのように振る舞うように変更されたため、FileSystem APIによる判定はできなくなった。
今回開発された手法は、「Quota Management API」を利用するというものだそうだ。具体的には、シークレットモードとそうでない場合ではテンポラリストレージの上限が異なることから、これえを使ってシークレットモードかどうかの判定ができるという。また、FileSystem APIの書き込み速度を測定することでも判断ができるそうだ。
シークレットモードの検出は、たとえば無料で閲覧できる記事数が制限されているようなサイトで使われているという。