JP7001180B2 - フィッシングサイト検知装置、フィッシングサイト検知方法、および、フィッシングサイト検知プログラム - Google Patents

フィッシングサイト検知装置、フィッシングサイト検知方法、および、フィッシングサイト検知プログラム Download PDF

Info

Publication number
JP7001180B2
JP7001180B2 JP2020558152A JP2020558152A JP7001180B2 JP 7001180 B2 JP7001180 B2 JP 7001180B2 JP 2020558152 A JP2020558152 A JP 2020558152A JP 2020558152 A JP2020558152 A JP 2020558152A JP 7001180 B2 JP7001180 B2 JP 7001180B2
Authority
JP
Japan
Prior art keywords
phishing
access
phishing site
site
kit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2020558152A
Other languages
English (en)
Other versions
JPWO2020105308A1 (ja
Inventor
博和 小寺
俊樹 芝原
大紀 千葉
雄太 高田
一史 青木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Publication of JPWO2020105308A1 publication Critical patent/JPWO2020105308A1/ja
Application granted granted Critical
Publication of JP7001180B2 publication Critical patent/JP7001180B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/577Assessing vulnerabilities and evaluating computer system security
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1483Countermeasures against malicious traffic service impersonation, e.g. phishing, pharming or web spoofing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2119Authenticating web pages, e.g. with suspicious links

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Description

本発明は、フィッシングサイト検知装置、フィッシングサイト検知方法、および、フィッシングサイト検知プログラムに関する。
従来のフィッシング検知技術として、正規のウェブサイトのログインページとフィッシングサイト間のCSS(Cascading Style Sheets)の類似性を用いた検知技術や、ページで使用されているロゴ画像の類似性を用いた検知技術等、フィッシングサイトのコンテンツを用いた検知技術が存在する。これらの技術では、検知の指標となる正規のウェブサイトの情報を予め学習しておき、取得したコンテンツの特徴からフィッシングサイトであるか否かを判定する。
J. Mao, W. Tian, P. Li, T. Wei and Z. Liang, "Phishing-Alarm: Robust and Efficient Phishing Detection via Page Component Similarity",in IEEE Access, vol. 5, pp. 17020-17030, 2017. Omid Asudeh and Matthew Wright, POSTER: Phishing Website Detection with a Multiphase Framework to Find Visual Similarity. In Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security (CCS '16). ACM, New York, NY, USA, 1790-1792. 2016.
フィッシングサイトには、検索エンジンの検索結果に掲載されることや、ブラックリストに掲載されることを避けるために、検索エンジンボットやセキュリティベンダーからのアクセスをブロックするアクセスブロック機能を持つものがある。このようなサイトでは、このアクセスブロック機能によりコンテンツが取得できず、正規のウェブサイトの学習データとの特徴の比較が行えないため、当該サイトがフィッシングサイトか否かを判定することができなかった。
そこで、本発明は、前記した問題を解決し、アクセスブロック機能をもつフィッシングサイトであっても、フィッシングサイトとして検知できるようにすることを課題とする。
前記した課題を解決するため、本発明は、フィッシングサイトを構築するためのツールであるフィッシングキットを取得するフィッシングキット取得部と、取得した前記フィッシングキットを用いてフィッシングサイトを構築し、フィッシングサイトの動作を再現するフィッシングサイト再現部と、前記フィッシングキットにより構築されたフィッシングサイトにおいてアクセスがブロックされるアクセス元の条件を、前記フィッシングキットから抽出するブロック条件抽出部と、前記抽出したアクセス元の条件を用いて、各フィッシングキットにより構築されたフィッシングサイトそれぞれへアクセスし、前記フィッシングサイトへのアクセス結果と、当該フィッシングサイトへのアクセスに用いたアクセス元の条件とを対応付けたアクセス結果情報を作成するアクセス部と、前記アクセス結果情報に示されるアクセス結果が前記フィッシングサイトからのアクセスブロックであるアクセス元の条件を選択して、フィッシングサイトの可能性のあるウェブサイトへアクセスする処理を1以上実行し、前記ウェブサイトへのアクセスがブロックされた場合、当該ウェブサイトをフィッシングサイトと判定するフィッシングサイト検知部と、を備えることを特徴とする。
本発明によれば、アクセスブロック機能をもつフィッシングサイトであっても、フィッシングサイトとして検知をすることができる。
図1は、本実施形態のフィッシングサイト検知装置の概要および構成例を説明する図である。 図2は、図1のアクセス結果記憶部に記憶されるアクセス結果情報の例を示す図である。 図3は、図2のアクセス結果情報に基づく、User-Agent、Refererのパターンの抽出の例を説明するための図である。 図4は、図3で抽出されたUser-Agent、Refererのパターンを用いたフィッシングサイトの検知を説明するための図である。 図5は、図3で抽出されたUser-Agent、Refererのパターンを用いたフィッシングサイトの検知を説明するための図である。 図6は、図1のフィッシングサイト検知装置が、フィッシングサイトへのアクセス結果を収集する処理手順の例を示すフローチャートである。 図7は、図1のフィッシングサイト検知装置が、フィッシングサイトを検知する処理手順の例を示すフローチャートである。 図8は、図1のフィッシングキットダウンロード部が生成する、フィッシングキットのダウンロード元のURLの候補(ダウンロード候補)の例を示す図である。 図9は、図1のフィッシングキットダウンロード部がダウンロード候補のURLからフィッシングキットをダウンロードする処理手順の例を示すフローチャートである。 図10は、図1のフィッシングキットダウンロード部により生成する、フィッシングキットのダウンロード元のURLの候補(ダウンロード候補)の他の例を示す図である。 図11は、図1のブロック条件抽出部によるブロック条件の抽出の例を説明する図である。 図12は、図1のフィッシングサイトアクセス部によるフィッシングログインページのファイルの特定の例を説明する図である。 図13は、フィッシングサイトのURLにランダム文字列の記述が含まれていた場合におけるフィッシングログインページのファイルの特定の例を説明する図である。 図14は、フィッシングサイト検知プログラムを実行するコンピュータの例を示す図である。
以下、図面を参照しながら、本発明を実施するための形態(実施形態)について説明する。まず、図1を参照しながら、本実施形態のフィッシングサイト検知装置10の概要を説明する。本発明は、以下に説明する実施形態に限定されない。
[概要]
フィッシングサイト検知装置10は、例えば、インターネット上に存在するフィッシングサイトからPhishing Kit(フィッシングキット。フィッシングサイトを構築するためのツール)を取得し、閉環境にフィッシングサイトを構築し、動作させる。そして、フィッシングサイト検知装置10は、閉環境に構築したフィッシングサイトに対して、アクセスブロックされる可能性のあるアクセス元の条件(ブロック条件。例えば、User-Agent、Referer等)を設定してアクセスし、そのブロック条件でのアクセス結果(例えば、アクセスブロックされたか否か)を保存する。なお、このブロック条件は、例えば、フィッシングキット内の.htaccessから抽出されたものを用いる。
その後、フィッシングサイト検知装置10は、保存されたアクセス結果情報(アクセス結果の集合)を読み出し、アクセスパターン(例えば、アクセス時に用いるUser-Agent、Referer等)を変更して、フィッシングサイトである可能性のあるウェブサイトに複数回アクセスする。そして、フィッシングサイト検知装置10は、当該ウェブサイトからの応答に基づき、当該ウェブサイトがフィッシングサイトか否かを判定する。
例えば、フィッシングサイト検知装置10は、アクセス結果情報から、閉環境に構築した各フィッシングサイトにおいてブロックされた複数のブロック条件を読み出すと、このブロック条件を順次設定し、フィッシングサイトである可能性のあるウェブサイトにアクセスする。その結果、当該ウェブサイトからブロックされた場合、フィッシングサイト検知装置10は、当該ウェブサイトをフィッシングサイトと判定する。一方、当該ウェブサイトからブロックされなかった場合、フィッシングサイト検知装置10は、当該ウェブサイトをフィッシングサイトではないと判定する。
このように、フィッシングサイト検知装置10は、フィッシングサイトにおけるアクセスブロック機能の動作をフィッシングサイトの特徴と捉えることにより、フィッシングサイトの検知を行う。その結果、フィッシングサイト検知装置10は、アクセスブロック機能をもつフィッシングサイトであっても、フィッシングサイトとして検知することができる。
[構成]
次に、引き続き図1を用いて、フィッシングサイト検知装置10の構成例を説明する。フィッシングサイト検知装置10は、例えば、フィッシングキットダウンロード部(フィッシングキット取得部)11と、フィッシングキット記憶部12と、フィッシングサイト動作再現部13と、ブロック条件抽出部14と、フィッシングサイトアクセス部(アクセス部)15と、アクセス結果記憶部16と、フィッシングサイト検知部17とを備える。
フィッシングキットダウンロード部11は、フィッシングサイトからフィッシングキットをダウンロード(取得)し、ダウンロードしたフィッシングキットをフィッシングキット記憶部12に保存する。なお、このフィッシングキットは、前記したとおりフィッシングサイトを構築するためのツールであり、例えば、ログインページを模したHTMLファイルや画像ファイル、認証情報をメール送信する等のPHP等のプログラムコード、所定のアクセス元からのアクセスをブロックするためのApacheの.htaccessファイルやPHPコード等が含まれる。
このフィッシングキットは、悪意ある者が、フィッシングサイトを構築した後、削除のし忘れ等で当該フィッシングサイトに残っていることがある。そこで、フィッシングキットダウンロード部11は、例えば、ブラックリスト等から入手したフィッシングサイトのURLのリスト(フィッシングサイトURLリスト)に基づき、フィッシングサイトにアクセスし、フィッシングキットのダウンロードを試みる。ここで、フィッシングキットダウンロード部11は、フィッシングサイトのどのディレクトリにフィッシングキットが格納されているのか不明であることもあるので、フィッシングサイトのURLから、フィッシングキットのダウンロード元のURL(ダウンロード候補のURL)を複数生成し、生成したURLにアクセスし、フィッシングキットのダウンロードを試みる。なお、上記のフィッシングキットのダウンロード元のURLの生成については、具体例を用いて後記する。
フィッシングキット記憶部12は、フィッシングキットダウンロード部11により取得されたフィッシングキットを記憶する。
フィッシングサイト動作再現部13は、フィッシングキットダウンロード部11により取得されたフィッシングキットを展開し、フィッシングサイトを構築し、フィッシングサイトの動作を再現する。
例えば、フィッシングサイト動作再現部13は、フィッシングキット記憶部12からフィッシングキットを取得すると、当該フィッシングキットを閉環境(例えば、外部との通信が制限されるサーバ上)に展開し、フィッシングサイトを構築し、動作させる。なお、フィッシングサイト動作再現部13は、フィッシングサイトを動作させるサーバアプリケーションとして、例えば、ApacheおよびPHPを用いる。
ブロック条件抽出部14は、各フィッシングキットから、当該フィッシングキットにより構築されるフィッシングサイトにおいてアクセスがブロックされる1以上のアクセス元の条件(ブロック条件)を抽出する。
例えば、ブロック条件抽出部14は、フィッシングキット記憶部12から1以上のフィッシングキットを取得すると、取得したフィッシングキットそれぞれの.htaccessファイルからブロック条件となるUser-AgentおよびRefererを正規表現で抽出する。そして、ブロック条件抽出部14は、抽出したUser-AgentおよびRefererをリスト化したUser-Agent/Referer文字列リストを生成する。
フィッシングサイトアクセス部15は、ブロック条件抽出部14により抽出されたブロック条件を用いて、各フィッシングキットにより構築されたフィッシングサイトそれぞれへアクセスする。そして、フィッシングサイトアクセス部15は、各フィッシングサイトへのアクセス結果(例えば、HTTPレスポンスのステータスコード)と、当該フィッシングサイトへのアクセスに用いたブロック条件とを対応付けたアクセス結果情報を作成する。
例えば、フィッシングサイトアクセス部15は、User-Agent/Referer文字列リストに示されるUser-Agent、Refererをヘッダに設定したHTTPリクエストをフィッシングサイトへ送信し、当該フィッシングサイトから応答(HTTPレスポンス)を受信すると、当該フィッシングサイトの構築に用いられたフィッシングキットと、当該フィッシングサイトへのHTTPリクエストに設定したUser-Agent(UA)またはReferer(Ref)と、当該フィッシングサイトからの応答(HTTPレスポンス)のステータスコードと対応付けてアクセス結果情報(図2参照)に記録する。
例えば、図2に示すアクセス結果情報は、「No.1」のフィッシングキットにより構築されたフィッシングサイトへ、UA「SampleB」を設定したHTTPリクエストを送信した場合の応答のステータスコードは「200(成功)」であり、UA「SampleC」を設定したHTTPリクエストを送信した場合の応答のステータスコードは「403(アクセスブロック)」であったことを示す。また、「No.1」のフィッシングキットにより構築されたフィッシングサイトへ、Ref「SampleX」を設定したHTTPリクエストを送信した場合の応答のステータスコードは「403(アクセスブロック)」であり、Ref「SampleY」を設定したHTTPリクエストを送信した場合の応答のステータスコードは「200(成功)」であったことを示す。
なお、フィッシングサイトアクセス部15は、フィッシングサイト動作再現部13により構築されたフィッシングサイトへアクセスする際、当該フィッシングサイトのログインページとして利用される可能性があるファイルにアクセスする必要がある。このため、フィッシングサイトアクセス部15は、フィッシングキットのダウンロード元のフィッシングサイトのURLと、当該フィッシングキットとを用いて、当該フィッシングサイトのログインページとして利用される可能性があるファイル(フィッシングログインページのファイル)を特定する。ここでのフィッシングログインページのファイルの特定については、具体例を用いて後記する。
図1の説明に戻る。フィッシングサイト検知部17は、アクセス結果情報に示されるアクセス結果が、フィッシングサイトからのアクセスブロックであるアクセス元の条件を選択して、設定し、フィッシングサイトの可能性のあるウェブサイトへアクセスする処理を1以上実行し、当該ウェブサイトへのアクセスがブロックされた場合、当該ウェブサイトをフィッシングサイトと判定する。
例えば、フィッシングサイト検知部17は、アクセス結果記憶部16のアクセス結果情報から、フィッシングサイトへのアクセスがブロックされた1以上のUser-Agent、Refererを抽出すると、抽出した1以上のUser-Agent、Refererを設定したHTTPリクエストをフィッシングサイトの可能性のあるウェブサイトに送信する。つまり、フィッシングサイト検知部17は、User-Agent、Refererを変更して複数回、当該ウェブサイトにアクセスし、当該ウェブサイトへのアクセスがブロックされた場合、当該ウェブサイトをフィッシングサイトと判定する。
ここで、フィッシングサイト検知部17は、フィッシングサイトのアクセスブロック機能でブロックされる可能性が高く、かつ、できるだけ少ない回数のアクセス数でフィッシングサイトが検知できるようなUser-Agent、Refererのパターンを抽出することが好ましい。そこで、フィッシングサイト検知部17は、アクセス結果情報から、例えば、以下のようにしてフィッシングサイトの検知に用いるUser-Agent、Refererのパターンを抽出する。
例えば、フィッシングサイト検知装置10は、図3の上部に示すアクセス結果情報における、UA「SampleC」およびUA「SampleB」のアクセス結果に基づき、図3の下部に示す決定木を作成する。そして、フィッシングサイト検知部17は、作成した決定木に示される条件に基づき、UA「SampleC」およびUA「SampleB」を設定してフィッシングサイトである可能性のあるウェブサイトへアクセスし、そのアクセス結果に基づき、当該ウェブサイトがフィッシングサイト(Phishing)か否か(Benign)を判定する。
例えば、フィッシングサイト検知部17は、図3に示す決定木に基づき、UAに「SampleC」を設定し、当該ウェブサイトへアクセスし、そのアクセス結果のステータスコードが「403」であった(アクセスブロックされた)場合、当該ウェブサイトをフィッシングサイト(Phishing)と判定する。
また、当該ウェブサイトへのアクセス結果のステータスコードが「403」でなければ、フィッシングサイト検知部17は、UAに「SampleB」を設定し、当該ウェブサイトへ再度アクセスする。そして、当該ウェブサイトへのアクセス結果のステータスコードが「403」であった場合、フィッシングサイト検知部17は、当該ウェブサイトをフィッシングサイト(Phishing)と判定する。一方、当該ウェブサイトへのアクセス結果のステータスコードが「403」でなかった場合、フィッシングサイト検知部17は、当該ウェブサイトをフィッシングサイトではない(Benign)と判定する。
つまり、フィッシングサイト検知部17は、図4の上部に示すように、UAに「SampleC」を設定し、当該ウェブサイトへアクセスし、そのアクセス結果のステータスコードが「403」であった(アクセスブロックされた)場合、当該ウェブサイトをフィッシングサイトと判定する。
また、フィッシングサイト検知部17は、図4の下部に示すように、UAに「SampleC」を設定し、当該ウェブサイトへアクセスし、そのアクセス結果のステータスコードが「200」であった(「403」ではなかった)場合、UAに「SampleB」を設定し、当該ウェブサイトへ再度アクセスする。そして、当該ウェブサイトへのアクセス結果のステータスコードが「403」であった(アクセスブロックされた)場合、フィッシングサイト検知部17は、当該ウェブサイトをフィッシングサイトと判定する。
また、フィッシングサイト検知部17は、図5に示すように、UAに「SampleC」を設定し、当該ウェブサイトへアクセスし、そのアクセス結果のステータスコードが「200」であった(「403」ではなかった)場合、UAに「SampleB」を設定し、当該ウェブサイトへ再度アクセスする。そして、当該ウェブサイトへのアクセス結果のステータスコードが「200」であった(アクセスブロックされなかった)場合、フィッシングサイト検知部17は、当該ウェブサイトをフィッシングサイトではないと判定する。
このように、フィッシングサイト検知部17は、アクセス結果情報に基づき、フィッシングサイトである可能性のあるウェブサイトへのアクセスに用いるブロック条件のパターンを抽出する。そして、フィッシングサイト検知部17は、抽出したブロック条件のパターンに従い、当該ウェブサイトへアクセスする。つまり、フィッシングサイト検知部17はブロック条件を変更して、フィッシングサイトの可能性があるウェブサイトへ複数回アクセスする。そして、フィッシングサイト検知部17は、当該ウェブサイトへのアクセス結果に基づき、当該ウェブサイトがフィッシングサイトか否かを判定する。
以上説明したフィッシングサイト検知装置10によれば、アクセスブロック機能をもつフィッシングサイトであっても、フィッシングサイトとして検知することができる。
[処理手順]
次に、フィッシングサイト検知装置10の処理手順の例を説明する。まず、図6を用いてフィッシングサイト検知装置10が、フィッシングキットにより構築されたフィッシングサイトへのアクセス結果を収集する処理手順の例を説明する。
まず、フィッシングサイト検知装置10のフィッシングキットダウンロード部11は、フィッシングキットのダウンロード候補のURLを生成すると(S1)、当該URLにアクセスしてフィッシングキットをダウンロードする(S2)。そして、フィッシングキットダウンロード部11は、ダウンロードしたフィッシングキットをフィッシングキット記憶部12に保存する。
S2の後、ブロック条件抽出部14は、フィッシングキット記憶部12からフィッシングキットを取得し、このフィッシングキットに含まれる.htaccessからブロック条件(User-Agent、Referer)を抽出する(S3)。また、フィッシングサイト動作再現部13は、S2でダウンロードされたフィッシングキットにより、フィッシングサイトを構築する(S4)。
S4の後、フィッシングサイトアクセス部15は、S4で構築されたフィッシングサイトのログインページのURLを生成する(S5:フィッシングログインページのURL生成)。その後、フィッシングサイトアクセス部15は、S3で抽出されたブロック条件を設定して、S4で構築されたフィッシングサイトのログインページにアクセスすることにより、当該フィッシングサイトへのアクセス結果を収集する(S6)。
例えば、S6において、フィッシングサイトアクセス部15は、フィッシングサイト動作再現部13がフィッシングサイトの構築に用いたフィッシングキットと、当該フィッシングキットサイトへのHTTPリクエストに設定したブロック条件(User-Agent、Referer)と、当該HTTPリクエストに対する当該フィッシングサイトからの応答(HTTPレスポンス)のステータスコードとを対応付けたアクセス結果をアクセス結果情報(図2参照)に記録する。
なお、ここでは説明を省略するが、S2でダウンロードされたフィッシングキットが複数ある場合、フィッシングサイト検知装置10は、ダウンロードされたフィッシングキットごとに、S3~S6の処理を繰り返す。これにより、フィッシングサイトアクセス部15は、様々なフィッシングサイトのブロック条件と、当該ブロック条件を用いた各フィッシングサイトへのアクセス結果とを収集することができる。
次に、図7を用いてフィッシングサイト検知装置10が、図6で収集されたアクセス結果に基づき、フィッシングサイトの検知を行う処理手順の例を説明する。
まず、フィッシングサイト検知装置10のフィッシングサイト検知部17は、図6で収集されたアクセス結果(アクセス結果情報)から、フィッシングサイトの検知を行うためのUser-Agent、Refererのパターンを抽出する(S11:User-Agent、Refererパターン抽出)。そして、フィッシングサイト検知部17は、S11で抽出したUser-Agent、Refererのパターンを用いて、フィッシングサイトである可能性のあるウェブサイトにアクセスし、当該ウェブサイトからの応答に基づき、当該ウェブサイトがフィッシングサイトか否かの判定を行う(S12:フィッシングサイト検知)。
このようにすることで、フィッシングサイト検知装置10は、アクセスブロック機能をもつフィッシングサイトであっても、フィッシングサイトとして検知することができる。
[フィッシングキットのダウンロード元のURLの生成]
次に、フィッシングキットダウンロード部11によるフィッシングキットのダウンロード元のURLの生成について説明する。
フィッシングキットダウンロード部11は、例えば、図8に示すように、フィッシュングサイトのURL(フィッシングサイトURL)のディレクトリの記述を後方から段階的に削除することにより、フィッシングキットのダウンロード元のURLの候補(ダウンロード候補)を生成する。
例えば、フィッシングサイトURLが「http://phish.example.com/aaa/bbb/login/info/index.php」である場合、フィッシングキットダウンロード部11は、当該URLの後方のディレクトリから順にURLの記述を削除して、図8に示すダウンロード候補(1-1)~(1-5)を生成する。
その後、フィッシングキットダウンロード部11は、生成したダウンロード候補(1-1)~(1-5)のURLにアクセスし、フィッシングキットのダウンロードを試みる。例えば、フィッシングキットダウンロード部11は、図9に示す手順によりダウンロード候補(1-1)~(1-i)のURLにアクセスする。
まず、フィッシングキットダウンロード部11は、ダウンロード候補(1-i)のURLにアクセスする(図9のS21)。そして、フィッシングキットダウンロード部11が、アクセス先はオープンディレクトリであり(つまり、titleに「Index of」が含まれており)、かつ、オープンディレクトリのリンクに「.zip」を持つものがあると判断した場合(S22でYes→S23でYes)、フィッシングキットダウンロード部11は当該「.zip」を持つリンクから圧縮ファイルをダウンロードする(S24)。ダウンロードされた圧縮ファイルは、フィッシングサイト動作再現部13に展開される(S25)。一方、フィッシングキットダウンロード部11が、アクセス先はオープンディレクトリではない(S22でNo)、あるいは、オープンディレクトリのリンクに「.zip」を持つものがないと判断した場合(S23でNo)、S26へ進む。
S25の後、フィッシングキットダウンロード部11は、未アクセスのダウンロード候補のURLがあるか否かを判断し(S26)、未アクセスのダウンロード候補のURLがあれば(S26でYes)、iをインクリメントして(S27)、S21の処理へ戻る。一方、S25の後、未アクセスのダウンロード候補のURLがなければ(S26でNo)、処理を終了する。
また、フィッシングキットダウンロード部11は、ダウンロード候補のURLを生成する際、フィッシングサイトURLのディレクトリの記述を後方から段階的に削除したURLを生成した後、それぞれのURLの末尾に「.zip」等の圧縮ファイルを示す拡張子を付加してもよい(図10に示すダウンロード候補(2-1)~(2-4)参照)。この場合、ダウンロード候補のURLに既に圧縮ファイルを示す拡張子が付加されているので、フィッシングキットダウンロード部11は、ダウンロード候補のURLに順にアクセスし、該当するファイルがあればアクセス先からダウンロードすればよい。
このようにすることで、フィッシングキットダウンロード部11は、フィッシングサイトのどこにフィッシングキットが格納されているか不明な場合でも、フィッシングサイトからフィッシングキットをダウンロードしやすくなる。
[ブロック条件の抽出]
次に、ブロック条件抽出部14によるブロック条件の抽出を説明する。ブロック条件抽出部14は、例えば、フィッシングキット記憶部12に保存された圧縮ファイル(フィッシングキットである可能性のある圧縮ファイル)を取得すると、その圧縮ファイルを展開し、展開したファイル内の.htaccessファイルから正規表現を用いてブロック条件となりうるUser-AgentおよびRefererを抽出する。
例えば、ブロック条件抽出部14は、図11に示す.htaccessファイルから正規表現を用いてブロック条件となりうるUser-AgentおよびReferer(図11の下線部参照)を抽出する。例えば、ブロック条件抽出部14は、符号101に示すRefererに関する記述を、符号102に示すような正規表現(Regex)に変換して抽出する。また、ブロック条件抽出部14は、符号103に示すRefererに関する記述を、符号104に示すような正規表現(Regex)に変換して抽出する。
[フィッシングログインページのファイルの特定]
次に、フィッシングサイトアクセス部15によるフィッシングログインページのファイルの特定について説明する。フィッシングサイトアクセス部15は、例えば、フィッシングキットに含まれるファイルのうち、当該フィッシングキットのダウンロード元のフィッシングサイトのURLと後方一致するファイルを、フィッシングログインページのファイルとして特定する。
例えば、図12に示すように、フィッシングキットのダウンロード元のフィッシングサイトのURLが「http://phish.example.com/aaa/bbb/login/info/index.php」であり、当該フィッシングキットの展開後のファイル内のファイルパスが符号1101に示すファイルパス群である場合を考える。この場合、フィッシングサイトのURLに含まれる文字列「login/info/index.php」が展開後のファイル内のファイルパス群に含まれているため、フィッシングサイトアクセス部15は、「login/info/index.php」をフィッシングサイトのログインページとして使われるファイルと特定する。そして、フィッシングサイトアクセス部15は、フィッシングキットにより構築されたフィッシングサイトにおける、上記の特定されたファイルにアクセスする。
なお、フィッシングキットには、最初にアクセスするファイルに以下の数1に示すようなPHPコードがあり、当該フィッシングキットにより構築されたフィッシングサイトにアクセスすると、特定のフォルダをランダム文字列のフォルダ名にコピーして、そのフォルダに誘導する機能を持つものがある。
Figure 0007001180000001
その場合、フィッシングサイトのURLは、例えば、図13に示すようにランダム文字列を含むので、フィッシングサイトアクセス部15は、フィッシングキットに含まれるファイルの中から、フィッシングサイトのURLと後方一致するファイルを特定できない場合がある。
そこで、フィッシングサイトアクセス部15は、上記のフィッシングサイトのURLにランダム文字列が含まれている場合、フィッシングサイトのURLからランダム文字列の記述を除外(削除)したURLを用いて、フィッシングキットに含まれるファイルの中から、フィッシングサイトのURLと後方一致するファイルを特定する。なお、上記のフィッシングサイトのURLにおいて、除外対象とするランダム文字列は正規表現で以下のように表現される。
([\w]{32,}|[0-9A-Z]{20})(\=){0,2}
一例を挙げる。例えば、フィッシングサイトアクセス部15は、図13に示すように、フィッシングサイトのURLのパス部にランダム文字列が含まれる場合、ランダム文字列の記述を除外(削除)する。そして、フィッシングサイトアクセス部15は、フィッシングキットの展開後のファイル内のファイルの中から、ランダム文字列除外後のフィッシングサイトのURLと後方一致するファイルを、フィッシングサイトのログインページとして使われるファイルとして特定する。
このようにすることで、フィッシングサイトアクセス部15はフィッシングサイトのURLにランダム文字列が含まれる場合あっても、フィッシングサイトのログインページとして使われるファイルとして特定することができる。その結果、フィッシングサイトアクセス部15は、フィッシングサイトのログインページにアクセスしやすくなる。
以上説明したフィッシングサイト検知装置10によれば、アクセスブロック機能をもつフィッシングサイトであっても、フィッシングサイトとして検知することができる。
なお、PHP等を用いてアクセスブロックを行うフィッシングサイトの場合、フォーマットが様々なため、ブロック条件を抽出することが困難であり、従来技術では、フィッシングサイトか否かの判定が困難であった。しかし、フィッシングサイト検知装置10は、閉環境で動作するフィッシングサイトに対し様々な条件でアクセスしたアクセス結果を収集し、その収集したアクセス結果を用いてフィッシングサイトか否かの判定を行う。その結果、フィッシングサイト検知装置10は、PHP等によりアクセスブロックを行うフィッシングサイトであっても、フィッシングサイトとして検知することができる。
[プログラム]
また、上記の実施形態で述べたフィッシングサイト検知装置10の機能を実現するプログラムを所望の情報処理装置(コンピュータ)にインストールすることによって実装できる。例えば、パッケージソフトウェアやオンラインソフトウェアとして提供される上記のプログラムを情報処理装置に実行させることにより、情報処理装置をフィッシングサイト検知装置10として機能させることができる。ここで言う情報処理装置には、デスクトップ型またはノート型のパーソナルコンピュータ、ラック搭載型のサーバコンピュータ等が含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やPHS(Personal Handyphone System)等の移動体通信端末、さらには、PDA(Personal Digital Assistant)等がその範疇に含まれる。また、フィッシングサイト検知装置10を、クラウドサーバに実装してもよい。
図14を用いて、上記のプログラム(フィッシングサイト検知プログラム)を実行するコンピュータの一例を説明する。図14に示すように、コンピュータ1000は、例えば、メモリ1010と、CPU1020と、ハードディスクドライブインタフェース1030と、ディスクドライブインタフェース1040と、シリアルポートインタフェース1050と、ビデオアダプタ1060と、ネットワークインタフェース1070とを有する。これらの各部は、バス1080によって接続される。
メモリ1010は、ROM(Read Only Memory)1011およびRAM(Random Access Memory)1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1100に接続される。ディスクドライブ1100には、例えば、磁気ディスクや光ディスク等の着脱可能な記憶媒体が挿入される。シリアルポートインタフェース1050には、例えば、マウス1110およびキーボード1120が接続される。ビデオアダプタ1060には、例えば、ディスプレイ1130が接続される。
ここで、図14に示すように、ハードディスクドライブ1090は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093およびプログラムデータ1094を記憶する。前記した実施形態で説明した各種データや情報は、例えばハードディスクドライブ1090やメモリ1010に記憶される。
そして、CPU1020が、ハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して、上述した各手順を実行する。
なお、上記のフィッシングサイト検知プログラムに係るプログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限られず、例えば、着脱可能な記憶媒体に記憶されて、ディスクドライブ1100等を介してCPU1020によって読み出されてもよい。あるいは、上記のプログラムに係るプログラムモジュール1093やプログラムデータ1094は、LANやWAN(Wide Area Network)等のネットワークを介して接続された他のコンピュータに記憶され、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
10 フィッシングサイト検知装置
11 フィッシングキットダウンロード部
12 フィッシングキット記憶部
13 フィッシングサイト動作再現部
14 ブロック条件抽出部
15 フィッシングサイトアクセス部
16 アクセス結果記憶部
17 フィッシングサイト検知部

Claims (7)

  1. フィッシングサイトを構築するためのツールであるフィッシングキットを取得するフィッシングキット取得部と、
    取得した前記フィッシングキットを用いてフィッシングサイトを構築し、フィッシングサイトの動作を再現するフィッシングサイト再現部と、
    前記フィッシングキットにより構築されたフィッシングサイトにおいてアクセスがブロックされるアクセス元の条件を、前記フィッシングキットから抽出するブロック条件抽出部と、
    前記抽出したアクセス元の条件を用いて、各フィッシングキットにより構築されたフィッシングサイトそれぞれへアクセスし、前記フィッシングサイトへのアクセス結果と、当該フィッシングサイトへのアクセスに用いたアクセス元の条件とを対応付けたアクセス結果情報を作成するアクセス部と、
    前記アクセス結果情報に示されるアクセス結果が前記フィッシングサイトからのアクセスブロックであるアクセス元の条件を選択して、フィッシングサイトの可能性のあるウェブサイトへアクセスする処理を1以上実行し、前記ウェブサイトへのアクセスがブロックされた場合、当該ウェブサイトをフィッシングサイトと判定するフィッシングサイト検知部と、
    を備えることを特徴とするフィッシングサイト検知装置。
  2. 前記アクセス元の条件は、
    アクセス元のUser-AgentおよびRefererの少なくともいずれかである
    ことを特徴とする請求項1に記載のフィッシングサイト検知装置。
  3. 前記フィッシングキット取得部は、
    フィッシングサイトから、前記フィッシングキットを取得する
    ことを特徴とする請求項1に記載のフィッシングサイト検知装置。
  4. 前記アクセス部は、
    前記フィッシングキットに含まれるファイルのうち、前記フィッシングサイトのURLと後方一致するファイルを、前記フィッシングサイトのログインページのファイルとして特定し、再現された前記フィッシングサイトにおける前記ログインページのファイルにアクセスする
    ことを特徴とする請求項1に記載のフィッシングサイト検知装置。
  5. 前記アクセス部は、
    前記フィッシングサイトのURLのランダム文字列が含まれる場合、前記フィッシングサイトのURLからランダム文字列を削除し、前記フィッシングキットに含まれるファイルのうち、前記ランダム文字列の削除後のフィッシングサイトのURLと後方一致するファイルを、前記フィッシングサイトのログインページのファイルとして特定する
    ことを特徴とする請求項4に記載のフィッシングサイト検知装置。
  6. フィッシングサイト検知装置により実行されるフィッシングサイト検知方法であって、
    フィッシングサイトを構築するためのツールであるフィッシングキットを取得するフィッシングキット取得ステップと、
    取得した前記フィッシングキットを用いてフィッシングサイトを構築し、フィッシングサイトの動作を再現するフィッシングサイト再現ステップと、
    前記フィッシングキットにより構築されたフィッシングサイトにおいてアクセスがブロックされるアクセス元の条件を、前記フィッシングキットから抽出するブロック条件抽出ステップと、
    前記抽出したアクセス元の条件を用いて、各フィッシングキットにより構築されたフィッシングサイトそれぞれへアクセスし、前記フィッシングサイトへのアクセス結果と、当該フィッシングサイトへのアクセスに用いたアクセス元の条件とを対応付けたアクセス結果情報を作成するアクセスステップと、
    前記アクセス結果情報に示されるアクセス結果が前記フィッシングサイトからのアクセスブロックであるアクセス元の条件を選択して、フィッシングサイトの可能性のあるウェブサイトへアクセスする処理を1以上実行し、前記ウェブサイトへのアクセスがブロックされた場合、当該ウェブサイトをフィッシングサイトと判定するフィッシングサイト検知ステップと、
    を含んだことを特徴とするフィッシングサイト検知方法。
  7. フィッシングサイトを構築するためのツールであるフィッシングキットを取得するフィッシングキット取得ステップと、
    取得した前記フィッシングキットを用いてフィッシングサイトを構築し、フィッシングサイトの動作を再現するフィッシングサイト再現ステップと、
    前記フィッシングキットにより構築されたフィッシングサイトにおいてアクセスがブロックされるアクセス元の条件を、前記フィッシングキットから抽出するブロック条件抽出ステップと、
    前記抽出したアクセス元の条件を用いて、各フィッシングキットにより構築されたフィッシングサイトそれぞれへアクセスし、前記フィッシングサイトへのアクセス結果と、当該フィッシングサイトへのアクセスに用いたアクセス元の条件とを対応付けたアクセス結果情報を作成するアクセスステップと、
    前記アクセス結果情報に示されるアクセス結果が前記フィッシングサイトからのアクセスブロックであるアクセス元の条件を選択して、フィッシングサイトの可能性のあるウェブサイトへアクセスする処理を1以上実行し、前記ウェブサイトへのアクセスがブロックされた場合、当該ウェブサイトをフィッシングサイトと判定するフィッシングサイト検知ステップと、
    をコンピュータに実行させることを特徴とするフィッシングサイト検知プログラム。
JP2020558152A 2018-11-19 2019-10-10 フィッシングサイト検知装置、フィッシングサイト検知方法、および、フィッシングサイト検知プログラム Active JP7001180B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2018216576 2018-11-19
JP2018216576 2018-11-19
PCT/JP2019/040127 WO2020105308A1 (ja) 2018-11-19 2019-10-10 フィッシングサイト検知装置、フィッシングサイト検知方法、および、フィッシングサイト検知プログラム

Publications (2)

Publication Number Publication Date
JPWO2020105308A1 JPWO2020105308A1 (ja) 2021-04-30
JP7001180B2 true JP7001180B2 (ja) 2022-01-19

Family

ID=70773927

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020558152A Active JP7001180B2 (ja) 2018-11-19 2019-10-10 フィッシングサイト検知装置、フィッシングサイト検知方法、および、フィッシングサイト検知プログラム

Country Status (4)

Country Link
US (1) US11838322B2 (ja)
EP (1) EP3859578B1 (ja)
JP (1) JP7001180B2 (ja)
WO (1) WO2020105308A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210377301A1 (en) * 2020-06-02 2021-12-02 Zscaler, Inc. Phishing detection of uncategorized URLs using heuristics and scanning

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8856937B1 (en) 2008-06-27 2014-10-07 Symantec Corporation Methods and systems for identifying fraudulent websites
US9094452B2 (en) 2012-08-01 2015-07-28 Bank Of America Corporation Method and apparatus for locating phishing kits

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8856937B1 (en) 2008-06-27 2014-10-07 Symantec Corporation Methods and systems for identifying fraudulent websites
US9094452B2 (en) 2012-08-01 2015-07-28 Bank Of America Corporation Method and apparatus for locating phishing kits

Also Published As

Publication number Publication date
WO2020105308A1 (ja) 2020-05-28
EP3859578A4 (en) 2022-06-22
US11838322B2 (en) 2023-12-05
EP3859578A1 (en) 2021-08-04
EP3859578B1 (en) 2022-11-23
US20220021703A1 (en) 2022-01-20
JPWO2020105308A1 (ja) 2021-04-30

Similar Documents

Publication Publication Date Title
JP6590481B2 (ja) ウイルス侵入経路特定装置、ウイルス侵入経路特定方法およびプログラム
RU2580036C2 (ru) Система и способ создания гибкой свертки для обнаружения вредоносных программ
JP5989919B2 (ja) Urlマッチング装置、urlマッチング方法、および、urlマッチングプログラム
US20180097828A1 (en) Computerized system and method for automatically determining malicious ip clusters using network activity data
CN111382434B (zh) 用于检测恶意文件的系统和方法
CN102254111A (zh) 恶意网站检测方法及装置
CN103180863A (zh) 计算机系统分析方法和装置
CN108900554B (zh) Http协议资产检测方法、系统、设备及计算机介质
JP6674036B2 (ja) 分類装置、分類方法及び分類プログラム
CN106022124B (zh) 针对恶意软件分析受口令保护的文件
US11431749B2 (en) Method and computing device for generating indication of malicious web resources
JP5752642B2 (ja) 監視装置および監視方法
CN108182360B (zh) 一种风险识别方法及其设备、存储介质、电子设备
WO2017077847A1 (ja) 解析装置、解析方法、および、解析プログラム
JP7001180B2 (ja) フィッシングサイト検知装置、フィッシングサイト検知方法、および、フィッシングサイト検知プログラム
CN110392032B (zh) 检测异常url的方法、装置及存储介质
WO2019123757A1 (ja) 分類装置、分類方法、および、分類プログラム
CN106021252A (zh) 使用公共因特网搜索确定基于因特网的对象信息
US11556819B2 (en) Collection apparatus, collection method, and collection program
Na et al. Service identification of internet-connected devices based on common platform enumeration
Michalas et al. MemTri: A memory forensics triage tool using bayesian network and volatility
CN112231700B (zh) 行为识别方法和装置、存储介质及电子设备
Feng et al. Cyber security investigation for Raspberry Pi devices
JP6749865B2 (ja) 情報収集装置、および、情報収集方法
RU2614561C1 (ru) Система и способ определения похожих файлов

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201020

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20211124

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211207

R150 Certificate of patent or registration of utility model

Ref document number: 7001180

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150