ホームページ > ウェブフロントエンド > jsチュートリアル > 明示的な自動化がなくても、Web サイトは Selenium を検出できますか?

明示的な自動化がなくても、Web サイトは Selenium を検出できますか?

Barbara Streisand
リリース: 2024-12-19 17:29:08
オリジナル
256 人が閲覧しました

Can Websites Detect Selenium Even Without Explicit Automation?

Selenium 検出技術の解読

自動化が関与していない場合でも、Web サイトは実際に Selenium の使用を検出できますか?ユーザーにとって、Selenium と Chrome は区別できないように見えるはずであるにもかかわらず、Web サーバーがどのようにして Selenium の存在を正確に特定するのか疑問を持つユーザーは、この永続的な問題に困惑しています。

結局のところ、ボット検出スクリプトは、Selenium の存在を明らかにする事前定義された JavaScript 変数を悪用していることが判明しました。面前。 「selenium」や「webdriver」などの名前が付けられたこれらの変数は、さまざまなブラウザ環境で証拠として機能します。

この検出を回避するために、開発者はさまざまな戦術を採用できます。独創的なアプローチの 1 つは、Chromedriver のソース コード、特に「getPageCache」関数を変更し、悪名高い「$cdc_」変数を無害な代替変数に置き換えることでした。この微妙な変更により、ボット ネットワークは Selenium の存在を特定できなくなりました。

この特定の方法以外にも、ボット ネットワークは Selenium の正体を明らかにするために一連の高度な技術を使用しています。彼らは、「ウィンドウ」オブジェクトであろうと「ドキュメント」オブジェクトであろうと、ブラウザ環境で疑わしい変数を探します。既知のパターンと照合することで、これらのアルゴリズムは、驚くべき精度で Selenium の存在を明らかにします。

これらのパターンの例は次のとおりです。

  • ウィンドウ変数: "_phantom"、"callSelenium" "、 "__webdriver_unwrapped"
  • ドキュメント変数: "__webdriver_evaluate", "document.documentElement.getAttribute("selenium")"

検出を回避するために、開発者は疑わしい変数の置換やサニタイズ、ブラウザの組み込みなどの対策Selenium のフットプリントを偽装する拡張機能。ボット ネットワークと Selenium ユーザーの間の戦いは進化を続けており、双方ともますます巧妙な検出と回避戦術を開発しています。

以上が明示的な自動化がなくても、Web サイトは Selenium を検出できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート