ITmedia NEWS > STUDIO >
ニュース
» 2019年11月11日 07時00分 公開

今さら聞けない「認証」のハナシ:認証の世界も「AI対AI」の戦いに? botを見破る技術「CAPTCHA」のハナシ (1/4)

認証について分かりやすく解説する連載。今回のテーマはbotを見破る技術である「CAPTCHA」。

[鳥羽信一,ITmedia]

 ほとんどの人が日常的に行っている、ログイン(サインイン)などの認証作業。認証で利用したパスワードが漏えいして第三者からの不正アクセスを受ける被害も多く、認証をめぐるセキュリティの問題は後を絶ちません。こうした課題を解決するには、サービス提供者が対策するだけでなく、サービスの利用者も正しい知識を持っておくことが必要でしょう。

 本連載では、認証の仕組みや課題、周辺の情報について、できるだけ分かりやすくお伝えしていきます。

連載:今さら聞けない「認証」のハナシ

専門用語が飛び交いがちなセキュリティの知識・話題について、「認証」関連分野を中心にできるだけ分かりやすく紹介します。

執筆は、業務用の「トークンレス・ワンタイムパスワード」認証システム「PassLogic」や、一般向けにパスワード管理アプリ「PassClip」を提供する認証セキュリティ専門企業、パスロジの鳥羽信一氏。

(編集:村上万純)

 前回までの記事で、本人を特定するために使われる認証の三要素(知識・所有物・生体)を用いた認証方式について、一通り紹介しました。今回からは、不正アクセスを防ぐのに役立つ認証関連の技術を紹介していきます。

 会員制サービスの登録時などに、不自然な線や模様で隠されたり、ゆがんでいたりする文字の画像を見たことはありませんか。そうした読みにくい文字を判読してフォームに入力するという一連の手続きは「CAPTCHA」と呼ばれ、不正アクセスを防ぐ目的で使われています。

 今回は、CAPTCHAの基本的な知識と現状について紹介します。本記事の執筆に当たり、CAPTCHA製品を展開するCapyの松本悦宜さん(情報セキュリティ担当エンジニア)に話を伺い、参考にさせていただきました。

CAPTCHAは何のためにある?

 CAPTCHAは、コンピュータプログラムによる自動操作(いわゆるbot)によるサービス利用を防ぐための技術です。「画像で作られたゆがんだ文字は、人間には判読できるがbotには判読できない。なので、正しく入力できた場合は人間で、正しく入力できない場合はbotである」という論理が前提となっています。

 CAPTCHAはどういった所で使われているのでしょうか。例えば、サービスへのログインページがあります。ブルートフォースアタック、リバースブルートフォースアタック(※1)、パスワードリスト攻撃など、botが手当たり次第にログインを試すのを防ぐためです。

※1:リバースブルートフォースアタックは、パスワードを「password」「12345678」「qwertyui」など、よく使われていそうなものに固定して、いろいろなIDを試す不正ログインの手口。複数回のパスワード入力ミスでアクセスを制限するアカウントロックを回避できる。ブルートフォースアタックがIDを固定してパスワードを総当たりで試すことから、「リバース」と表現している

 サービスの会員登録ページでも使われています。botがむやみやたらに会員登録を行い、実体がないアカウントが本来想定していない方法や目的でサービスを利用することを防ぎます。新規登録できないと分かったIDは攻撃対象になる恐れがありますが、botに繰り返し登録させないことでこれも防げます。

 会員登録やログインをしなくても送信できる問い合わせ・アンケートフォームなどでは、botによるむやみな送信を防ぎます。サービスログイン後の、限定生産品や興行のチケット購入ページに採用されていることもあります。こうしたページでは、転売目的の業者などがbotを利用して、人間では到底不可能な頻度で購入を試みることを防いでくれます。

 上記のケースでは、bot利用者はアカウントを正規の方法で作成・ログインしているため、「不正アクセス」ではありません。ただし、botを利用して購入することを、利用規約などで禁止しているサービスはあります(※2)。

※2:「チケットぴあ」の利用規約では、「第12条:(禁止事項)」において、botの利用を禁止している。興行チケットの場合は「チケット不正転売禁止法」で「本来の販売価格以上の価格で、業として行う有償譲渡」を禁じていて、「興行主等が、興行入場券の適正な流通が確保されるよう必要な措置を講ずる努力義務」がある。

 昨今のスマートフォンゲームでは、最初にもらえるアイテムがランダムで決まる場合に、望むものがもらえるまで何度もゲームをやり直す「リセマラ」(リセットマラソン)と呼ばれるプレイ方法があります。このリセマラをbotが自動的に行うのを防ぐためにCAPTCHAを使うケースもあります。

       1|2|3|4 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.