グーグル、「reCAPTCHA」の脆弱性を修正

Charlie Osborne (Special to ZDNET.com) 翻訳校正: 編集部2018年05月31日 12時45分

 Googleは、攻撃者が「reCAPTCHA」を回避するために利用できる脆弱性を修正した。

 チューリングテストを基にしたreCAPTCHAは、パズルや論理クイズを利用する。訪問者は出された問題に正解することで、ボットではないことを証明する。クッキーに基づいて訪問者を信頼する場合もある。

 reCAPTCHAは完璧なものではなく、回避できる場合もある。セキュリティ研究者のAndres Riancho氏によると、毎回reCAPTCHAが回避されてしまうような脆弱性が存在するという。

 Riancho氏は米国時間5月28日付のブログで、回避するためには、reCAPTCHAを利用するウェブアプリケーションが、安全でないやり方で「/recaptcha/api/siteverify」へのリクエストを作成する必要があると述べている。

 reCAPTCHAを利用するウェブアプリケーションが訪問者に問題を出す際、GoogleはJavaScriptコードを通じて画像セットを提供する。訪問者が画像ベースのパズルを解くと、HTTPリクエストが送信される。

 ウェブアプリケーションは、「secret」パラメータと「reCAPTCHA-generated-hash」パラメータを通じて認証を受け、訪問者の答えが正しいかどうかを問い合わせる。この答えは、GoogleのreCAPTCHA APIによって検証される。

 だが、HTTPパラメータ汚染がある(同名のHTTPパラメータを複数送信する)と、回避のエクスプロイトが作成されてしまう。

 「アプリケーションがHTTPパラメータ汚染に対して脆弱で、secretパラメータの前にresponseパラメータを加えてURLが作成されれば、攻撃者はreCAPTCHA認証を回避できる」(Riancho氏)

 この脆弱性は1月29日にGoogleに報告された。だが、Googleの対応はRiancho氏が期待したものではなく、「reCAPTCHAは意図されたとおりに機能している」と書かれた説明のページを示されただけだった。

 Riancho氏の発見は、reCAPTCHA認証を毎回回避できるエクスプロイトに基づいていたので、脆弱性に関する報告を再度読むよう、同氏はGoogleに求めた。

 1月31日までに、Googleはさらなる情報を請求し、24時間後にやっと脆弱性を確認した。

 2月15日、GoogleはRiancho氏に500ドルの報奨金を贈った。この500ドルは慈善団体に寄付され、脆弱性を修正するパッチが3月25日に公開された。

 脆弱性は、GoogleがreCAPTCHAのAPIを直す形で修正されたため、個々のウェブアプリケーションにフィックスを適用したりする必要はない。

この記事は海外CBS Interactive発の記事を朝日インタラクティブが日本向けに編集したものです。

CNET Japanの記事を毎朝メールでまとめ読み(無料)

-PR-企画特集

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]