Mail+Channel いつものメールアドレスにチャネルを追加してスパムやフィッシングを追跡しよう
(keepwork.ing)最近、メールの + トリックを知りました。
既存のメール ID の後ろに + でラベルを指定できる機能なのですが、これをうまく活用すればスパムやフィッシングメールを防いだり、個人情報が流出したサイトを推測できるのではないかと思い、簡単な POC 的な形でメールに使うチャネルを生成する機能を作ってみることにしました。
この Mail+Channel というアイデアの核心は、「私にメールを送るなら、どこで手に入れたメールアドレスなのかを言ってもらう!」ということです。
+ の後ろには人が判別できる文字ではなく、不規則に生成されたコードが入ります。チャネル名が象徴的な文句だと、Dictionary attack のように知られた文句を使ってメールを送ることで正しいチャネルを当てられてしまうのではないかと考え、ランダムな文字列を使うことにしました。
もちろん、このように ID に付けるチャネルを生成するだけでは不十分で、Gmail のようなメールプラットフォームの API を活用して生成したチャネルを管理したり、生成したチャネルだけをホワイトリストとして管理したり、破棄したりする仕組みが追加されれば、さらに簡単に使えるようになると思います。
なかなか良いアイデアだと思って簡単な POC を作ってみたのですが、みなさんの意見を聞いてみたいです。
4件のコメント
私も実際に似たような方法で、登録するサイトのドメインをメールアドレスに入れて登録したりしています。たまに一部のサイトではメールアドレスに
+文字を入れられないようになっていることが多くて、残念ながら普通のメールアドレスで登録しなければならないんですよね。私も以前、Apple IDを作成するときにそのトリックを活用していましたね。当時はルールを正確には知らなかったので、
id@gmail.comid+1@gmail.comid+2@gmail.comid+3@gmail.comのような形にして、それぞれの数字と国を対応付けて覚えていました。文章力がなくて、少しわかりにくくなってしまったかもしれません。
これは
+トリックを応用する方法論についての文章なので、特に決まったルールはありません。サイトに会員登録したりメーリングリストを購読したりするときに、上の応用方法で生成したものを使えば、スパムやフィッシングメールが来る送信元を追跡できるのではないか? という発想で作ってみたプロジェクトです!
地域ごとにApple IDへ登録するときや、Cloudflareでメール転送を設定するときに使っています。