もう CAPTCHA だけでは防ぎきれない!進化するBot 攻撃とウェブサイトを守るための最新対策 | CHEQ

template-wa.php

アーカイブ動画

--------------------------------

CAPTCHAは、ウェブサイトのセキュリティ対策として長らく利用されてきましたが、高度化するボットによってその有効性が低下しています。
悪意のある攻撃者たちは CAPTCHA のシステムを分析し、これを突破する手法を確立してきました。その結果、現在の CAPTCHA はボットの阻止効果が減少する一方で、正当なユーザーにとってはより使いづらいものとなっています。

最新の調査(英文)ではCAPTCHAを突破した攻撃者の割合が50%を超えるという衝撃的な結果も。

なぜCAPTCHAだけでは不十分なのでしょうか? その理由と、ウェブサイトを守るための新たな対策について詳しく解説します。

CAPTCHA の仕組みと限界

CAPTCHA は「Completely Automated Public Turing test to tell Computers and Humans Apart(コンピュータと人間を区別するための完全自動化された公開チューリングテスト)」の略称です。これ人間とコンピュータを区別するために、人間には簡単に解けるが、コンピュータには難しい問題を提示する仕組みです。例えば、歪んだ文字を読み取らせる、画像の中から特定のものを選択させるなど、様々な手法が用いられています。これにより、スパムコメントや不正ダウンロードなど、様々な不正アクセスからウェブサイトを保護することが可能となります。

CAPTCHA テストには複数の形式が存在します。最も一般的なのは、ボットが読み取ることができない画像をユーザーに提示する方式です。具体的には、歪んだ文字列や不鮮明な文字列の入力を求めたり、 OCR での認識が困難な画像の中から特定の対象を選択させたりする手法が採用されています。

このテストでは、ユーザーが表示された内容を指定のフィールドに正しく入力することで、保護されたウェブ領域へのアクセスが許可されます。単純なボットは不規則な文字を返すか、誤った画像を選択するため、人間との判別が容易に行えます。

一方、ディープラーニングの登場により、CAPTCHAの解読はますます容易になってきています。この対策として、reCAPTCHA や hCAPTCHA などの新しい CAPTCHA が開発され、より複雑なパズルを実装することで、進化するボットの能力への対抗を図っています。

CAPTCHA の活用状況と効果

CAPTCHA は、ボットからのアクセスを制限する必要のあるウェブサイトで幅広く活用されています。特に reCAPTCHA は 3,000 万以上のウェブサイトに導入されており、ダウンロードページ、アカウント作成フォーム、チケット予約システム、コメント欄など、ユーザーとの重要な接点に設置されています。

この CAPTCHA の導入によって、企業はスパムコメントの投稿、チケットの不正購入、アカウントの乗っ取りなど、悪意のあるボットによる様々な攻撃を防止することが可能となります。

CAPTCHA の種類

CAPTCHA には、テキストベース、画像ベース、音声ベースの 3 種類が存在します。多くの方は、これらすべてのタイプを利用した経験があるはずです。

テキストベースの CAPTCHA

text captcha

テキストベースの CAPTCHA は最も一般的な形式です。このタイプでは、歪められたテキストの内容を正確に識別することが求められます。実在する単語が使用される場合もありますが、形状、サイズ、大文字小文字、方向性などで意図的に歪められた意味のない文字列が使用されることもあります。

このように歪めた文字を使用する理由は、コンピュータが通常のテキストとして認識できるパターンを分断し、画像の読み取りを困難にすることにあります。なお、テキストベースの CAPTCHA で複数回失敗した場合は、画像 CAPTCHA など別の認証方法への切り替えが促されます。

画像ベースの CAPTCHA

picture captcha

画像認識ベースの CAPTCHA は、複数の画像セットまたは単一画像の一部を正しく識別することで認証を行います。例えば「横断歩道が含まれるタイルをすべて選択」や「スクールバスが含まれる画像をすべて選択」などの課題が提示されます。コンピュータは画像内のオブジェクト検出が不得意で、この機能の開発は困難なため、画像 CAPTCHA はボット対策として高い効果を発揮します。ただし、実際のユーザーにとっては操作が煩雑で、カスタマージャーニーの中断や離脱を引き起こす可能性があります。

特に、正解が不明確な場合は問題が発生することがあります。例えば、信号機が 2 つのグリッドにまたがっている場合、どのグリッドを選択すべきか判断が難しくなります。

ただし、更新ボタンで別の画像に切り替えることができ、また音声 CAPTCHA への切り替えも可能です。

音声ベースのCAPTCHA

audio captcha

音声 CAPTCHA は、短い録音を聞いて聞こえた単語を入力する方式です。ボットは録音内の背景ノイズから発声された文字を区別する音声認識が困難なため、効果的な認証方法となっています。ただし、テキストベースの CAPTCHA と比較して認証に時間がかかり、ユーザー体験やページ読み込み時間に影響を与える可能性があります。

進化型 CAPTCHA:reCAPTCHA と hCAPTCHA の特徴

ボットの高度化に伴い、CAPTCHA は単純なテストやパズルから、より複雑な機能を必要とするようになりました。その結果として、Google reCAPTCHA やその主要な競合である hCAPTCHA などの行動分析型 CAPTCHA が開発されています。

これらのツールは、ユーザーの識別情報とウェブページでの操作方法などの行動データを分析して、人間かどうかを判断します。具体的な例として、reCAPTCHA の「私はロボットではありません」チェックボックスでは、マウスの動きなどのパターンを追跡してユーザーを評価します。reCAPTCHA がユーザーを人間と判断した場合は単純なチェックボックステストを表示し、ボットの疑いがある場合はより難しい画像ベースのテストを表示します。

このように状況に応じて異なるテストを提供することで、正当なユーザー体験への負担を軽減しながら、不審なユーザーに対しては厳格な認証を実施することが可能となっています。

AI can be used to bypass captcha

ただし、これらのツールも高度なボットや CAPTCHA 解決サービスに対する脆弱性があり、独自の課題も存在します。

例えば、Google の reCAPTCHA はプライバシーの観点で問題を引き起こす可能性があります。reCAPTCHA は端末、ソフトウェア、行動に関する多くのデータを収集しており、その一部はセキュリティ以外の目的で利用される可能性があります。これはGoogleが広告企業でもあることが背景にあります。実際に 2024 年初頭、フランスのプライバシー委員会(CNIL)は、reCAPTCHA が GDPR のデータ共有規則に自動的に準拠しているとは言えず、ツールの読み込み前にユーザーの同意が必要だと判断しています。

一方、hCAPTCHA はユーザーデータへの依存度が低い反面、人間のユーザーに対してより複雑な課題を提示する傾向があります。そのため、ランディングページに大きな負荷をかけ、ユーザーにとって大きなストレス要因となる可能性があります。

CAPTCHA のユーザー体験への影響

CAPTCHA は単純なボットをウェブサイトから排除する手法として、明確な効果を発揮しています。その一方で、実際の人間のユーザーに与える影響という観点では、大きな課題も存在しています。

特に難易度の高い CAPTCHA は、ユーザー体験を大きく低下させる可能性があります。また、特定のユーザー層にとっては使用や理解が困難となり、その結果として誤検知率やページ離脱率の上昇につながることがあります。

この問題は、モバイルユーザーにおいて特に顕著です。モバイルユーザーは、デスクトップユーザーと比較して、CAPTCHA に遭遇した際のウェブサイト離脱率が明らかに高くなる傾向が確認されています。

CAPTCHAを回避するハッカーの手法

現在、ハッカーは通常の CAPTCHA を以前よりも簡単に回避できるようになっています。以下に、主な回避手法を説明します。

AIの活用

Adrain Rosebrock は著書『Deep Learning for Computer Vision with Python』で、E-ZPass New Yorkウェブサイトのキャプチャを突破する手法を解説しています。ソースコードへのアクセスがない状況で、数百枚のサンプル画像をダウンロードしてシステムを学習させ、その学習済みAIをシステムに適用する方法を採用しました。

オープンソースの CAPTCHA は理論上、突破が容易です。これは、ハッカーがソースコードを使用して機械学習システムを訓練し、難易度に関係なく CAPTCHA テストを回避できるためです。全ての問題パターンを把握していれば、誰でもテストに合格できる原理と同様です。

基本的なハッキング戦略

HackTricks によると、ハッカーは単純な CAPTCHA 回避方法を使用しています。ページのソースコードから CAPTCHA 解答を確認する方法(テキストの場合)や、同じ課題が出題された場合に過去の CAPTCHA 値を使用する方法などが含まれています。

その他の CAPTCHA 回避戦略

  • 画面上の文字を読み取るための光学文字認識(OCR)の使用
  • 使用されている画像の数を確認し、MD5 で検出
  • CAPTCHA パラメータを空で送信し、成功するか確認

ブラウザ拡張機能と API の悪用

Buster などのブラウザ CAPTCHA 拡張機能は、ユーザーの手間を省くツールとして販売されていますが、ボットによって容易に悪用される可能性があります。例えば、Google reCAPTCHA では音声ファイルのダウンロードが可能で、これをGoogle の音声認識 API(英文)で解読することができます。

CAPTCHA 解決サービスとクリックファームの利用

ハッカー向けに、低コストで CAPTCHA を回避できる多数のソリューションが提供されています。Death By Captcha のような高度なAIツールを活用する API は、1000 回の解決で 1.39ドル を請求します。また、大量の作業者を雇用して CAPTCHA を手動で解決するクリックファームも存在します。これらの「CAPTCHA ファーム」では、ボットが CAPTCHA に遭遇した際にサービスを呼び出し、作業者が CAPTCHA を解決してレスポンストークンを返送します。

2Captcha などの主要ベンダーは、1,000 回の Captcha あたり約 0.77 ドルで、24 時間 365 日サービスを提供しています。これらのサービスは、複雑なボットの計算リソース関連のインフラコストを削減できる利点もあります。

セキュリティバグの悪用

2018 年、セキュリティ研究者が Google の reCAPTCHA を回避できるバグを発見しました。reCAPTCHA を使用するウェブアプリケーションが特定の方法でリクエストを作成する必要がある箇所で、そのリクエストが安全でない状態になることがありました。このような状況では、攻撃者は毎回 reCAPTCHA を回避することが可能でした。(Andres Riancho(英文)

このバグは現在修正済みですが、攻撃者がバグや脆弱性を利用してサイトの CAPTCHA を回避する典型的な事例として参考になります。

CAPTCHA の突破によるリスク

個人のハッカーは、人間と同様の方法で CAPTCHA を入力して突破できます。しかし、ボットを使用した CAPTCHA 回避が可能になると、より深刻な問題が発生します。サーバーへの大量のリクエストによる負荷増大や、データの窃取などが可能となるためです。

スパムコメントの激増

効果的な CAPTCHA による保護が機能しなくなると、悪意のあるサービスや他のウェブサイトを宣伝するスパムコメントが急増します。コメントの承認制を導入していても、管理画面では数十から数百の無関係なコメントが殺到することになります。

分析データの正確性低下

ボットによるアクセスはウェブページのトラフィックを歪め、分析データの信頼性を損ないます。ハッカーが CAPTCHA を突破すると、コンバージョンが全くないトラフィックの急増や、カート放棄の増加など、原因不明の現象が発生する可能性があります。

EC サイトのセキュリティ低下

EC サイトでは、CAPTCHA の突破によってハッカーがユーザーアカウントにアクセスし、盗難カードでの購入や、その他の機密情報へのアクセスが可能となります。

データベースの脆弱性

ウェブサイトのログインに CAPTCHA を設定していない場合、早急な対応が必要です。ボットは脆弱なユーザーアカウントを乗っ取る可能性があり、オンラインデータベースへのアクセスや、その他のコンテンツに関する不正行為も可能となります。

ウェブリソースの消費

ボットがウェブサイトへのアクセスを獲得すると、大量の接続リクエストを送信してリソースを消費します。その結果、正当なユーザーのアクセスが遅延または不可能となり、ビジネスに深刻な影響を与える可能性があります。Digital 社の調査によると、ウェブサイトの読み込みに 3 秒以上かかる場合、53 %のユーザーが競合他社のサイトに移動するとされています。(Digital 調べ(英文))。

ボット対策の最新アプローチ

CHEQ Essentials の導入効果

CHEQ Essentials のボット対策(英文)は、ウェブサイトにセキュリティの新たな保護層を追加し、一般的な自動化トラフィックによるアクセスを防止します。このサービスは訪問者の活動からボット特有の兆候を検出し、不正なウェブサイトとの相互作用をブロックする機能を提供します。

そのため、ボットが CAPTCHA を突破した場合でも、このボット対策ソリューションが検知してウェブサイトから排除することで、正当な顧客のみがアクセスできる環境を維持することが可能です。

まとめ

ハッカーの巧妙な手口に翻弄されるウェブサイト。CAPTCHAだけではもう安心できません。

近年、ハッカーによるボット攻撃はますます巧妙化し、従来のCAPTCHAだけではウェブサイトを十分に保護できなくなってきました。自動化プログラムによるCAPTCHA回避や、マーケティングチャネルやフォームへの不正な介入など、その手口は多岐にわたります。

このような状況下で、ウェブサイトのセキュリティ対策は喫緊の課題となっています。

CHEQ Essentialsが提供する、革新的なボット対策

CHEQ Essentialsは、このような高度化するボット攻撃に対して、効果的な対策を提供します。

  • CAPTCHA回避を徹底阻止: 自動化プログラムによるCAPTCHAの回避を巧みに防ぎ、不正アクセスを未然に防ぎます。
  • マーケティングチャネルの保護: マーケティングキャンペーンやフォームへの不正な干渉を検知し、データの精度を向上させます。

WordPressサイト向けに特化した「Bot Zapping」機能

現在、CHEQ Essentialsの「Bot Zapping」機能は、WordPressサイトでご利用いただけます。この機能により、WordPressサイトを標的としたボット攻撃からサイトを保護し、セキュリティレベルを大幅に向上させることができます。

まとめ

ウェブサイトのセキュリティ対策は、もはやオプションではありません。進化するボット脅威からウェブサイトを守るために、CHEQ Essentialsのような高度なソリューションの導入が不可欠です。

最新の記事

不正トラフィックに影響されない
Go-to-Market セキュリティを
今すぐ始めませんか?

今すぐスタート