JP2012068903A - ウェブアプリケーションファイアーウォールプログラム - Google Patents
ウェブアプリケーションファイアーウォールプログラム Download PDFInfo
- Publication number
- JP2012068903A JP2012068903A JP2010213312A JP2010213312A JP2012068903A JP 2012068903 A JP2012068903 A JP 2012068903A JP 2010213312 A JP2010213312 A JP 2010213312A JP 2010213312 A JP2010213312 A JP 2010213312A JP 2012068903 A JP2012068903 A JP 2012068903A
- Authority
- JP
- Japan
- Prior art keywords
- rule
- ontology
- web application
- attack
- user request
- 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.)
- Pending
Links
Images
Landscapes
- Computer And Data Communications (AREA)
Abstract
【課題】ブラックリストに載っていない悪意ある攻撃に対しても有効であり、また、多形態の悪意のあるアタックを検知して排除することのできるウェブアプリケーションファイアーウォールを実現する。
【解決手段】
ファイアーウォールコンピュータを、悪意のあるアタックであると判定する基準となるルールを、オントロジーデータベースにアクセスしオントロジーに基づいて生成するルール生成手段31、ユーザリクエストにおけるHTTPプロトコルのセマンテックスを分析し、ルールと比較して悪意のあるアタックであるか否かを判定する分析手段33、及び前記比較において悪意のあるアタックであることの推論を、オントロジーデータベースにアクセスしオントロジーデータベースを利用して行い、該推論結果を分析手段に供する推論手段41、として機能させる。
【選択図】図2
【解決手段】
ファイアーウォールコンピュータを、悪意のあるアタックであると判定する基準となるルールを、オントロジーデータベースにアクセスしオントロジーに基づいて生成するルール生成手段31、ユーザリクエストにおけるHTTPプロトコルのセマンテックスを分析し、ルールと比較して悪意のあるアタックであるか否かを判定する分析手段33、及び前記比較において悪意のあるアタックであることの推論を、オントロジーデータベースにアクセスしオントロジーデータベースを利用して行い、該推論結果を分析手段に供する推論手段41、として機能させる。
【選択図】図2
Description
本発明は、ユーザリクエストのコンテキスト(文脈)の分析を行い、セマンテックス(意味構造)の分析を実行し、不正を検知するルールと比較して悪意のあるアタックを検知し、ユーザリクエストからのウェブアプリケーションに対する悪意ある攻撃(ハッカー攻撃)、感染、不正等から防御するファイアーウォールプログラム(以下、本明細書及び本発明では、ウェブアプリケーションファイアーウォール(WAF:Web Application Fire Wall)という。)に関する。
インターネットを介して接続されるウェブアプリケーション層への外部からの悪意ある攻撃に対して防御するためのウェブアプリケーションファイアーウォール(WAF:Web Application Fire Wall)は、従来、いろいろな技術が知られている。(特許文献1、2参照)それら従来の技術は、通常は、ブラックリストに載った送信元や既知のファイル名と合致する悪意ある攻撃やハッカーを排除する機能を備えている。しかし、新種の攻撃も増えており、それら未知の攻撃に対応するウェブアプリケーションファイアーウォールの登場が急務である。
従来のファイアーウォールは、ブラックリストに載った既知の発信元やファイル名と合致するハッカー攻撃を排除するには都合が良いが、ブラックリストに載っていない悪意ある攻撃やハッカーを排除することはできない。
本発明は、ブラックリストに載っていない悪意ある攻撃に対しても有効であり、また、多形態の未知の攻撃を検知して排除することのできるウェブアプリケーションファイアーウォールを実現することを課題とする。
本発明は上記課題を解決するために、インターネットに接続されるコンピュータを、インターネットを介してアクセスするユーザリクエストによるウェブアプリケーション層への悪意のあるアタックを検知する手段として機能させる、ウェブアプリケーションファイアーウォールプログラムであって、前記コンピュータを、悪意のあるアタックであると判定する基準となるルールを、オントロジーデータベースにアクセスしオントロジーに基づいて生成するルール生成手段、前記ユーザリクエストにおけるHTTPプロトコルのセマンテックスを分析し、前記ルールと比較して悪意のあるアタックであるか否かを判定する分析手段、及び前記比較において悪意のあるアタックであることの推論を、オントロジーデータベースにアクセスしオントロジーデータベースを利用して行い、該推論結果を分析手段に供する推論手段、として機能させるためのウェブアプリケーションファイアーウォールプログラムを提供する。
本発明は上記課題を解決するために、インターネットに接続されるコンピュータを、インターネットを介してアクセスするユーザリクエストによるウェブアプリケーション層への悪意のあるアタックを検知する手段として機能させる、ウェブアプリケーションファイアーウォールプログラムであって、前記コンピュータを、悪意のあるアタックであると判定する基準となるルールを、オントロジーデータベースにアクセスしオントロジーに基づいて生成するルール生成手段、前記ユーザリクエストにおけるHTTPプロトコルのセマンテックスを分析し、前記ルールと比較して悪意のあるアタックであるか否かを判定する分析手段、前記ルール生成手段で生成されたルールをキャッシュし、前記分析手段に該キャッシュされたルールを提供するルールキャッシュ手段、及び前記比較において悪意のあるアタックであることの推論を、オントロジーデータベースにアクセスしオントロジーデータベースを利用して行い、該推論結果を分析手段に供する推論手段、として機能させるためのウェブアプリケーションファイアーウォールプログラムを提供する。
本発明は上記課題を解決するために、インターネットに接続されるコンピュータを、インターネットを介してアクセスするユーザリクエストによるウェブアプリケーション層への悪意のあるアタックを検知する手段として機能させる、ウェブアプリケーションファイアーウォールプログラムであって、前記コンピュータを、ユーザリクエストのプロトコルの記述仕様が、RFCに基づいて有効であるか否か確認するプロトコル確認手段、
悪意のあるアタックであると判定する基準となるルールを、オントロジーデータベースにアクセスしオントロジーに基づいて生成するルール生成手段、前記RFCに基づいて有効であると確認されたユーザリクエストにおけるHTTPプロトコルのセマンテックスを分析し、前記ルールと比較して悪意のあるアタックであるか否かを判定する分析手段、
前記ルール生成手段で生成されたルールをキャッシュし、前記分析手段に該キャッシュされたルールを提供するルールキャッシュ手段、及び前記比較において悪意のあるアタックであることの推論を、オントロジーデータベースにアクセスしオントロジーデータベースを利用して行い、該推論結果を分析手段に供する推論手段、として機能させるためのウェブアプリケーションファイアーウォールプログラムを提供する。
悪意のあるアタックであると判定する基準となるルールを、オントロジーデータベースにアクセスしオントロジーに基づいて生成するルール生成手段、前記RFCに基づいて有効であると確認されたユーザリクエストにおけるHTTPプロトコルのセマンテックスを分析し、前記ルールと比較して悪意のあるアタックであるか否かを判定する分析手段、
前記ルール生成手段で生成されたルールをキャッシュし、前記分析手段に該キャッシュされたルールを提供するルールキャッシュ手段、及び前記比較において悪意のあるアタックであることの推論を、オントロジーデータベースにアクセスしオントロジーデータベースを利用して行い、該推論結果を分析手段に供する推論手段、として機能させるためのウェブアプリケーションファイアーウォールプログラムを提供する。
本発明は上記課題を解決するために、インターネットに接続されるコンピュータを、インターネットを介してアクセスするユーザリクエストによるウェブアプリケーション層への悪意のあるアタックを検知する手段として機能させる、ウェブアプリケーションファイアーウォールプログラムであって、前記コンピュータを、ユーザリクエストのプロトコルの記述仕様が、RFCに基づいて有効であるか否か確認するプロトコル確認手段、悪意のあるアタックであると判定する基準となるルールを、オントロジーデータベースにアクセスしオントロジーに基づいて生成するルール生成手段、前記RFCに基づいて有効であると確認されたユーザリクエストにおけるHTTPプロトコルのセマンテックスを分析し、前記ルールと比較して悪意のあるアタックであるか否かを判定する分析手段、前記ルール生成手段で生成されたルールをキャッシュし、前記分析手段に該キャッシュされたルールを提供するルールキャッシュ手段、前記比較において悪意のあるアタックであることの推論をオントロジーデータベースにアクセスしオントロジーデータベースを利用して行い、該推論結果を分析手段に供する推論手段、及び前記ユーザリクエストのアクセスを記録し、前記分析手段によって当該ユーザリクエストが悪意のあるアタックである場合に、該ユーザリクエストは有効ではないことの表示を可能とする記録監視手段、として機能させるためのウェブアプリケーションファイアーウォールプログラムを提供する。
前記ルールは、オントロジーを用いた複数のタグの付されたデータから成ることが好ましい。
前記ルールは、オントロジーデータベースのオントロジーに基づき前記推論手段で得られた推論によって生成されたルールと、ユーザリクエストに含まれる悪意のあるアタックに基づくルールとを含むことが好ましい。
前記インターネットに接続されるコンピュータは、ファイアーウォールサーバであり、該ファイアーウォールサーバにウェブアプリケーション層を有するウェブサーバが接続されていることが好ましい。
前記ルール生成手段は、前記ウェブアプリケーションの正規化に基づくデータを下にオントロジールールを生成しデータベース化する機能も備えており、前記分析手段は、前記オントロジールールを、悪意のあるアタックであると判定する基準となるルールとして活用して、前記ユーザリクエストが悪意のあるアタックであるか否かを判定するようにすることが好ましい。
本発明によれば、ウェブアプリケーションにアクセスするユーザリクエストに対して、そのISO規格の第7層のHTTPプロトコルを分析してコンテキスト(文脈)を捕らえ、それをオントロジーを用いた複数のタグベースを有するルールであるデータと比較して、捕らえた文脈から効率的に悪意のあるアタックを検知するので、ブラックリストに載っていない悪意ある攻撃やハッカーに対しても有効に排除することができ、また、多形態の悪意のあるアタックを検知して排除することが可能である。
本発明に係るウェブアプリケーションファイアーウォールプログラムを実施するための形態を実施例に基づき図面を参照して、以下説明する。
(本発明の概要)
本発明に係るウェブアプリケーションファイアーウォールプログラムは、インターネット等の通信回線に接続されるファイアーウォールサーバ、プロキシサーバ、ゲートウェイ等に適用され、インターネット等の通信回線から入ってくるユーザリクエストに含まれる悪意ある攻撃(ハッカー攻撃)、特に多形態の悪意のあるアタックを検知するものである。
本発明に係るウェブアプリケーションファイアーウォールプログラムは、インターネット等の通信回線に接続されるファイアーウォールサーバ、プロキシサーバ、ゲートウェイ等に適用され、インターネット等の通信回線から入ってくるユーザリクエストに含まれる悪意ある攻撃(ハッカー攻撃)、特に多形態の悪意のあるアタックを検知するものである。
これにより、ファイアーウォールサーバ、プロキシサーバ、ゲートウェイ等に接続されたWebサーバ、イントラネット等に保存されているウェブアプリケーションを、インターネット等の通信回線から入ってくる多形態の悪意のあるアタックから守ることを目的とするものである。
そして、本発明に係るウェブアプリケーションファイアーウォールプログラムの特徴は、ファイアーウォールサーバ、プロキシサーバ、ゲートウェイ等を構成するコンピュータに、インターネット等の通信回線により入力されるユーザリクエスト(ユーザからのサーバ利用のためのリクエスト)について、そのISO規格の第7層のHTTPプロトコルを分析してコンテキスト(文脈)を捕らえセマンテックスを分析(意味構造の分析)し、それをオントロジーを用いた複数のタグベースを有するデータであるルール(悪意のあるアタックを検知するルール)と比較して、捕らえた文脈、言語の意味や関係等、から効率的に悪意のあるアタックを検知する動作を行わせて、該コンピュータをウェブアプリケーションファイアーウォールとして機能させるようにしたプログラムである。
ここでの、「悪意のあるアタック」とは、ソフトウェアにセキュリティ上の脆弱性が発見されたときに、それが公表される前にその脆弱性を悪用して行なわれる悪意ある攻撃である。本発明で対象とする悪意のあるアタックは、特に、インターネットに接続されるウェブサーバのウェブアプリケーション層への外部からの上記悪意ある攻撃を意図している。
また、ここでの「HTTPプロトコル」とは、ハイパーテキストを送るためのプロトコルであって、ISO規格の第7層のTCP/IPの上位のプロトコルである。
また、ここでの「オントロジー」(Ontology)とは、知識を共有するために、物事を体系的に分類したり、物事の間の関係性を定義することであり、要するに、異なる語彙間の関係性を定義し整理することである。プロトコルのオントロジーの一例を図4に示す。
(概要)
本発明に係るウェブアプリケーションファイアーウォールプログラム(以下、単に「ファイアーウォールプログラム」とも言う。)の実施例を以下説明する。インターネットを介して、HTTPプロトコルを含むユーザリクエストがウェブアップリケーションを備えたウェブサーバにアクセスされるが、この実施例では、ウェブサーバのウェブアップリケーション層を悪意のあるアタックから守るファイアーウォールとして、コンピュータを機能させる構成について説明する。
本発明に係るウェブアプリケーションファイアーウォールプログラム(以下、単に「ファイアーウォールプログラム」とも言う。)の実施例を以下説明する。インターネットを介して、HTTPプロトコルを含むユーザリクエストがウェブアップリケーションを備えたウェブサーバにアクセスされるが、この実施例では、ウェブサーバのウェブアップリケーション層を悪意のあるアタックから守るファイアーウォールとして、コンピュータを機能させる構成について説明する。
具体的には、この実施例では、本発明のファイアーウォールプログラムを、インターネットに接続されたコンピュータに適用し、該コンピュータをファイアーウォールとして機能するファイアーウォールサーバとして利用する。
そして、このファイアーウォールサーバを介してウェブサーバをインターネットに接続する。この実施例のファイアーウォールプログラムは、ファイアーウォールサーバを構成するコンピュータに適用し、ユーザリクエストに含まれる悪意のあるアタックを排除し、ファイアーウォールサーバに接続されるウェブサーバのウェブアプリケーション層を悪意のあるアタックから守る。
(動作概要)
このプログラムの実施例の具体的構成を説明する前に、このプログラムによりファイアーウォールサーバが機能する全体動作の概要を図1において説明する。
このプログラムの実施例の具体的構成を説明する前に、このプログラムによりファイアーウォールサーバが機能する全体動作の概要を図1において説明する。
ファイアーウォールサーバが、インターネットを介してHTTPプロトコルを含むユーザリクエストを受けると((ア)参照)、そのアクセス情報を登録し(Log:ログ。(イ)参照)、記録ストレージ(図2参照)の記録データベースに記録する((ウ)参照)。
一方、そのユーザリクエストのプロトコルのフォーマット(記述仕様)が、RFC(Request For Comments:インターネット上での技術仕様の標準を示すドキュメント)に基づいた有効なプロトコルリクエストであるか否か確認する((エ)参照)。
有効なプロトコルリクエストではない場合は、そのユーザリクエストを感染情報としてインターセプトし、インターセプトした情報として登録し((オ)参照)、記録ストレージの記録データベースに記録し((ウ)参照)、このユーザリクエストはウェブサーバには送信しない。
有効なプロトコルリクエストである場合は、アプリケーションデータ抽出プロセスへ転送され、さらに、抽出されたアプリケーションの内容が、オントロジーデータベースに知識ベースとして格納される。
また、ここで抽出されたユーザリクエストに含まれるHTTPプロトコルについて分析をする((カ)参照)。この分析では、コンテキスト(文脈)を捕らえセマンテックスを分析(意味構造の分析)する。
そして、分析されたユーザリクエストについて、オントロジーを用いた複数のタグベースを有するデータであるルール(悪意のあるアタックを検知するルール)と比較して((キ)参照)、捕らえた文脈、言語の意味や関係等、から効率的に悪意のあるアタックを検知する動作を行わせて、悪意のあるアタックが含まれていない有効なリクエストであるか否か判定する((ク)参照)。
この判定で有効なリクエストではないと判定した場合は、感染情報として登録し((オ)参照)、記録ストレージの記録データベースに記録し((ウ)参照)、そのユーザリクエストはウェブサーバには送信しない。この判定で有効なリクエストであると判定した場合は、そのユーザリクエストをウェブサーバへ転送する((ケ)参照)。
(要部構成)
以上のとおり、この実施例のファイアーウォールプログラムは、ファイアーウォールサーバを構成するコンピュータをウェブアプリケーションファイアーウォール手段として機能させるものである。この実施例のファイアーウォールプログラムの構成について、以下さらに詳細に説明する。
以上のとおり、この実施例のファイアーウォールプログラムは、ファイアーウォールサーバを構成するコンピュータをウェブアプリケーションファイアーウォール手段として機能させるものである。この実施例のファイアーウォールプログラムの構成について、以下さらに詳細に説明する。
この実施例のファイアーウォールプログラムは、ファイアーウォールサーバを構成するコンピュータのメモリに搭載され、コンピュータを構成するCPU、記憶装置、メモリ及びデータバス等動作させて、次の4つのモジュール手段(以下、単に「モジュール」という)として機能させる。
この4つのモジュールは、図2に示すが、次のとおりである。
ア.プロトコル確認モジュール1(プロトコルバリディエータ:Protocol Validator)
イ.記録監視モジュール2(ログ及び監視モジュール:Logging and Monitoring Module)
ウ.ルールベース分析エンジンモジュール3(Rule based Analysis Engine Module)
エ.知識ベースモジュール4(Knowledge Base Module)
ア.プロトコル確認モジュール1(プロトコルバリディエータ:Protocol Validator)
イ.記録監視モジュール2(ログ及び監視モジュール:Logging and Monitoring Module)
ウ.ルールベース分析エンジンモジュール3(Rule based Analysis Engine Module)
エ.知識ベースモジュール4(Knowledge Base Module)
以下、各モジュールについてさらに、図2等を参照として説明する。
(1)プロトコル確認モジュール
このプロトコル確認モジュール1は、インターネットを介してファイアーウォールサーバに入力されたユーザリクエストを、登録及び記録のために次に説明する記録監視モジュール2に送るとともに、そのユーザリクエストのプロトコルのフォーマット(記述仕様)が、標準化されたプロトコルのフォーマット(標準仕様)に合った有効なリクエストであるか否か確認する手段として機能する。
(1)プロトコル確認モジュール
このプロトコル確認モジュール1は、インターネットを介してファイアーウォールサーバに入力されたユーザリクエストを、登録及び記録のために次に説明する記録監視モジュール2に送るとともに、そのユーザリクエストのプロトコルのフォーマット(記述仕様)が、標準化されたプロトコルのフォーマット(標準仕様)に合った有効なリクエストであるか否か確認する手段として機能する。
具体的には、プロトコル確認モジュール1は、ユーザリクエストのプロトコルのフォーマット(記述仕様)が、RFCに基づいた有効なプロトコルリクエストであるか否か確認する手段として機能する。
(2)記録監視モジュール
記録監視モジュール2は、記録ストレージ(ログストア:Log Store)へ記録を行う記録手段21と、報告手段22及び管理コンソール手段23を備えている。記録手段21は、ユーザリクエストの各種の登録を行うとともに、記録ストレージ24に記憶を行う管理手段として機能する。
記録監視モジュール2は、記録ストレージ(ログストア:Log Store)へ記録を行う記録手段21と、報告手段22及び管理コンソール手段23を備えている。記録手段21は、ユーザリクエストの各種の登録を行うとともに、記録ストレージ24に記憶を行う管理手段として機能する。
例えば、記録手段21は、プロトコル確認モジュール1で受けたユーザリクエストを登録するとともに、記録ストレージ24に記憶する。また、プロトコル確認モジュール1において、有効なユーザリクエストではないと確認された場合に、その感染情報を登録し記録ストレージ24に記憶する。
また、ユーザリクエストに有効ではない悪意あるデータがある場合(感染があり有効ではない場合)には、記録手段21においてエラー(感染ログ)が生成され、その感染情報及び警報等について登録し記録ストレージ24に記憶する(図6参照)。
報告手段22は、登録された感染情報を記録ストレージ24から取り出し、管理コンソール手段23に送信し、管理コンソール手段23は、必要に応じて、その感染情報及び警報を表示装置25に供して表示し、またファイアーウォールサーバの管理者等に報告をする。
なお、ルールベース分析エンジンモジュール3で、有効なユーザリクエストと判定された場合は、管理コンソール手段23を通してその結果(有効)の指示を、ウェブサーバ5へのリクエスト配達用のキャッシュコントローラー6に送信する。
(3)ルールベース分析エンジンモジュール
このモジュールは、本発明のファイアーウォールの中心となるモジュールであり、ルール生成手段31と、ルールキャッシュ手段32(具体的にはメモリをルールキャッシュとして機能させる手段)と、分析手段33とを備えている。
このモジュールは、本発明のファイアーウォールの中心となるモジュールであり、ルール生成手段31と、ルールキャッシュ手段32(具体的にはメモリをルールキャッシュとして機能させる手段)と、分析手段33とを備えている。
ルール生成手段31は、後記するオントロジーデータベースストレージ43に蓄積されているオントロジーデータベースに記憶されているオントロジー及び推論手段41で推論された推論知識等に基づいて、ユーザリクエストのコンテキストを考慮して、ルールを自動的に生成する機能を有する。
ここでルールとは、悪意のあるアタック、特に、インターネットに接続されるウェブサーバ5のウェブアプリケーション層への、外部からの悪意ある攻撃に対して防御するために、ユーザリクエストが有効か否か(悪意のあるアタックが含まれているか否か)判定する基準となるルール(規則)である。
悪意ある攻撃を検知するルールは、後記するが、例えば図5に示すようなアタックオントロジーに基づく一定の関係であり、この関係、即ちルールを満たすプロトコルがユーザリクエストに含まれれば(ユーザリクエストのプロトコルのコンテキストがルールと一致するものを含む)、悪意ある攻撃が含まれ、ユーザリクエストが有効ではないと判定される。
ところで、ルールは、すべて指標部分とアクション部分と言う、2つの主なコンポーネントを備えている。
ルールの指標部分は、悪意のあるユーザリクエストの検知がし易いように、攻撃状況及び条件がモデル化されている。
ルールのアクション部分は、分析手段でユーザリクエストが有効か否か判定された後の処理、例えば、攻撃が検知された後得られる予防や警戒のアクション等を表現する。このアクション部分に基づく、予防や警戒のための処理は、分析手段33及び記録監視モジュール2によって実行される。
具体的には、アクションは、ユーザリクエストを廃棄する、警告や警戒のメッセージを生成する、当該リクエストを記録する、アクションを無視する(アクションしない)、ユーザリクエストをウェブサーバ5への転送を許可する、のうちのいずれか1つ以上の機能を有する。
オントロジーデータベースへのオントロジーが追加、削除、変更されたりした場合は、それに応じて、既存のルールは、再生成される。なお、後記するが、既存のルールでは悪意ある攻撃に一致しないユーザリクエストについても、推論手段41で推論された知識等に基づくと悪意ある攻撃が含まれると推論される場合は、新たに発見したルールとして分析手段33の判定に供せられ、またオントロジーデータベースに加えられる。
ここで、ルール生成の具体的なプロセスについて説明する。ルール生成手段31では、オントロジーデータベースに記憶されているセマンテックルールテンプレートを使用してクエリー(データベースに対してデータを抽出する命令)を構築する((ア)参照)。セマンテックルールテンプレートは、悪意ある攻撃について、そのシナリオの抽象的な記述をする機能を行っている。
一方、オントロジーデータベースに記憶されているセマンテックルール及びオトロジーモデルを基に推論手段41において、ルールベース推論を生成し(イ)参照)、その推論知識ベースに蓄積する((ウ)参照)。
そして、ルール生成手段31は、構築したクエリーに基づき、オントロジーデータベースに記憶されているルールテンプレート、文法ルール、オントロジー等を呼び出し、また、推論知識ベースに記憶されている推論知識を呼び出し、これらをルールテンプレートに当てはめて、悪意のあるアタック検知のための具体的なルールを生成する((エ)参照)。
ルール生成プロセスでは、オントロジーデータベースへアクセスしてルールテンプレート、文法ルール、オントロジーを呼び出して用いるが、その際、常にユーザリクエストと比較し、その属性に基づいてタグ付けがなされる。後記する分析手段33では、このタグの持つ関連性を比較し解析することで悪意ある攻撃であるか否か判定がされることとなる。
図7は、特定な攻撃を検出するためのセマンテックルールのテンプレート構造の一例である。また、図8は、HTTPメッセージのセマンテックルールのテンプレートの一例である。
なお、テンプレートは、ルール・インターチェンジ・フォーマット(Rule Interchange Format)、意味的なウェブ・ルール・ランゲージ(Semantic Web Rule Languages)、ホーンロジック・ステートメント等で、意味を含むルールを生成することができる。
また、ルール生成手段31は、ウェブアプリケーションの正規化に基づくデータを下にオントロジールールを生成しデータベース化する機能も備えており、分析手段33は、オントロジールールを、悪意のあるアタックであると判定する基準となるルールとして活用して、ユーザリクエストが悪意のあるアタックであるか否かを判定することができる。
ルールキャッシュ手段32は、ルール生成手段31で生成したルールをキャッシュ(一時的に記憶する)する機能を有する(図7の(オ)参照)。また、ルールキャッシュは、分析手段においてユーザリクエスト分析するプロセスで発見したルール(発見ルール)もキャッシュする機能を有する(図7の(オ)参照)。ルールキャッシュ手段32は、ハードについては、一時的記憶手段としてメモリが使用される。
分析手段33は、ユーザリクエストに含まれるHTTPプロトコルについて分析をする。この分析では、コンテキスト(文脈)を捕らえ、セマンテックスを分析(意味構造の分析)する。また、ユーザリクエストに含まれるアプリケーションデータを抽出し、抽出したアプリケーションの内容を、オントロジーデータベースストレージ43に知識ベースとして格納する。
一方、分析手段33は、オントロジーに基づいてルール生成手段31(Rule Generator)によって生成したルールをルールキャッシュから呼び出す。このルールは、オントロジーを用いた複数のタグベースを有するデータであるルール(悪意のあるアタックを検知するルール)である。
そして、セマンテックスを分析されたユーザリクエストについて、ルールと比較して、捕らえた文脈、言語の意味や関係等、から効率的に悪意のあるアタックを検知する動作を行わせて、悪意のあるアタックが含まれていない有効なリクエストであるか否か判定する。
このルールを構成するオントロジーとの比較において、分析手段33は、ユーザリクエストのプロトコルの属性について、ルールに付けられたオントロジーのタグの持つ関連性とを比較し、悪意のあるアタックの含まれていない有効なユーザリクエストであるか否か判定する機能を行う。
この判定で有効なリクエストではないと判定した場合は、感染情報として登録し、記録ストレージ24の記録ストレージ24に記録し、そのユーザリクエストはウェブサーバ5には転送しない。この判定で有効なリクエストであると判定した場合は、そのユーザリクエストを、キャッシュコントローラ6を介してウェブサーバ5へ転送する。
(4)知識ベースモジュール
この知識モジュール4は、上記ルール生成の基となるオントロジー、推論知識(推論手段で生成された知識)、ルール、ルールテンプレート等を提供する手段として機能するモジュールであり、推論ベース手段41とデータベース記録手段42とを備えている。
この知識モジュール4は、上記ルール生成の基となるオントロジー、推論知識(推論手段で生成された知識)、ルール、ルールテンプレート等を提供する手段として機能するモジュールであり、推論ベース手段41とデータベース記録手段42とを備えている。
データベース記録手段41は、オントロジーデータベースストレージ43に構築されているオントロジー、推論知識、ルール、ルールテンプレート等を記録し、取出す手段として機能する。
オントロジーデータベースには、オントロジー、推論知識、ルール、ルールテンプレート、その他の知識等が含まれる。ルールは、ユーザリクエストに悪意ある攻撃が含まれていないか検知する基準となるものであり、オントロジーに基づいて生成されたルール、ユーザリクエスト中に含まれ発見されたルール、ユーザリクエストについて抽出された推論手段41で推論され推論知識等に基づいて生成されたルール等がある。
オントロジーについては、大別して2つのオントロジーが含まれる。一つは、予めオントロジーデータベースストレージに記憶しておくオントロジーであり、他の一つは、ファイアーウォールサーバが稼働していく過程において、ユーザリクエストから抽出され、新たに発見された知識がプロファイル化されたオントロジーである。
また、オントロジーデータベースに含まれるオントロジーを別の切り口で種類化すると、プロトコルに関連する項目を分類し互いに関係づけたプロトコルオントロジー、ウェブアプリケーションに関連する項目を分類し互いに関係づけたアプリケーション・プロファイルオントロジー等がある。
プロトコルオントロジーの例として、コミュニケーション(通信)についてのプロトコル、即ち、(コミュニケーション)プロトコルのオントロジーの例を、図4に示す。このプロトコルオントロジーは、メッセージ、リクエスト、レスポンスの3つの概念を含んでいる。
リクエストメッセージ(Request Message)に着目し、HTTPリクエスト(HTTP Request)を考慮して分類すると、GET、POST、PUT、HEAD、DELETE、TRACE、OPTIONおよびCONNECT等のリクエストを持つ。また、コミュニケーションプロトコルは、ヘッダーを含み、ヘッダーは、リクエストヘッダー、エントリーヘッダーおよびジェネラルヘッダーに分類されている。
オントロジーデータベースには、前記のとおりルールが含まれるが、このルールには、既定のオントロジーに基づき作成されたルールに加えて、新たに発見されたオントロジーに基づくルールであって、新たに発見された悪意ある攻撃を検知するルール等も、オントロジーデータベースに含まれる。
悪意ある攻撃を検知するルールを生成する基となるオントロジー(アタックオントロジー)の構造を、図5に示す。オントロジーは、オントロジーを構成する概念(項目)の関係について、received From、directed To、effected By、resulting In、deceived Byおよびmitigated Byのような様々な属性で定義する。
換言すると、これらの属性は、アタックオントロジーの概念を相互にリンクする。例えば、ポリシー(Policy)は、攻撃を緩和するために使用され、「アタックmitigated Byポリシー」としてリンクしてモデル化する。
悪意ある攻撃を検知するルールは、例えば、図5に示すアタックオントロジーに基づく一定の関係であり、この関係、即ちルールを満たすユーザリクエストからのプロトコルが含まれれば、悪意ある攻撃と判定される。
推論ベース手段は、ユーザリクエストを分析手段33で分析し、既定のルール(オントロジーデータベースに含まれる既定のオントロジーに基づいて生成された悪意ある攻撃を検知するルール)とは一致しないオントロジーが含まれると判定した場合について、その一致しないオントロジーの構造について、悪意ある攻撃であるか否か推論する。
この推論に際しては、オントロジーデータベースに記憶されているオントロジーを利用して推論に供する。推論手段41において悪意ある攻撃と推論したプロトコルは、新たに発見したルールとして、ルール生成手段31及び分析手段33に生成材料及び判定材料として供するとともに、オントロジーデータベースに記憶される。
以上、本発明に係るウェブアプリケーションファイアーウォールプログラムを実施するための形態を実施例に基づいて説明したが、本発明はこのような実施例に限定されるものではなく、特許請求の範囲に記載された技術的事項の範囲内でいろいろな実施例があることは言うまでもない。
本発明に係るウェブアプリケーションファイアーウォールプログラムは上記のような構成であるから、インターネットと接続されて使用されている一般のコンピュータ、業務用コンピュータ等をファイアーウォールとして機能させることが可能である。
1 プロトコル確認モジュール
2 記録監視モジュール
3 ルールベース分析エンジンモジュール
4 知識ベースモジュール
5 ウェブサーバ
6 キャッシュコントローラー
21 記録手段
22 報告手段
23 管理コンソール手段
24 記録ストレージ
25 表示装置
31 生成手段
32 ルールキャッシュ手段
33 分析手段
41 推論手段
42 データベース記録手段
43 オントロジーデータベースストレージ
2 記録監視モジュール
3 ルールベース分析エンジンモジュール
4 知識ベースモジュール
5 ウェブサーバ
6 キャッシュコントローラー
21 記録手段
22 報告手段
23 管理コンソール手段
24 記録ストレージ
25 表示装置
31 生成手段
32 ルールキャッシュ手段
33 分析手段
41 推論手段
42 データベース記録手段
43 オントロジーデータベースストレージ
Claims (8)
- インターネットに接続されるコンピュータを、インターネットを介してアクセスするユーザリクエストによるウェブアプリケーション層への悪意のあるアタックを検知する手段として機能させる、ウェブアプリケーションファイアーウォールプログラムであって、
前記コンピュータを、
悪意のあるアタックであると判定する基準となるルールを、オントロジーデータベースにアクセスしオントロジーに基づいて生成するルール生成手段、
前記ユーザリクエストにおけるHTTPプロトコルのセマンテックスを分析し、前記ルールと比較して悪意のあるアタックであるか否かを判定する分析手段、及び
前記比較において悪意のあるアタックであることの推論を、オントロジーデータベースにアクセスしオントロジーデータベースを利用して行い、該推論結果を分析手段に供する推論手段、
として機能させるためのウェブアプリケーションファイアーウォールプログラム。 - インターネットに接続されるコンピュータを、インターネットを介してアクセスするユーザリクエストによるウェブアプリケーション層への悪意のあるアタックを検知する手段として機能させる、ウェブアプリケーションファイアーウォールプログラムであって、
前記コンピュータを、
悪意のあるアタックであると判定する基準となるルールを、オントロジーデータベースにアクセスしオントロジーに基づいて生成するルール生成手段、
前記ユーザリクエストにおけるHTTPプロトコルのセマンテックスを分析し、前記ルールと比較して悪意のあるアタックであるか否かを判定する分析手段、
前記ルール生成手段で生成されたルールをキャッシュし、前記分析手段に該キャッシュされたルールを提供するルールキャッシュ手段、及び
前記比較において悪意のあるアタックであることの推論を、オントロジーデータベースにアクセスしオントロジーデータベースを利用して行い、該推論結果を分析手段に供する推論手段、
として機能させるためのウェブアプリケーションファイアーウォールプログラム。 - インターネットに接続されるコンピュータを、インターネットを介してアクセスするユーザリクエストによるウェブアプリケーション層への悪意のあるアタックを検知する手段として機能させる、ウェブアプリケーションファイアーウォールプログラムであって、
前記コンピュータを、
ユーザリクエストのプロトコルの記述仕様が、RFCに基づいて有効であるか否か確認するプロトコル確認手段、
悪意のあるアタックであると判定する基準となるルールを、オントロジーデータベースにアクセスしオントロジーに基づいて生成するルール生成手段、
前記RFCに基づいて有効であると確認されたユーザリクエストにおけるHTTPプロトコルのセマンテックスを分析し、前記ルールと比較して悪意のあるアタックであるか否かを判定する分析手段、
前記ルール生成手段で生成されたルールをキャッシュし、前記分析手段に該キャッシュされたルールを提供するルールキャッシュ手段、及び
前記比較において悪意のあるアタックであることの推論を、オントロジーデータベースにアクセスしオントロジーデータベースを利用して行い、該推論結果を分析手段に供する推論手段、
として機能させるためのウェブアプリケーションファイアーウォールプログラム。 - インターネットに接続されるコンピュータを、インターネットを介してアクセスするユーザリクエストによるウェブアプリケーション層への悪意のあるアタックを検知する手段として機能させる、ウェブアプリケーションファイアーウォールプログラムであって、
前記コンピュータを、
ユーザリクエストのプロトコルの記述仕様が、RFCに基づいて有効であるか否か確認するプロトコル確認手段、
悪意のあるアタックであると判定する基準となるルールを、オントロジーデータベースにアクセスしオントロジーに基づいて生成するルール生成手段、
前記RFCに基づいて有効であると確認されたユーザリクエストにおけるHTTPプロトコルのセマンテックスを分析し、前記ルールと比較して悪意のあるアタックであるか否かを判定する分析手段、
前記ルール生成手段で生成されたルールをキャッシュし、前記分析手段に該キャッシュされたルールを提供するルールキャッシュ手段、
前記比較において悪意のあるアタックであることの推論をオントロジーデータベースにアクセスしオントロジーデータベースを利用して行い、該推論結果を分析手段に供する推論手段、及び
前記ユーザリクエストのアクセスを記録し、前記分析手段によって当該ユーザリクエストが悪意のあるアタックである場合に、該ユーザリクエストは有効ではないことの表示を可能とする記録監視手段、
として機能させるためのウェブアプリケーションファイアーウォールプログラム。 - 前記ルールは、オントロジーを用いた複数のタグの付されたデータから成ることを特徴とする請求項1〜4のいずれかに記載のウェブアプリケーションファイアーウォールプログラム。
- 前記ルールは、オントロジーデータベースのオントロジーに基づき前記推論手段で得られた推論によって生成されたルールと、ユーザリクエストに含まれる悪意のあるアタックに基づくルールとを含むことを特徴とする請求項1〜5のいずれかに記載のウェブアプリケーションファイアーウォールプログラム。
- 前記インターネットに接続されるコンピュータは、ファイアーウォールサーバであり、該ファイアーウォールサーバにウェブアプリケーション層を有するウェブサーバが接続されていることを特徴とする請求項1〜6のいずれかに記載のウェブアプリケーションファイアーウォールプログラム。
- 前記ルール生成手段は、前記ウェブアプリケーションの正規化に基づくデータを下にオントロジールールを生成しデータベース化する機能も備えており、
前記分析手段は、前記オントロジールールを、悪意のあるアタックであると判定する基準となるルールとして活用して、前記ユーザリクエストが悪意のあるアタックであるか否かを判定することを特徴とする請求項1〜7のいずれかに記載のウェブアプリケーションファイアーウォールプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010213312A JP2012068903A (ja) | 2010-09-24 | 2010-09-24 | ウェブアプリケーションファイアーウォールプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010213312A JP2012068903A (ja) | 2010-09-24 | 2010-09-24 | ウェブアプリケーションファイアーウォールプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2012068903A true JP2012068903A (ja) | 2012-04-05 |
Family
ID=46166107
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010213312A Pending JP2012068903A (ja) | 2010-09-24 | 2010-09-24 | ウェブアプリケーションファイアーウォールプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2012068903A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015130021A (ja) * | 2014-01-07 | 2015-07-16 | 富士ゼロックス株式会社 | 情報処理装置及び情報処理プログラム |
US10282542B2 (en) | 2013-10-24 | 2019-05-07 | Mitsubishi Electric Corporation | Information processing apparatus, information processing method, and computer readable medium |
-
2010
- 2010-09-24 JP JP2010213312A patent/JP2012068903A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10282542B2 (en) | 2013-10-24 | 2019-05-07 | Mitsubishi Electric Corporation | Information processing apparatus, information processing method, and computer readable medium |
JP2015130021A (ja) * | 2014-01-07 | 2015-07-16 | 富士ゼロックス株式会社 | 情報処理装置及び情報処理プログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11463457B2 (en) | Artificial intelligence (AI) based cyber threat analyst to support a cyber security appliance | |
US10958672B2 (en) | Cognitive offense analysis using contextual data and knowledge graphs | |
US11949692B1 (en) | Method and system for efficient cybersecurity analysis of endpoint events | |
US20230319090A1 (en) | Consolidating structured and unstructured security and threat intelligence with knowledge graphs | |
US11194905B2 (en) | Affectedness scoring engine for cyber threat intelligence services | |
US11068588B2 (en) | Detecting irregularities on a device | |
US10681061B2 (en) | Feedback-based prioritized cognitive analysis | |
US10313365B2 (en) | Cognitive offense analysis using enriched graphs | |
US10536472B2 (en) | Cognitive analysis of security data with signal flow-based graph exploration | |
Kampanakis | Security automation and threat information-sharing options | |
US8850591B2 (en) | System and method for concept building | |
US20200106790A1 (en) | Intelligent system for mitigating cybersecurity risk by analyzing domain name system traffic | |
US20140337974A1 (en) | System and method for semantic integration of heterogeneous data sources for context aware intrusion detection | |
US20200177608A1 (en) | Ontology Based Persistent Attack Campaign Detection | |
Sikos | AI in digital forensics: Ontology engineering for cybercrime investigations | |
Fredj | A realistic graph‐based alert correlation system | |
US11924235B2 (en) | Leveraging user-behavior analytics for improved security event classification | |
TW201702921A (zh) | 異常預測方法、系統及裝置 | |
US20190317968A1 (en) | Method, system and computer program products for recognising, validating and correlating entities in a communications darknet | |
CN112272186A (zh) | 一种网络流量检测框架、方法及电子设备和存储介质 | |
Meng et al. | Adaptive non-critical alarm reduction using hash-based contextual signatures in intrusion detection | |
US10681068B1 (en) | System and method for analyzing data and using analyzed data to detect cyber threats and defend against cyber threats | |
Gonzalez Granadillo et al. | An ontology-driven approach to model SIEM information and operations using the SWRL formalism | |
JP2012068903A (ja) | ウェブアプリケーションファイアーウォールプログラム | |
US20160065617A1 (en) | Image monitoring framework |