Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Twitterのスパムアカウントを考察する [LTDD 01]

[LT駆動開発 01]のスライドです。

  • Login to see the comments

  • Be the first to like this

Twitterのスパムアカウントを考察する [LTDD 01]

  1. 1. Twitterのスパムアカウントを 考察する 2014/03/01 LTDD #01 ねむねむ @nemumupoyo
  2. 2. 自己紹介 • HN: ねむねむ • Twitter: @nemumupoyo • 情報系の学生です
  3. 3. Twitterスパムアカウントとは • ここ最近増えている、無差別フォローアカウント • リンク付きツイートを行い、そのリンクを踏む とアプリ認証ページへ飛ばされる • 間違えてアプリ認証をするとあんなことやこん なことをされる(後述)
  4. 4. スパムアカウントの生成目的 • アカウントそのものを売るため • アプリ認証をさせて情報を取得するため • アプリ認証でフォロワーを増やすため • 情報操作 #知らんけど • その他(トレンドねつ造、何らかの研究など)
  5. 5. アプリ認証するとどうなるか • 勝手にツイートされる • 勝手に知らない人をフォローされる • 勝手にDMを読まれたり送られたりする • 勝手にプロフィール画像・ユーザー名を変更される (́・ω・`)・ω・`) キャー  /  つ   \怖いー
  6. 6. という話は置いておいて
  7. 7. 本題
  8. 8. そんなに大量のアカウントを どのように生成しているのか?
  9. 9. 技術的に問題点がありそう • APIがアプリケーションごと停止されたら終わり なのでは? • 画像認証もあるのでは? • アカウント作成数に制限とかあるのでは?
  10. 10. 技術的に問題点がありそう • APIがアプリケーションごと停止されたら終わり なのでは? • 画像認証もあるのでは? • アカウント作成数に制限とかあるのでは?
  11. 11. クライアントを 確認してみました
  12. 12. クライアントを使わず Web・keitai WebなどWeb上から ツイートしている APIを経由せず公式のWebを使うことで アカウント全体の凍結を防ぐ
  13. 13. 技術的に問題点がありそう • APIがアプリケーションごと停止されたら終わり なのでは? • 画像認証もあるのでは? • アカウント作成数に制限とかあるのでは?
  14. 14. 技術的に問題点がありそう • APIがアプリケーションごと停止されたら終わり なのでは? • 画像認証もあるのでは? • アカウント作成数に制限とかあるのでは?
  15. 15. 手作業でアカウントを 作成してみました
  16. 16. 分かったこと • どのIPアドレス(国も問わず)でも1回目は画像認 証が表示されない • 2回目からは画像認証が表示される • 8回目辺りでアカウント作成画面で弾かれる • 約1日経つとカウントはリセットされる
  17. 17. 分かったこと • どのIPアドレス(国も問わず)でも1回目は画像認 証が表示されない • あれ? 2回目からは画像認証が表示される 画像認証が出ない • 8回目辺りでアカウント作成画面で弾かれる • 約1日経つとカウントはリセットされる
  18. 18. フォームのPOST内容 パラメータ名 詳細 authenticity_token hiddenフィールドに表記されたToken user[name] 登録するユーザーのユーザー名 user[email] 登録するユーザーのメールアドレス user[user_password] 登録するユーザーのパスワード user[screen_name] 登録するユーザーのID user[remember_me_on_signup] ログイン維持の確認 user[use_cookie_personalization] Cookieによるトラッキング機能の確認 asked_cookie_personalization_setti ng user[send_email_newsletter] hiddenフィールド(常に1) 最新情報をメールで受信するか user[discoverable_by_email] メールアドレスからの友人検索機能 context、ad_id、ad_ref 空文字・無くても良さそう? Cookie・Session レスポンスに含まれるCookie,Session
  19. 19. これなら 自動生成ができそう でも 1日1回までなら大量自動生成 とは言えない
  20. 20. 技術的に問題点がありそう • APIがアプリケーションごと停止されたら終わり なのでは? • 画像認証もあるのでは? • アカウント作成数に制限とかあるのでは?
  21. 21. 技術的に問題点がありそう • APIがアプリケーションごと停止されたら終わり なのでは? • 画像認証もあるのでは? • アカウント作成数に制限とかあるのでは?
  22. 22. そこでEC2です
  23. 23. EC2はインスタンスを再起動する度に IPが変更される (固定IPにすることも可能)
  24. 24. Twitterアカウント登録フォーム POST送信 EC2 起動・再起動 EC2 API Tools PC
  25. 25. EC2無料枠で計算すると EC2無料枠(月750時間)で計算すると 1年(12ヶ月で) 理論上では12 750 = 9000 (個) のアカウントを作成可能
  26. 26. あれ?
  27. 27. 別にEC2使わなくてもFlashやJava Servletを使ってCookie・Sessionを 管理できれば自動生成が可能なのでは?
  28. 28. POST送信にFlashや Java Servletを悪用された場合 • FlashやJava Servletを用いてSession・Cookieを 管理することで悪意のあるサイトにアクセスしただ けでアクセスしたユーザーのIPアドレスでTwitterア カウントを作成することが可能 • バックグラウンドで動作し、ユーザーには目に見え る影響が無いため被害に気づきにくい • IPアドレスがランダムなため、アカウントを凍結す ることが難しい
  29. 29. まとめ・感想 • Twitterアカウントの自動生成は実現可能 • アカウント作成時に必ず画像認証を出さない理 由は不明(ユーザー数を増やすため?) • APIに対する規制を強化してもスパムに対しての 効果は薄い
  30. 30. ご静聴ありがとうございました @nemumupoyo

×