CAPTCHA(キャプチャ認証)をクリック詐欺や Bot が突破する方法
ジェフリー・エドワーズ
|サイバー犯罪 | 2022年11月15日
インターネットを利用していると、人間であると証明するように要求される場合があります。読みにくい文字を読んだり、信号機を識別したり、グリッドからバスを見つけたりして、人間か Bot かを識別するためのこのようなテストは、どんどんと複雑になってきています。
CAPTCHA(キャプチャ認証)とは、「Completely Automated Public Turing to tell Computers and Humans Apart(コンピュータと人間を区別する完全に自動化された公開チューリングテスト)」の略で 、何十年にもわたって Bot や不正トラフィックに対する防御の第一段階となってきました。しかし、長年使用されてきたということは、 Bot やハッカーが CAPTCHA を攻略するための時間がたくさんあったともいえます。。結果として、CAPTCHA の Bot 抑止効果は低下し、逆に人間にとってより煩雑で困難になってきています。
目次
- CAPTCHA とは
- CAPTCHA が使用される理由
- CAPTCHA の種類
- CAPTCHA によるユーザー体験への影響
- Bot が CAPTCHA を突破する方法
- Bot が CAPTCHA を突破するとどうなるか?
CAPTCHA とは
CAPTCHA とは、「Completely Automated Public Turing to tell Computers and Humans Apart(コンピュータと人間を区別する完全に自動化された公開チューリングテスト)」の頭文字を取ったものです。
CAPTCHA は、人間とプログラムを区別するためにオンラインで利用されるツールです。CAPTCHA には多くの認証方式があり、これらのテストの多くは、画像の内容を識別したり、歪んだ文字列を解読したりするなど、人間の感覚や認知力を利用した方法が中心です。人間にとってこれらのテストは、すぐに答えのわかる簡単なものですが、Bot にとっては難しいものです。
CAPTCHA は1990年代後半に登場し、現在では高機能の Bot も文字情報や画像を利用した CAPTCHA を突破することができるようになりました。その結果、最新の CAPTCHA は、Web サイトを保護するために、行動認識やフィンガープリンティングなどの技術を活用しています。
CAPTCHA が使用される理由
CAPTCHA は、 Bot を制限するためにあらゆる Web サイトで使用されています。CAPTCHA は広く普及しており、Google による CAPTCHA を利用したサービスである reCAPTCHA は3000万以上のWeb サイトで使用されています。CAPTCHA は通常、ダウンロードやアカウント作成フォーム、チケット販売システム、コメント欄など、ユーザーが Web サイトを利用する上でキーとなる箇所に設置されています。
CAPTCHA は、 Bot によるスパムコメントの書き込みや、チケット転売業者の買い占めによる価格の高騰、あるいは悪意のある Bot によるアカウント乗っ取り攻撃からビジネスを保護するために役立ちます。
>> 無料の不正トラフィック診断で、貴社のファネルにどれだけの Bot が侵入しているか確認しませんか?
CAPTCHA の種類
CAPTCHA には多くの認証方式があり、それぞれに長所と短所があります。以下は、一般的な CAPTCHA の種類です。
文字認証
文字認証方式の CAPTCHA は、最も幅広く利用されており、人間にとっても Bot にとっても解答が容易です。通常、文字認証方式の CAPTCHA は、歪んだ文字列をユーザーに提示し、ユーザーはそれを入力項目に入力することで、人間であることを証明します。
このような歪んだ文字画像の背景にある考え方は、プログラムがテキストとして認識するように訓練されたパターンを崩すことで、コンピューターが画像を「読み込む」方法を混乱させることです。言葉をカモフラージュするとも言えるかもしれません。
画像認識
画像認識方式の CAPTCHA もよく使用されており、ユーザーはタイル状の画像や、1枚の画像の特定の箇所を正しく識別することで人間であることを証明します。例えば「横断歩道のある画像をすべてクリック」、「スクールバスを含む画像をすべてクリック」などがあります。Bot にとって画像内の物体を検出することは非常に困難であり、 Bot ネットにそのような機能を追加することはほぼ不可能であるため、画像認識方式の CAPTCHA は Bot をブロックするのに有効です。しかし、画像認識方式は防御効果が高い一方で、実際のユーザーにとっても面倒でじれったいものであるという短所があり、カスタマージャーニーにおける摩擦やサイト離脱の原因になりかねません。
音声認証
音声認証方式の CAPTCHA は、短い音声ファイルをユーザーに聞かせて、内容のすべてまたは一部を入力するよう求めます。これは、特に文字認証方式の CAPTCHA と比較して時間がかかり、ページの読み込み時間に悪影響を与える可能性もありますが、 Bot 対策としてはかなり効果的です。
Google の reCAPTCHA と行動認証方式の CAPTCHA
人気の高い Google reCAPTCHA のような行動認証方式の CAPTCHA は、ユーザーが Web ページをどのように操作しているかを調べることにより、人間であるかどうかを判断します。典型的な例は、「私はロボットではありません」というチェックボックスで、マウスの動きを追跡してユーザーを評価します。reCAPTCHA がユーザーを人間だと判断した場合、シンプルなチェックボックスのテストが表示されますが、 Bot だと判断した場合は、より難しい画像認識方式のテストが表示されることがあります。
reCAPTCHA は、状況に応じて異なるテストを提供することで、CAPTCHA がユーザー体験に与える悪影響を軽減すると同時に、疑わしいユーザーに対して防御力の高い検証を提供することを目的としています。
CAPTCHA による
ユーザー体験への影響
CAPTCHA の利用は、一般的で単純な Bot から Web サイトを保護する上で有効です。しかし、CAPTCHA には、特に実際の人間のユーザーにどのような影響を与えるかという点でいくつかの大きな欠点もあります。
特に難しい CAPTCHA は、ユーザー体験を大きく損ないます。例えば、特定のオーディエンスにとって使用や理解が困難で、誤検出や、ページを離脱する割合が高くなる可能性があります。
CAPTCHA のモバイルユーザー体験への影響は特に大きくなっています。モバイルユーザーはデスクトップユーザーに比べ、テストが困難であると高い確率で Web サイトから離脱してしまいます。
Bot が CAPTCHA を突破する方法
CAPTCHA は、単純な Bot による Web コンテンツへのアクセスをブロックするのに有効ですが、万能ではありません。CAPTCHA が高度化するにつれ、 Bot や Bot ネットも高度化し、現在では、悪質業者が CAPTCHA を回避するために利用できる商用サービスさえ提供されています。以下に、チューリングテストを突破するために使用される方法のいくつかを紹介します。
光学式文字認識(OCR)
画像内の文字を認識し、機械で読める文字情報に変換する光学式文字認識(OCR)技術を使用すると、大きな歪みのない文字認証方式の CAPTCHA を容易に突破することができます。一度で突破できない場合、攻撃者はテキスト画像をフィルター処理して OCR の読みやすさを向上させるか、再度やり直したりします。
人工知能(AI)
OCR が失敗した場合、攻撃者はより高度な技術を利用する可能性があります。CNN(Convolutional Neural Network :畳み込みニューラルネットワーク)や RNN(Recurrent Neural Network :回帰型ニューラルネットワーク)などの機械学習モデルは、何千もの例で訓練することができるため、 Bot が複雑な CAPTCHA をより適切に認識できるようにすることができます。オープンソースの CAPTCHA は、攻撃者が実際の CAPTCHA のコードを使用して何千種類ものテストを行うことができるため、機械学習システムの訓練をさらに容易にしています。しかし、AI はコストや時間がかかるため、研究プロジェクトや CAPTCHA を突破するために販売されている特殊な API 以外では、CAPTCHA を突破するための機械学習の利用は広まっていないのが実情です。
ブラウザの拡張機能と API
Buster などのブラウザ拡張機能は、CAPTCHA 認証の煩わしさを軽減するためのツールとして販売されていますが、 Bot によって簡単に悪用されてしまいます。無害な API が悪用されることのある一例としては、Google の reCAPTCHA からダウンロードされた音声ファイルと Google 自身が提供する音声認識 API を組み合わせることで reCAPTCHA が突破されてしまうといったものがあります。
CAPTCHA サービスとクリックファーム
CAPTCHA の突破方法を独自に開発したくないハッカーのためには、CAPTCHA 突破サービスが驚くほど低価格で数多く提供されています。これらのCAPTCHA 突破サービスは、CAPTCHAを1000回解くごとに139ドルを請求する Death By Captcha のような高度な AI ツールを活用した API から、CAPTCHA を手動で突破するために大量の人間の作業者を雇用するクリックファームまで、多岐にわたります。これらの「CAPTCHA ファーム」は、クライアント Bot が CAPTCHA に遭遇したときにサービスを呼び出すことができるシンプルな API を活用し、作業員は CAPTCHA を突破して応答トークンを Bot に返し、 Bot はそれを入力して攻撃を続行するのです。
2Captcha などの大手ベンダーの価格は、1000 CAPTCHA あたり約0.77ドルで、24時間365日、数千人の作業者によるサービスがいつでも利用できるようになっています。
これらのサービスは、低機能の Bot を運用しつつ、必要な時だけCAPTCHA 突破サービスを利用するという選択肢をハッカーに与え、高度な Bot を運用するためのリソースやインフラが必要なくなるため、ハッキングのコスト削減という副次的効果を生んでいます。
Bot が CAPTCHA を突破すると
どうなるか?
では、 Bot が CAPTCHA を突破すると、何か起きるのでしょうか。答えは Bot ネットによって異なりますが、 Bot ネットが悪さをしていると考えて間違いないでしょう。以下は、 Bot によって実行される可能性のある攻撃の手段や被害の例です。
スパムコメントと クロスサイトスクリプティング(XSS)攻撃
コメント欄から Bot をブロックするための効果的な方法がなければ、疑わしいリンクを含んだスパムコメントが著しく増加することが予想されます。最悪の場合、 Bot がコメントを利用して、保存型または反射型の XSS 攻撃を行う可能性もあります。
スクレイピング攻撃
Bot が Web サイトのゲートウェイにアクセスしようとするもう一つの理由は、スクレイピング攻撃を行うためである可能性があります。Web スクレイパーとは、特定の Web サイトをスキャンして貴重な情報を盗み出すオートメーションスクリプトのことです。スクレイパーは、更新情報、コンテンツ、製品詳細、価格などをスキャンして盗み出すようにプログラムされています。
アカウント乗っ取り攻撃
攻撃者は、正規のアカウントにブルートフォース(総当り)方式でログインし、アクセスや操作を行おうとするかもしれません。このようなアカウント乗っ取りを実行するため、ダークウェブで購入した盗んだユーザー情報のリストを使用してログインしようとしたり(クレデンシャルスタッフィング)、ブルートフォース攻撃(クラッキング)を行ったりします。
リードジェネレーション詐欺
不正なパブリッシャーは、 Bot を利用してキャンペーンや Web サイトを操作し、偽の、もしくは盗み出したユーザーデータを使ってリードを生成し、ファネルに流入させます。これは、マーケティング予算が無駄になるだけでなく、顧客管理システム(CRM)のデータベースやセールスパイプラインを Bot で汚染させ、貴重な営業やマーケティングのためのリソースを浪費します。
新規アカウントの不正な作成
攻撃者は、マーケティングキャンペーンを悪用したり、不正な取引を行ったりするために、何百、何千もの新規ユーザーアカウントを作成することがあります。
リソースの枯渇
ユーザーは、Web サイトが高速で応答性が高いことを期待しています。しかし、 Bot や偽ユーザーがサイトに集中し、特定のプロセスに過度の負荷をかけると、サイトのパフォーマンスが低下し、遅れやタイムアウトを引き起こす可能性があります。サイトの速度を低下させる Bot の活動は、実際のユーザーにも大きな影響を及ぼします。ユーザーが不満を募らせると、サイトから離脱してしまう可能性があります。その結果、売上が減少し、コンバージョン率や顧客ロイヤリティを低下させてしまいます。
CHEQ の導入で Bot をブロック
CAPTCHA は Bot 対策において重要な役割を担っていますが、それだけでは不正なアクセスを防げません。
パイプラインの保護に真剣に取り組む企業は、Web サイトを様々な脅威から保護する Go-to-Market セキュリティの導入を検討するべき時期なのかもしれません。トラフィックの流入元が有料キャンペーン、オーガニック検索、ダイレクトであるかどうかに関わらず、不正トラフィックをリアルタイムで自動的に検出してブロックし、正確なデータ分析を実現するためには、Go-to-Market セキュリティは欠かせません。
CHEQ は、何千ものセキュリティチェックを活用して、Web サイトにおけるトラフィックが正当、疑わしい、または不正であるかをリアルタイムで判別し、当該トラフィックをブロックまたはリダイレクトするために適切な対応を行います。CHEQ がどのように悪意のある Bot を Web サイトから排除し、Go-to-Market 戦略を保護するか、今すぐ無料診断にてご確認ください。