情報科学屋さんを目指す人のメモ

方法・手順・解説を書き残すブログ。私と同じことを繰り返さずに済むように。

任意のTwitterアカウントの登録メールアドレス(伏せ字含)を表示させる攻撃が急増中(対策設定有り)

Twitter (97) セキュリティ (62) フィッシング (1)

現在、突然「Twitterログインリンク」というメールが届くケースが急増しています。この原因について調査したところ、何者かがTwitterアカウントへログインを試み、とあるTwitterの機能を悪用して、登録メールアドレスの情報を取得している可能性が高いと考えられることがわかりました。この手法を使用して収集したメールアドレスリストに対し、今後集中的にTwitterアカウントの乗っ取りを目的としたフィッシングメールが送信される可能性などが考えられます。この件について仕組みを紹介するので、注意し、必要であれば対策を行ってください。

届くメール

現在、突然届くメールとして問題となっているのが、こちらです。

こんにちは ○○ さん

@○○ に安全にログインするために、
以下のボタンを使用してください。
[ログイン]
こちらから行えば安全にログインが完了します。

このメールは本物(password@twitter.com)であり、「ログイン」ボタンをクリックすると、本物のTwitterにログインできるのですが、そもそもどうしてこんなメールが届くのかが問題です。

メールが届く原因

このメールが届く状況を紹介します。

ログインに失敗する

まず、Twitterのログイン画面を開きます

そして、「Twitterのアカウント名(@の後ろ)」を入力して、「(でたらめな)パスワード」を入力し、ログインにわざと失敗します。
twitter-one-click-login-attack-login

すると、「ユーザー名とパスワードが一致していません」が表示されます。

この時点では、例のメールは届きません。これが一つポイントです。

1クリックログイン用のリンクを送信する

続いて、このエラー画面には「1クリックログイン用のリンクをメールで受け取る」ボタンが表示されているので、それをクリックします。
twitter-one-click-login-attack-login-error-page

メールアドレスの一部を取得

すると、いよいよ先ほどの「1クリックでログインできるメール」がそのアカウントの登録メールアドレス宛に送信されるのですが、問題はここからで、その送信先メールアドレスの先頭2文字と、@以降のドメイン名が表示されます。
twitter-one-click-login-attack-login-error-email

これで、メールアドレスの一部が獲得可能、というわけです

たしかに伏せ字を含みますが、これだけの情報でも、Twitterアカウントの乗っ取りを効率化する目的であれば、かなり大きな手がかりとなる可能性があります。

また、人によっては、このメールアドレスの情報(特に@以下)が漏れることが、大変な問題になる可能性が考えられます

そもそも@以降がバレるとやばい人も!

例えば、万が一ドメインが@○○.co.jpだった場合は、ステマしてる企業名がバレかねませんし、○○.ac.jpだとすれば、大学名がバレかねません。

実際に、自分のアカウントで実験しているので、本当にgmail.com同様に○○.co.jpなども表示されるか分かりませんが、かなり危険なので注意してください。

追記:gmail.comはなぜか表示されてしまっていますが、@以降も、「先頭1文字+ピリオドだけ表示でその他伏せ字」のようになるようです(コメントより)

注意したい悪用のシナリオ

この機能を悪用すると、Twitterアカウントの乗っとり攻撃を、効率化する手法が考えられます

考えられるその方法の一例は、次のとおりです。

メールアドレスの一部を取得

まず、Twitterに、攻撃対象の任意のTwitterアカウントを入力し、でたらめなパスワードを入力し、先ほどの手順で、メールアドレスの一部(ab*****@gmail.com)を取得します。

これを機械的に、そしてIP分散など、ブロックされないような形式で、大量に実行します。

これで、「Twitterアカウント名」と「ab****@gmail.com」のような組み合わせが大量に手に入ります。

メールアドレスリストを作成

そして、Twitterアカウント名の先頭2文字と、メールアドレスの先頭2文字が一致するものをピックアップします。

そして、その一致したメールアドレスについて、@より前をTwitterアカウント名に置き換えてしまい、「Twitterログイン名@gmail.com(例:abcdefg@gmail.com)」という、実際のメールアドレスに変換してしまいます。

フィッシングメールを送信

最後に、そのメールアドレス宛(○○@gmail.com)に、次のようなメールを送ります。

@○○さん、Twitter運営です。先ほど不正なアクセスが行われました。

対象となるユーザーは、先ほど「Twitterログインリンク」というメールが届いたユーザー様です。

不正なアクセスの対象となったユーザー様のパスワードをリセットしたので、<<このURL>>より、再ログインしてください。

フィッシングサイト→アカウント乗っ取りへ

こうして、偽物のTwitterログインページに飛ばして、そこにパスワードを入力させて、パスワードを盗み出し、その情報を使い、twitterへログインおよび乗っ取りを行います。

危険

以上のような、とてもシンプルで危険な悪用のシナリオが考えられます。

現在進行形でこのメールが多くのユーザーに届いているようなので、注意していく必要があります。

特に、単純にログインに失敗するだけでは送信されないメールなので、何者かがわざわざ失敗した後に1クリックログインリンクの送信作業まで行っていることになります。

そのため、メールアドレス情報を収集している可能性が高いと考えられます。

ちなみに、Twitterの日本語ヘルプアカウントは、ちょうど今朝、次の注意喚起Tweetをしています。。。。。

注意点

先ほど紹介したシンプルな手法の場合、攻撃対象が、Twitterユーザー名とメールアドレスの@より前が一致するユーザーのみとなりますが、初めから全Twitterユーザー名に対して送信するよりもぐっとターゲットを限定できますし、@より後ろのいろいろな可能性を考えること無く、gmailならgmailと、特定できてしまいます

そのため、フィッシングメール送信の効率化を図ることが可能です。

送信するメール自体にTwitterのユーザー名が含まれていることから、「Twitterのユーザー名と登録メールアドレスの組み合わせを知っている」という観点で、安心する要素があります。もちろんそれだけで決定的な判断基準になるとは思えませんが、事前に「Twitterログインリンク」という、不可解で謎なメールが届いている事実を悪用すれば、先ほどのようなメール本文で、ニセのTwitterログイン画面に効率よく誘導することが可能と考えられます

対策

バランスの良い対策として、このワンクリックログインメールの送信を禁止する設定があればよいのですが、ざっと見たところ見当たりません。

そのため最低限、このようなメールが届く危険性を把握する

特に、「Twitterログインリンク」が届いたら、攻撃されている可能性を想定することが大切です。

そして出来ることならば、Twitterのユーザー名と、メールアドレスを無関係なものとすることが好ましいです。

追記:対策(1クリックログインを無効化する)

Twitterの設定を開いて、セキュリティとプライバシーから、「コードでログイン」を「パスワード、ログインコードのどちらでもログイン可能にする」から、「ログインする際に常にパスワードを使用する」に変更します
twitter-one-click-login-attack-secure-settings

この設定にすると、ログインの失敗が「入力されたユーザー名またはパスワードに誤りがあります。ダブルクリックして再度お試しください」となるため、今回の問題をとりあえず回避できるようになります。
twitter-one-click-login-attack-login-error-secure

ただ、別にパスワードリセット機能でメアドバレする問題もあるので、そちらも対策してください。

取り急ぎ書きました

追加情報については、追記・編集していきます。

2015年6月24日23時現在でも、この機能は利用可能です。また、上記の実験は自身のアカウントで行っています。

情報提供

情報提供ありがとうございます!

コメント(2)

  1. co3k
    2015年6月25日(木) 14:10

    > そもそも@以降がバレるとやばい人も!
    >
    > 例えば、万が一ドメインが@○○.co.jpだった場合は、ステマしてる企業名がバレかねませんし、○○.ac.jpだとすれば、大学名がバレかねません。
    >
    > 実際に、自分のアカウントで実験しているので、本当にgmail.com同様に○○.co.jpなども表示されるか分かりませんが、かなり危険なので注意してください。

    ということで試してみた結果、完全なドメイン名は表示されませんでした。
    https://twitter.com/co3k/status/613935640162373632

    ということでこのくだりについては訂正を強くオススメするとともに、未検証である旨をもっと強調するべきではないかと思います。

    https://twitter.com/did2memo/status/613734468386316288 のような根拠のない煽りツイートをするなどもってのほかです。

  2. 匿名
    2015年7月11日(土) 14:24

    このサイトをみて、送られてきたメールのリンク先は、公式からのものと判断致しました。
    それで、興味本位で自分のアカウント(メールアドレスのみ記入)して、パスワードをでたらめにして打ちこむ。その後、1クリックログイン用のリンクをメールで受け取る」ボタンが表示されているので、それをクリックしてみたところ、同様のメールが届きました。公式から届いたためメールからログインしてみましたところ私のアカウントではない別の方のアカウントにログインしているようです。これって大丈夫なのでしょうか?

新しいコメントを投稿