MobsterWorldのTwitter上での宣伝に見るOAuthの課題

昨夜から今朝にかけて、TwitterでMobsterWorldというゲームの招待がDMで送られてきた。あまり普段DMでやりとりをするような人からではなかったので、ほうっておいたのだが、招待に応じると、自分のTwitterアカウントを使って、DMを送るようなものだったらしい。詳しくは以下のITmediaの記事を参照。

TwitterでスパムDMが出回っている。DMに書かれたURLのページでボタンをクリックすると、同じDMをフォロワーに送り付けるという仕組み。

ITmedia: TwitterでスパムDM出回るフォロワーに自動でDM送りつけ

これは、OAuthを利用して、正規の手続きを経て、Twitterのアカウントを利用しているものだ。詳しくは、以下のまちゅダイアリーを参照。

これはウイルスや脆弱性じゃなくて、OAuthという仕組みを見事に悪用している。 OAuth詐欺とでも言えばいいのか。

<中略>

スパムDMの話に戻る。 先ほどの Mobster World サイトのボタンは、実は OAuth 要求を Twitter に送るためのボタンになってる。 なので、Twitterのサイトでは、「Mobster World にあなたの Twitter アカウントの権限を与えますか?」というメッセージを表示している。 ここで、「ALLOW(与えるよー)」ボタンを押すと、スパムサイト (Mobster World) にアカウント権限を与えてしまうことになり、このサイトがユーザの代わりに勝手にDMを送れるようになってしまうという訳。

まちゅダイアリー: OAuthを悪用したTwitter DMスパムが登場

ちょっと、これについてだらだらと考えたので、だらだらのままで申し訳ないけど、ここに書きとめておく。

Twitterでもつぶやいたんだけど、これはスパムではあるけれど、OAuthのOpt-in画面を読まずに、Allowをクリックしたのが原因だ。MobsterWorld側はちゃんと"access and update your data on Twitter"すると書かれている。まさか、これで自分のアカウントを使ってDMを送られるとは思わないかもしれない。もしちゃんと聞かれたとしたら、見たことも聞いたこともない会社に"access and update your data on Twitter"を許すだろうか?

「あなたのTwitterのデータにアクセスして更新したりしても良いですか?」
[2010年8月4日更新]TwitterでのUpdateは更新もしくは投稿の意味がある。

このきちんとOpt-inの形はとっているが、多くのユーザーが気づかないということを利用し、それを悪用するというのは、AdWareの時代からよくあるものだ。利用規約の中にきちんと広告を仕込むことやプライバシー情報を取得することが書かれていたり、Opt-inのチェックボックスが既定でチェックされていたり、広告のOpt-inであることがわかりにくくなっていたり。対策ソフトウェアが出回ったり、アンチウィルスソフトウェアで対策されるようになって、この種のソフトウェアの認知は高まり、被害は一時に比べて少なくなってきていると思われる。Twitterではまだこの種の対策がきちんと行われていないのと、個人のリテラシーがそこまで高くないことが図らずも証明されたようだ。

興味があるのは、今回の件が、果たして英語のDMであり、英語のサイトであったたことがどれほど影響しているかだ。「よくわかんないから、とりあえずクリック!」というのがどれくらいあったか。英語圏と日本語圏のコンバージョンの比較には興味がある。

@takoratta そうですね。コミュニケーションの中に入り込むのが口コミのミソですからね。しかしOAuthの認証画面は英語だから日本人がとりあえずAllowしがちかと思ったんですが、英語しゃべっている人たちのコンバージョンは日本人と有為な差が出るんですかね?

http://twitter.com/nseki/status/3078011551

考えてみると、今回のMobsterWorldのDMはよく考えられている。

OAuthでTwitterアカウントへのアクセス権を得たとしても、普通にTweetsをするのではなく、DMを使ったところが賢い。Tweetsの場合は、TLに埋もれてしまう可能性が高い。DMだと、埋もれる可能性は低いし、知人がわざわざDMで自分だけに送ってきたというプレミア感が高い。

@takoratta 上手いなぁと思うのは「access and update your data on Twitter」でDMが行くとは思わせないというトコですねぇ。確かに今のついったーのDはUpdate your dataでしかないので。

http://twitter.com/yasuyukima/status/3077969769

.@yasuyukima 確かに。OAuthでアクセス権を得た後に、Tweetsでも良いのに、DMにしたところがうまいですね。TweetsだとTLに埋もれてしまう可能性が高いし、

http://twitter.com/takoratta/status/3078040197

DMだと、「あなただけをご招待」と言われた感じや、「わざわざXXXさんがDMで送ってきたくらいだから」というプレミア感もありますね。

http://twitter.com/takoratta/status/3078045192

それにしても、http://www.playmobsterworld.com/account/ にアクセスしてみると、"Click here to play!"しかなく、それをクリックすると、いきなりTwitterにOAuthでのアクセスを求める許可画面だ。多分、今回、Acceptまでやってしまった人は、このサイトをアクセスすることさえしなかったんだろうなぁ。OAuthの許可画面で、アプリケーションのアイコンをクリックするだけでも、このサイトにナビゲートされて、怪しさ満載加減がわかっただろうに。

ちなみに、TwitterにOAuthでアクセスしているアプリケーションを把握するには、Twitter.comで[設定]から[このユーザーに対する操作]を見ると良い。直接のURLはhttp://twitter.com/account/connectionsだ。

TwitterOAuth

怪しい/許可した覚えのない/もう使っていないアプリケーションがここに表示されていたら、「許可を取り消す」をクリックして許可を取り消すと良い。

さらに、ちなみに、TwitterにOAuthでアクセスするアプリケーションのアクセス権は"Read Only"か"Read & Write"の2レベル。Read & Writeを持ったアプリケーションがどこまでのことを行うかの規定はない。

TwitterOAuthRegistration

私はtwitterfeedとFriendFeedに私のアカウントへのアクセス権を与えているが、これらは以下のプライバシーポリシーに書かれている範囲で私のアカウントを利用する。

TwitterはOAuthでアクセスするアプリケーションすべてにプライバシーポリシーを用意させ、OAuthの許可画面でそれを表示させるようにしたらどうだろうか。

それにしても、皮肉な形でソーシャルグラフを使った口コミ効果が実証された。

[更新: 13:40 on 8/2]そもそもOAuthの許可画面が日本語になっていないのも問題ではという指摘があった。まさしくその通り。UIの翻訳って、セキュリティなどに絡む部分から先に対応すべきだね。