5 ポイント 投稿者 xguru 2020-04-04 | 1件のコメント | WhatsAppで共有

AdBlockerをブロックする Anti AdBlock ツール BlockAdBlock のコード分析

BABはローカルでおとり広告を作成し、それがブロックされるかを確認

さらに、BAB自体を削除できないように名前をランダムに変更

uBlock Originはevalに対するProxyを作成してBABを検知し、無力化

Braveブラウザはネットワーク層で広告スクリプトに対して0バイトの偽スクリプトを返し、BABが広告がブロックされたかどうかを検知できないようにする

BABはスクリプトブロックを回避するために、広告サイトの favicon を読む方式も試行

→ Brave はこれに対しても偽の1x1アイコンを返すことで対応

→ BABはfaviconのwidthをチェックすることで回避を試みる

1件のコメント

 
xguru 2020-04-04

まるで矛と盾の戦いのようですね。広告のブロックについてはさまざまな意見がありますが……

技術面では、ブロックする方式とそれを見破る方式の発展の両方がどちらも興味深いです。

こちらは詳しく見たことがなかったので、eval に対する proxy を作るのが面白いと思いました。