JP5791548B2 - アドレス抽出装置 - Google Patents

アドレス抽出装置 Download PDF

Info

Publication number
JP5791548B2
JP5791548B2 JP2012058303A JP2012058303A JP5791548B2 JP 5791548 B2 JP5791548 B2 JP 5791548B2 JP 2012058303 A JP2012058303 A JP 2012058303A JP 2012058303 A JP2012058303 A JP 2012058303A JP 5791548 B2 JP5791548 B2 JP 5791548B2
Authority
JP
Japan
Prior art keywords
address
url
browser
log
access
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.)
Expired - Fee Related
Application number
JP2012058303A
Other languages
English (en)
Other versions
JP2013191133A (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.)
Mitsubishi Electric Corp
Mitsubishi Electric Information Systems Corp
Original Assignee
Mitsubishi Electric Corp
Mitsubishi Electric Information Systems 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 Mitsubishi Electric Corp, Mitsubishi Electric Information Systems Corp filed Critical Mitsubishi Electric Corp
Priority to JP2012058303A priority Critical patent/JP5791548B2/ja
Publication of JP2013191133A publication Critical patent/JP2013191133A/ja
Application granted granted Critical
Publication of JP5791548B2 publication Critical patent/JP5791548B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)

Description

この発明は、インターネット通信を行う端末装置が利用するプロキシサーバ装置がアクセスしたアドレスの内、所定のアドレスを抽出するアドレス抽出装置に関する。
近年、特定の組織を狙う標的型攻撃が増加している。標的型攻撃とは、特定の組織(例えば企業)の特定の部署に限定した不正アクセスである。例えば、特定の企業A社の経理課の社員(ユーザ)に対して、企業A社の関係者を装った偽装メールにマルウェアを添付して送り込む例が挙げられる。メールの文面で言葉巧みに添付ファイル(ドキュメントなどを装っていることが多い)を例えば経理課の社員(ユーザ)に開かせることで、マルウェアは実行される。経理課の社員(ユーザ)により実行されたことにより企業への侵入に成功したマルウェアは、インターネット上のウェブサーバと通信し、情報漏洩等の不正アクセスを行う。
特定の組織(例えば企業)に送り込まれるマルウェアは、多くのアンチウイルスソフトウェアで採用されるパターンファイルを回避するように製造されることが多く、アンチウイルスソフトウェアの検知をすり抜けてしまう。
すなわち、アンチウイルスソフトウェアでの検知にはマルウェアに対応したパターンファイルが必要である。しかし、標的型攻撃を行うマルウェアは、従来のマルウェアと異なり攻撃対象が限定されているため、一般に知られにくく、すぐに存在を認識できない。従って、アンチウイルスソフトウェアベンダのパターンファイル作成が遅れることがある。そして、多くのアンチウイルスソフトウェアでは標的型攻撃で用いられるマルウェアの検知が遅れる可能性がある。
技術的に標的型攻撃を防御することは困難であり、関係者を装う怪しいメールが送られてきた場合はマルウェアを懸念し添付ファイルを開かせないように、従業員(ユーザ)に教育して対応するという考え方もある(例えば、非特許文献1)。しかしながら、一定の効果はあるものの、一部の従業員(ユーザ)は怪しいメールの添付ファイルを開いてしまい、マルウェアが実行されてしまうという課題がある。そして、例えば、従業員(ユーザ)は、実行されたマルウェアが情報漏洩等の不正アクセスを行っているか否かを認識することが出来ないという課題がある。
また、スパイウェア(マルウェア)の検知にHTTP(HyperText Transfer Protocol)ヘッダの特徴を調べ、ブラウザによる通信か、それ以外のプログラムによる通信かを判断する方法が示されている(例えば、非特許文献2)。しかしながら、スパイウェア(マルウェア)の誤検知の課題がある。
ユーザへの予防接種というアプローチによる標的型攻撃対策−2、山口他、情報処理学会第71回全国大会 6E−4 HTTP利用型スパイウェアの検知および遮断方式の検討、大谷他、情報処理学会 研究報告2005−CSEC−31
前記のように例えばユーザは、ユーザが意図しない通信(例えばマルウェアによる不正アクセス)が行われていても、その通信(不正アクセス)を検知することが出来ないという課題がある。
この発明は前記のような課題を解決することを主な目的とするもので、例えば、ユーザが意図しない通信によりアクセスされたアクセス先のアドレスを抽出するアドレス抽出装置を実現することを主な目的とする。
この発明に係るアドレス抽出装置は、
ブラウザが実装されている端末装置からアクセス先として通知されたアドレスにアクセスを行うプロキシサーバ装置がアクセスを行ったアドレスの内、所定のアドレスを抽出するアドレス抽出装置であって、
前記プロキシサーバ装置が行ったアクセス毎にアクセス先のアドレスが示されるプロキシログと、あらかじめ正当と定義されたアドレスが示される正当アドレス情報と、前記端末装置で前記ブラウザが実行されて前記端末装置から前記プロキシサーバ装置にアクセス先として通知したアドレスが示されるブラウザ実行アドレス情報と
を入力するアドレス入力部と、
前記アドレス入力部により入力されたプロキシログに示されるアドレスの内、前記正当アドレス情報と前記ブラウザ実行アドレス情報とのいずれにも示されていないアドレスを抽出するアドレス抽出部と
を備えることを特徴とする。
この発明に係るアドレス抽出装置は、例えば、プロキシサーバ装置のプロキシログに記録されたアクセス先のアドレスから、ブラウザによるアクセスを含む正当なアクセスによるアクセス先のアドレス以外のアドレスを抽出する。この為、この発明に係るアドレス抽出装置は、正当なアクセス以外、すなわちユーザが意図しない不正な通信によりアクセスされたアクセス先のアドレスを抽出することが可能である。
実施の形態1を示す図で、不正WEBアクセス検知システムの周辺構成の例を示す図。 実施の形態1を示す図で、不正WEBアクセス検知システムの構成の例を示す図。 実施の形態1を示す図で、プロキシログの例を示す図。 実施の形態1を示す図で、プロキシログ取り込み部の処理の例を示すフローチャート。 実施の形態1を示す図で、プロキシログエントリの例を示す図。 実施の形態1を示す図で、URLホワイトリスト取り込み部の処理の例を示すフローチャート。 実施の形態1を示す図で、URLホワイトリストの例を示す図。 実施の形態1を示す図で、ホワイトURLの例を示す図。 実施の形態1を示す図で、グレーURL特定部の処理の例を示すフローチャート。 実施の形態1を示す図で、グレーURL情報の例を示す図。 実施の形態1を示す図で、ブラウザログの第1の例を示す図。 実施の形態1を示す図で、ブラウザログの第2の例を示す図。 実施の形態1を示す図で、ブラウザログの第3の例を示す図。 実施の形態1を示す図で、ブラウザログ取り込み部の処理の例を示すフローチャート。 実施の形態1を示す図で、ブラウザログエントリの例を示す図。 実施の形態1を示す図で、ブラックURL特定部の処理の例を示すフローチャート。 実施の形態1を示す図で、ブラックURL情報の例を示す図。 実施の形態2を示す図で、ブラックURL特定部の処理の例を示す図。 実施の形態2を示す図で、ブラックURL情報の例を示す図。 実施の形態4を示す図で、端末装置の構成の第1の例を示す図。 実施の形態4を示す図で、端末装置の構成の第2の例を示す図。 実施の形態5を示す図で、リファラの第1の例を示す図。 実施の形態5を示す図で、リファラの第2の例を示す図。 実施の形態5を示す図で、端末操作ログの例を示す図。 実施の形態5を示す図で、端末操作ログ取り込み部の処理の例を示すフローチャート。 実施の形態5を示す図で、WEBアクセスURL情報の例を示す図。 実施の形態5を示す図で、トップページURL情報の例を示す図。 実施の形態5を示す図で、ブラウザアクセスURL特定部の処理の第1の例を示すフローチャート。 実施の形態5を示す図で、ブラウザアクセスURL特定部の処理の第2の例を示すフローチャート。 実施の形態5を示す図で、ブラウザアクセスURL_ALLの例を示す図。 実施の形態5を示す図で、ブラウザアクセスURL特定部の処理の第2の例で生成されたブラウザアクセスURL情報の例を示す図。 実施の形態6を示す図で、ブラックURL特定部の処理の例を示すフローチャート。 実施の形態7を示す図で、ブラックURL特定部の処理の例を示すフローチャート。 実施の形態7を示す図で、ブラックURL候補のウェブページへのアクセス数の例を示す図。 実施の形態8を示す図で、ブラックURL特定部の処理の例を示すフローチャート。 実施の形態8を示す図で、ブラックURL候補のウェブページへのアクセス数の例を示す図。 実施の形態9を示す図で、ブラックURL特定部の処理の例を示すフローチャート。 実施の形態1〜9を示す図で、不正WEBアクセス検知システムのハードウェア資源の例を示す図。
実施の形態1.
(不正WEBアクセス検知システムの周辺構成)
図1は、不正WEBアクセス検知システムの周辺構成の例を示す図である。
不正WEBアクセス検知システム100は、例えばマルウェアによってアクセスされたURL(Uniform Resource Locator)を抽出する。ここで、URLは例えばプロキシサーバ装置600(後述で説明)がアクセスを行うアクセス先のアドレスである。すなわち、不正WEBアクセス検知システム100は、アドレス抽出装置である。そして、不正WEBアクセス検知システム100はプロキシサーバ装置600がアクセスを行ったアドレスの内、所定のアドレスを抽出する。不正WEBアクセス検知システム100が抽出する所定のアドレスについては後述で説明する。
不正WEBアクセス検知システム100が抽出するアドレスは、URLに限られるものではなく、例えば、IP(Internet Protocol)アドレスでも良いし、電子メールアドレスでも良い。
ここで、例えばマルウェアによってアクセスされたアドレス(URL)を以降「不正なアドレス」と称する。
そして、不正WEBアクセス検知システム100の周辺には、端末装置500とプロキシサーバ装置600とが配置される。不正WEBアクセス検知システム100と端末装置500とプロキシサーバ装置600とは、例えば、LAN(Local Area Network)などで接続されている。
ここで、図示は省略するが、端末装置500は例えば、企業などの組織で使われる個人用のパーソナルコンピュータなどであり、複数の端末装置500も例えばLANなどで接続されている。
また、不正WEBアクセス検知システム100は、端末装置501に含まれていても良い。ここで、端末装置501は例えば、企業などの組織で使われるパーソナルコンピュータなどであり、端末装置501も例えばLANなどで接続されている。
そして、不正WEBアクセス検知システム100は、プロキシサーバ装置600からプロキシログ201を入力する。また、不正WEBアクセス検知システム100は、端末装置500から端末操作ログ203とブラウザログ214とを入力する。更に、不正WEBアクセス検知システム100は、例えば企業などの組織に設置されたサーバ装置の記憶装置などに記憶されているURLホワイトリスト202を入力する。
本実施の形態の不正WEBアクセス検知システム100は、これらのログ(プロキシログ201など)を用いて、マルウェアによるWEB通信を検知する。ここでWEB通信とは、端末装置500などの例えばコンピュータがインターネット上のWEB(ウェブ)サイト(WEBサイトをWEB(ウェブ)ページとも称する)と行う通信のことである。HTTPを用いた通信の場合は、WEB通信をHTTP通信とも称する。
(プロキシサーバ装置600の説明)
例えば、企業などの組織では、端末装置500がネットワーク150(例えばインターネットなど)を介して、WEBサイトにアクセスする際に、端末装置500から直接WEBサイトにアクセスするのではなく、プロキシが端末装置500の代理でWEBサイトにアクセスする。
本実施の形態では、例えば組織に1台設置されているプロキシをプロキシサーバ装置600と称する。
端末装置500は、WEBサイトのアドレスと共に、プロキシサーバ装置600にWEBサイトへ送りたいHTTPリクエストを送信し、プロキシサーバ装置600はWEBサイトへこのHTTPリクエストを転送する。
すなわち、プロキシサーバ装置600は、端末装置500からアクセス先として通知されたアドレスにアクセスを行う。
WEBサイトからのHTTPレスポンスはプロキシサーバ装置600に送られ、プロキシサーバ装置600はこのレスポンスを端末装置500へ転送することで、端末装置500はWEBサイトにアクセスする。従って、プロキシサーバ装置600は、アクセスを行った端末装置500と、アクセス先のWEBサイトと、アクセスの際のリクエスト及びレスポンスの内容とを記録することができる。
(プロキシログ201の説明)
前述のように、例えば企業など組織内の端末装置500はWEBサイトにアクセスする際に、プロキシサーバ装置600にHTTP接続する。プロキシサーバ装置600は端末装置500の代りにインターネットに接続しWEB通信(HTTP通信)を行う。WEB通信(HTTP通信)の結果はプロキシサーバ装置600から端末装置500へ転送される。
そして、端末装置500がWEBサイトにアクセスする際に接続するプロキシサーバ装置600のログが、プロキシログ201である。すなわち、プロキシログ201はプロキシサーバ装置600が端末装置500とWEBサイトとの通信状況(例えばWEBサイトのアドレス)を記録したログである。
例えば、マルウェアがWEBアクセスする場合は必ずプロキシサーバ装置600に接続するため、プロキシログ201に通信記録が残る。また、マルウェア以外のWEBアクセス(ブラウザ551、アプリケーションからの通信)もプロキシログ201に通信記録が残る。
(URLホワイトリスト202の説明)
URLホワイトリスト202は、ホワイトURLのリストである。ホワイトURLは予め組織でアクセスが許可されているURLである。例えば、OS(Operating System)、オフィスアプリケーションのアップデートサイトやニュースサイトなどがある。
すなわち、ホワイトURLは、あらかじめ正当と定義されたアドレスである。そして、URLホワイトリスト202は、あらかじめ正当と定義されたアドレスが示される正当アドレス情報に対応する。
(ブラウザログ214の説明)
端末装置500は、ブラウザ551が実装されている。端末装置500は、ブラウザ551を実行してWEBアクセスした場合、そのアクセス先のアドレスをブラウザログ214として記録する。換言すると、ブラウザログ214に記録されるアドレスは、端末装置500でブラウザ551が実行されて、端末装置500からプロキシサーバ装置600にアクセス先として通知されたアドレスである。
ブラウザログ214は、例えば端末装置500の記憶装置に記憶される。
また、ブラウザログ214は、ブラウザ実行アドレス情報に対応する。
(端末操作ログ203の説明)
端末装置500は、端末操作記録アプリケーションを備える。端末操作記録アプリケーションが、ユーザの端末装置500の操作を記録したものが端末操作ログ203である。端末操作ログ203は、例えば端末装置500の記憶装置に記憶される。
ここで、端末操作記録アプリケーションは各ユーザが端末装置500上でどのような操作を行っているか監視し内部統制するためのソフトウェアである。端末操作記録アプリケーションはファイル操作(ファイルの生成、削除、コピー、リネーム、移動など)、外部記憶媒体への書き出し、操作されたアプリケーション(ウィンドウタイトル)、WEBアクセス状況などを記録する。端末操作記録アプリケーションは例えば市販されているソフトウェアを用いても良い。
ユーザがブラウザ551を用いて行った指示に基づき、端末装置500がWEBアクセスした場合、その操作の記録(例えばWEBサイトのアドレス)はブラウザログ214以外に、端末操作ログ203にも記録される。端末操作ログ203は、ブラウザ実行アドレス情報に対応する。
ここで、端末装置500は、ユーザの指示(例えばユーザがブラウザ551を用いて行う指示)に基づいて、プロキシサーバ装置600にアクセス先のアドレスを通知する。そして、ユーザの指示に基づき、端末装置500が通知したアドレスが示される情報をユーザ指示情報と称する。
すなわち、端末操作ログ203は、ユーザ指示情報にも対応する。
(不正WEBアクセス検知システム100の構成)
図2は、不正WEBアクセス検知システム100の構成の例を示す図である。不正WEBアクセス検知システム100を構成する各要素について説明する。
(プロキシログ取り込み部101)
プロキシログ取り込み部101は、プロキシログ201、端末識別子205、期間206を入力とし、ログの内容であるプロキシログエントリ301を抽出する。
ここで、図1において図示は省略しているが、端末装置500は前述の通り複数設置されており、端末識別子205は、個々の端末装置500を識別する為の識別子である。
例えばユーザが不正WEBアクセス検知システム100を用いて調査を行いたい対象の端末装置500の識別子を、例えばキーボードの様な入力装置を用いて入力する。この入力装置は、不正WEBアクセス検知システム100に備えられていても良いし、不正WEBアクセス検知システム100の外部であっても良い。
また、期間206は、例えばユーザが不正WEBアクセス検知システム100を用いて不正なアドレスを調査する期間の情報である。期間206は、期間特定部200によって入力される。期間特定部200は、例えばキーボードの様な入力装置であっても良いし、予め期間206の情報が記憶されている記憶装置であっても良い。そして、期間特定部200は不正WEBアクセス検知システム100に備えられていても良いし、不正WEBアクセス検知システム100の外部であっても良い。
また、プロキシログ201は前述の通り、WEBサイトのアドレスが記録されている。すなわち、プロキシログ取り込み部101はアドレス入力部に対応する。
(URLホワイトリスト取り込み部102)
URLホワイトリスト取り込み部102は、URLホワイトリスト202を入力し、URLホワイトリスト202の内容であるホワイトURL302を抽出する。
ここで、URLホワイトリスト202は前述の通り、あらかじめ正当と定義されたアドレスが示される。すなわち、URLホワイトリスト取り込み部102はアドレス入力部に対応する。
URLホワイトリスト202は、例えばキーボードの様な入力装置からユーザが入力しても良いし、予め記憶装置に記憶されていても良い。そして、これらの入力装置や記憶装置は不正WEBアクセス検知システム100に備えられていても良いし、不正WEBアクセス検知システム100の外部であっても良い。
(端末操作ログ取り込み部103)
端末操作ログ取り込み部103は、端末操作ログ203を入力し、ブラウザによりアクセスされたWEBサイトのURL情報であるWEBアクセスURL情報303を抽出する。WEBアクセスURL情報303は図2における図示は省略するが、ブラウザ実行アドレス情報に対応する。
ここで、端末操作ログ203は前述の通り、WEBサイトのアドレスが記録されている。すなわち、端末操作ログ取り込み部103はアドレス入力部に対応する。
また、端末操作ログ取り込み部103は、ブラウザ操作期間315(後述で説明)を算出する。
(ブラウザログ取り込み部114)
ブラウザログ取り込み部114は、ブラウザログ214、端末識別子205、期間206を入力し、ブラウザログ214の内容であるブラウザログエントリ314を抽出する。ブラウザログエントリ314も図2における図示は省略するが、ブラウザ実行アドレス情報に対応する。また、ブラウザログ取り込み部114はアドレス入力部に対応する。
(グレーURL特定部105)
グレーURL特定部105は、プロキシログエントリ301、ホワイトURL302を入力し、マルウェアがアクセスしている可能性があるURL情報であるグレーURL情報305を抽出する。すなわち、グレーURL特定部105は、アドレス抽出部に対応する。
(トップページURL特定部106)
トップページURL特定部106は、WEBアクセスURL情報303、ブラウザログエントリ314を入力し、ブラウザ551によりアクセスされたアドレスを抽出し、トップページURL情報306として出力する。トップページURL情報306も、図2における図示は省略するが、ブラウザ実行アドレス情報に対応する。
(ブラウザアクセスURL特定部107)
ブラウザアクセスURL特定部107は、トップページURL情報306、ブラウザログエントリ314、プロキシログエントリ301を入力し、ブラウザ551によりアクセスされたアドレスもしくは、ブラウザ551によりアクセスされたアドレスのリンク先のアドレスをブラウザアクセスURL情報307として出力する。
ここで、ブラウザアクセスURL特定部107は、ドメイン名抽出部と経由先抽出部とに対応する。
また、ブラウザアクセスURL情報307は、図2における図示は省略するが、ブラウザ実行アドレス情報と経由先アドレスとに対応する。
(ブラックURL特定部108)
ブラックURL特定部108は、グレーURL情報305、ブラウザアクセスURL情報307、ブラック判定条件207を入力し、マルウェアのアクセスしたサイトと思われるブラックURL208を抽出する。すなわち、ブラックURL特定部108はアドレス抽出部に対応する。
そして、ブラック判定条件207はグレーURL情報に含まれるURL情報がマルウェアによりアクセスされたか判定するための条件を表す情報である。ブラックURL特定部108はブラック判定条件207に合致するアドレスを特定する条件合致アドレス特定部にも対応する。
また、ブラックURL特定部108は、外部サービス209(後述で説明)から情報を入力する情報入力部に対応する。
更に、図2では図示を省略しているが、ブラックURL特定部108は、プロキシログ201を入力することも可能である。そして、ブラックURL特定部108は入力したプロキシログ201のデータを用いて所定の時間毎のアクセス数などを算出する(後述で説明)通信量算出部に対応する。
(ログ蓄積部109)
ログ蓄積部109は、プロキシログ201、端末操作ログ203、ブラウザログ214を入力し、ログ蓄積部109の内部に備えられた例えば、磁気ディスク装置などの記憶装置に蓄積する。
ログ蓄積部109は、アドレス入力部に対応する。
プロキシログ取り込み部101は、ログ蓄積部109が蓄積したプロキシログ201を入力する。また、端末操作ログ取り込み部103は、ログ蓄積部109が蓄積した端末操作ログ203を入力する。また、ブラウザログ取り込み部114は、ログ蓄積部109が蓄積したブラウザログ214を入力する。
(不正WEBアクセス検知システム100の動作説明)
不正WEBアクセス検知システム100の動作について説明する。
なお、実施の形態1においては、端末操作ログ取り込み部103とトップページURL特定部106とは使用されない。
(プロキシログ取り込み部101の処理)
図3は、プロキシログ201の例を示す図である。
図4は、プロキシログ取り込み部101の処理の例を示すフローチャートである。
図5は、プロキシログエントリ301の例を示す図である。
プロキシログ取り込み部101は、プロキシログ201と期間206と端末識別子205とを入力する。
期間206は、ある特定の期間にマルウェアからWEBアクセスがあったか否かを確認するために、例えばユーザが期間特定部200を用いて指定する期間である。例えば、「2011/11/23 09:00:00〜2011/11/23 18:00:00」の期間にマルウェアからのWEBアクセスの有無を調べる場合、期間特定部200は、期間206として「2011/11/23 09:00:00〜2011/11/23 18:00:00」を指定する。
プロキシログ201には、図3に示すフォーマットのように、例えば「アクセス日時、端末識別子、アクセスしたWEBサイトのURL、メソッド(GET/POSTなど)、ステータスコード、通信サイズ」が時系列順に記録される。
更に、プロキシログ201には、リファラが記録される。リファラについては後述で詳細を説明する。
ここで、実施の形態の説明において示されるURL(例えば、図3の「http://○○○.1234.△△△/」)は、あくまで例として挙げられたものであり、実在のURLとは無関係である。
また、プロキシログ201には、プロキシサーバ装置600に接続された全ての端末装置500からの全てのWEBアクセスが記録される。ただし、図3では、端末識別子「192.168.1.2」以外の端末装置500のWEBアクセスの図示を省略している。ここで、全てのWEBアクセスとは、例えば、ブラウザや、WEB通信を行うアプリケーションや、WEB通信を行うマルウェアなどによるWEBアクセスである。
そして、プロキシログ201には、これらのWEBアクセス毎にプロキシサーバ装置600がアクセスを行ったアクセス先のアドレスが示されている。
すなわち、プロキシログ201は、プロキシサーバ装置600が行ったアクセス毎にアクセス先のアドレスが示されている。
また図3において図示は省略するが、プロキシログ201には、「コンテンツが自動で取得したコンテンツの記録」が記録されていてもよい。
例えば、「(http://○○○.abc−sample.△△△/のコンテンツが自動で取得したコンテンツの記録)」を説明する。プロキシサーバ装置600がhttp://○○○.abc−sample.△△△/にアクセスした結果、プロキシサーバ装置600が取得したコンテンツの中に、画像や動画などを取り込むタグが記録されていた場合に、プロキシサーバ装置600は、httpでそれらの画像や動画を自動的に取得する。そして、「コンテンツが自動で取得したコンテンツの記録」であるそれらの画像や動画もプロキシログ201に記録されていてもよい。
図4を用いて、プロキシログ取り込み部101の動作を説明する。
ここで、期間206は「2011/11/23 09:00:00〜2011/11/23 18:00:00」、端末識別子205は、「192.168.1.2」が指定されているとする。
まず、プロキシログ取り込み部101は、プロキシログ201の全てのエントリを入力したか否かを判定する(図4のS401)。
ここで、プロキシログ201やブラウザログ214などの情報を構成する行を以降「エントリ」と称する。例えば図3のD3011の行が1つのエントリとなる。
プロキシログ取り込み部101は、全てのエントリを入力していなければ(図4のS401の「NO」)、入力していないプロキシログ201のエントリを例えばアクセス日時の時系列順に入力する(図4のS402)。
次に、プロキシログ取り込み部101は、入力したエントリのアクセス日時が期間206の範囲内か否かを判定する(図4のS403)。
アクセス日時が期間206の範囲内であれば(図4のS403の「YES」)、プロキシログ取り込み部101は、入力したエントリの端末識別子が、端末識別子205と一致するか否かを判定する(図4のS404)。
端末識別子が、端末識別子205と一致すれば(図4のS404の「YES」)、プロキシログ取り込み部101は、読み込んだエントリをプロキシログエントリ301として出力する(図4のS405)。
そして、図4のS401の処理に戻り、プロキシログ取り込み部101は、プロキシログ201の全てのエントリを入力するまで(図4のS401の「YES」)、図4のS401からS405の処理を繰り返す。
例えば、図5に示すプロキシログエントリ301a〜301fのそれぞれ1行ずつが1つのプロキシログエントリである。そして、例えば、プロキシログエントリ301a〜301fでプロキシログエントリ301のセットを構成している。
すなわち、プロキシログ取り込み部101は、図3に示すプロキシログ201のエントリの内、期間206にアクセス日時が該当し、端末識別子が端末識別子205に該当するエントリを抽出し、図5に示すプロキシログエントリ301のセットを生成する。
(URLホワイトリスト取り込み部102の処理)
図6は、URLホワイトリスト取り込み部102の処理の例を示すフローチャートである。
図7は、URLホワイトリスト202の例を示す図である。
図8は、ホワイトURL302の例を示す図である。
URLホワイトリスト取り込み部102は、URLホワイトリスト202を入力する。
URLホワイトリスト202は、例えば企業などの組織でアクセスが許可されたURLのリストであり、図7に示すフォーマットのように、例えば「URL、備考」が記録される。
URLホワイトリスト取り込み部102は、URLホワイトリスト202の各エントリの最初の要素であるURLを抽出し、ホワイトURL302として出力する。
図6を用いて、URLホワイトリスト取り込み部102の動作を説明する。
まず、URLホワイトリスト取り込み部102は、URLホワイトリスト202の全てのエントリを入力したか否かを判定する(図6のS601)。
URLホワイトリスト取り込み部102は、全てのエントリを入力していなければ(図6のS601の「NO」)、入力していないURLホワイトリスト202のエントリを入力する(図6のS602)。
次に、URLホワイトリスト取り込み部102は、入力したエントリのURLを抽出する(図6のS603)。
そして、URLホワイトリスト取り込み部102は、抽出したURLをホワイトURL302として出力する(図6のS604)。
そして、図6のS601の処理に戻り、URLホワイトリスト取り込み部102は、URLホワイトリスト202の全てのエントリを入力するまで(図6のS601の「YES」)、図6のS601からS604の処理を繰り返す。
例えば、図8に示すホワイトURL302a〜302bのそれぞれ1行ずつが1つのホワイトURLである。そして、例えば、ホワイトURL302a〜302bでホワイトURL302のセットを構成している。
(グレーURL特定部105の処理)
図9は、グレーURL特定部105の処理の例を示すフローチャートである。
図10は、グレーURL情報305の例を示す図である。
グレーURL特定部105は、プロキシログエントリ301(プロキシログエントリ301のセット)とホワイトURL302(ホワイトURL302のセット)とを入力する(図9のS901)。
ここで、プロキシログエントリ301は、図5に示す例とし、ホワイトURL302は図8に示す例とする。
なお、プロキシログエントリ301(プロキシログエントリ301のセット)は、前述の通りプロキシログ201から抽出されたものであり、プロキシログエントリ301(プロキシログエントリ301のセット)に示されるURL(アドレス)は、前述の通りプロキシログ201に示されるURL(アドレス)である。
そして、ホワイトURL302は、URLホワイトリスト202(正当アドレス情報)に示されるアドレスである。
そして、グレーURL特定部105は、プロキシログエントリ301のセットの内、ホワイトURL302が含まれるプロキシログエントリ301を削除する(図9のS902)。
具体的には、図5に示すプロキシログエントリ301cに、図8に示すホワイトURL302aが含まれ、図5に示すプロキシログエントリ301dに、図8に示すホワイトURL302bが含まれる。よって、グレーURL特定部105は、プロキシログエントリ301のセットの内、プロキシログエントリ301cとプロキシログエントリ301dとを削除する。
ここで、ホワイトURL302が含まれるプロキシログエントリ301を削除するとは、換言すると、ホワイトURL302以外のURLが含まれるプロキシログエントリ301を抽出することである。つまり、グレーURL特定部105は、実質的にホワイトURL302以外のURLをプロキシログエントリ301のセットから抽出している。
すなわち、グレーURL特定部105は、プロキシログエントリ301のセット(プロキシログ201)に示されるURL(アドレス)の内、URLホワイトリスト202(正当アドレス情報)に示されていないURL(アドレス)を抽出する。
換言すると、グレーURL情報305は、プロキシログエントリ301のセット(プロキシログ201)に示されるURLの内、URLホワイトリスト202(正当アドレス情報)に示されていないURLを示す情報である。
そして、グレーURL特定部105は、編集したプロキシログエントリ301のセット(すなわち、ホワイトURL302が含まれるプロキシログエントリ301を削除したプロキシログエントリ301のセット)をグレーURL情報305として出力する(図9のS903)。
グレーURL情報305の例を図10に示す。ここで、図10の例は、プロキシログエントリ301に含まれるURL以外の情報(例えばアクセス日時、端末識別子など)も含まれているが、グレーURL情報305は、WEBサイトのURLの情報のみであってもも良い。
(ブラウザログ取り込み部114の処理)
図11は、ブラウザログ214の第1の例を示す図である。
図12は、ブラウザログ214の第2の例を示す図である。
図13は、ブラウザログ214の第3の例を示す図である。
図14は、ブラウザログ取り込み部114の処理の例を示すフローチャートである。
図15は、ブラウザログエントリ314の例を示す図である。
ブラウザログ取り込み部114は、ブラウザログ214と期間206と端末識別子205とからブラウザログエントリ314を抽出する。
ただし、ブラウザログ214に端末識別子205の情報が記録されていない場合は、ブラウザログ取り込み部114は、ブラウザログ214と期間206とからブラウザログエントリ314を抽出する。本実施の形態においては、ブラウザログ214に端末識別子205の情報が記録されていない場合について説明する。
ブラウザログ214には、例えば以下のような3つの記録形態が想定される。
(1)ブラウザログ214の第1の例
ブラウザログ214の第1の例(図11)は、端末装置500が実行したブラウザ551がWEB通信した全てのURLがアクセス日時と共に記録される形態である。
ここで、ブラウザ551がWEB通信した全てのURLとは、例えば、ユーザがキーボードなどの入力装置を用いて直接ブラウザに入力したURL、ユーザがマウスなどの入力装置を用いてブラウザ上のリンクをクリックしたURL、ユーザがマウスなどの入力装置を用いてブックマークからアクセスしたURL、イメージファイルなどブラウザが自動的に取得したコンテンツのURL、JavaScript(登録商標)などで生成されブラウザがアクセスしたURL、動画がアクセスするURLである。
(2)ブラウザログ214の第2の例
ブラウザログ214の第2の例(図12)は、ユーザの操作に基づきブラウザ551がWEB通信したURLがアクセス日時と共に記録される形態である。
ここで、ユーザの操作に基づきブラウザ551がWEB通信したURLとは、例えば、ユーザがキーボードなどの入力装置を用いて直接ブラウザに入力したURL、ユーザがマウスなどの入力装置を用いてブラウザ上のリンクをクリックしたURL、ユーザがマウスなどの入力装置を用いてブックマークからアクセスしたURLである。
(3)ブラウザログ214の第3の例
ブラウザログ214の第3の例(図13)は、ブラウザ551がWEB通信して取得したコンテンツのうち、端末装置500に備えられているキャッシュメモリに記憶されたコンテンツのURLがアクセス日時とコンテンツの名前と共に記録される形態である。
そして、ブラウザログ214は、ブラウザログ214の第2の例とブラウザログ214の第3の例とが組み合わされた形態でもよい。
ブラウザログ214は、端末装置500が備える記憶装置にファイルとして記憶されていてもよいし、端末装置500が備える記憶装置にブラウザ551が保持するデータベースとして記憶されていてもよい。
図14を用いて、ブラウザログ取り込み部114の動作を説明する。
ここで、期間206は「2011/11/23 09:00:00〜2011/11/23 18:00:00」が指定されているとする。
また、ブラウザログ214は、図11に示すブラウザログ214の第1の例とする。なお、ブラウザログ取り込み部114が処理に用いるブラウザログ214は、ブラウザログ214の第2の例であってもよいし、ブラウザログ214の第3の例であってもよいし、ブラウザログ214の第2の例と第3の例との組合せであってもよい。
まず、ブラウザログ取り込み部114は、ブラウザログ214の全てのエントリを入力したか否かを判定する(図14のS1401)。
ブラウザログ取り込み部114は、全てのエントリを入力していなければ(図14のS1401の「NO」)、入力していないブラウザログ214のエントリを例えばアクセス日時の時系列順に入力する(図14のS1402)。
次に、ブラウザログ取り込み部114は、入力したエントリのアクセス日時が期間206の範囲内か否かを判定する(図14のS1403)。
アクセス日時が期間206の範囲内であれば(図14のS1403の「YES」)、ブラウザログ取り込み部114は、読み込んだエントリをブラウザログエントリ314として出力する(図14のS1405)。
ここで、本実施の形態では、ブラウザログ214に端末識別子が記録されていない場合であり、図14のS1404の処理は省略される。しかし、ブラウザログ214に端末識別子が記録されている場合、ブラウザログ取り込み部114は、入力したエントリの端末識別子が、端末識別子205と一致するか否かを判定する(図14のS1404)。
そして、図14のS1401の処理に戻り、ブラウザログ取り込み部114は、ブラウザログ214の全てのエントリを入力するまで(図14のS1401の「YES」)、図14のS1401からS1405の処理を繰り返す。
例えば、図15に示す1つの行が1つのブラウザログエントリ314である。図15の例では、ブラウザログエントリ314は1つだけであるが、ブラウザログエントリ314が複数有る場合は、複数のブラウザログエントリ314でブラウザログエントリ314のセットを構成する。
すなわち、ブラウザログ取り込み部114は、図11に示すブラウザログ214のエントリの内、期間206にアクセス日時が該当するエントリを抽出し、図15に示すブラウザログエントリ314のセットを生成する。
(ブラウザアクセスURL特定部107の処理)
実施の形態1において、ブラウザアクセスURL特定部107は、ブラウザログ取り込み部114で抽出されたブラウザログエントリ314を、ブラウザアクセスURL情報307としてブラックURL特定部108に転送する。すなわち、ブラウザアクセスURL情報307は、図15のブラウザログエントリ314と同じものである。
(ブラックURL特定部108の処理)
図16は、ブラックURL特定部108の処理の例を示すフローチャートである。
図17は、ブラックURL情報250の例を示す図である。
まず、ブラックURL特定部108は、グレーURL情報305の全てのエントリを入力したか否かを判定する(図16のS1601)。
ここで、グレーURL情報305は図10に示す例であり、例えばD2501の行が1つのエントリである。
ブラックURL特定部108は、全てのエントリを入力していなければ(図16のS1601の「NO」)、入力していないグレーURL情報305のエントリを例えばアクセス日時の時系列順に入力する(図16のS1602)。
次に、ブラックURL特定部108は、ブラウザアクセスURL情報307におけるエントリの先頭を設定する(図16のS1603)。
本説明においては、ブラウザアクセスURL情報307は図15に示す例であり、エントリは1つしか無いので先頭の選択の余地が無いが、エントリが複数有る場合、ブラックURL特定部108は、例えばアクセス日時の一番早いエントリを先頭に設定する。
そして、ブラックURL特定部108は、ブラウザアクセスURL情報307の全てのエントリを入力したか否かを判定する(図16のS1604)。
ブラックURL特定部108は、全てのエントリを入力していなければ(図16のS1604の「NO」)、入力していないブラウザアクセスURL情報307のエントリを例えばアクセス日時の時系列順に入力する(図16のS1605)。
一方、ブラックURL特定部108は、全てのエントリを入力していれば(図16のS1604の「YES」)、S1601の処理に戻る。
そして、ブラックURL特定部108は、入力しているブラウザアクセスURL情報307のエントリのURLと、グレーURL情報305のエントリのURLとが一致するか否かを判定する(図16のS1606)。
ブラウザアクセスURL情報307のエントリのURLと、グレーURL情報305のエントリのURLとが一致する場合(図16のS1606の「YES」)、ブラックURL特定部108は、グレーURL情報305から当該エントリを削除する(図16のS1607)。そして、ブラックURL特定部108は、S1601の処理に戻る。
一方、ブラウザアクセスURL情報307のエントリのURLと、グレーURL情報305のエントリのURLとが一致しない場合(図16のS1606の「NO」)、ブラックURL特定部108は、S1604の処理に戻る。
そして、ブラックURL特定部108は、編集後のグレーURL情報305をブラックURL情報250とする。ブラックURL情報250の具体例を図17に示す。
ここで、ブラックURL情報250(例えば図17に示す例)に含まれるURLの情報を(例えばD2502の「http://○○○.1234.△△△/2011/a.htm」)を、ブラックURL208と称する。
ここで、グレーURL情報305に示されるURLは、プロキシログ201に示されるURLの内、ホワイトURL302に示されていないURLである。そして、ブラックURL208は、グレーURL情報305に示されるURLの内、ブラウザログエントリ314に示されていないURLである。
すなわち、ブラックURL特定部108は、プロキシログ201に示されるURLの内、ホワイトURL302とブラウザログエントリ314とのいずれにも示されていないURLを抽出する。
(実施の形態1の効果)
実施の形態1における不正WEBアクセス検知システム100は、プロキシログ201から、ホワイトURL302を除外したグレーURL情報305に対して、ブラウザ551によりアクセスされたURL(ブラウザログエントリ314)を除外することによりユーザが意図しないマルウェアによる通信によりアクセスされたと思われるブラックURL208を特定する。
つまり、実施の形態1の不正WEBアクセス検知システム100は、例えば企業などの組織に許可されたURLでなく、ブラウザからアクセスしたURLでもないブラックURL208を抽出することが可能である。このブラックURL208は、端末装置500からのWEB通信においてユーザの意図しないアクセスのアクセス先である。従って、本実施の形態の不正WEBアクセス検知システム100は、例えば情報漏洩等マルウェアが行う不正なWEB通信によりアクセスされたURLを検知することが可能である。
換言すると、不正WEBアクセス検知システム100は、大量のプロキシログ201の情報から、例えば管理者のスキルに依存することなく、ユーザの意図と関係ないアクセスのアクセス先のURLを検知することが可能である。
実施の形態2.
実施の形態2の不正WEBアクセス検知システム100では、ブラウザアクセスURL特定部107は、ブラウザログエントリ314に記録されたURLのドメイン名の一部を抽出し、抽出したドメイン名の一部をブラウザアクセスURL情報307として出力する。
なお、実施の形態2の不正WEBアクセス検知システム100の構成は、実施の形態1と同様である。
以降、実施の形態1と共通する部分(構成や処理)については、説明を省略する。
なお、実施の形態2においても端末操作ログ取り込み部103とトップページURL特定部106とは使用されない。
実施の形態1において、不正WEBアクセス検知システム100が処理の対象とするアドレスは、前述の通り、例えばIPアドレスであってもよい。一方、実施の形態2において、不正WEBアクセス検知システム100が処理の対象とするアドレスは、URLであるものとする。
すなわち、プロキシログ取り込み部101は、URLがアドレスとして示されるプロキシログ201を入力する。URLホワイトリスト取り込み部102は、URLがアドレスとして示されるURLホワイトリスト202を入力する。ブラウザログ取り込み部114は、URLがアドレスとして示されるブラウザログ214を入力する。
(ブラウザアクセスURL特定部107の処理)
実施の形態2において、ブラウザアクセスURL特定部107は入力したブラウザログエントリ314に示されるURLから、当該URLのウェブページの提供元が特定されるドメイン名を抽出する。
ここで、URLのウェブページの提供元が特定されるドメイン名について説明する。
例えば、URLが、「http://www.△△△.co.jp/index/sample.jpg」である場合、URLのウェブページの提供元が特定されるドメイン名は、「△△△.co.jp」である。
すなわち、URLのウェブページの提供元が特定されるドメイン名は、例えばウェブページの提供元である企業などが特定されるドメイン名である。
ブラウザアクセスURL特定部107は、ブラウザログエントリ314に示されるURLから、スキーム名(例えば上記の例では「http://」)とホスト名(例えば上記の例では「www.」)とトップページ以下のURL(例えば上記の例では「/index/sample.jpg」)とを除いたものをURLのウェブページの提供元が特定されるドメイン名として抽出する。
ブラウザアクセスURL特定部107は、更に、トップレベルドメイン(例えば「.com」など)を除いたものをURLのウェブページの提供元が特定されるドメイン名として抽出してもよい。また、URLがサードレベル登録ドメインの場合、ブラウザアクセスURL特定部107は、更に、トップレベルドメインとセカンドレベルドメインと(例えば上記の例では「.co.jp」)を除いたものをURLのウェブページの提供元が特定されるドメイン名として抽出してもよい。
URLのウェブページの提供元が特定されるドメイン名の抽出アルゴリズムについては、特に制限は無く、どのようなアルゴリズムでURLのウェブページの提供元が特定されるドメイン名が抽出されてもよい。本実施の形態では、抽出アルゴリズムの説明は省略する。
ここで、ブラウザログエントリ314が図15に示す例である場合に、ブラウザアクセスURL特定部107は、URLのウェブページの提供元が特定されるドメイン名として「1234.△△△」と抽出し、図示は省略するが、ブラウザアクセスURL情報307として「1234.△△△」を出力する。
なお、ブラウザログエントリ314に複数のエントリが有る場合、ブラウザアクセスURL特定部107は、ブラウザアクセスURL情報307として複数のエントリを出力する。
(ブラックURL特定部108の処理)
図18は、ブラックURL特定部の処理の例を示す図である。
図19は、ブラックURL情報250の例を示す図である。
ブラックURL特定部108は、図18のS1801〜S1804において、実施の形態1の図16のS1601〜S1604と同様の処理を行う。ここで、グレーURL情報305は、図10に示す例とする。
そして、ブラックURL特定部108は、ブラウザアクセスURL情報307のエントリとして前述の「1234.△△△」を入力する(図18のS1805)。
そして、ブラックURL特定部108は、入力したグレーURL情報305のエントリのURLに入力したブラウザアクセスURL情報307のエントリのURLが含まれているか否かを判定する(図18のS1806)。
グレーURL情報305のURLにブラウザアクセスURL情報307のURLが含まれている場合に(図18のS1806の「YES」)、ブラックURL特定部108は、グレーURL情報305から当該エントリを削除する(図18のS1807)。
ここで、ブラックURL特定部108は、自動的に、実施の形態1と同様にグレーURL情報305に示されるURLの内、ブラウザログエントリ314に示されるURLと一致するURLも削除する。
そして、以降の処理は実施の形態1と同様である為、説明を省略する。
最終的にブラックURL特定部108は、図10のグレーURL情報305の内、「1234.△△△」がURLに含まれるD2501〜D2503を削除し、図19に示すブラックURL情報250を出力する。
すなわち、ブラックURL特定部108は、グレーURL情報305に示されるURLの内、ブラウザログエントリ314に示されず、ブラウザアクセスURL特定部107に抽出されたドメイン名を含んでいないURLを抽出している。
(実施の形態2の効果)
実施の形態2の不正WEBアクセス検知システム100は、実施の形態1の効果に加え、以下の効果を有する。
実施の形態1での説明のブラウザログ214の第3の例のように、キャッシュメモリに記憶されたコンテンツのURLがブラウザログ214に記録される場合を想定する。
一方、WEBサーバ側の設定において、ブラウザ551に対して、コンテンツをキャッシュしない様にhttpレスポンスで指定することが可能である。
そして、この指定はコンテンツ(html、画像等)ごとに指定される。ここで「html」は、「HyperText Markup Language」の意味であるが、htmlで記述されたテキストデータを単に「html」と称する。
そのため、ブラウザ551が同じWEBサイトにアクセスしても、あるサブページのhtmlはキャッシュメモリに記憶されないが、画像はキャッシュメモリに記憶されるということが生じる。
すなわち、一部のコンテンツ(この例では、あるサブページのhtml)についてURL履歴がブラウザログ214に記録されない。
しかし、1つのWEBサイトにアクセスして得られた各コンテンツのURLのドメイン名において、URLのウェブページの提供元が特定されるドメイン名(例えば、ウェブページの提供元の企業が特定されるドメイン名)が共通である場合が多い。そのため、ブラウザログ214に記録されたURLのウェブページの提供元が特定されるドメイン名が、ブラウザログ214に記録されていないコンテンツのURLに含まれる場合が多い。
具体例で説明する。
(a)キャッシュメモリに記憶されたコンテンツのURL(ブラウザログ記録あり)
「www1.○○○.△△△/img.gif」
(b)キャッシュメモリに記憶されないコンテンツのURL(ブラウザログ記録なし)
「www1.○○○.△△△/subpage2.html」
(a)(b)とも、ブラウザ551がアクセスしたURLであるものとする。しかし、WEBサーバ側のキャッシュ可否指定により、(a)は、キャッシュメモリに記憶され、ブラウザログ214にも記録があり、(b)は、キャッシュメモリに記憶されず、ブラウザログ214にも記録がないものとする。
一方、プロキシサーバ装置600は、プロキシログ201にキャッシュ可否指定に関係なく、(a)(b)とも記録する。
(a)(b)において、「○○○.△△△」がURLのウェブページの提供元が特定されるドメイン名であり、(a)と(b)において共通である。
従って、例えば、ブラウザアクセスURL特定部107がブラウザログエントリ314から(a)の「○○○.△△△」をブラウザアクセスURL情報307として抽出すれば、ブラックURL特定部108において、(b)もブラウザアクセスURL情報307と同等に扱われることになる。
更に、ブラウザログ214の第3の例に加え、実施の形態1での説明のブラウザログ214の第2の例のように、ユーザの操作に基づきブラウザ551がWEB通信したURLもブラウザログ214に記録される場合を想定する。
この場合、ブラウザログ214の第2の例に示されるURLのウェブページの提供元が特定されるドメイン名が、前述のブラウザログ214の第3の例においてキャッシュメモリに記憶されないURLに含まれる場合がある。
そして、ブラウザアクセスURL特定部107がブラウザログ214の第2の例に示されるURLのウェブページの提供元が特定されるドメイン名をブラウザアクセスURL情報307として抽出したとする。この場合も、前述と同様にブラックURL特定部108において、ブラウザ551がアクセスしたURLであってキャッシュメモリに記憶されないURLがブラウザアクセスURL情報307と同等に扱われることになる。
すなわち、実施の形態2においては、ブラウザ551がアクセスした全てのURLがブラウザログ214に記録されていなくてもよい。
そして、ブラックURL特定部108が、ブラウザログ214に記録されたURLのドメイン名の一部(すなわち、URLのウェブページの提供元が特定されるドメイン名)を含むグレーURL情報305に示されるURLをブラウザアクセスURL情報307と同等に扱うことによって、ブラウザログ214に記録されたURLよりも多くのURLをブラックURL208から除外できる。
実施の形態3.
実施の形態3の不正WEBアクセス検知システム100では、ログ蓄積部109が所定の時間毎にブラウザログ214を入力する。
なお、実施の形態3の不正WEBアクセス検知システム100の構成は、実施の形態1〜2と同様である。
以降、実施の形態1〜2と共通する部分(構成や処理)については、説明を省略する。
なお、実施の形態3においても端末操作ログ取り込み部103とトップページURL特定部106とは使用されない。
ブラウザログ214は、端末装置500でブラウザ551が実行されて、ブラウザ551が新たなアクセス先にアクセスした場合に、当該アクセス先のアドレスが追加して記録される。すなわち、ブラウザログ214は、ブラウザ551が実行されて、端末装置500からプロキシサーバ装置600に新たなアクセス先としてアドレスが通知される毎に更新される。
一方、ブラウザログ214は、ユーザの誤操作により削除されてしまったり、マルウェアが実行されて改ざんされる場合が想定される。
そのため、ログ蓄積部109は、例えば1秒毎など極めて短時間毎にブラウザログ214を端末装置500から入力する。
そして、ログ蓄積部109は、所定の時間毎に入力したブラウザログ214を蓄積する。
そして、ブラウザログ取り込み部114は、ログ蓄積部109がブラウザログ214を入力する度に、ログ蓄積部109から当該ブラウザログ214を入力し、ブラウザログエントリ314を出力してもよい。
また、ブラウザログ取り込み部114は、ログ蓄積部109が一定期間蓄積した複数のブラウザログ214をまとめて入力してもよい。
また、例えば端末装置500のブラウザログ214がユーザの誤操作により削除されてしまう可能性が低い場合には、ログ蓄積部109は1日毎に(1日に1回)、ブラウザログ214を入力してもよい。
更に、ログ蓄積部109は、ブラックURL特定部108がブラックURL208を特定する必要が生じた場合に、ブラウザログ214を入力してもよい。
(実施の形態3の効果)
実施の形態3の不正WEBアクセス検知システム100は、ログ蓄積部109が、極めて短時間毎にブラウザログ214を入力することで、ブラウザログ214に対するユーザの誤操作による削除や、マルウェアによる改ざんを防ぐことができる。
実施の形態4.
実施の形態4の不正WEBアクセス検知システム100では、ブラウザログ214に対してマルウェアによるアクセスがあった場合に、ブラウザログ214の改ざんの可能性を通知するアラームを出力する。
なお、実施の形態4の不正WEBアクセス検知システム100の構成は、実施の形態1〜3と同様である。
以降、実施の形態1〜3と共通する部分(構成や処理)については、説明を省略する。
なお、実施の形態4においても端末操作ログ取り込み部103とトップページURL特定部106とは使用されない。
図20は、端末装置501の構成の第1の例を示す図である。
図21は、端末装置501の構成の第2の例を示す図である。
不正WEBアクセス検知システム100は、端末装置501の内部に含まれている。
不正WEBアクセス検知システム100の構成は、前述の通り、実施の形態1〜3と同様であるが、図20と図21とにおいては、ログ蓄積部109と実施の形態4の動作説明に必要な情報の入出力を示す矢印のみを図示する。
そして、ログ蓄積部109は、図20と図21とに示されるようにファイル監視部403とファイル記憶部404とから構成される。
ここで、ファイル記憶部404は、実施の形態1で説明のログ蓄積部109の内部に備えられる記憶装置である。
また、ファイル監視部403はアラーム出力部に対応する。
(アラーム出力処理の第1の例)
最初に、図20を用いて、アラーム出力処理の第1の例を説明する。
端末装置501には、ファイル監視ツール401やOSコマンド402(OS:オペレーティングシステム)が実装されている。端末装置501には、ファイル監視ツール401とOSコマンド402との少なくともどちらか一方が実装されていてもよい。
ファイル監視ツール401やOSコマンド402は、監視対象のファイルに対しアクセスしたプログラム(以下ファイルに対しアクセスするプログラムを「プロセス」とも称する)を検知する。
ここで、OSコマンド402は、ファイルにアクセスしているプロセスの情報を得るコマンドである。
ここで、ブラウザログ214は、端末装置501に実装されたブラウザ551によりアクセスされた記録で端末装置501の記憶装置にファイルとして記憶されている。
ここで、マルウェアが存在する場合、ブラウザログ214はマルウェアのアクセスにより改ざん(追記、書き換え、削除)される可能性がある。
そこで、ファイル監視部403は、ファイル監視ツール401もしくはOSコマンド402を呼び出す(図20の呼び出し321)。呼び出し321は、例えば1分毎に実施されてもよい。
例えば、ファイル監視ツール401は、ブラウザログ214を常時監視しており(図20の監視323)、ブラウザログ214に対してアクセスしているプロセスの情報を得ている。そして、ファイル監視ツール401は、ファイル監視部403に呼び出された場合に、プロセスの情報を監視結果としてファイル監視部403に応答する(図20の応答322)。
また、例えば、OSコマンド402は、ファイル監視部403に呼び出された時に、ブラウザログ214の監視を開始し、監視結果をファイル監視部403に応答してもよい。
そして、ファイル監視部403は、ブラウザ以外のプログラムによるブラウザログ214に対するアクセスが監視結果として検知されていた場合に、アラームを出力し、ユーザにブラウザログ214がマルウェアにより改ざんされた可能性を通知する。
通知の方法は、例えばメールや「SNMP Trap」等でもよい。
(アラーム出力処理の第2の例)
次に、図21を用いて、アラーム出力処理の第2の例を説明する。
図21に示す例は、不正WEBアクセス検知システム100が搭載された端末装置501とは異なる端末装置500にファイル監視ツール401とOSコマンド402とファイル監視プログラム405とが実装されている。ファイル監視ツール401とOSコマンド402とは、アラーム出力処理の第1の例と同様に少なくともどちらか一方が実装されていてもよい。
ファイル監視プログラム405は、ファイル監視ツール401やOSコマンド402を利用して、ブラウザ551以外のプロセスがブラウザログ214にアクセスしているか否かを監視するプログラムである。
ファイル監視プログラム405は、ファイル監視ツール401もしくはOSコマンド402を呼び出す(図21の呼び出し321)。呼び出し321は、例えば1分毎に実施されてもよい。
ファイル監視ツール401とOSコマンド402との動作については、アラーム出力処理の第1の例と同様である。
ファイル監視プログラム405は、ブラウザ以外のプログラムによるブラウザログ214に対するアクセスが監視結果として検知されていた場合に、アラーム251をファイル監視部403に対して出力する。
そして、ファイル監視部403もアラーム251を出力し、ユーザにブラウザログ214がマルウェアにより改ざんされた可能性を通知する。
ファイル監視プログラム405が出力するアラーム251とファイル監視部403が出力するアラーム251とは同じものであってもよいし、違うものであってもよい。
(実施の形態4の効果)
実施の形態4の不正WEBアクセス検知システム100は、ファイル監視ツール401やOSコマンド402を利用し、ブラウザ551以外のプロセスが、ブラウザログ214にアクセスしていることを発見する。そして、不正WEBアクセス検知システム100は、マルウェアによるブラウザログ214への不正アクセスを検知することが可能になる。
(実施の形態4の補足説明)
ファイル監視部403によるアラームが出力されない場合のみファイル記憶部404は、ブラウザログ214を蓄積し、ファイル監視部403によるアラームが出力された場合に、ファイル監視部403はアラームの対象であるブラウザログ214を削除してもよい。
そして、例えば、ログ蓄積部109が実施の形態3のように、所定の時間毎にブラウザログ214を入力する場合、不正WEBアクセス検知システム100は、アラームの対象であるブラウザログ214を除外して処理を行うことが可能である。
また、図20の応答322、もしくは図21のアラーム251には、ブラウザ551以外がブラウザログ214にアクセスした時刻が示されていてもよい。ここで、ブラウザ551以外がブラウザログ214にアクセスした時刻を「非ブラウザアクセス時刻」と称する。
その場合、ファイル監視部403は、ブラウザログ214のエントリのうち、非ブラウザアクセス時刻よりも前のアクセス時刻が示されるエントリのみをファイル記憶部404に蓄積してもよい。そして、ブラウザログ取り込み部114は、ファイル記憶部404に蓄積されたブラウザログ214のエントリのうち、非ブラウザアクセス時刻よりも前のアクセス時刻が示されるエントリのみを対象として処理を行ってもよい。
また、ファイル監視部403は、非ブラウザアクセス時刻をプロキシログ取り込み部101に通知してもよい。
その場合、プロキシログ取り込み部101は、プロキシログ201のエントリのうち、非ブラウザアクセス時刻よりも前のアクセス時刻が示されるエントリのみを対象として処理を行ってもよい。
更に、図20の応答322、もしくは図21のアラーム251には、マルウェアが改ざんした内容が示されていてもよい。
その場合、ファイル監視部403は、ブラウザログ214のエントリのうち、マルウェアが改ざんした内容が含まれるエントリを除外したブラウザログ214をファイル記憶部404に蓄積してもよい。そして、ブラウザログ取り込み部114は、ファイル記憶部404に蓄積されている、マルウェアが改ざんした内容が含まれるエントリが除外されたブラウザログ214のエントリのみを対象として処理を行ってもよい。
実施の形態5.
実施の形態5の不正WEBアクセス検知システム100では、プロキシログ201のリファラを利用し、ブラウザ551がアクセスしたURLのリンク先であるURLをブラウザアクセスURL情報307として取り扱う。
なお、実施の形態5の不正WEBアクセス検知システム100の構成は、実施の形態1〜4と同様である。
以降、実施の形態1〜4と共通する部分(構成や処理)については、説明を省略する。
なお、実施の形態5において、端末操作ログ取り込み部103とトップページURL特定部106とが使用される。
(リファラの説明)
図22は、リファラの第1の例を示す図である。
図23は、リファラの第2の例を示す図である。
ブラウザ551が、httpリクエストをプロキシサーバ装置600に送信する場合、httpリクエストのヘッダにリファラが示される場合がある。一方、例えばメールに記載されたURLをユーザがクリックした場合は、ブラウザ551における遷移元が無いためリファラが示されない。
リファラとは、あるページをリクエストする場合に、その遷移元となるページのURLのことである。この遷移元となるページのURL(すなわち、リファラ)を経由元アドレスと称する。
例えば、図22に示すように、ブラウザ551が「http://○○○.1234.△△△/」にアクセスしていて、ユーザがリンクをマウスなどの入力装置でクリックした場合、ブラウザ551は、「http://○○○.abcd.△△△/」にアクセスする。
この場合、ブラウザ551は、http GETリクエストに対して、「http://○○○.1234.△△△/」をリファラとして付与する。
リファラは例えば図3の例に示すように、プロキシログ201にhttpリクエストの一部として示される。
また、例えば、図23に示すように、ユーザが端末装置500を操作したことにより、ブラウザ551が「http://○○○.abcd.1234.△△△/」のウェブページにアクセスした場合、ブラウザ551は、リンクやimgタグなどで当該ウェブページの画像やhtmlのコンテンツを自動的に取得する。
ここで、画像のコンテンツのURLと、htmlのコンテンツのURLとは以下であるとする。
(A)画像のコンテンツのURL
「http://img.nature−sample.△△△/image/・・・/sea.gif」
(B)htmlのコンテンツのURL
「http://news.kiji.△△△/20111028.htm」
この場合、プロキシログ201には、「http://○○○.abcd.1234.△△△/」以外にブラウザ551が取得した上記の画像やhtmlのコンテンツのURL(A)と(B)とがリファラである「http://○○○.abcd.1234.△△△/」と共に記録される。
一方、端末操作ログ203には、ユーザが端末装置500を操作したことにより、「http://○○○.abcd.1234.△△△/」のみが記録される。
すなわち、プロキシログ201のリファラと端末操作ログ203のURLとが一致すれば、当該リファラと共に記録されたURLが、ユーザの操作によりブラウザ551がアクセスしたウェブページから自動的に取得されたものであることが分かる。
ここで、ユーザがリンクをマウスなどの入力装置でクリックして遷移した先のURLや、ブラウザ551がリンクやimgタグなどで自動的に取得するコンテンツのURLを経由先アドレスと称する。
(端末操作ログ取り込み部103の処理)
図24は、端末操作ログ203の例を示す図である。
図25は、端末操作ログ取り込み部103の処理の例を示すフローチャートである。
図26は、WEBアクセスURL情報303の例を示す図である。
端末操作ログ取り込み部103は、端末操作ログ203と期間206と端末識別子205とを入力する。
端末操作ログ203は、各端末装置500にインストールされる端末操作記録アプリケーションが記録するログである。端末操作ログ203は、図24に示すフォーマットのように、例えば「操作日時、端末識別子、ユーザ識別子、操作タイプ、操作内容」が時系列順に記録される。
ここで、操作日時は、ユーザが端末装置500の操作を行った日時である。端末識別子は、例えば端末装置500のIPアドレスである。ユーザ識別子は、例えば従業員の従業員番号などのID(識別子、アイディー)である。操作タイプは、例えば、「ファイル生成」、「WEBアクセス」などの操作の種別である。操作内容は、操作タイプに依存する記録である。
端末操作記録アプリケーションの機能により、ユーザが、ブラウザのアドレスバーに入力したURLやWEBサイトのコンテンツのリンクをクリックしてアクセスしたURLが端末操作ログ203に記録されている。
例えば、図24に示すD2031は、「2011/11/23 9:00:00に、IPアドレス192.168.1.2で識別される端末装置500が、UserID1234で識別される従業員の操作により、C:¥work¥sample.txtというファイルを生成した」ことを意味する。
また、例えば、図24に示すD2032は、「2011/11/23 10:00:00に、IPアドレス192.168.1.2で識別される端末装置500が、UserID1234で識別される従業員の操作により、http://○○○.1234.△△△/に対してGETメソッドを送信(WEBアクセス)した」ことを意味する。
ここで、図24のD2032に示される操作タイプ「WEBアクセス」のように、端末装置500がWEBアクセスする場合を説明する。ユーザが端末装置500を用いてWEBアクセスする場合、ユーザはブラウザを実行して端末装置500に対してアクセス先のアドレスを指示するアドレス指示操作を行う。ユーザは、このアドレス指示操作により、端末装置500に対してWEBアクセスを指示する。すなわち、このアドレス指示操作は、ユーザが端末装置500に対してアクセス先のアドレスを指示すると共に、ユーザが端末装置500に対して指示したアドレスに端末装置500がWEBアクセスを行うよう指示している。そして、このアドレス指示操作が端末操作ログ203(例えば、図24)においては、「WEBアクセス」のように表記されている。
このアドレス指示操作によるアドレスが端末操作ログ203には示されている(例えば、図24のD2032では「http://○○○.1234.△△△/」)。そして、端末装置500は、プロキシサーバ装置600にアクセス先として、このアドレスを通知する。そして、端末装置500は、前述の通りプロキシサーバ装置600を利用してWEBアクセスを行う。
すなわち、端末操作ログ203は、ユーザが端末装置500に対してアクセス先のアドレスを指示するアドレス指示操作に基づいて端末装置500がプロキシサーバ装置600にアクセス先として通知したアドレスがアドレス指示操作と対応付けられて示されている。
そして、端末操作ログ203のエントリのうち、「WEBアクセス」が示されているエントリは、ブラウザ551が実行されて端末装置500からプロキシサーバ装置600にアクセス先のアドレスとして通知されたブラウザ実行アドレス情報である。
図25を用いて、端末操作ログ取り込み部103の動作を説明する。
ここで、期間206は「2011/11/23 09:00:00〜2011/11/23 18:00:00」、端末識別子205は、「192.168.1.2」が指定されているとする。
まず、端末操作ログ取り込み部103は、端末操作ログ203の全てのエントリを入力したか否かを判定する(図25のS2501)。
端末操作ログ取り込み部103は、全てのエントリを入力していなければ(図25のS2501の「NO」)、入力していない端末操作ログ203のエントリを例えば操作日時の時系列順に入力する(図25のS2502)。
次に、端末操作ログ取り込み部103は、入力したエントリの操作日時が期間206の範囲内か否かを判定する(図25のS2503)。
操作日時が期間206の範囲内であれば(図25のS2503の「YES」)、端末操作ログ取り込み部103は、入力したエントリの端末識別子が、端末識別子205と一致するか否かを判定する(図25のS2504)。
端末識別子が、端末識別子205と一致すれば(図25のS2504の「YES」)、端末操作ログ取り込み部103は、入力したエントリの操作タイプがWEBアクセスか否かを判定する(図25のS2505)。
操作タイプがWEBアクセスであれば(図25のS2505の「YES」)、端末操作ログ取り込み部103は、読み込んだエントリをWEBアクセスURL情報303として出力する(図25のS2506)。
そして、図25のS2501の処理に戻り、端末操作ログ取り込み部103は、端末操作ログ203の全てのエントリを入力するまで(図25のS2501の「YES」)、図25のS2501からS2506の処理を繰り返す。
例えば、図26に示すWEBアクセスURL情報303a〜WEBアクセスURL情報303cのそれぞれ1行ずつが1つのWEBアクセスURL情報である。そして、例えば、図26に示すWEBアクセスURL情報303a〜WEBアクセスURL情報303cでWEBアクセスURL情報303のセットを構成している。
すなわち、端末操作ログ取り込み部103は、図24に示す端末操作ログ203のエントリの内、期間206に操作日時が該当し、端末識別子が端末識別子205に該当し、操作タイプがWEBアクセスであるエントリを抽出し、図26に示すWEBアクセスURL情報303のセットを生成する。
(トップページURL特定部106の処理)
図27は、トップページURL情報306の例を示す図である。
トップページURL特定部106は、端末操作ログ取り込み部103で抽出されたWEBアクセスURL情報303が入力された場合、入力されたWEBアクセスURL情報303のURLを抽出し、トップページURL情報306としてブラウザアクセスURL特定部107に出力する。すなわち、トップページURL情報306に示されるURLは、図26のWEBアクセスURL情報303に示されるURLと同じものである。
一方、端末装置500が端末操作記録アプリケーションを実装していない場合、不正WEBアクセス検知システム100には、端末操作ログ203が入力されない。その為、端末操作ログ取り込み部103も使用されない。
この場合、トップページURL特定部106は、ブラウザログ取り込み部114が抽出したブラウザログエントリ314を入力し、入力したブラウザログエントリ314のURLを抽出し、トップページURL情報306としてブラウザアクセスURL特定部107に出力してもよい。そして、トップページURL情報306に示されるURLは、図15のブラウザログエントリ314に示されるURLと同じものとなる。
本実施の形態では、トップページURL特定部106は、WEBアクセスURL情報303を入力し、図26に示すトップページURL情報306を出力するものとして説明を進める。
(ブラウザアクセスURL特定部107の処理)
ブラウザアクセスURL特定部107は、プロキシログエントリ301(図5)とトップページURL情報306(図27)とを入力する。
ここで、プロキシログエントリ301(図5)は、プロキシログ取り込み部101が入力したプロキシログ201から抽出されたものであり、プロキシログ201に対応する。
そして、プロキシログエントリ301は、図5の例に示す通り、プロキシサーバ装置600がアクセスしたアドレスに対応付けられてリファラが示されている。
例えば、図5のプロキシログエントリ301aのリファラ「http://○○○.abcd.△△△/」は、ブラウザ551がプロキシサーバ経由で「http://○○○.1234.△△△/」の直前に経由したアクセス先のアドレスである。
すなわち、リファラは、ブラウザ551がプロキシサーバ装置600経由で特定のアクセス先(例えば上記の「http://○○○.1234.△△△/」)に対して、他の少なくとも1つのアクセス先を経由した後にアクセスを行った場合に、ブラウザ551がプロキシサーバ装置600経由で特定のアクセス先へのアクセスの直前に経由したアクセス先のアドレスである。
(ブラウザアクセスURL特定部107の処理の第1の例)
ここで、ブラウザアクセスURL特定部107の処理について第1の例と第2の例とに分けて説明を行う。
図28は、ブラウザアクセスURL特定部107の処理の第1の例を示すフローチャートである。
ブラウザアクセスURL特定部107は、処理の開始にあたり、URLの情報を一時的に保存するためのブラウザアクセスURL暫定ファイル(以下、ブラウザアクセスURL暫定ファイルを「ブラウザアクセスURL_TMP」と称する)を生成し、不正WEBアクセス検知システム100の記憶装置に記憶させる。ブラウザアクセスURL_TMPの生成時には、ブラウザアクセスURL_TMPには何も情報が記録されていない。
ブラウザアクセスURL特定部107は、トップページURL情報306の全てのエントリに対して処理を行う。
ここで、ブラウザアクセスURL特定部107は、トップページURL情報306をトップページURL暫定ファイル(以下、トップページURL暫定ファイルを「トップページURL_TMP」と称する)として生成し、不正WEBアクセス検知システム100の記憶装置に記憶させる。ブラウザアクセスURL特定部107の処理の第1の例では、トップページURL_TMPは、トップページURL情報306(図27)と同じものである。
そして、ブラウザアクセスURL特定部107は、トップページURL_TMP(トップページURL情報306)の全てのエントリを入力したか否かを判定する(図28のS2801)。
ブラウザアクセスURL特定部107は、全てのエントリを入力していなければ(図28のS2801の「NO」)、入力していないトップページURL_TMP(トップページURL情報306)のエントリを例えばアクセス日時の時系列順に入力する(図28のS2802)。ここでは、ブラウザアクセスURL特定部107は、図27のトップページURL_TMP(トップページURL情報306)のD301を入力する。
次に、ブラウザアクセスURL特定部107は、プロキシログエントリ301におけるエントリの先頭を設定する(図28のS2803)。
ブラウザアクセスURL特定部107は、例えば図5のプロキシログエントリ301aを先頭に設定する。
そして、ブラウザアクセスURL特定部107は、プロキシログエントリ301の全てのエントリを入力したか否かを判定する(図28のS2804)。
ブラウザアクセスURL特定部107は、全てのエントリを入力していなければ(図28のS2804の「NO」)、入力していないプロキシログエントリ301のエントリを例えばアクセス日時の時系列順に入力する(図28のS2805)。ここでは、ブラウザアクセスURL特定部107は、先頭に指定された図5のプロキシログエントリ301aを入力する。
なお、リファラが示されている場合は、リファラもプロキシログエントリ301の一部として入力される。
一方、ブラウザアクセスURL特定部107は、全てのエントリを入力していれば(図28のS2804の「YES」)、S2801の処理に戻る。
ブラウザアクセスURL特定部107は、入力したエントリにリファラが対応付けられているか否かを判定する(図28のS2806)。
例えば、ユーザがキーボードなどを用いてURLを直接入力した場合などは、プロキシログエントリ301にリファラが示されないので(図28のS2806の「NO」)、ブラウザアクセスURL特定部107はS2804の処理に戻る。
一方、図5のプロキシログエントリ301aにはリファラが示されているので(図28のS2806の「YES」)、ブラウザアクセスURL特定部107は、入力したトップページURL_TMP(トップページURL情報306)のエントリのURLとリファラとが一致するか否かを判定する(図28のS2807)。
ここで、入力したトップページURL_TMP(トップページURL情報306)のエントリのURLは「http://○○○.1234.△△△/」(図27のD301)であり、プロキシログエントリ301aのリファラは「http://○○○.abcd.△△△/」で両者が一致しないため(図28のS2807の「NO」)、ブラウザアクセスURL特定部107は、S2804の処理に戻る。
次に、ブラウザアクセスURL特定部107は、未入力プロキシログエントリ301があるため(図28のS2804の「NO」)、プロキシログエントリ301b(図5)を入力する(図28のS2805)。
そして、ブラウザアクセスURL特定部107は、入力したトップページURL_TMP(トップページURL情報306)のエントリのURLは「http://○○○.1234.△△△/」(図27のD301)とプロキシログエントリ301bのリファラは「http://○○○.1234.△△△/」が一致するので(図28の2807の「YES」)、プロキシログエントリ301bのURL「http://○○○.1234.△△△/2011/a.htm」をブラウザアクセスURL_TMPに追加する(図28のS2808)。
なお、前述の説明において、プロキシログエントリ301bのURLは「http://○○○.1234.△△△/2011/a.htm」であり、リファラは「http://○○○.1234.△△△/」である。すなわち、ブラウザ551は遷移元と同一のドメイン名(同一のサーバ)にアクセスした例が示されているが、ブラウザ551は遷移元(リファラに示されるURL)とは異なるドメイン名(異なるサーバ)にアクセスしてもよい。その場合も同様に、ブラウザアクセスURL特定部107は、異なるドメイン名のURLをブラウザアクセスURL_TMPに追加する。
ブラウザアクセスURL特定部107は、トップページURL_TMP(トップページURL情報306)の全てのエントリに対し入力を完了したら処理を終了する(図28のS2801の「YES」)。
そして、ブラウザアクセスURL特定部107は、図28に示す処理の第1の例に基づき、「http://○○○.1234.△△△/2011/a.htm」が書き込まれたブラウザアクセスURL_TMPを生成する。
そして、ブラウザアクセスURL特定部107は、実施の形態1〜4のいずれかで生成されたブラウザアクセスURL情報307に、このブラウザアクセスURL_TMPのURLを加えたものを新たなブラウザアクセスURL情報307としてブラックURL特定部108に出力する。
(ブラウザアクセスURL特定部107の処理の第2の例)
図29は、ブラウザアクセスURL特定部107の処理の第2の例を示すフローチャートである。
図30は、ブラウザアクセスURL_ALLの例を示す図である。
図31は、ブラウザアクセスURL特定部107の処理の第2の例で生成されたブラウザアクセスURL情報307の例を示す図である。
ブラウザアクセスURL特定部107は、前述の第1の例と同様に、処理の開始にあたり、URLの情報を一時的に保存するためのブラウザアクセスURL_TMPを生成し、不正WEBアクセス検知システム100の記憶装置に記憶させる。
まず、ブラウザアクセスURL特定部107は、トップページURL情報306をブラウザアクセスURL抽出用ファイル(以下、ブラウザアクセスURL抽出用ファイルを「ブラウザアクセスURL_ALL」と称する)として生成し、不正WEBアクセス検知システム100の記憶装置に記憶させる(図29のS2901)。
ブラウザアクセスURL_ALL生成時(図29のS2901)のブラウザアクセスURL_ALLは、トップページURL情報306(図27)と同じものであるが、後述の処理によりブラウザアクセスURL_ALLに記録される内容は変化する。
次に、ブラウザアクセスURL特定部107は、前述の第1の例と同様に、トップページURL情報306をトップページURL_TMPとして生成し、不正WEBアクセス検知システム100の記憶装置に記憶させる(図29のS2902)。
トップページURL_TMP生成時(図29のS2902)のトップページURL_TMPは、前述の第1の例と同様に、トップページURL情報306(図27)と同じものであるが、後述の処理によりトップページURL_TMPに記録される内容は変化する点が、前述の第1の例とは異なる。
そして、ブラウザアクセスURL特定部107は、ブラウザアクセスURL_TMPに記録されている情報を消去し、情報が無い状態(情報が無い状態を「NULL」と称する)にする(図29のS2903)。
そして、ブラウザアクセスURL特定部107は図28に示す前述の第1の例と同じ処理を行う(図29のS2904)。
ここで、前述の第1の例と同様の具体例で説明すると、ブラウザアクセスURL特定部107は図29のS2904において、「http://○○○.1234.△△△/2011/a.htm」が書き込まれたブラウザアクセスURL_TMPを生成する。
ブラウザアクセスURL特定部107は、ブラウザアクセスURL_TMPの記録内容がNULLか否かを判定する(図29のS2905)。
ブラウザアクセスURL_TMPの記録内容がNULLの場合(図29のS2905の「YES」)、ブラウザアクセスURL特定部107は処理を終了する。
一方、本具体例においては、ブラウザアクセスURL_TMPに「http://○○○.1234.△△△/2011/a.htm」が書き込まれているので(図29のS2905の「YES」)、ブラウザアクセスURL特定部107は、ブラウザアクセスURL_TMPに示されるURLをブラウザアクセスURL_ALLに追加して記録する(図29のS2906)。
ブラウザアクセスURL_TMPに示されるURLが追加されたブラウザアクセスURL_ALLの例を図30に示す。
そして、ブラウザアクセスURL特定部107は、ブラウザアクセスURL_TMPから新たなトップページURL_TMPを生成する(図29のS2907)。すなわち、トップページURL_TMPには、「http://○○○.1234.△△△/2011/a.htm」が示されることになる。
ブラウザアクセスURL特定部107は、処理を継続し、図29のS2904において、トップページURL_TMPに示される「http://○○○.1234.△△△/2011/a.htm」がリファラとして対応付けられているプロキシログエントリ301e(図5)のURLを抽出する。そして、ブラウザアクセスURL特定部107は、抽出したURL「http://○○○.1234.△△△/image/a.gif」が書き込まれたブラウザアクセスURL_TMPを生成する。
そして、ブラウザアクセスURL特定部107は、最終的に、「http://○○○.1234.△△△/image/a.gif」が追加されたブラウザアクセスURL_ALLを生成する。
すなわち、このブラウザアクセスURL_ALLには、トップページURL情報306に示されるURLと、トップページURL情報306に示されるURLから数珠繋ぎで遷移したURLとが含まれる。
そして、生成したブラウザアクセスURL_ALLをブラウザアクセスURL情報307(図31)としてブラックURL特定部108に出力する。
ブラウザアクセスURL特定部107は、この第2の例において、プロキシログエントリ301に示されるURLのうち、トップページURL情報306に示されるURLがリファラとして対応付けられているURLを経由先アドレスとして抽出している。
そして、更に、ブラウザアクセスURL特定部107は、抽出したURLがリファラとして対応付けられているURLがプロキシログエントリ301に示されている場合に、当該URLを経由先アドレスとして抽出している。
そして、ブラックURL特定部108は、実施の形態1〜4と同様に、グレーURL情報305に示されるURLのうち、ブラウザアクセスURL情報307に示されないURLを抽出する。
すなわち、ブラックURL特定部108は、グレーURL情報305に示されるURLのうち、トップページURL情報306に示されておらず、ブラウザアクセスURL特定部107に抽出された経由先アドレス以外のURLを抽出する。
ブラウザアクセスURL特定部107の処理の第2の例は、端末操作ログ203から得られるトップページURL情報306におけるURLをリファラとするプロキシログエントリ301を探し、さらに当該プロキシログエントリ301のURLをリファラとする別のプロキシログエントリ301を数珠繋ぎに追跡し、これ以上繋がらないところまで探す処理に相当する。
すなわち、ブラウザアクセスURL特定部107の処理の第2の例は、トップページURL情報306におけるURLから、プロキシログエントリ301に対して、リファラを用いて遷移先を数珠繋ぎに遷移先がなくなるまで追跡し、ブラウザ551からアクセスした一連のURLを特定している。また、ブラウザアクセスURL特定部107は、複数のURLの数珠繋ぎの遷移を追跡することができる。
また、ブラウザアクセスURL特定部107は、プロキシログエントリ301のリファラを数珠繋ぎに辿り、最終的に、トップページURL情報306に示されたURLに辿り着くかを判定してもよい。
例えば、ブラウザアクセスURL特定部107は、図5のプロキシログエントリ301eのリファラがプロキシサーバ装置600のアクセス先として示されているプロキシログエントリ301b(図5)を抽出する。そして、抽出したプロキシログエントリ301bのリファラがトップページURL情報306に示されたURLであるか否かを判定してもよい。
このように、トップページURL情報306に示された各URLから数珠繋ぎでリンクするURLを探す方法は、前述に限らず別の方法でもよい。
(実施の形態5の効果)
ブラウザ551は、ウェブページへのアクセスで例えば画像などを自動的に取得することがある。しかし、従来の技術では、プロキシログ201に示された画像取得のリクエストが、ブラウザ551によるものなのか、他のプログラムによるものなのかが判断不可能である。例えば、従来の技術として、User−Agentによりブラウザタイプが記録されるが、マルウェアによる詐称が可能なため利用することが出来ない。
実施の形態5の不正WEBアクセス検知システム100は、ブラウザ551でアクセスしたURLを基点として遷移したURLを判別可能であり、この遷移がブラウザにより行われたと判断可能である。
すなわち、実施の形態5の不正WEBアクセス検知システム100は、プロキシログ201のリファラと端末操作ログ203から得られるトップページURL情報306を利用し、ブラウザアクセスURL情報307を特定することが可能である。
また、端末操作ログ203が採取できない環境においては、プロキシログ201のリファラとブラウザログ214とを利用しブラウザアクセスURL情報307を特定することが可能である。
(実施の形態4と実施の形態5との組合せ)
ここで、実施形態5に示す端末操作ログ取り込み部103とトップページURL特定部106とを使用することで、端末操作ログ203を利用し、実施の形態4に示すアラーム251を出力する不正WEBアクセス検知システム100の例を説明する。
まず、端末操作ログ取り込み部103は、期間206と端末操作ログ203(図24)とを入力し、前述と同様にWEBアクセスURL情報303(図26)を抽出する。
WEBアクセスURL情報303(図26)に示される最初の時刻「「2011/06/23 10:00:00」〜最後の時刻「2011/06/23 16:00:00」が、期間206内において、ブラウザが操作されたブラウザ操作期間315に相当する。
そして、端末操作ログ取り込み部103は、ブラウザ操作期間315をブラウザログ取り込み部114に出力する(図2)。
ブラウザログ取り込み部114は、ブラウザ操作期間315以外のアクセス日時を示すブラウザログエントリ314が存在するか否かを判定し、存在する場合、ファイル監視部403に不正ログ通知340(図2)を行う。
そして、ファイル監視部403は実施の形態4と同様にアラーム251を出力する。
すなわち、不正WEBアクセス検知システム100は、期間206内において、ユーザがブラウザ551を操作した期間以外にブラウザログエントリ314が存在する場合を検知することにより、マルウェアによるブラウザログ214への不正アクセスを検知することが可能である。
実施の形態6.
(実施の形態6〜9における不正WEBアクセス検知システム100の共通部分の説明)
実施の形態6の不正WEBアクセス検知システム100の説明の前に、実施の形態6〜9における不正WEBアクセス検知システム100の共通部分の説明を行う。
実施の形態6〜9における不正WEBアクセス検知システム100は、実施の形態1〜5いずれかのブラックURL特定部108が抽出したブラックURL208をブラックURL候補とする。そして、ブラックURL特定部108は、ブラックURL候補の内、所定の条件に合致するURLを条件合致アドレスとして特定し、条件合致アドレスをブラックURL208として出力する。すなわち、ブラックURL208は条件合致アドレスに対応する。
すなわち、ブラックURL特定部108は、ブラックURL候補の内、少なくとも所定の条件に合致する所定のアドレスを条件合致アドレスとして特定する条件合致アドレス特定部に対応する。
そして、ブラックURL特定部108は、ブラック判定条件207を入力する。すなわち、ブラックURL特定部108は、ブラック判定条件207を入力する情報入力部に対応する。
ここで、ブラック判定条件207とは、ブラックURL候補からブラックURL208を特定する為の所定の条件である。
ブラック判定条件207は、数種類存在し、あらかじめ例えばユーザによって設定され、例えば不正WEBアクセス検知システム100の記憶装置に記憶されている。そして例えばユーザは不正WEBアクセス検知システム100のキーボードなどの入力装置を用いて、記憶されている数種類のブラック判定条件207の中から少なくとも1つのブラック判定条件207を選択して入力する。ここで、ユーザは、記憶されている数種類のブラック判定条件207の中から複数のブラック判定条件207を組み合わせて入力することも可能である。
そして、ブラックURL特定部108は、入力したブラック判定条件207に対応してあらかじめ設定された処理を実行する。
また、ブラックURL特定部108が、複数の(例えば2つの)ブラック判定条件207を入力した場合、ブラックURL特定部108は、まず第1のブラック判定条件207に対応してブラックURL候補の中から条件合致アドレス(ブラックURL208)を特定する。そして、更に、ブラックURL特定部108は、第1のブラック判定条件207によって特定された条件合致アドレス(ブラックURL208)の中から、第2のブラック判定条件207に対応して、条件合致アドレス(ブラックURL208)を特定することが可能である。
なお、実施の形態6〜9の不正WEBアクセス検知システム100は、図2に示す実施の形態1〜5の不正WEBアクセス検知システム100と同じ構成である。従って、実施の形態1〜5と同じ構成要素及び処理内容については説明を省略する。
以降、実施の形態6〜9の各実施の形態について説明を行う。
(実施の形態6におけるブラックURL特定部108の処理)
図32は、ブラックURL特定部108の処理の例を示すフローチャートである。
ブラックURL特定部108は、前述の通り、実施の形態1〜5いずれかの処理によって抽出されたブラックURL208をブラックURL候補とする。更に、ブラックURL特定部108は、ブラック判定条件207を入力する(図32のS3201)。
ここで、ブラックURL特定部108は、「端末装置500のアクセス先のウェブページの提供元が属する国が、不正アクセスの多い国のブラックリストに含まれているか否か」というブラック判定条件207を入力する。
更に、ブラックURL特定部108は、「不正アクセスの多い国のブラックリスト」の情報も入力する。
不正アクセスの多い国は傾向として決まっているので、例えば、A国、B国、C国を不正アクセスの多い国として「不正アクセスの多い国のブラックリスト」に定義することが可能である。
そして、「不正アクセスの多い国のブラックリスト」は、あらかじめ特定された国が示される特定国情報に対応する。
そして、インターネット上には、例えば「○○○.789−sample.△△△」というドメイン名を入力すると、そのドメイン名のウェブページがホストされている国(アドレスのウェブページの提供元が属する国)の情報を出力するインターネットサービスが存在する。このサービスを外部サービス209(図2)と称する。このアドレスのウェブページの提供元が属する国が示される情報を「提供国情報」と称する。
そして、ブラックURL特定部108は、インターネットを介し、ブラックURL候補を外部サービス209に入力する。そして、ブラックURL特定部108は、外部サービス209からの提供国情報を入力し、ブラックURL候補のホスト国を特定する(図32のS3202)。
すなわち、ブラックURL特定部108は、抽出したブラックURL候補毎(アドレス毎)の提供国情報を入力する。
そして、ブラックURL特定部108は特定したブラックURL候補のホスト国が、「不正アクセスの多い国のブラックリスト」に含まれているか否かを判定する(図32のS3203)。
ここで、例えば、特定したブラックURL候補のホスト国がA国の場合、ブラックリストに含まれているので(図32のS3203の「YES」)、ブラックURL特定部108は、ブラックURL候補をブラックURL208として出力する(図32のS3204)。一方、特定したブラックURL候補のホスト国がX国の場合、ブラックリストに含まれていないので(図32のS3203の「NO」)、ブラックURL特定部108は、ブラックURL候補をブラックURL208として出力しない。
すなわち、ブラックURL特定部108は、入力された提供国情報に示される国の中で、「不正アクセスの多い国のブラックリスト」に示されるいずれかの国に合致する国が提供しているウェブページのアドレスをブラックURL208として特定する。
(実施の形態6の効果)
マルウェアの通信先のC&Cサーバは不正アクセスの多い特定の国に存在することがある。そして、実施の形態6の不正WEBアクセス検知システム100は、ブラックURL候補から、不正アクセスの多い特定の国をホスト国としたウェブページのURLであるか否かをブラック判定条件207として、ブラックURL208を絞り込む。その為、実施の形態6の不正WEBアクセス検知システム100は、より精度高くマルウェアによるアクセス先のURLを抽出することが可能である。
実施の形態7.
(実施の形態7における不正WEBアクセス検知システム100の概要)
実施の形態7の不正WEBアクセス検知システム100は、ブラック判定条件207として、ブラックURL候補のウェブページへのアクセス数を用いる。具体的には、「今までアクセス数が少なかったブラックURL候補において、急にアクセス数が一定期間増加し、その後また減少したか否か」をブラック判定条件207とする。
(ブラックURL特定部108の処理)
図33は、ブラックURL特定部108の処理の例を示すフローチャートである。
図34は、ブラックURL候補のウェブページへのアクセス数の例を示す図である。
なお、図2において図示を省略しているが、ブラックURL特定部108は、プロキシログ201を入力することが可能である。ここで、ブラックURL特定部108は、プロキシログ取り込み部101が入力したプロキシログ201をプロキシログ取り込み部101から入力しても良い。
また、プロキシログ201は、図3に示す通り、プロキシサーバ装置600が行ったアクセス毎にアクセス先のアドレスと通信サイズ(アクセス時のデータ通信量)とが対応付けられて示されている。
まず、ブラックURL特定部108は、前述の通り、実施の形態1〜5いずれかの処理によって抽出されたブラックURL208をブラックURL候補とする。そして、ブラックURL特定部108は、ブラック判定条件207を入力する。更に変数nを「0」で初期化する(図33のS3301)。
ここでブラック判定条件207は、前述の通り「今までアクセス数が少なかったブラックURL候補において、急にアクセス数が一定期間増加し、その後また減少したか否か」である。
そして、ブラックURL特定部108は、入力したプロキシログ201から各ブラックURL候補に対する日毎のアクセス数をあらかじめ定められた集計期間において集計する(図33のS3302)。この集計期間はあらかじめ不正WEBアクセス検知システム100の記憶装置に記憶されていても良いし、ユーザが不正WEBアクセス検知システム100の入力装置を用いて入力しても良い。
ここで、ブラックURL特定部108が集計するアクセス数は、日毎に限らず、単位時間毎であれば、3日間毎であっても、1週間毎であっても良い。ここでは、ブラックURL特定部108は、日毎にアクセス数を集計するものとして説明を進める。
すなわち、ブラックURL特定部108は、各アドレスに対する単位時間毎のアクセス数を算出する通信量算出部に対応する。
なお、図33において図示は省略するが、S3302〜S3307の処理は、各ブラックURL候補に対して行われる。
そして、ブラックURL特定部108は、集計したアクセス数が過去は少なく、その後増加したか否かを判定する(図33のS3303)。
ここで、ブラックURL特定部108は、アクセス数があらかじめ不正WEBアクセス検知システム100の記憶装置に記憶されている閾値(「アクセス数の第1の閾値」と称する)よりも少ない場合に、「アクセス数が少ない」と判定する。そして、ブラックURL特定部108は、アクセス数が「アクセス数の第1の閾値」以上の場合に、「アクセス数が増加した」と判定する。
そして、「アクセス数が増加していない」場合(図33のS3303の「NO」)、ブラックURL特定部108は、判定対象のURLについて処理を終了し、未判定のブラックURL候補について、同様の処理を行う。
そして、ブラックURL特定部108が「アクセス数が増加した」と判定した場合(図33のS3303の「YES」)、アクセス数が集計された日を基準日とする。
ここで、基準日が現在である場合を想定する。
その場合、ブラックURL特定部108は、変数nをインクリメント(n=n+1)する(図33のS3304)。
そして、ブラックURL特定部108は新たにn日後のプロキシログ201を入力し、n日後のアクセス数を集計する。
そして、ブラックURL特定部108は、n日後のアクセス数が基準日のアクセス数と同等又は増加しているか否かを判定する(図33のS3305)。ここで、ブラックURL特定部108は、アクセス数が「アクセス数の第1の閾値」以上の場合に、「基準日のアクセス数と同等又は増加している」と判定する。
基準日のアクセス数と同等又は増加している場合(図33のS3305の「YES」)、ブラックURL特定部108は、変数nを更にインクリメントする(図33のS3304)。すなわち、ブラックURL特定部108は更に1日後のアクセス数を集計する。
一方、アクセス数が「アクセス数の第1の閾値」より少ない場合(図33のS3305の「NO」)、ブラックURL特定部108はアクセス数が基準日以前のアクセス数と同等か否かを判定する(図33の3306)。
ここで、ブラックURL特定部108は、例えば、基準日以前の日毎のアクセス数の平均xと標準偏差σとを記憶しており、例えばアクセス数が「x±3σ」以内であれば、基準日以前のアクセス数を同等と判定する。
そして、アクセス数が基準日以前のアクセス数と同等の場合(図33のS3306の「YES」)、図示は省略するが、あらかじめ設定された所定の日数においてアクセス数が「アクセス数の第1の閾値」以上であったか否かを判定する。そして、アクセス数が所定の日数において「アクセス数の第1の閾値」以上であったブラックURL候補をブラックURL208として出力する。
そして、アクセス数が基準日以前のアクセス数と同等でない場合(図33のS3306の「NO」)、ブラックURL特定部108は、変数nを更にインクリメントする(図33のS3304)。
図34を用いて具体例を説明する。
例えば、ブラックURL特定部108は、あるブラックURL候補に対するアクセス数を現在から、30日分さかのぼって、日毎に集計したとする。
その結果、29日目まではアクセス数は「0」であるが、30日目(現在)にアクセス数が「12」に増加している。ここで、例えば、「アクセス数の第1の閾値」は「10」であるとする。
その後数日間において、ブラックURL特定部108は、アクセス数を集計した結果、33日目(現在から3日後)にアクセス数が「0」に戻っている。
この図34の例のように、ブラックURL特定部108は図33の処理によって、判定対象のブラックURL候補に対するアクセス数が、過去は少なく、かつ、所定の日数の間増加し、かつ、その後減少するか否かを判定している。
ここで、所定の日数は、例えば不正WEBアクセス検知システム100の記憶装置に記憶されており、ここでは所定の日数が「5日」とする。
特定のマルウェアは、インターネット上のC&Cサーバと短期間に継続的に通信することが知られている。したがって、例えば5日以内に集中的にアクセス数が増加したアクセスは、マルウェアによるアクセスと考えられる。
具体例では、基準日が現在の場合を説明したが、基準日が過去であっても構わない。
すなわち、ブラックURL特定部108は、ブラックURL候補に対するアクセス数が、過去は少なく、かつ、基準日から所定の日数以内において増加し、かつ、その後減少するか否かを判定出来れば良い。
すなわち、ブラックURL特定部108は、あらかじめ定義された所定の期間においてのみ日毎(単位時間毎)のアクセス数が、アクセス数の第1の閾値以上となるURLをブラックURL208として特定している。
ブラックURL特定部108は、アクセス数の時系列の変化を自動判定するために、ARMA(AutoRegressive Moving Average)などを利用した公知の方式を使用しても良い。そして、ブラックURL特定部108は、ARMAによりアクセス数の変化が見つかったブラックURL候補をブラックURL208と特定しても良い。
更に、ブラックURL特定部108は、ブラックURL候補に対する通信量に基づいて、ブラックURL208を特定しても良い。
その場合、ブラック判定条件207は、「今まで通信量が少なかったブラックURL候補において、急に通信量が一定期間増加し、その後また減少したか否か」となる。
前述の通りプロキシログ201(図3)には、通信サイズ(通信量)が示されている為、ブラックURL特定部108は、各ブラックURL候補に対して、例えば日毎の通信量を集計することが可能である。
すなわち、ブラックURL特定部108は、プロキシログ201から各ブラックURL候補に対する単位時間毎のデータ通信量を算出する。
そして、詳細な説明は省略するが、ブラックURL特定部108は図33の処理においてアクセス数の代わりに、通信量を用いてブラックURL208を特定する。
すなわち、ブラックURL特定部108は、あらかじめ定義された所定の期間においてのみ日毎(単位時間毎)のデータ通信量が、データ通信量の第1の閾値以上となるURLをブラックURL208として特定する。
(実施の形態7の効果)
前述の通り、マルウェアとC&Cサーバとのアクセス数またはデータ通信量は、短期間に増加することが知られている。実施の形態7の不正WEBアクセス検知システム100は、短期間にアクセス数またはデータ通信量が増加するアクセス先のURLを特定することで、より精度高くマルウェアによるアクセス先のURLを抽出することが可能である。
実施の形態8.
(実施の形態8における不正WEBアクセス検知システム100の概要)
実施の形態8の不正WEBアクセス検知システム100は、ブラック判定条件207として、ブラックURL候補のウェブページへのアクセス数を用いる。具体的には、「ブラックURL候補との通信において、周期的にアクセスが発生しているか否か」をブラック判定条件207とする。
(ブラックURL特定部108の処理)
図35は、ブラックURL特定部108の処理の例を示すフローチャートである。
図36は、ブラックURL候補のウェブページへのアクセス数の例を示す図である。
なお、図2において図示を省略しているが、ブラックURL特定部108は、プロキシログ201を入力することが可能である。ここで、ブラックURL特定部108は、プロキシログ取り込み部101が入力したプロキシログ201をプロキシログ取り込み部101から入力しても良い。
まず、ブラックURL特定部108は、前述の通り、実施の形態1〜5いずれかの処理によって抽出されたブラックURL208をブラックURL候補とする。そして、ブラックURL特定部108は、ブラック判定条件207を入力する。(図35のS3501)。
ここでブラック判定条件207は、前述の通り「ブラックURL候補との通信において、周期的にアクセスが発生しているか否か」である。
そして、ブラックURL特定部108は、入力したプロキシログ201から各ブラックURL候補に対する単位時間毎のアクセス数をあらかじめ定められた集計期間において集計する(図35のS3502)。
ここで、単位時間毎のアクセス数をMi(i=1〜k)とする。例えば、ブラックURL特定部108は、1分間毎のアクセス数を集計するとした場合、M1は、集計期間k分間の内の最初の1分間(1分目)のアクセス数の集計、M2は次の1分間(2分目)のアクセス数の集計を意味する。
なお、図35において図示は省略するが、S3502〜S3504の処理は、各ブラックURL候補に対して行われる。
次に、ブラックURL特定部108は、アクセス数の集計結果Mi(i=1〜k)を時系列で並べた場合に周期的であるか否かを判定する(図35のS3503)。
ここで、ブラックURL特定部108は、単位時間毎のアクセス数が周期的にあらかじめ不正WEBアクセス検知システム100の記憶装置に記憶されている閾値(「アクセス数の第2の閾値」と称する)以上となっているか否かを判定する。つまり、ブラックURL特定部108は、周期的にアクセスが発生しているか否かを判定している。
あるいは、ブラックURL特定部108は、単位時間毎のアクセス数が周期的に同じ値となっているか否かを判定しても良い。また、ブラックURL特定部108は、単位時間毎のアクセス数が周期的に「アクセス数の第2の閾値」以上の同じ値となっているか否かを判定しても良い。
周期的にアクセスが発生している場合(図35のS3503の「YES」)、判定対象のブラックURL候補をブラックURL208として特定し、出力する(図35のS3504)。
すなわち、ブラックURL特定部108は、単位時間毎のアクセス数が一定周期毎にあらかじめ定義されたアクセス数の第2の閾値以上となるブラックURL候補をブラックURL208として特定している。
図36を用いて、具体例を説明する。
例えば図36は、ブラックURL特定部108が、あるブラックURL候補に対する1分間毎のアクセス数を集計したものである。
そして、集計期間は、例えば、1日(24時間×60分=1440分間)としている。
ブラックURL特定部108は、図36に示す集計結果において、2分に1回1アクセスが発生しており、周期的にアクセスが発生していると判定する。ここで「アクセス数の第2の閾値」は「1アクセス」とする。
特定のマルウェアは、インターネット上のC&Cサーバとの接続を確認するために定期的に通信することが知られている。したがって、例えば周期的に1回以上のアクセス数が示されるアクセスは、マルウェアによるアクセスと考えられる。
ブラックURL特定部108は、アクセス数の時系列の周期的な変化を自動判定する公知のアルゴリズムを使用しても良い。そして、ブラックURL特定部108は、公知のアルゴリズムにより周期的なアクセス数の変化が見つかったブラックURL候補をブラックURL208と特定しても良い。
更に、ブラックURL特定部108は、ブラックURL候補に対する通信量に基づいて、ブラックURL208を特定しても良い。
その場合、ブラックURL特定部108は、プロキシログ201から各ブラックURL候補に対する単位時間毎のデータ通信量を算出する。
そして、詳細な説明は省略するが、ブラックURL特定部108は図35の処理においてアクセス数の代わりに、通信量を用いてブラックURL208を特定する。
すなわち、ブラックURL特定部108は、単位時間毎のデータ通信量が一定周期毎にあらかじめ定義されたデータ通信量の第2の閾値以上となるブラックURL候補をブラックURL208として特定する。
(実施の形態8の効果)
前述の通り、マルウェアとC&Cサーバとのアクセスは、周期的に行われることが知られている。実施の形態8の不正WEBアクセス検知システム100は、周期的にアクセスが行われるアクセス先のURLを特定することで、より精度高くマルウェアによるアクセス先のURLを抽出することが可能である。
(実施の形態3と実施の形態8との組合せ)
なお、実施の形態8のブラックURL特定部108により特定されたブラックURL候補の一定周期を、ブラックURL特定部108が特定してもよい。
このブラックURL特定部108が特定した一定周期は、マルウェアによるアクセスの周期である可能性が高い。
そして、実施の形態3のログ蓄積部109は、実施の形態8のブラックURL特定部108が特定した一定周期よりも短い周期でブラウザログ214を入力してもよい。
実施の形態9.
(実施の形態9における不正WEBアクセス検知システム100の概要)
実施の形態9の不正WEBアクセス検知システム100は、ブラック判定条件207として、端末装置500(プロキシサーバ装置600)とブラックURL候補のウェブページとの間のWEB通信におけるリクエストサイズとレスポンスサイズとを用いる。具体的には、「ブラックURL候補において、通信のリクエストサイズとレスポンスサイズが閾値未満か否か」をブラック判定条件207とする。
(ブラックURL特定部108の処理)
図37は、ブラックURL特定部108の処理の例を示すフローチャートである。
なお、図2において図示を省略しているが、ブラックURL特定部108は、プロキシログ201(図3)を入力することが可能である。ここで、ブラックURL特定部108は、プロキシログ取り込み部101が入力したプロキシログ201をプロキシログ取り込み部101から入力しても良い。
まず、ブラックURL特定部108は、前述の通り、実施の形態1〜5いずれかの処理によって抽出されたブラックURL208をブラックURL候補とする。そして、ブラックURL特定部108は、ブラック判定条件207を入力する。(図37のS3701)。
ここでブラック判定条件207は、前述の通り「ブラックURL候補において、通信のリクエストサイズとレスポンスサイズが閾値未満か否か」である。
また、ブラックURL特定部108は、例えば不正WEBアクセス検知システム100の記憶装置に記憶されているリクエストサイズの閾値「αKB」とレスポンスサイズの閾値「βKB」とを入力する。あるいは例えばユーザが不正WEBアクセス検知システム100の入力装置を用いて、リクエストサイズの閾値とレスポンスサイズの閾値とを入力しても良い。
ここで、ユーザがブラウザを用いて行うWEBサイトの閲覧では、リクエストに対するレスポンスは何かしらの文字列を含むコンテンツであるため、ある程度以上のレスポンスサイズになり、「βKB」未満にはならない。また、ユーザがブラウザを用いて行うWEBサイトの閲覧におけるリクエストの場合もヘッダに情報が付与され、リクエストサイズは「αKB」未満にならない。
そして、あらかじめユーザが、WEBサイトへのアクセスにおけるリクエストサイズとレスポンスサイズとの統計データを取得し、αとβとの値を設定しておく。
そして、ブラックURL特定部108は、入力したプロキシログ201から、各ブラックURL候補のリクエストサイズとレスポンスサイズとを抽出する(図37のS3702)。
ここで、図3における図示は省略するが、プロキシログ201には、アクセス毎のリクエストサイズとレスポンスサイズとが示される。
すなわち、プロキシログ201は、プロキシサーバ装置600が行ったアクセス毎に、アクセス先のアドレスと、プロキシサーバ装置600からアクセス先へ送信したデータのサイズであるリクエストサイズと、プロキシサーバ装置600がアクセス先から受信したデータのサイズであるレスポンスサイズとが対応付けられて示される。
なお、1つのブラックURL候補に対して複数のアクセスが有る場合は、ブラックURL特定部108は、リクエストサイズとレスポンスサイズとの最小値を抽出する。
なお、図37において図示は省略するが、S3702〜S3705の処理は、各ブラックURL候補に対して行われる。
次に、ブラックURL特定部108は、抽出したリクエストサイズが閾値「αKB」未満か否かを判定する(図37のS3703)。
リクエストサイズが閾値「αKB」未満の場合(図37のS3703の「YES」)、ブラックURL特定部108は、抽出したレスポンスサイズが閾値「βKB」未満か否かを判定する(図37のS3704)。
そして、ブラックURL特定部108は、レスポンスサイズが閾値「βKB」未満の場合(図37のS3704の「YES」)、判定対象のブラックURL候補をブラックURL208として特定し、出力する(図37のS3705)。
すなわち、ブラックURL特定部108は、リクエストサイズが閾値「αKB」未満、かつ、レスポンスサイズが閾値「βKB」未満のブラックURL候補をブラックURL208として特定する。
すなわち、ブラックURL特定部108は、プロキシログ201からブラックURL候補と対応付けられているレスポンスサイズとリクエストサイズとをアクセス単位で抽出(特定)する。そして、抽出したレスポンスサイズがあらかじめ定義されたレスポンスサイズの閾値未満であり、リクエストサイズがあらかじめ定義されたリクエストサイズの閾値未満のブラックURL候補をブラックURL208として特定する。
ここで、マルウェアによるWEB通信はレスポンスのみが小さいこともあるので、ブラックURL特定部108は、図37のS3703の判定は行わず、S3704の判定のみを行うだけでも良い。すなわち、ブラックURL特定部108は、レスポンスサイズが閾値「βKB」未満のブラックURL候補をブラックURL208として特定する。
すなわち、ブラックURL特定部108は、プロキシログ201からブラックURL候補と対応付けられているレスポンスサイズをアクセス単位で抽出(特定)する。そして、抽出したレスポンスサイズがあらかじめ定義されたレスポンスサイズの閾値未満のブラックURL候補をブラックURL208として特定する。
(実施の形態9の効果)
特定のマルウェアは、インターネット上のC&Cサーバとの接続を確認するために定期的に通信することが知られている。そして、前述の通り、その場合の通信データのサイズ(リクエストサイズとレスポンスサイズ)は、ユーザがブラウザを用いて行うWEBサイトの閲覧の場合と比べて、少ない。従って、実施の形態9の不正WEBアクセス検知システム100は、リクエストサイズとレスポンスサイズとが閾値より少ないアクセスが行われるアクセス先のURLを特定することで、より精度高くマルウェアによるアクセス先のURLを抽出することが可能である。
(実施の形態1〜9の不正WEBアクセス検知システム100のハードウェア構成)
最後に、実施の形態1〜9に示した不正WEBアクセス検知システム100のハードウェア構成例について説明する。
図38は、実施の形態1〜9に示した不正WEBアクセス検知システム100のハードウェア資源の一例を示す図である。
なお、図38の構成は、あくまでも不正WEBアクセス検知システム100のハードウェア構成の一例を示すものであり、不正WEBアクセス検知システム100のハードウェア構成は図38に記載の構成に限らず、他の構成であってもよい。
図38において、不正WEBアクセス検知システム100は、プログラムを実行するCPU911(Central Processing Unit、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう)を備えている。
CPU911は、バス912を介して、例えば、ROM(Read Only Memory)913、RAM(Random Access Memory)914、通信ボード915、表示装置901、キーボード902、マウス903、磁気ディスク装置920と接続され、これらのハードウェアデバイスを制御する。
更に、CPU911は、FDD904(Flexible Disk Drive)、コンパクトディスク装置905(CDD)と接続していてもよい。また、磁気ディスク装置920の代わりに、SSD(Solid State Drive)、光ディスク装置、メモリカード(登録商標)読み書き装置などの記憶装置でもよい。
RAM914は、揮発性メモリの一例である。ROM913、FDD904、CDD905、磁気ディスク装置920の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置の一例である。
実施の形態1〜9で説明した不正WEBアクセス検知システム100の記憶装置、ログ蓄積部109に備えられるファイル記憶部404は、磁気ディスク装置920等により実現される。
通信ボード915、キーボード902、マウス903、FDD904などは、入力装置の一例である。
実施の形態1〜9で説明した不正WEBアクセス検知システム100の入力装置は、例えばキーボード902やマウス903により実現される。
また、通信ボード915、表示装置901などは、出力装置の一例である。
通信ボード915は、ネットワークに接続されている。
例えば、ネットワークは、LAN、インターネットの他、WAN(ワイドエリアネットワーク)、SAN(ストレージエリアネットワーク)などでも構わない。
磁気ディスク装置920には、オペレーティングシステム921(OS)、ウィンドウシステム922、プログラム群923、ファイル群924が記憶されている。
プログラム群923のプログラムは、CPU911がオペレーティングシステム921、ウィンドウシステム922を利用しながら実行する。
また、RAM914には、CPU911に実行させるオペレーティングシステム921のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。
また、RAM914には、CPU911による処理に必要な各種データが格納される。
また、ROM913には、BIOS(Basic Input Output System)プログラムが格納され、磁気ディスク装置920にはブートプログラムが格納されている。
不正WEBアクセス検知システム100の起動時には、ROM913のBIOSプログラム及び磁気ディスク装置920のブートプログラムが実行され、BIOSプログラム及びブートプログラムによりオペレーティングシステム921が起動される。
上記プログラム群923には、実施の形態1〜9の説明において「〜部」(「〜蓄積部」以外、以下同様)として説明している機能を実行するプログラムが記憶されている。プログラムは、CPU911により読み出され実行される。
ファイル群924には、実施の形態1〜9の説明において、「〜の判断」、「〜の計算」、「〜の比較」、「〜の照合」、「〜の参照」、「〜の検索」、「〜の抽出」、「〜の検査」、「〜の生成」、「〜の設定」、「〜の登録」、「〜の選択」、「〜の入力」、「〜の受信」、「〜の判定」、「〜の定義」、「〜の算出」、「〜の更新」等として説明している処理の結果を示す情報やデータや信号値や変数値やパラメータが、「ファイル」や「データベース」の各項目として記憶されている。
「ファイル」や「データベース」は、ディスクやメモリなどの記録媒体に記憶される。
ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してCPU911によりメインメモリやキャッシュメモリに読み出される。
そして、読み出された情報やデータや信号値や変数値やパラメータは、抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示・制御・判定・識別・検知・判別・選択・算出・導出・更新・生成・取得・通知・指示・判断・区別・削除などのCPUの動作に用いられる。
抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示・制御・判定・識別・検知・判別・選択・算出・導出・更新・生成・取得・通知・指示・判断・区別・削除などのCPUの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリ、レジスタ、キャッシュメモリ、バッファメモリ等に一時的に記憶される。
また、実施の形態1〜9で説明しているフローチャートの矢印の部分は主としてデータや信号の入出力を示す。
データや信号値は、RAM914のメモリ、FDD904のフレキシブルディスク、CDD905のコンパクトディスク、磁気ディスク装置920の磁気ディスク、その他光ディスク、ミニディスク、DVD等の記録媒体に記録される。
また、データや信号は、バス912や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
また、実施の形態1〜9の説明において「〜部」として説明しているものは、「〜回路」、「〜装置」、「〜機器」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。
すなわち、実施の形態1〜9で説明したフローチャートに示すステップ、手順、処理により、本発明に係る情報処理方法を実現することができる。
本発明に係る情報処理方法は、例えば、以下に示すアドレス抽出方法として実現されてもよい。
ブラウザが実装されている端末装置からアクセス先として通知されたアドレスにアクセスを行うプロキシサーバ装置がアクセスを行ったアドレスの内、所定のアドレスをコンピュータが抽出するアドレス抽出方法であって、
コンピュータが、前記プロキシサーバ装置が行ったアクセス毎にアクセス先のアドレスが示されるプロキシログと、あらかじめ正当と定義されたアドレスが示される正当アドレス情報と、前記端末装置で前記ブラウザが実行されて前記端末装置から前記プロキシサーバ装置にアクセス先として通知したアドレスが示されるブラウザ実行アドレス情報と
を入力するアドレス入力ステップと、
前記コンピュータが、前記アドレス入力ステップにより入力されたプロキシログに示されるアドレスの内、前記正当アドレス情報と前記ブラウザ実行アドレス情報とのいずれにも示されていないアドレスを抽出するアドレス抽出ステップと
を備えることを特徴とするアドレス抽出方法。
また、「〜部」として説明しているものは、ROM913に記憶されたファームウェアで実現されていても構わない。
或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。
ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、DVD等の記録媒体に記憶される。
プログラムはCPU911により読み出され、CPU911により実行される。
すなわち、プログラムは、実施の形態1〜9の「〜部」としてコンピュータを機能させるものである。あるいは、実施の形態1〜9の「〜部」の手順や方法をコンピュータに実行させるものである。
本発明に係るプログラムは、例えば、以下に示すプログラムとして実現されてもよい。
ブラウザが実装されている端末装置からアクセス先として通知されたアドレスにアクセスを行うプロキシサーバ装置がアクセスを行ったアドレスの内、所定のアドレスを抽出するコンピュータに、
前記プロキシサーバ装置が行ったアクセス毎にアクセス先のアドレスが示されるプロキシログと、あらかじめ正当と定義されたアドレスが示される正当アドレス情報と、前記端末装置で前記ブラウザが実行されて前記端末装置から前記プロキシサーバ装置にアクセス先として通知したアドレスが示されるブラウザ実行アドレス情報と
を入力するアドレス入力ステップと、
前記アドレス入力ステップにより入力されたプロキシログに示されるアドレスの内、前記正当アドレス情報と前記ブラウザ実行アドレス情報とのいずれにも示されていないアドレスを抽出するアドレス抽出ステップと
を実行させることを特徴とするプログラム。
このように、実施の形態1〜9に示す不正WEBアクセス検知システム100は、処理装置たるCPU、記憶装置たるメモリ、磁気ディスク等、入力装置たるキーボード、マウス、通信ボード等、出力装置たる表示装置、通信ボード等を備えるコンピュータである。
そして、上記したように「〜部」として示された機能をこれら処理装置、記憶装置、入力装置、出力装置を用いて実現するものである。
100 不正WEBアクセス検知システム、101 プロキシログ取り込み部、102 URLホワイトリスト取り込み部、103 端末操作ログ取り込み部、105 グレーURL特定部、106 トップページURL特定部、107 ブラウザアクセスURL特定部、108 ブラックURL特定部、109 ログ蓄積部、114 ブラウザログ取り込み部、150 ネットワーク、200 期間特定部、201 プロキシログ、202 URLホワイトリスト、203 端末操作ログ、205 端末識別子、206 期間、207 ブラック判定条件、208 ブラックURL、209 外部サービス、214 ブラウザログ、250 ブラックURL情報、251 アラーム、301 プロキシログエントリ、302 ホワイトURL、303 WEBアクセスURL情報、305 グレーURL情報、306 トップページURL情報、307 ブラウザアクセスURL情報、314 ブラウザログエントリ、315 ブラウザ操作期間、321 呼び出し、322 応答、323 監視、340 不正ログ通知、401 ファイル監視ツール、402 OSコマンド、403 ファイル監視部、404 ファイル記憶部、405 ファイル監視プログラム、500 端末装置、501 端末装置、551 ブラウザ、600 プロキシサーバ装置、901 表示装置、902 キーボード、903 マウス、904 FDD、905 コンパクトディスク装置、911 CPU、912 バス、913 ROM、914 RAM、915 通信ボード、920 磁気ディスク装置、921 オペレーティングシステム、922 ウィンドウシステム、923 プログラム群、924 ファイル群。

Claims (11)

  1. ブラウザが実装されている端末装置からアクセス先として通知されたアドレスにアクセスを行うプロキシサーバ装置がアクセスを行ったアドレスの内、所定のアドレスを抽出するアドレス抽出装置であって、
    前記プロキシサーバ装置が行ったアクセス毎にアクセス先のアドレスが示されるプロキシログと、あらかじめ正当と定義されたアドレスが示される正当アドレス情報と、前記端末装置で前記ブラウザが実行されて前記端末装置から前記プロキシサーバ装置にアクセス先として通知したアドレスが示されるブラウザ実行アドレス情報と
    を入力するアドレス入力部と、
    前記アドレス入力部により入力されたプロキシログに示されるアドレスの内、前記正当アドレス情報と前記ブラウザ実行アドレス情報とのいずれにも示されていないアドレスを抽出するアドレス抽出部と
    を備えることを特徴とするアドレス抽出装置。
  2. 前記アドレス入力部は、
    URL(Uniform Resource Locator)が、前記プロキシサーバ装置が行ったアクセス毎にアクセス先のアドレスとして示されるプロキシログと、
    URLが、あらかじめ正当と定義されたアドレスとして示される正当アドレス情報と、
    URLが、前記端末装置で前記ブラウザが実行されて前記端末装置から前記プロキシサーバ装置にアクセス先として通知したアドレスとして示されるブラウザ実行アドレス情報と
    を入力し、
    前記アドレス抽出装置は、更に、
    前記ブラウザ実行アドレス情報に示されるURLから、当該URLのウェブページの提供元が特定されるドメイン名を抽出するドメイン名抽出部を備え、
    前記アドレス抽出部は、
    前記アドレス入力部により入力されたプロキシログに示されるURLの内、前記正当アドレス情報と前記ブラウザ実行アドレス情報とのいずれにも示されておらず、更に、前記ドメイン名抽出部により抽出されたドメイン名を含んでいないURLを抽出することを特徴とする請求項1記載のアドレス抽出装置。
  3. 前記アドレス入力部は、
    前記プロキシサーバ装置が特定のアクセス先に対して、他の少なくとも1つのアクセス先を経由した後にアクセスを行った場合に、前記プロキシサーバ装置が前記特定のアクセス先へのアクセスの直前に経由したアクセス先のアドレスが経由元アドレスとして、前記特定のアクセス先のアドレスに対応付けられて示されるプロキシログを入力し、
    前記アドレス抽出装置は、更に、
    前記アドレス入力部により入力されたプロキシログに示されるアドレスのうち、前記ブラウザ実行アドレス情報に示されるアドレスが経由元アドレスとして対応付けられているアドレスを経由先アドレスとして抽出し、
    更に、抽出した経由先アドレスが経由元アドレスとして対応付けられているアドレスが前記プロキシログに示されている場合に、当該アドレスを経由先アドレスとして抽出する経由先抽出部
    を備え、
    前記アドレス抽出部は、
    前記アドレス入力部により入力されたプロキシログに示されるアドレスの内、前記正当アドレス情報と前記ブラウザ実行アドレス情報とのいずれにも示されておらず、更に、前記経由先抽出部により抽出された経由先アドレス以外のアドレスを抽出することを特徴とする請求項1記載のアドレス抽出装置。
  4. 前記アドレス入力部は、
    前記端末装置で前記ブラウザが実行されて前記端末装置から前記プロキシサーバ装置に新たなアクセス先としてアドレスが通知される毎に更新される前記ブラウザ実行アドレス情報を、所定の時間毎に入力することを特徴とする請求項1〜3いずれか記載のアドレス抽出装置。
  5. 前記アドレス抽出装置は、更に、
    前記端末装置において前記ブラウザ以外のプログラムによる前記ブラウザ実行アドレス情報に対するアクセスが検知された場合に、前記ブラウザ実行アドレス情報の改ざんの可能性を通知するアラームを出力するアラーム出力部を備えることを特徴とする請求項1〜4いずれか記載のアドレス抽出装置。
  6. 前記アドレス抽出装置は、更に、
    前記アドレス抽出部により抽出されたアドレスの内、少なくとも1つの所定の条件に合致する所定のアドレスを条件合致アドレスとして特定する条件合致アドレス特定部
    を備えることを特徴とする請求項1〜5いずれか記載のアドレス抽出装置。
  7. 前記アドレス抽出装置は、更に、
    前記アドレス抽出部により抽出されたアドレス毎にアドレスのウェブページの提供元が属する国が示される提供国情報と、あらかじめ特定された国が示される特定国情報とを入力する情報入力部
    を備え、
    前記条件合致アドレス特定部は、
    前記情報入力部により入力された提供国情報に示される国の中で前記特定国情報に示されるいずれかの国に合致する国が提供しているウェブページのアドレスを条件合致アドレスとして特定する請求項6記載のアドレス抽出装置。
  8. 前記アドレス入力部は、
    前記プロキシサーバ装置が行ったアクセス毎にアクセス先のアドレスとアクセス時のデータ通信量とが対応付けられて示されるプロキシログを入力し、
    前記アドレス抽出装置は、更に、
    前記アドレス入力部により入力されたプロキシログから前記アドレス抽出部により抽出された各アドレスに対する単位時間毎のアクセス数を算出する、または、前記アドレス入力部により入力されたプロキシログから前記アドレス抽出部により抽出された各アドレスに対する単位時間毎のデータ通信量を算出する通信量算出部
    を備え、
    前記条件合致アドレス特定部は、
    前記通信量算出部により単位時間毎のアクセス数が算出された場合に、あらかじめ定義された所定の期間においてのみ前記通信量算出部により算出された単位時間毎のアクセス数が、あらかじめ定義されたアクセス数の第1の閾値以上となるアドレスを条件合致アドレスとして特定し、前記通信量算出部により単位時間毎のデータ通信量が算出された場合に、あらかじめ定義された所定の期間においてのみ前記通信量算出部により算出された単位時間毎のデータ通信量が、あらかじめ定義されたデータ通信量の第1の閾値以上となるアドレスを条件合致アドレスとして特定する請求項6記載のアドレス抽出装置。
  9. 前記アドレス入力部は、
    前記プロキシサーバ装置が行ったアクセス毎にアクセス先のアドレスとアクセス時のデータ通信量とが対応付けられて示されるプロキシログを入力し、
    前記アドレス抽出装置は、更に、 前記アドレス入力部により入力されたプロキシログから前記アドレス抽出部により抽出された各アドレスに対する単位時間毎のアクセス数を算出する、または、前記アドレス入力部により入力されたプロキシログから前記アドレス抽出部により抽出された各アドレスに対する単位時間毎のデータ通信量を算出する通信量算出部
    を備え、
    前記条件合致アドレス特定部は、
    前記通信量算出部により単位時間毎のアクセス数が算出された場合に、前記単位時間毎のアクセス数が一定周期毎にあらかじめ定義されたアクセス数の第2の閾値以上となるアドレスを条件合致アドレスとして特定し、前記通信量算出部により単位時間毎のデータ通信量が算出された場合に、前記単位時間毎のデータ通信量が一定周期毎にあらかじめ定義されたデータ通信量の第2の閾値以上となるアドレスを条件合致アドレスとして特定することを特徴とする請求項6記載のアドレス抽出装置。
  10. 前記アドレス入力部は、
    前記プロキシサーバ装置が行ったアクセス毎に、アクセス先のアドレスと、前記プロキシサーバ装置からアクセス先へ送信したデータのサイズであるリクエストサイズと、前記プロキシサーバ装置がアクセス先から受信したデータのサイズであるレスポンスサイズとが対応付けられて示されるプロキシログを入力し、
    前記条件合致アドレス特定部は、
    前記アドレス入力部により入力されたプロキシログから前記アドレス抽出部により抽出された各アドレスと対応付けられているレスポンスサイズをアクセス単位で特定し、
    特定したレスポンスサイズがあらかじめ定義されたレスポンスサイズの閾値未満のアドレスを条件合致アドレスとして特定することを特徴とする請求項6記載のアドレス抽出装置。
  11. 前記条件合致アドレス特定部は、
    前記アドレス入力部により入力されたプロキシログから前記アドレス抽出部により抽出された各アドレスと対応付けられているレスポンスサイズとリクエストサイズとをアクセス単位で特定し、
    特定したレスポンスサイズがあらかじめ定義されたレスポンスサイズの閾値未満であり、リクエストサイズがあらかじめ定義されたリクエストサイズの閾値未満のアドレスを条件合致アドレスとして特定することを特徴とする請求項10記載のアドレス抽出装置。
JP2012058303A 2012-03-15 2012-03-15 アドレス抽出装置 Expired - Fee Related JP5791548B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012058303A JP5791548B2 (ja) 2012-03-15 2012-03-15 アドレス抽出装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012058303A JP5791548B2 (ja) 2012-03-15 2012-03-15 アドレス抽出装置

Publications (2)

Publication Number Publication Date
JP2013191133A JP2013191133A (ja) 2013-09-26
JP5791548B2 true JP5791548B2 (ja) 2015-10-07

Family

ID=49391267

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012058303A Expired - Fee Related JP5791548B2 (ja) 2012-03-15 2012-03-15 アドレス抽出装置

Country Status (1)

Country Link
JP (1) JP5791548B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6290659B2 (ja) * 2014-03-07 2018-03-07 株式会社日立システムズ アクセス管理方法およびアクセス管理システム
CN104486298B (zh) * 2014-11-27 2018-03-09 小米科技有限责任公司 识别用户行为的方法及装置
WO2016139932A1 (ja) 2015-03-03 2016-09-09 日本電気株式会社 ログ解析システム、解析装置、解析方法、および解析用プログラムが記憶された記憶媒体
KR101686472B1 (ko) * 2015-07-08 2016-12-14 국민대학교산학협력단 네트워크 보안 장치, 네트워크 보안 장치에서 수행되는 악성 행위 방어 방법
CN111859956B (zh) * 2020-07-09 2021-08-27 睿智合创(北京)科技有限公司 一种用于金融行业的地址分词方法
CN114598552A (zh) * 2022-03-29 2022-06-07 邹瀴 接口访问控制方法、装置、电子设备和存储介质

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003281094A (ja) * 2002-03-19 2003-10-03 Hitachi Information Systems Ltd 管理システム,該管理システムによる不正候補アクセスデータ抽出方法および不正候補アクセスデータ抽出プログラム
JP3105010U (ja) * 2004-04-02 2004-10-21 株式会社ウインズコミュニケーションズ セキュリティ監視システム
US7698442B1 (en) * 2005-03-03 2010-04-13 Voltage Security, Inc. Server-based universal resource locator verification service
JP4558668B2 (ja) * 2006-03-06 2010-10-06 株式会社Kddi研究所 ログ分析装置、ログ分析プログラム、および記録媒体
JP4159100B2 (ja) * 2006-04-06 2008-10-01 インターナショナル・ビジネス・マシーンズ・コーポレーション 情報処理装置による通信を制御する方法およびプログラム
JP4879090B2 (ja) * 2007-05-24 2012-02-15 株式会社日立製作所 情報処理装置および情報処理方法
JP2009075940A (ja) * 2007-09-21 2009-04-09 Lac Co Ltd ログ分析装置およびプログラム
JP5749053B2 (ja) * 2010-03-31 2015-07-15 株式会社ブロードバンドセキュリティ ファイルのアップロード遮断システム及びファイルのアップロード遮断方法

Also Published As

Publication number Publication date
JP2013191133A (ja) 2013-09-26

Similar Documents

Publication Publication Date Title
US10491614B2 (en) Illegitimate typosquatting detection with internet protocol information
US10366229B2 (en) Method for detecting a cyber attack
US10505986B1 (en) Sensor based rules for responding to malicious activity
US10574695B2 (en) Gateway apparatus, detecting method of malicious domain and hacked host thereof, and non-transitory computer readable medium
CN107251037B (zh) 黑名单生成装置、黑名单生成系统、黑名单生成方法和记录介质
US9300682B2 (en) Composite analysis of executable content across enterprise network
CN104125209B (zh) 恶意网址提示方法和路由器
JP5791548B2 (ja) アドレス抽出装置
US9876813B2 (en) System and method for web-based log analysis
RU2607229C2 (ru) Системы и способы динамического агрегирования показателей для обнаружения сетевого мошенничества
US9027121B2 (en) Method and system for creating a record for one or more computer security incidents
CN101971591B (zh) 分析网址的系统及方法
US20200106790A1 (en) Intelligent system for mitigating cybersecurity risk by analyzing domain name system traffic
JP6030272B2 (ja) ウェブサイト情報抽出装置、システム、ウェブサイト情報抽出方法、および、ウェブサイト情報抽出プログラム
JP4773332B2 (ja) セキュリティ管理装置及びセキュリティ管理方法及びプログラム
CN108351941B (zh) 分析装置、分析方法、以及计算机可读存储介质
CN112600797A (zh) 异常访问行为的检测方法、装置、电子设备及存储介质
EP3647982B1 (en) Cyber attack evaluation method and cyber attack evaluation device
US11330010B2 (en) Detecting malicious web pages by analyzing elements of hypertext markup language (HTML) files
KR101767594B1 (ko) 악성코드 점검을 위한 웹주소 자동 추출 시스템 및 방법
JP5804883B2 (ja) アドレス抽出装置
KR101767589B1 (ko) 악성코드 점검을 위한 웹주소 자동 추출 시스템 및 방법
JP7293170B2 (ja) シグネチャ生成装置、検出装置、シグネチャ生成プログラム及び検出プログラム
US11503046B2 (en) Cyber attack evaluation method and information processing apparatus
JP5684842B2 (ja) 悪性サイト検出装置、悪性サイト検出方法およびプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20141106

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150527

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: 20150707

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150804

R150 Certificate of patent or registration of utility model

Ref document number: 5791548

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees