開発

ボット検知を突破するステルスクロミウム「CloakBrowser」公開

ChromiumのC++ソースコードを直接改変し、あらゆるボット検知システムを回避するオープンソースブラウザ「CloakBrowser」が登場。PlaywrightやPuppeteerのドロップイン置換として利用可能だ。

4分で読める SINGULISM 編集チームが確認・編集

ボット検知を突破するステルスクロミウム「CloakBrowser」公開
Photo by Markus Spiske on Unsplash

C++ソースレベルでフィンガープリントを改変する新アプローチ

GitHub上に、従来のボット検知回避手法とは一線を画すオープンソースブラウザが公開された。CloakHQが開発した「CloakBrowser」は、ChromiumのC++ソースコードを直接修正してフィンガープリントを改変するステルスクロミウムだ。

従来の類似ツールがJavaScriptの注入や設定ファイルのパッチに頼っていたのに対し、CloakBrowserは49ものソースレベルのパッチを適用。Canvas、WebGL、オーディオ、フォント、GPU、スクリーン、WebRTC、ネットワークタイミングなど、ボット検知が参照する主要な指標を根本から改変している。

主要な検知システムをすべて通過

開発者によると、CloakBrowserはCloudflare Turnstile、reCAPTCHA v3、FingerprintJS、BrowserScanなど30以上の検知サイトでテストされ、すべてを通過したという。特にreCAPTCHA v3では0.9のスコアを記録し、人間と同等の判定を得ている。

また、humanize=Trueフラグを設定するだけで、人間らしいマウスカーブ、キーボードタイミング、スクロールパターンを再現。振動ベースの検知も回避できる設計となっている。

Playwright/Puppeteerのドロップイン置換として利用可能

開発者にとって使いやすい点は、PlaywrightやPuppeteerの既存コードをほぼ変更せずに利用できることだ。Pythonの場合、インポート文を1行変更するだけで移行できる。

# 変更前
from playwright.sync_api import sync_playwright

# 変更後
from cloakbrowser import launch

JavaScript(Node.js)環境でも同様に、PlaywrightやPuppeteer-coreとの組み合わせが可能だ。パッケージマネージャーを通じてインストールすれば、初回実行時にステルスクロミウムのバイナリ(約200MB)が自動ダウンロードされる。

ブラウザプロファイルマネージャーも同時公開

CloakBrowserと合わせて、自己ホスト型のブラウザプロファイルマネージャーも公開されている。これはMultiloginやGoLogin、AdsPowerのオープンソース代替として位置づけられ、固有のフィンガープリントとプロキシを持つブラウザプロファイルを作成・管理できる。

Dockerコンテナとして提供されており、noVNCを介してブラウザにアクセスする仕組みだ。

今後の動向に注目

CloakBrowserはMITライセンスで提供されており、サブスクリプションや利用制限なしに誰でも使用できる。自動アップデート機能も備えており、最新のステルスビルドを常に利用可能としている。

ボット検知技術とその回避技術のいたちごっこは今後も続くと見られ、CloakBrowserのようなC++ソースレベルでの改変アプローチが、この分野に新たな地平を開く可能性がある。


よくある質問

CloakBrowserは違法なツールですか?
CloakBrowser自体はオープンソースソフトウェアであり、MITライセンスで公開されています。ただし、利用目的によってはウェブサイトの利用規約に抵触する可能性があるため、各サイトのポリシーを確認し、適切に使用する必要があります。
既存のPlaywrightプロジェクトへの移行は難しいですか?
移行は比較的簡単です。Pythonの場合、インポート文を1行変更するだけで済み、残りのコードはそのまま動作します。JavaScriptでも同様に、launch関数のインポート元を変更するだけで対応可能です。
出典: GitHub Trending

コメント

← トップへ戻る