ユーザー名にURLやドメインを含むSNSのアカウントとメール通知による拡散行為について

こんばんは。ritouです。

f:id:ritou:20200614004856p:plain

なんの話?

ちょっと前にQiitaでこんなことがありました。

qiita.com

最近はこんなのも見かけました。

ということで、表題の通りSNSのユーザー名にURLやドメインを含み、通知用のメールが送られることで可能となる拡散行為について取り上げます。

拡散行為のターゲットは?

既存ユーザーをターゲットにした拡散行為

Qiitaの例では

  1. 悪意のある者は拡散させたいURL=ドメインを含む名前のアカウントを用意する
  2. 悪意のある者は既存ユーザーを次々とフォローしていく
  3. フォローされた人は、「〜さんからフォローされました」というような文言がメールで送られる
  4. メーラーによってドメイン部分がリンクとなりそこから誘導可能な状態となる

という流れのように見えます。

フォローやいいねを繰り返すことで、ドメインを拡散できる可能性があります。既にたくさんのユーザーを抱えるサービスなどでは注意が必要でしょう。

未登録ユーザーをターゲットにした拡散行為

後者のサービスの例では

  1. 悪意のある者は新規登録時にメールアドレスとURLを含む名前を入力する
  2. メールアドレス向けに「こんにちは ~ さん」のように名前を含むメールが送られる
  3. メールアドレスを持っている人のメーラーによってURL部分がリンクとなりそこから誘導可能な状態となる

新規サービスだからと言って安心してはいけません。 ターゲットのメアドリストを突っ込んでいくことで、URLやドメインを拡散できる可能性があります。

対策

いくつかあるでしょう。

メールで送られる可能性のある名前にURLやドメインが含まれないようにする

現実的に、こんにちは~さん、というメールはよく送られています。 登録時のユーザー名のバリデーションを厳密にやろうと思うとなかなか困難そうです。

URLやドメインを含む可能性がある"名前"を含むメールを送らない

新規登録時には、先にメールアドレスの確認を行うことで、登録完了してから名前入りのメールが行われるようになるなど、頻度は減らせるかもしれません。

URLやドメインがリンクとして扱われないようなメールにする

これも簡単ならやるべきかもしれませんが各メーラーの挙動はどうなんでしょう。

まとめ

URLの拡散行為への対策についてもう少し考えてみても良さそう(雑)

ではまた。


6/17追記

自作サービスがDDoS攻撃された話 - 週休7日で働きたい

「リンクを拡散できる」ことと「たくさんアカウントが作られたこと」のそれぞれの事象について

  • URLを弾く
  • reCAPTCHA や js などで大量アクセスを防ぐ

という考察が行われていますが、それぞれについてより深い考察が行われることが他のサービスで似たような被害が行われることを防ぐことに繋がるでしょう。