JP6691240B2 - 判定装置、判定方法、および、判定プログラム - Google Patents
判定装置、判定方法、および、判定プログラム Download PDFInfo
- Publication number
- JP6691240B2 JP6691240B2 JP2018565513A JP2018565513A JP6691240B2 JP 6691240 B2 JP6691240 B2 JP 6691240B2 JP 2018565513 A JP2018565513 A JP 2018565513A JP 2018565513 A JP2018565513 A JP 2018565513A JP 6691240 B2 JP6691240 B2 JP 6691240B2
- Authority
- JP
- Japan
- Prior art keywords
- attack
- vulnerability
- keyword
- request
- keywords
- 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
Links
- 238000000034 method Methods 0.000 title description 10
- 238000000605 extraction Methods 0.000 claims description 22
- 239000000284 extract Substances 0.000 claims description 15
- 235000014510 cooky Nutrition 0.000 claims description 8
- 238000001514 detection method Methods 0.000 description 12
- 238000005516 engineering process Methods 0.000 description 9
- 238000012545 processing Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 238000012795 verification Methods 0.000 description 7
- 101100264195 Caenorhabditis elegans app-1 gene Proteins 0.000 description 5
- 230000010365 information processing Effects 0.000 description 5
- 230000002159 abnormal effect Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000008685 targeting Effects 0.000 description 2
- 230000007717 exclusion Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/577—Assessing vulnerabilities and evaluating computer system security
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/03—Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
- G06F2221/034—Test or assess a computer or a system
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Computer And Data Communications (AREA)
Description
本発明は、判定装置、判定方法、および、判定プログラムに関する。
従来のWebアプリケーションに対する攻撃検知技術や脆弱性判定技術としては、アノマリ検知技術や、脆弱性管理技術等がある。アノマリ検知技術は、事前に正常なアクセスを示すモデルを学習しておき、このモデルとの比較により異常アクセスを検知する技術である。また、脆弱性管理技術は、システムやアプリケーションのバージョン等から脆弱性の有無を判定する技術である。
Christopher Kruegel, and Giovanni Vigna. "Anomaly Detection of Web-based Attacks." Proceedings of the 10th ACM conference on Computer and communications security. ACM, 2003.
Detecting Attacks on Web Applications from Log Files, SANS, [平成29年1月17日検索]、インターネット<URL:https://www.sans.org/reading-room/whitepapers/logging/detecting-attacks-web-applications-log-files-2074>
鐘 揚, et al. "URIの共起性検知に基づくWebスキャンの実態調査" 研究報告セキュリティ心理学とトラスト (SPT) 社団法人 電子情報通信学会 信学技法 2016.5 (2016): 1-6.
しかし、アノマリ検知技術により検知される異常アクセスは、0-day攻撃(対策が確立されていない攻撃)の他に、既知の攻撃の亜種の攻撃(対策の確立された攻撃)も含む。したがって、アノマリ検知技術を用いた場合、検知された異常アクセスが、0-day攻撃か否かを判定することはできなかった。また、脆弱性管理技術を用いることで、攻撃が既知の脆弱性に対する攻撃か否かを判定可能だが、0-day攻撃かの判定はできなかった。
そのため、例えば、攻撃の検知後、分析官等は、当該攻撃が0-day攻撃か否かの判断を行うところから作業を始めなくてはならず、攻撃に対する対処が遅くなってしまうという問題があった。そこで、本発明は、前記した問題を解決し、攻撃が0-day攻撃か否かの判定を行うことを課題とする。
前記した課題を解決するため、本発明は、既知の脆弱性情報から、脆弱性を特徴づけるキーワードを抽出するキーワード抽出部と、前記脆弱性を特徴づけるキーワードと、攻撃に用いられたリクエストに含まれるキーワードとを比較し、前記リクエストに、前記脆弱性を特徴づけるキーワードと同じキーワードが含まれる度合いの高さであるスコアが所定の閾値未満である場合、前記リクエストを、既知の攻撃でもなく、また、既知の攻撃に類似する攻撃でもない0-day攻撃と判定する判定部とを備えることを特徴とする。
本発明によれば、攻撃が0-day攻撃か否かの判定を行うことができる。
以下、図面を参照しながら、本発明を実施するための形態(実施形態)について説明する。本発明は、本実施形態に限定されない。なお、以下の説明における0-day攻撃とは、既知の攻撃でもなく、既知の攻撃の亜種の攻撃(既知の攻撃に類似する攻撃)でもない攻撃のことを指すものとする。
図1を用いて、本実施形態の判定装置10の概要を説明する。判定装置10は、既知の脆弱性に関する情報を収集し、収集した既知の脆弱性に関する情報から、既知の脆弱性を特徴づけるキーワードを抽出し、脆弱性情報DB(データベース)13に蓄積しておく。
その後、判定装置10は、複数のWebサイトへのアクセスログ(Webアクセスログ)から攻撃となるリクエストを抽出すると、脆弱性情報DB13に蓄積された、既知の脆弱性を特徴づけるキーワードとのマッチングを行う。そして、マッチングの結果、当該攻撃が、既知の攻撃でも、既知の攻撃に類似する攻撃でもなければ、判定装置10は、当該攻撃を0-day攻撃と判定する。一方、マッチングの結果、当該攻撃が、既知の攻撃または既知の攻撃の亜種の攻撃であれば、判定装置10は、当該攻撃を0-day攻撃と判定しない。
このような判定装置10は、脆弱性情報収集部11と、キーワード抽出部12と、脆弱性情報DB13と、攻撃抽出部14と、0-day攻撃判定部15とを備える。
脆弱性情報収集部11は、既知の脆弱性に関する情報を収集する。例えば、脆弱性情報収集部11は、CVE(Common Vulnerabilities and Exposures)などの脆弱性情報DB、攻撃コードが公開されているWebサイト、セキュリティベンダのブログ等から、Webアプリケーションに関する脆弱性情報を収集する。
収集する脆弱性情報は、例えば、脆弱性の発見日、公開日、Webアプリケーション名、Webアプリケーションのバージョン、脆弱性の種類、脆弱性が存在するWebアプリケーションのファイル名、関数名、攻撃に使用されるリクエストに関する情報、検証コード、リファレンス等であるが、これに限らない。
キーワード抽出部12は、脆弱性情報収集部11で収集された脆弱性情報から、当該脆弱性を特徴づけるキーワードを抽出する。例えば、キーワード抽出部12は、脆弱性情報収集部11で収集された脆弱性情報において、脆弱性に対する攻撃に使用されるリクエストに関する情報あるいは検証コードにおけるリクエストURLパス、URLパラメータ、ヘッダ、Cookie部等から、当該脆弱性を特徴づけるキーワードを抽出する。そして、キーワード抽出部12は抽出したキーワードを脆弱性情報DB13に蓄積する。
例えば、キーワード抽出部12は、上記の情報あるいは検証コードにおける、リクエストURLパスから「/?&=#」等の記号以外の部分をキーワードとして抽出する。一例を挙げると、キーワード抽出部12は、http://localhost/wp-content/plugins/wp-mobile-detector/resize.phpというリクエストURLパスから、http://localhost、/を除外し、(wp-content, plugins, wp-mobile-detector, resize.php)をキーワードとして抽出する。
また、例えば、キーワード抽出部12は、上記の情報あるいは検証コードにおける、リクエストURLパラメータから、URLパラメータ名をキーワードとして抽出する。一例を挙げると、キーワード抽出部12は、http://localhost/wp-content/plugins/wp-mobile-detector/reisze.php?src=xxxというリクエストURLパラメータから、URLパラメータ名である(src)をキーワードとして抽出する。
また、例えば、キーワード抽出部12は、上記の情報あるいは検証コードにおける、リクエストヘッダのヘッダ名をキーワードとして抽出する。一例を挙げると、キーワード抽出部12は、User-Agent: Firefox, Accept: */*, Host: www.example.com, X-APP-ID: 1234というリクエストヘッダから、ヘッダ名である(user-agent, accept, host, x-app-id)をキーワードとして抽出する。
また、例えば、キーワード抽出部12は、上記の情報あるいは検証コードにおける、リクエストヘッダのリクエストcookie名をキーワードとして抽出する。一例を挙げると、キーワード抽出部12は、リクエストヘッダのCookie: wp_user_nonce=1234から、cookie名である(wp_user_nonce)をキーワードとして抽出する。
なお、キーワード抽出部12は、上記のようにして抽出したキーワードから、一般的な語(例えば、脆弱性に対する攻撃となるリクエスト以外にも頻繁に登場する語)を除外してもよい。例えば、キーワード抽出部12は、上記の情報あるいは検証コードから抽出したキーワードに対し、IDF(Inverse Document Frequency)あるいは予め用意した除外フィルタを用いて一般的な語を除外する。
一例を挙げると、キーワード抽出部12は、リクエストURLパスから抽出したキーワード(wp-content, plugins, wp-mobile-detector, resize.php)から、一般的な語であるpluginsを除外し、(wp-content, wp-mobile-detector, resize.php)というキーワードを得る。また、キーワード抽出部12は、リクエストURLパラメータから抽出したキーワード(src)については、一般的な語が含まれないため(src)のままとする。
さらに、キーワード抽出部12は、リクエストヘッダから抽出したキーワード(user-agent, accept, host, x-app-id)から、一般的な語であるuser-agent, accept, hostを除外し、(x-app-id)というキーワードを得る。さらに、リクエストcookie名から抽出したキーワード(wp_user_nonce)については、一般的な語が含まれないため(wp_user_nonce)のままとする。
脆弱性情報DB13は、脆弱性ごとに、当該脆弱性を特徴づけるキーワードを対応付けた情報である。この脆弱性情報DB13は、例えば、図2に示すように、脆弱性の識別情報(ID)と、当該脆弱性を特徴づけるキーワードと、当該脆弱性の内容(例えば、脆弱性の公開日、アプリケーション名、脆弱性のタイプなど)とを対応付けた情報である。図2に示す脆弱性情報DB13において、脆弱性(ID:1)には、当該脆弱性の内容(ID:1の公開日、アプリケーション名、脆弱性のタイプなど)と、当該脆弱性(ID:1)を特徴づけるキーワード(キーワード1、キーワード2、…、キーワードN)とが対応付けられている。
攻撃抽出部14は、複数のWebサイトへのアクセスログ(Webアクセスログ)から、攻撃と判断されるリクエスト(攻撃リクエスト)を抽出する。例えば、攻撃抽出部14は、アノマリ検知(非特許文献1参照)、HTTPステータスコードによる判定(非特許文献2参照)、リクエストにおけるURIの共起性の検知(非特許文献3参照)等の攻撃検知の手法を、1つまたは複数組み合わせることで攻撃リクエストを抽出する。
なお、アノマリ検知は、学習したリクエストの内容と乖離が大きい場合、攻撃として検知する方法であり、HTTPステータスコードによる判定は、一般にWebアプリケーションに対する攻撃は失敗となる可能性が高く、失敗した場合、HTTPステータスコードはエラーを表す400から500台になるという性質を利用し、攻撃を検知する方法である。また、リクエストにおけるURIの共起性の検知は、一般にWebアプリケーションに対する攻撃は複数のWebサイトに対して実施されるため、各Webサイトに共通したリクエストが現れる可能性が高いという性質を利用し、この共起性の高さから攻撃を検知する方法である。
0-day攻撃判定部15は、攻撃抽出部14により攻撃と判断されたリクエストが0-day攻撃か否かを判定し、その判定結果を出力する。具体的には、0-day攻撃判定部15は、脆弱性情報DB13に蓄積される脆弱性を特徴づけるキーワードと、攻撃と判断されたリクエストに含まれるキーワードとを比較し、当該リクエストに、脆弱性を特徴づけるキーワードと同じキーワードが含まれる度合いの高さを示すスコアの値を算出する。そして、0-day攻撃判定部15は、算出したスコアの値が所定の閾値未満である場合、当該リクエストを0-day攻撃と判定する。一方、算出したスコアの値が所定の閾値以上である場合、0-day攻撃判定部15は、当該リクエストを既知の脆弱性を狙った攻撃、または当該攻撃の亜種の攻撃と判定する。
一例を挙げる。例えば、脆弱性情報DB13に蓄積されている、ある脆弱性に関するキーワードの個数をNk、そのうち、攻撃抽出部14により攻撃と判断されたリクエストとマッチしたキーワードの個数をNmとし、スコアS=Nm/Nkを算出する。ここで、0-day攻撃判定部15は、算出したスコアSが予め定められた閾値T以上であれば(既知の脆弱性に対する攻撃との類似度が高ければ)、当該リクエストを、そのキーワードらと関連づけられている脆弱性を狙った攻撃と判定する。つまり、0-day攻撃判定部15は、既知の脆弱性を狙った攻撃、または当該攻撃の亜種の攻撃と判定する。一方、算出したスコアSが閾値T未満であれば(既知の脆弱性に対する攻撃との類似度が低ければ)、0-day攻撃判定部15は、当該リクエストを、既知の脆弱性を狙った攻撃(既知の攻撃)でもなく、また、既知の攻撃の亜種の攻撃でもない、つまり、0-day攻撃と判定する。
なお、0-day攻撃判定部15が、攻撃と判定されたリクエストに含まれるキーワードと、脆弱性情報DB13に蓄積されたキーワードとをマッチング(比較)を行う際には、例えば、同じフィールド(例えば、URLパス、パラメータ、ヘッダ、cookie部等)のキーワード同士でマッチングを行う。例えば、0-day攻撃判定部15は、攻撃と判断されたリクエストのURLパスから抽出したキーワードと、脆弱性情報DB13におけるリクエストのURLパスのキーワードとについてマッチングを行うが、それ以外の部分(例えば、パラメータ、ヘッダ、cookie部等)のキーワードとのマッチングは行わない。
このようにすることで、0-day攻撃判定部15は、攻撃と判定されたリクエストが0-day攻撃か否かを精度よく判定することができる。
なお、上記のスコアSの値は、例えば、攻撃と判定されたリクエストにおける、脆弱性情報DB13に蓄積されているキーワードと同じキーワードの数(マッチング数)であってもよいし、脆弱性情報DB13に蓄積されているキーワードとマッチするキーワードについて、マッチするキーワードの長さも考慮した値であってもよい。
(処理手順)
次に、図3を用いて、判定装置10の処理手順の例を説明する。なお、事前に脆弱性情報収集部11は脆弱性情報を収集し、キーワード抽出部12は、収集された脆弱性情報に基づき、脆弱性情報DB13に、各脆弱性を特徴づけるキーワードを蓄積済みであるものとする。また、攻撃抽出部14は、Webアクセスログ等から、攻撃と判断されるリクエスト(攻撃リクエスト)を抽出済みであるものとする。
次に、図3を用いて、判定装置10の処理手順の例を説明する。なお、事前に脆弱性情報収集部11は脆弱性情報を収集し、キーワード抽出部12は、収集された脆弱性情報に基づき、脆弱性情報DB13に、各脆弱性を特徴づけるキーワードを蓄積済みであるものとする。また、攻撃抽出部14は、Webアクセスログ等から、攻撃と判断されるリクエスト(攻撃リクエスト)を抽出済みであるものとする。
図3に示すように、判定装置10の0-day攻撃判定部15は、ユーザにより処理停止命令がなく(S1でNo)、未処理の攻撃リクエストが存在すれば(S2でYes)、リクエストと脆弱性情報DB13に含まれる脆弱性の各キーワードとマッチング数を算出する(S3)。そして、マッチング数が閾値T以上の脆弱性が存在すれば(S4でYes)、0-day攻撃判定部15は、攻撃リクエストを当該脆弱性に対する攻撃(既知攻撃)と判定する(S5)。一方、マッチング数が閾値T以上の脆弱性が存在しなければ(S4でNo)、0-day攻撃判定部15は、攻撃リクエストに該当する既知の攻撃ではなく、0-day攻撃と判定する(S6)。なお、判定装置10がユーザにより処理停止命令を受け付けた場合(S1でYes)、S2〜S6の処理を実行せず、処理を終了する。また、0-day攻撃判定部15は、未処理の攻撃リクエストが存在しなかった場合(S2でNo)、S1へ戻る。
以上説明した判定装置10によれば、攻撃が0-day攻撃か否かを精度よく判定することができる。これにより、攻撃の検知後、分析官等は、当該攻撃が0-day攻撃か否かの判断を行う作業を行う必要がなくなるので、分析官等は0-day攻撃の分析に注力できる。その結果、攻撃に対する対処(レスポンス)の効率を向上させることができる。
(判定装置の動作例)
次に、図4および図5を用いて判定装置10の動作例を説明する。例えば、図4および図5に示すとおり、脆弱性情報収集部11は、符号401に示す脆弱性情報を収集すると、キーワード抽出部12は、符号402に示す3つのキーワード(app1,edit.php,id)を抽出する。そして、キーワード抽出部12は、脆弱性情報(ID:1)のキーワードとして、この3つのキーワード(app1,edit.php,id)を脆弱性情報DB13に蓄積しているものとする。
次に、図4および図5を用いて判定装置10の動作例を説明する。例えば、図4および図5に示すとおり、脆弱性情報収集部11は、符号401に示す脆弱性情報を収集すると、キーワード抽出部12は、符号402に示す3つのキーワード(app1,edit.php,id)を抽出する。そして、キーワード抽出部12は、脆弱性情報(ID:1)のキーワードとして、この3つのキーワード(app1,edit.php,id)を脆弱性情報DB13に蓄積しているものとする。
その後、図4に示すように、攻撃抽出部14は、符号403に示すWebアクセスログから、攻撃リクエストとして符号404に示すリクエストを抽出した場合を考える。この場合、0-day攻撃判定部15は、当該攻撃リクエストと、脆弱性情報(ID:1)の3つのキーワード(app1,edit.php,id)とのマッチングを行うと、閾値T=1とした場合、キーワードにマッチした部分が3つあるため、既知の攻撃と判定する。そして、0-day攻撃判定部15は、「GET /app1/edit.php?id=1 union select @@verion--;」というリクエストについて、脆弱性情報(ID:1)に示される既知の攻撃という判定結果を出力する。
一方、図5に示すように、攻撃抽出部14は、符号501に示すWebアクセスログから、攻撃リクエストとして符号502に示すリクエストを抽出した場合を考える。この場合、0-day攻撃判定部15は、当該攻撃リクエストと、脆弱性情報(ID:1)の3つのキーワード(app1,edit.php,id)とのマッチングを行うと、閾値T=1とした場合、キーワードにマッチした部分が0であるため、0-day攻撃と判定する。そして、0-day攻撃判定部15は、「GET /app2/register.php?name=a <script>alert(”xss”);</script>」というリクエストについて、0-day攻撃(脆弱性情報なし)と判定する。
このようにすることで、判定装置10は、攻撃が0-day攻撃か否かを判定することができる。
(プログラム)
また、上記の実施形態で述べた判定装置10の機能を実現するプログラムを所望の情報処理装置(コンピュータ)にインストールすることによって実装できる。例えば、パッケージソフトウェアやオンラインソフトウェアとして提供される上記のプログラムを情報処理装置に実行させることにより、情報処理装置を判定装置10として機能させることができる。ここで言う情報処理装置には、デスクトップ型またはノート型のパーソナルコンピュータが含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やPHS(Personal Handyphone System)等の移動体通信端末、さらには、PDA(Personal Digital Assistant)等がその範疇に含まれる。また、判定装置10を、クラウドサーバに実装してもよい。
また、上記の実施形態で述べた判定装置10の機能を実現するプログラムを所望の情報処理装置(コンピュータ)にインストールすることによって実装できる。例えば、パッケージソフトウェアやオンラインソフトウェアとして提供される上記のプログラムを情報処理装置に実行させることにより、情報処理装置を判定装置10として機能させることができる。ここで言う情報処理装置には、デスクトップ型またはノート型のパーソナルコンピュータが含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やPHS(Personal Handyphone System)等の移動体通信端末、さらには、PDA(Personal Digital Assistant)等がその範疇に含まれる。また、判定装置10を、クラウドサーバに実装してもよい。
以下に、上記のプログラム(判定プログラム)を実行するコンピュータの一例を説明する。図6は、判定プログラムを実行するコンピュータを示す図である。図6に示すように、コンピュータ1000は、例えば、メモリ1010と、CPU(Central Processing Unit)1020と、ハードディスクドライブインタフェース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が接続される。
ここで、図6に示すように、ハードディスクドライブ1090は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093およびプログラムデータ1094を記憶する。前記した実施形態で説明した各種データや情報は、例えばハードディスクドライブ1090やメモリ1010に記憶される。
そして、CPU1020が、ハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して、上述した各手順を実行する。
なお、判定プログラムに係るプログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限られず、例えば、着脱可能な記憶媒体に記憶されて、ディスクドライブ1100等を介してCPU1020によって読み出されてもよい。あるいは、判定プログラムに係るプログラムモジュール1093やプログラムデータ1094は、LAN(Local Area Network)やWAN(Wide Area Network)等のネットワークを介して接続された他のコンピュータに記憶され、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
10 判定装置
11 脆弱性情報収集部
12 キーワード抽出部
13 脆弱性情報DB
14 攻撃抽出部
15 0-day攻撃判定部
11 脆弱性情報収集部
12 キーワード抽出部
13 脆弱性情報DB
14 攻撃抽出部
15 0-day攻撃判定部
Claims (7)
- 既知の脆弱性情報から、脆弱性を特徴づけるキーワードを抽出するキーワード抽出部と、
前記脆弱性を特徴づけるキーワードと、攻撃に用いられたリクエストに含まれるキーワードとを比較し、前記リクエストに、前記脆弱性を特徴づけるキーワードと同じキーワードが含まれる度合いの高さを示すスコアの値が所定の閾値未満である場合、前記リクエストを、既知の攻撃でもなく、また、既知の攻撃に類似する攻撃でもない0-day攻撃と判定する判定部とを備えることを特徴とする判定装置。 - 前記スコアの値は、
前記脆弱性を特徴づけるキーワードの数に対する、前記リクエストに含まれる、前記脆弱性を特徴づけるキーワードと同じキーワードの数の割合であることを特徴とする請求項1に記載の判定装置。 - 前記キーワード抽出部は、
前記脆弱性を特徴づけるキーワードを抽出する際、前記既知の脆弱性情報におけるWebサイトへの攻撃に使用されるリクエストに含まれるURLパス、URLパラメータ、ヘッダ、および、cookieの少なくともいずれかのフィールドから抽出することを特徴とする請求項1に記載の判定装置。 - 前記判定部は、
前記キーワードの比較をする際、前記脆弱性を特徴づけるキーワードおよび前記攻撃に用いられたリクエストのキーワードの間で、抽出元のフィールドが同じキーワード同士を比較することを特徴とする請求項3に記載の判定装置。 - 前記キーワード抽出部は、
前記脆弱性を特徴づけるキーワードを抽出する際、複数の脆弱性に対する攻撃に共通して使用されるキーワード、または、あらかじめ用意した所定のキーワードを除外することを特徴とする請求項1に記載の判定装置。 - 既知の脆弱性情報から、脆弱性を特徴づけるキーワードを抽出するステップと、
前記脆弱性を特徴づけるキーワードと、攻撃に用いられたリクエストに含まれるキーワードとを比較し、前記リクエストに、前記脆弱性を特徴づけるキーワードと同じキーワードが含まれる度合いの高さを示すスコアが所定の閾値未満である場合、前記リクエストを、既知の攻撃でもなく、また、既知の攻撃に類似する攻撃でもない0-day攻撃と判定するステップとを判定装置が実行することを特徴とする判定方法。 - 既知の脆弱性情報から、脆弱性を特徴づけるキーワードを抽出するステップと、
前記脆弱性を特徴づけるキーワードと、攻撃に用いられたリクエストに含まれるキーワードとを比較し、前記リクエストに、前記脆弱性を特徴づけるキーワードと同じキーワードが含まれる度合いの高さを示すスコアの値が所定の閾値未満である場合、前記リクエストを、既知の攻撃でもなく、また、既知の攻撃に類似する攻撃でもない0-day攻撃と判定するステップとをコンピュータに実行させることを特徴とする判定プログラム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017015951 | 2017-01-31 | ||
JP2017015951 | 2017-01-31 | ||
PCT/JP2018/002532 WO2018143097A1 (ja) | 2017-01-31 | 2018-01-26 | 判定装置、判定方法、および、判定プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2018143097A1 JPWO2018143097A1 (ja) | 2019-06-27 |
JP6691240B2 true JP6691240B2 (ja) | 2020-04-28 |
Family
ID=63040664
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018565513A Active JP6691240B2 (ja) | 2017-01-31 | 2018-01-26 | 判定装置、判定方法、および、判定プログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US11550920B2 (ja) |
JP (1) | JP6691240B2 (ja) |
WO (1) | WO2018143097A1 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6930667B2 (ja) * | 2018-10-10 | 2021-09-01 | 日本電信電話株式会社 | 検知装置および検知プログラム |
JP7311354B2 (ja) * | 2019-08-21 | 2023-07-19 | 株式会社日立製作所 | ネットワーク監視装置、ネットワーク監視方法、及びネットワーク監視プログラム |
CN111756728B (zh) * | 2020-06-23 | 2021-08-17 | 深圳前海微众银行股份有限公司 | 一种漏洞攻击检测的方法、装置、计算设备及存储介质 |
US12032703B2 (en) * | 2021-07-06 | 2024-07-09 | Sap Se | Automatically rating the product's security during software development |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1269286B1 (en) * | 2000-03-03 | 2008-11-19 | International Business Machines Corporation | System for determining web application vulnerabilities |
US8381299B2 (en) * | 2006-02-28 | 2013-02-19 | The Trustees Of Columbia University In The City Of New York | Systems, methods, and media for outputting a dataset based upon anomaly detection |
JP2009015570A (ja) | 2007-07-04 | 2009-01-22 | Nippon Telegr & Teleph Corp <Ntt> | 脆弱性情報流通システムおよび方法 |
US8789178B2 (en) * | 2009-08-03 | 2014-07-22 | Barracuda Networks, Inc. | Method for detecting malicious javascript |
US8495742B2 (en) * | 2010-05-17 | 2013-07-23 | Microsoft Corporation | Identifying malicious queries |
US9467464B2 (en) | 2013-03-15 | 2016-10-11 | Tenable Network Security, Inc. | System and method for correlating log data to discover network vulnerabilities and assets |
US10133863B2 (en) * | 2013-06-24 | 2018-11-20 | Fireeye, Inc. | Zero-day discovery system |
US10789366B2 (en) * | 2013-06-24 | 2020-09-29 | Nippon Telegraph And Telephone Corporation | Security information management system and security information management method |
US9479526B1 (en) * | 2014-11-13 | 2016-10-25 | Shape Security, Inc. | Dynamic comparative analysis method and apparatus for detecting and preventing code injection and other network attacks |
-
2018
- 2018-01-26 US US16/479,924 patent/US11550920B2/en active Active
- 2018-01-26 JP JP2018565513A patent/JP6691240B2/ja active Active
- 2018-01-26 WO PCT/JP2018/002532 patent/WO2018143097A1/ja active Application Filing
Also Published As
Publication number | Publication date |
---|---|
US11550920B2 (en) | 2023-01-10 |
US20190370476A1 (en) | 2019-12-05 |
WO2018143097A1 (ja) | 2018-08-09 |
JPWO2018143097A1 (ja) | 2019-06-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2638710C1 (ru) | Способы обнаружения вредоносных элементов веб-страниц | |
JP6106340B2 (ja) | ログ分析装置、攻撃検知装置、攻撃検知方法およびプログラム | |
US9300682B2 (en) | Composite analysis of executable content across enterprise network | |
US8499167B2 (en) | System and method for efficient and accurate comparison of software items | |
CN107066883B (zh) | 用于阻断脚本执行的系统和方法 | |
JP6691240B2 (ja) | 判定装置、判定方法、および、判定プログラム | |
US8239948B1 (en) | Selecting malware signatures to reduce false-positive detections | |
US20160269424A1 (en) | Large Scale Malicious Process Detection | |
Huang et al. | Malicious URL detection by dynamically mining patterns without pre-defined elements | |
CN105491053A (zh) | 一种Web恶意代码检测方法及系统 | |
JP6697123B2 (ja) | プロファイル生成装置、攻撃検知装置、プロファイル生成方法、および、プロファイル生成プログラム | |
JP6473234B2 (ja) | 分析方法、分析装置、および分析プログラム | |
JP6505533B2 (ja) | 悪質なコードの検出 | |
Tan et al. | Phishing website detection using URL-assisted brand name weighting system | |
KR102120200B1 (ko) | 악성 코드 수집 방법 및 시스템 | |
CN109948335B (zh) | 用于检测计算机系统中的恶意活动的系统和方法 | |
WO2019013266A1 (ja) | 判定装置、判定方法、および、判定プログラム | |
Shibahara et al. | Detecting malicious websites by integrating malicious, benign, and compromised redirection subgraph similarities | |
McGahagan et al. | A comprehensive evaluation of webpage content features for detecting malicious websites | |
JP2024536226A (ja) | 機械学習を介して悪意のあるハンズオンキーボード活動を検出するためのシステムおよび方法 | |
JP6322240B2 (ja) | フィッシング・スクリプトを検出するためのシステム及び方法 | |
JP6623128B2 (ja) | ログ分析システム、ログ分析方法及びログ分析装置 | |
US11330010B2 (en) | Detecting malicious web pages by analyzing elements of hypertext markup language (HTML) files | |
JP2020109611A (ja) | コンピュータシステム内の悪意のあるアクティビティの源を検出するシステムおよび方法 | |
CN115225328A (zh) | 页面访问数据的处理方法、装置、电子设备以及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190204 |
|
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: 20200407 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200409 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6691240 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |