概要
デジタル フィンガープリンティングは、デバイスやブラウザの当下的の特征に基づいて、さまざまな Web サイトでユーザーを識別するために用される技術です。これらの特征 - 指紋パラメータには、さまざまなソフトウェア、ハードウェア (CPU、RAM、GPU、メディアデバイス - カメラ、マイク、スピーカー)、場所、タイムゾーン、IP、畫面サイズ/解像度、ブラウザ/OS 言語、ネットワーク、インターネットプロバイダーが含まれる場合があります。 -関連およびその他の防御力。
これらのパラメータを組み合わせると、ユーザーのオンライン アクティビティを追跡するために实用できる一意の識別子であるフィンガープリントが做成されます。指紋はオンライン セキュリティにおいて首要な役割を果たし、サービスによる一意のユーザーの識別と認証を可以にします。また、ユーザーがそのようなシステムを騙してオンラインで好友的秘密性を保つことも可以になります。ただし、指紋を工作できれば、数万、百余、あるいはそれ上面的の異なるアカウントを実行して、原有の本物のユーザーであるかのように振る舞うことができます。これはクールに聞こえるかもしれませんが、スパムや偽物をインターネット上に拡散し、不好行為を引き起こす可以性のあるボットの軍隊を做成できる可以性があるため、深刻印象な意思を持っています。
注:明らかに、ここでは「悪いこと」を行う方法については説明しません。常に注意を払い、「ダークサイド」から遠ざかり、違法行為を避ける必要があります。この記事はその背後にあるテクノロジーに関するものであるため、情報を賢明に使用してください。
これはこの分野の起初の (そしておそらく最後ではない) 記事なので、内容梗概のようなものになります。コンテンツはトピックの紹介を出具します。指紋を検出、収集、スプーフィングするためのツールや的办法は数多くあり、あなたの本当の身元や指紋をスプーフィングしているという事実(あなたが本物のユーザーではないことを预示します)を明らかにしたり隠したりするさまざまなパラメータやテクノロジーが多半あります。 )。
デジタル指紋のパラメータ
それらのいくつか、明白で単純な、またはよく知られているパラメータの例と、よりまれであまり知られていない、なりすましが難しいパラメータについて考えてみましょう。
- User-Agent:この文字列は、ユーザーのブラウザ、オペレーティング システム、およびデバイスに関する情報を提供します。
- IP:ユーザーのネットワークと地理的位置を明らかにします。サービスでは、セキュリティと悪意のあるアクティビティの防止のために IP アドレスを使用します。異なる IP から 1 つのアカウントを使用する場合、または同じ IP から多数の異なるアカウントを使用する場合、一部のサービスはこのアクティビティを (他のパラメーターと組み合わせて) 不審なものとみなして、ユーザーに対して一定レベルのボット保護を使用する可能性があります。これは、すでに使用されている IP、またはある種の禁止リスト (プロキシ) にある IP を使用した場合にもトリガーされる可能性があります。
- ブラウザのプラグインと拡張機能:インストールされているプラグインと拡張機能に関する情報を使用して、一意のフィンガープリントを作成できます。これは、ブラウザの追加機能に基づいてユーザーを識別するのに役立ちます。
- 画面の解像度と色深度:ユーザーが異なれば、表示特性も異なることがよくあります。
- タイムゾーンと言語の設定:これらはフィンガープリンティングの重要な要素です。たとえば、日本のタイムゾーン、ノルウェー語などのランダムな値がある場合、これは少し異常です。
- キャンバス:グラフィックス ハードウェアに関する情報を収集するために、ユーザーのブラウザーで非表示のグラフィックスをレンダリングすることが含まれます。ハードウェア情報を偽装すると、適切なキャンバス値を取得できなくなり、別の実際のハードウェアでレンダリングできなくなるため、非常に注意が必要です。
- WebGL フィンガープリンティング: 3D グラフィックス (ユーザーのデバイスに関する追加情報) をレンダリングする際に、ユーザーのグラフィックス ハードウェアの固有の機能と制限を利用します。
- フォント:ユーザーのシステムにインストールされているフォントのリストは、フィンガープリントパラメータとして使用できます。この情報には JavaScript を通じてアクセスできます。フォントのリストは現実的でなければなりません。たとえば、macOS では Win フォントを使用できない、または 1 つまたは 2 つのフォントしか使用できないなど、これは非常に疑わしい指標です。
- バッテリー ステータス API: Web サイトがデバイスのバッテリー レベルと充電ステータスを判断できるようにし、バッテリー属性の組み合わせをフィンガープリントに使用できます。
- オーディオ フィンガープリント: Web サイトは Web オーディオ API を使用して、デバイスのオーディオ処理特性を分析することによって固有のオーディオ フィンガープリントを生成できます。
- ハードウェアの同時実行性:この情報には、グラフィックス カード、ネットワーク アダプター、オペレーティング システムなど、デバイスのソフトウェアおよびハードウェア コンポーネントに関する詳細が含まれます。これにより、指紋の一意性が高まります。
- ネットワーク情報:この情報には、IP アドレス、ISP、DNS サーバーなどのネットワーク接続に関する詳細が含まれます。
- 開いているポートと使用されているポート:ユーザーによっては、特定のポートをリッスンするソフトウェアを使用している場合があります。これは、特定の場合に役立つ場合もあります。
シークレットで Web をナビゲートする
デジタル指紋の实际操作は困難な作業であり、検出を躲避するための事前事后のアプローチが需要です。自分の身元 (指紋) を隠したり、某人になりすますための戦略やツールはたくさんあります。
プライバシーを重視したブラウザを使用する
プライバシー設定が強化された Brave、Ghostery、Tor、Octo Browser、または Vivaldi などのプライバシー重視のブラウザを選択すると、般的なフィンガープリンティング手段に対する必然的な功击が得られます。これらのブラウザはユーザーのプライバシーを優先し、実際の指紋を隠すように設計された機能を組み込んでおり、アクティビティの追跡を困難にしています。たとえば、Tor ブラウザは隐私性の原則に基づいており、インターネット トラフィックを Tor ネットワーク経由でルーティングします。この戦略的なルーティングは、ボランティアが運営する一連のサーバーを介して接続をバウンスすることでユーザーの身元を不清瞭にし、オンライン预备会议の隐私性を高めます。
ブラウザ拡張機能
AdBlock、uBlock Origin、Privacy Badger、CanvasBlocker などのプライバシー中心站のブラウザ拡張機能は、追跡スクリプト、Cookie、フィンガープリンティングの試みに対する積極的な防御性行为となる更多可能性性があります。これらのツールはバックグラウンドで動作し、ユーザーの密名性を保護および維持します。
VPN とプロキシ
VPN またはプロキシ サービスを利用すると、ユーザーの実際の IP (場所、タイムゾーン、言語など) がマスクされ、インターネット トラフィックが密令化されるため、保護層がさらに追加されます。これは、指紋を変更するためだけでなく、より私聊性の高いオンライン プレゼンスとより高いセキュリティ レベルを供应するためにも利用されます。
指紋なりすましの背後にある動機
なぜを理解する
プライバシー:個人のプライバシーやデジタル監視の増大を懸念する個人は、執拗なオンライン追跡から身を守るために指紋を偽装することがよくあります。
地域制限:スプーフィング フィンガープリントは地域制限を回避するのに役立ち、ユーザーが特定の地域に制限されたコンテンツにアクセスできるようになります。ここでは、VPN およびプロキシ サービスが、ユーザーの ID を隠すだけでなく、地理的に異なる場所にあるサーバーへのアクセスを提供することにより、重要な役割を果たします。
広告:ターゲットを絞った広告やオンライン プロファイリングを避けることは、個人が自分のデジタル指紋を操作する説得力のある動機として機能します。一部のツールはサードパーティの追跡スクリプトと Cookie をブロックし、プロファイリング プロセスを中断する可能性があります。
デジタル分野、ボット検出、保護システムにおける戦略的ニーズ: Web スクレイピング、マルチアカウンティング、電子商取引、報奨金とエアドロップ、ボーナスハンティング、ソーシャル ネットワーク ボット、およびアフィリエイト マーケティングは、多くの場合、中規模企業の収入源または基盤となります。こうした活動に携わるデジタルエージェンシー、個人、インフルエンサーは、複雑なボット検出システムを通過するために指紋スプーフィングを必要とする場合があります。一部のサービスでは検出を回避し、正当なアクティビティに誤ってフラグが設定されたり制限されたりしないようにすることが重要になります (ただし、そのようなアクティビティやアカウントは実際には正当ではなく、正当であるふりをしていることがよくあります)。最も人気のあるツールには、Multilogin、X-Browser、Octo Browser、AdsPower、Incogniton、Scrapy、Surfsky、Web Scraper.io、ScrappingBee などがあります。
ユーザーの指紋の収集
JavaScript: Web サイトは (当然ですが) JS を使用してユーザーに関する詳細を収集し、包括的なデジタル ポートレートを構築します。これには、画面解像度、デバイスの向き、マウスの動き、キーストロークのダイナミクスなどを調査することが含まれます。洗練されたフィンガープリンティング スクリプトは、ブラウザとハードウェアの幅広い属性を列挙します。
Cookie とローカル ストレージ:永続的な Cookie とローカル ストレージに保存されたデータは、セッションおよびプラットフォーム全体でユーザーを追跡するために機能します。この手法には、ブラウザーの Cookie を活用したり、ユーザー追跡用に一意の識別子を保存したりすることが含まれます。目的に応じて、固有のフィンガープリントを持つ「空の」ブラウザが必要な場合、または特定の Cookie と同じフィンガープリントがあることを示すサービスを騙す必要がある場合を知る必要があります。
サードパーティ スクリプト:分析と広告用のサードパーティ スクリプトを組み込むと、収集された指紋に基づいて特定のユーザーのシステム動作を調整するためによく使用される目に見えないトラッカーが組み込まれます。前述のツールとアプローチを使用すると、そのようなスクリプトを選択的にブロックしたり騙したりして、必要な動作を実現できます。
オンラインでのアイデンティティを理解する
オンライン チェッカー: Panopticlick (EFF)、Pixelscan、deviceinfo.me、および BrowserLeaks は、ユーザー エージェント、キャンバス フィンガープリント、フォントなどのブラウザーのフィンガープリント パラメータを表示します。これらのチェッカーは、さまざまなブラウジングにおけるデジタル フィンガープリントの一意性と安定性についての洞察を提供します。セッション。
ブラウザ開発者ツール:ユーザーは、ネットワーク リクエスト、Cookie、その他のフィンガープリント パラメータを検査できるため、デジタル インプリントと、Web サイトがボットや固有の正規ユーザーを検出してフィンガープリントを収集する方法についての理解を深めることができます。ブラウザーの [ネットワーク] タブと [アプリケーション] タブを調べると、ブラウザー、Web サイト、およびサーバー間で交換されるデータをリアルタイムで表示できます。
ここでは、ブラウザーでユーザーの指紋に関する情報を取得する方法の例をいくつか示します。
navigator.geolocation.getCurrentPosition(function(position) { var userLocation = position.coords; });
navigator.mediaDevices.enumerateDevices() .then(function(devices) { var microphones = devices.filter(device => device.kind === 'audioinput'); });
navigator.mediaDevices.enumerateDevices() .then(function(devices) { var cameras = devices.filter(device => device.kind === 'videoinput'); });
navigator.mediaDevices.enumerateDevices() .then(function(devices) { var speakers = devices.filter(device => device.kind === 'audiooutput'); });
var audioContext = new (window.AudioContext || window.webkitAudioContext)(); var oscillator = audioContext.createOscillator(); var analyser = audioContext.createAnalyser(); oscillator.connect(analyser); analyser.connect(audioContext.destination);
var canvas = document.createElement('canvas'); var gl = canvas.getContext('webgl') || canvas.getContext('experimental-webgl'); var renderer = gl.getParameter(gl.RENDERER); console.log(renderer);
var fonts = []; var fontList = document.fonts.forEach(function(font) { fonts.push(font.family); }); console.log(fonts);
var canvas = document.createElement('canvas'); var context = canvas.getContext('2d'); var dataURL = canvas.toDataURL(); var canvasHash = MurmurHash3(dataURL); console.log(canvasHash);
function getCPUInfo() { return navigator.hardwareConcurrency || 0; } function getDeviceMemory() { return navigator.deviceMemory || 0; } var cpuInfo = getCPUInfo(); var deviceMemory = getDeviceMemory(); console.log(`CPU Cores: ${cpuInfo}`); console.log(`Device Memory (GB): ${deviceMemory}`);
ボット検出システム: 自動化に対する防御
このようなシステムの例をいくつか示します。
- Distil Networks:ボットの検出と軽減の世界的リーダーです。これは、正当な人間のユーザーが Web サイト、モバイル アプリ、API にアクセスしていることを確認するためのプロアクティブかつ正確な方法を提供します。ボットの検出: Distil Networks は、さまざまな技術を組み合わせてボットを検出します。カーソルの動き、クリック パターン、他の Web サイト全体の Web 閲覧パターンなど、さまざまな変数を調査します。これは、デバイスの指紋と Are You a Human テクノロジーを使用し、すべての訪問者を何百もの異なる特徴に照らしてチェックし、その行動に焦点を当てます。ブラウザから追加データをアクティブに取得して、デバイスを正確に識別します。ブラウザーリクエストが受信されると、Distil はヘッダーを調べて、訪問者が自分の身元について嘘をついていないかどうかを確認します。この一意の識別子を使用すると、ブラウザで Cookie を読み取ったり保存したりできない場合、クライアント IP アドレスが隠されている場合、または同じデバイス上の別のブラウザに切り替えた場合でも、個々のデバイスを完全または部分的に識別できます。機械学習を使用して、マウスのアクティビティやスクロールの生体認証パターンを検出し、ブラウザー、デバイス、その他の要素を調べて手がかりを探します。 Web ページから JS を実行する、単純または中程度の複雑さのボットを多数検出できます。リソース保護: Distil Networks は、Web スクレイピング、競合データ マイニング、アカウント乗っ取り、トランザクション詐欺、不正な脆弱性スキャン、スパム、クリック詐欺、サービス妨害、API の悪用を防ぎます。正規のユーザーに影響を与えることなく、悪意のあるトラフィックの 99.9% を自動的にブロックできます。また、Web サーバーと API サーバーをそれぞれ保護する Distil Bot Defense for Web および API も提供します。
- Imperva:指紋ベースの識別を統合して、正当なユーザーを潜在的な脅威から識別する包括的なサイバーセキュリティ プラットフォームです。 Imperva は、高度な動作分析と異常検出を利用して、IP レピュテーション、ユーザー エージェント、さまざまな指紋パラメータ、動作特性などの要素の組み合わせに基づいてプロファイルを構築します。これにより、システムはボット トラフィックを示す不審なアクティビティを検出し、潜在的な脅威を効果的に軽減できます。
- Akamai: 同社は、セキュリティ製品内に堅牢なボット検出メカニズムを組み込んでいる、著名なコンテンツ配信およびクラウド サービス プロバイダーです。 Akamai は、指紋ベースの検出、動作分析、機械学習を組み合わせて活用し、さまざまなボットを特定し、軽減します。 Akamai のグローバル ネットワークにより、リアルタイムの脅威インテリジェンスが可能になり、進化するボット戦術に対するプロアクティブな防御が可能になります。
- Cloudflare:これは、ボット検出に多面的なアプローチを採用する、広く使用されているコンテンツ配信ネットワークおよびセキュリティ サービスです。 Cloudflareは、IPレピュテーション、ユーザーエージェントの特性、行動パターンなどのパラメータを分析することで、人間のユーザーとボットを区別します。このプラットフォームは、脅威インテリジェンスとコミュニティ主導の洞察も利用して、新たなボットの脅威との戦いで優位に立っています。 CloudflareはJA3フィンガープリンティングを使用してSSL/TLSクライアントをプロファイリングし、潜在的なボットリクエストをブロックします。また、HTTP フィルタリングを使用してルールを適用し、HTTP 要求情報に基づいてトラフィックをルーティングします。データ フィンガープリンティングは、特定のファイルを識別し、データ損失を防ぐために使用されます。これらの技術は、実際のユーザーではないユーザーを検出するのに役立ちます。
ボット検出システムの役割:
これらはボット検出機能を強化する上で極めて必要な役割を果たします。サーバーを世纪中に戦略的に显卡配置することで、数学的な掌握とリアルタイムの脅威インテリジェンスを活用して、ボット トラフィックを効果的に既定して軽減できます。プラットフォームの WAF とボット マネージャーは、自動化された「ユーザー」に対する包扩的な防守に貢献します。
この進行中のいたちごっこの中で、ボット検出システムは進化を続け、高なテクノロジーを活用して指紋スプーフィング技術の先を行き続けています。セキュリティ プロバイダー、企業、およびより広範なオンライン コミュニティ間の連携は、自動化された脅威の戦術に対する功击において从未として极为重要ですが、ある暗示では、ユーザーのプライバシー、qq群匿名性、オンライン エクスペリエンスに対しても根据され、煩わしい広告や高なユーザー追跡ツールをもたらします。それは企業にとってのみ对身体有利であり、ユーザーにとっては对身体有利ではありません。ただし、プライバシー保護、指紋の隠蔽となりすまし、広告とトラッカーのブロック ツールも開発されており、最も洗練されたユーザー追跡システムさえも避嫌できます。
Web サイトの追加の検証手順
- 不審な動作:頻繁な変更やデータ ポイントの異常な組み合わせなど、指紋が疑わしいと思われる場合、Web サイトで追加の検証手順がトリガーされる場合があります。
- キャプチャ: Web サイトでは、身元を確認するためにユーザーにキャプチャ チャレンジを表示する場合があります。これには、パズルを解いたり、歪んだテキストを特定したりすることが含まれますが、これらのタスクは原始的なボットでは実行が困難です。
- モバイル認証: Web サイトは、固有の ID と現実世界の実体との間のより強力な接続を確立するために、ユーザーに携帯電話番号の認証を要求する場合があります。これは不正行為の防止に役立ちます。
- 本人確認:考え方は携帯電話と同じですが、身分証明書を提出する必要があります。
例:
Google は、鮮明で一貫した指紋を持つ新規ユーザーに対して追加の認証を要求しません。ユーザーの指紋が頻繁に変更される場合、または既知のボット (または単に Google ですでに知られている) によって使用される指紋に似ている場合、Google は携帯電話番号を要求するか、キャプチャの処理を要求することがあります。
金融ウェブサイトでは、取引の機密性を考慮して、より厳格な検証措置を実施することがよくあります。ユーザーに追加の個人情報の提供、安全なチャネルを介した本人確認、またはより複雑なキャプチャ チャレンジの通過を要求する場合があります。
意見: なりすましは隠すより良い
指紋を隠すとプライバシー、セキュリティ、オンラインの密名性が強化されますが、指紋を偽装して一直有の正值なユーザーに見せかけると、さらに大きな利点が得られます。群衆に溶け込み、検出放到ツールを検出するシステムからの疑问を避免することで、信頼性と信頼を維持できます。このアプローチにより、自己の正值なユーザーとして認識されるという利点を给予でき、追加の保護机制や障害に不畏する应该性を轻柔的限に抑えることができます。そして明らかに、実際のデータと個一个人情報の漏洩を防ぐのに役立ちます。
でも公開されています。