# ゼロからはじめるフィッシング対策 🎣
2 min read...
フィッシング対策協議会 (opens new window)によれば、2018年上半期に報告されたフィッシングの件数は2017年下半期の月平均と比較して1.6倍に増加しているそうです。
(source: https://www.antiphishing.jp/news/pdf/apcseminar2018apc.pdf)
この記事では、増加するフィッシングに対して効率的に対応するため、ドメイン名を起点にフィッシングサイトを見つけ、それを報告するまでの流れについて紹介します。
# 前段
フィッシングをしかける攻撃者は、紛らわしいドメイン名(タイポスクワッティング / typosquatting)を用意し、そこにターゲットを誘導します。
例として、Apple ユーザーを標的にしたフィッシングサイトのドメイン名を以下に示します。
- apple-appleidd[.]ddns[.]net
- store-appleid-manage-subcriptionsdetail-support-new-home[.]com
- web-appleid-secure-notified-home-base-database[.]com
apple
や appleid
といったそれらしい単語がドメイン名に含まれていることがわかります。
新しく登録されたドメイン名をモニタリングし、上記の様にタイポスクワッティングなドメインがないか確認をすることでフィッシングサイトを見つけることができます。
# 備考
- フィッシングサイトを見つける方法として、今回紹介する方法の他に OpenPhish (opens new window) や PhishTank (opens new window) のフィードをモニタリングする方法や Certificate Transparency (opens new window) ログサーバーをモニタリングする方法がありますが、今回は割愛します。
- 最近のフィッシングの手口として、ドメインを取得せず、短縮 URL サービスを使用してフィッシングサイトへ誘導するものがあります。いわゆる smishing でよく使用されています。これについては、今回紹介する手法では発見することはできません。
# 1. 新しく登録されたドメイン名を見つける
DomainTools (opens new window) や SecurityTrails (opens new window) など、新規に登録されたドメイン名を有償で提供しているサービスがあります。
一方、WhoisDS (opens new window), WebAnalyzer (opens new window) や DnPedia (opens new window) など、無償で新規に登録されたドメイン名を提供しているサービスもあります。 この中でも、DnPeida は検索用のインターフェースを持っており、簡便に扱うことができます。
例えば、DnPedia のDomain Search (opens new window) にて yahoo
で検索してみるとこのような結果になりました。
ぱっと見たところ、yahoo-protect[.]info
や yahoo-maintain[.]com
が怪しいですね。
# 2. フィッシングサイトか確認する
タイポスクワッティングなドメイン名を見つけたら、それがフィッシングサイトかどうか確認してみましょう。
CheckPhish.ai (opens new window), phishcheck.me (opens new window) など、URL を入力することでフィッシングサイトかどうか判定してくれるサービスがあるので、これを使うと便利です。
また、urlscan.io (opens new window) のような Web サイトを細かく分析するサービスを使用して確認することもできます。
# 実例
では先ほど yahoo
で検索した際に怪しく見えた yahoo-maintain[.]com
を例に試してみましょう。
# CheckPhish.ai
- https://checkphish.ai/insights/url/1548314631088/1fa757c8c76c2a6fb03b6ba673cd1afab14cc56ba3f39f3b1ccce80d9dbbd33a
# phishcheck.me
- https://phishcheck.me/172512/details
# urlscan.io
- https://urlscan.io/domain/www.yahoo-maintain.com
スクリーンショットや HTML、入力フォームなどを確認することで、 Yahoo! Japan のID・パスワードおよびクレジットカード情報を盗み取ろうとするフィッシングサイトだと確認することできました。
# 2.1 Web サイトモニタリング
上記のフィッシングサイトの確認方法は、リアルタイムでフィッシングサイトが稼働していることが前提となっています。
しかし、ドメイン名が登録されていることは、Web サイトが稼働していること(= IP アドレスが割り当てられ Web サーバーが稼働していること)を意味しません。ドメイン名が取得されて、しばらくしてから Web サイトが稼働することは往往にしてあることです。
タイポスクワッティングなドメイン名を見つけたけれど、そのドメイン名で Web サイトが稼働していなかった場合、下記のようなサービスを使ってモニタリングするのが良いでしょう。
- StatusCake (opens new window)
- 無料で10サイトまでモニタリング可能
- 最短監視間隔: 5分
- Pingbreak (opens new window)
- 無料で20サイトまでモニタリング可能
- 最短監視間隔: 1分
- freshping (opens new window)
- 無料で50サイトまでモニタリング可能
- 最短監視間隔: 1分
# 3. フィッシングサイトを報告する
まずは Google Safe Browsing (opens new window) に報告しましょう。
Google Safe Browsing は Chrome, Safari, Firefox といった主要ブラウザでサポートされています。Google Safe Browsing に報告することで、それらの主要ブラウザのユーザーをフィッシングサイトから守る手助けができます。
Google Safe Browsing にフィッシング報告をするのは簡単です。
Report Phishing Page (opens new window) のフォームに フィッシングサイトの URL を記入してサブミットするだけで完了します。
また、JPCERT/CC (opens new window) に報告するものいいでしょう。
JPCERT/CC にも Web フォーム (opens new window)経由で簡単に報告することができます。
さらに進んで フィッシングサイトをホスティングしている ISP に報告する手もあります。これによりフィッシングサイトのテイクダウンにつながる可能性があります。
ISP の公式サイトを確認すれば、報告窓口(abuse 担当)が大抵の場合はわかるでしょう。また、certsocietegenerale/abuse_finder (opens new window) というabuse 担当の連絡先を簡単に調べるためのツールもあります。
# おまけ
新しく登録されたドメイン名のチェックからフィッシング判定の途中までを自動化するツールを作成しました。
このツールを使うことで、以下のタスクを自動化することができます。
- DnPedia 上で特定のキーワードを検索
- 検索結果(特定のキーワードを含む新しく登録されたドメイン)を Slack にポスト
# インストール
このツールは Ruby gem として配布しています。
$ gem install osakana
# 実行例
$ osakana check_newly_domains yahoo
このように、特定のキーワードを含むドメインを簡単に確認することができます。
よろしければ使ってみてください。