JP5274401B2 - Management apparatus, management method, and program - Google Patents
Management apparatus, management method, and program Download PDFInfo
- Publication number
- JP5274401B2 JP5274401B2 JP2009176099A JP2009176099A JP5274401B2 JP 5274401 B2 JP5274401 B2 JP 5274401B2 JP 2009176099 A JP2009176099 A JP 2009176099A JP 2009176099 A JP2009176099 A JP 2009176099A JP 5274401 B2 JP5274401 B2 JP 5274401B2
- Authority
- JP
- Japan
- Prior art keywords
- framework
- web application
- determination
- identification information
- unit
- 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
Links
Images
Description
本発明は、Webアプリケーションの管理に関し、特にWebアプリケーションフレームワークが使用されているWebアプリケーションの管理に関する。 The present invention relates to management of web applications, and more particularly to management of web applications in which a web application framework is used.
Webアプリケーションとは、Webサーバもしくはアプリケーションサーバ上で動作するソフトウェアであり、HTTP(HyperText Transfer Protocol)プロトコルを通じてWebブラウザから呼び出され、処理結果をHTML(HyperText Markup Language)としてブラウザに返すことでユーザにサービスを提供するものである。
Webアプリケーションの呼び出しは、URL(Uniform Resource Locator)の他に、ユーザがフォームへ入力したデータなど呼び出し時のパラメータをHTTPリクエストに格納して、Webサーバに送信することで行われる。
近年、パラメータに不正なデータを格納して、Webアプリケーションを呼び出すことで、セキュリティ上の欠陥(セキュリティホールもしくは脆弱性)を悪用する攻撃が増加してきている。
このようなWebアプリケーションのセキュリティホールに対する対策技術の一つとして、Webアプリケーションに対して擬似攻撃を行うことで、悪用される前にセキュリティホールを見つけ出すWebアプリケーション診断技術が存在する。
Webアプリケーション診断技術においては、各パラメータに対し、攻撃を模擬した不正データを設定したHTTPリクエストを送信し、その応答からセキュリティホールの有無を判断する。
その際、Webアプリケーションの入口でのパラメータチェックを回避するために、様々な文字種や形式の不正データを用いて検査を行うのが一般的である。
検査の効率を上げるため、事前に数パターンのデータを送信し、パラメータチェックに合格する文字セットなどを特定して、パラメータチェックに合格する不正データのみを送信する方法が知られている(例えば特許文献1)。
A web application is software that runs on a web server or application server. The web application is called from a web browser through the HTTP (HyperText Transfer Protocol) protocol, and the processing result is returned to the browser as HTML (HyperText Markup Language) to the user. Is to provide.
Invoking a Web application is performed by storing parameters at the time of calling, such as data input to a form by a user, in addition to a URL (Uniform Resource Locator) in an HTTP request and transmitting the parameters to a Web server.
In recent years, attacks that exploit security flaws (security holes or vulnerabilities) by storing illegal data in parameters and calling Web applications have increased.
As one of countermeasure techniques for such a security hole of a Web application, there is a Web application diagnosis technique for finding a security hole before being abused by performing a pseudo attack on the Web application.
In the Web application diagnosis technology, an HTTP request in which illegal data simulating an attack is set for each parameter is transmitted, and the presence or absence of a security hole is determined from the response.
At that time, in order to avoid parameter checking at the entrance of the Web application, it is common to perform inspection using illegal data of various character types and formats.
In order to increase the efficiency of the inspection, a method is known in which several patterns of data are transmitted in advance, a character set that passes the parameter check is specified, and only invalid data that passes the parameter check is transmitted (for example, patents). Reference 1).
近年、Webアプリケーションの開発を効率化するために、Webアプリケーションフレームワーク(以下、単に「フレームワーク」ともいう)を使用した開発が主流となっている。
フレームワークを利用した開発では、セッション管理やページ遷移の制御といった複数のWebアプリケーションに共通する機能をフレームワークが行うため、開発者は本来行いたい処理の実装に専念できるというメリットがある。
このようなフレームワークを用いたWebアプリケーションでは、ブラウザから送信されるHTTPリクエストに、本来Webアプリケーションが必要とするパラメータの他に、フレームワークが動作するために必要なパラメータが大量に付加される場合がある。
例えば、図10はDWR(Direct Web Remoting)と呼ばれるフレームワーク上で生成されたWebページからのHTTPリクエストで送信されるパラメータ(計9個)を示す。
ところが、これらの中で実際に開発者の実装したプログラムに渡されるパラメータはc0−param中の“Joe”のみであり、残りは全てフレームワーク内で処理される。
従来はこれらのパラメータ全てを診断対象とし、各パラメータに擬似攻撃を加えて診断を行っていた。
しかし、フレームワークのセキュリティホールは、フレームワークを提供するベンダやセキュリティコミュニティによって十分検証されており、フレームワークが消費するパラメータに関する診断は単に診断時間を浪費するのみである。
つまり、従来は、フレームワークのパラメータとWebアプリケーション独自のパラメータとを区別していないので、本来は不要であるフレームワークのパラメータに対する診断が行われ、このため、無駄に診断時間が長くなり、また、無駄な計算機リソースの消費が生じるという課題がある。
In recent years, development using a web application framework (hereinafter also simply referred to as “framework”) has become mainstream in order to improve the efficiency of web application development.
In development using a framework, the framework performs functions common to a plurality of Web applications, such as session management and control of page transition, so that there is an advantage that the developer can concentrate on the implementation of the processing that is originally desired.
In a web application using such a framework, a large amount of parameters necessary for the framework to operate are added to the HTTP request transmitted from the browser in addition to the parameters originally required by the web application. There is.
For example, FIG. 10 shows parameters (a total of nine parameters) transmitted by an HTTP request from a web page generated on a framework called DWR (Direct Web Remoting).
However, among these parameters, the only parameter that is actually passed to the program implemented by the developer is “Joe” in c0-param, and all the rest are processed in the framework.
Conventionally, all of these parameters are targeted for diagnosis, and a diagnosis is performed by applying a pseudo attack to each parameter.
However, the security holes of the framework are well verified by the vendors and security communities that provide the framework, and the diagnosis of the parameters consumed by the framework only wastes the diagnosis time.
In other words, conventionally, since the parameters of the framework and the parameters unique to the Web application are not distinguished, the diagnosis of the framework parameters that are originally unnecessary is performed. There is a problem in that useless computer resources are consumed.
この発明は、上記のような課題を解決することを主な目的の一つとしており、Webアプリケーションに対する診断の効率化を図ることを主な目的の1つとする。 One of the main objects of the present invention is to solve the above-described problems, and one of the main objects is to improve the efficiency of diagnosis for Web applications.
本発明に係る管理装置は、
Webアプリケーションフレームワークが使用されているWebアプリケーションと通信を行い、前記Webアプリケーションを管理する管理装置であって、
Webアプリケーションフレームワークの判別に用いられる判別情報を記憶している判別情報記憶領域から判別情報を取得する判別情報取得部と、
前記Webアプリケーションとの通信を記録する通信記録部と、
前記通信記録部による通信記録と前記判別情報取得部により取得された判別情報とを用いて、前記WebアプリケーションにおいていずれのWebアプリケーションフレームワークが使用されているかを判別するフレームワーク判定部とを有することを特徴とする。
The management device according to the present invention is:
A management device that communicates with a web application using a web application framework and manages the web application,
A discrimination information acquisition unit that acquires discrimination information from a discrimination information storage area that stores discrimination information used for discrimination of a web application framework;
A communication recording unit for recording communication with the Web application;
A framework determination unit that determines which Web application framework is used in the Web application using the communication record by the communication recording unit and the determination information acquired by the determination information acquisition unit; It is characterized by.
本発明では、Webアプリケーションに使用されているWebアプリケーションフレームワークを判別し、判別したWebアプリケーションフレームワークに対する診断を省略することにより、Webアプリケーションに対する診断の効率化を図ることができる。 In the present invention, it is possible to improve the efficiency of diagnosis for a Web application by determining the Web application framework used in the Web application and omitting the diagnosis for the determined Web application framework.
実施の形態1.
図1は、本実施の形態に係るWebアプリケーション診断装置101の機能構成を示す図である。
Webアプリケーション診断装置101は、インターネット(あるいはIP網)108を介して、診断対象Webアプリケーション111が稼動しているWebサーバ110と接続されている。
Webアプリケーション診断装置101は、管理装置の例である。
FIG. 1 is a diagram showing a functional configuration of a Web application
The web application
The web application
診断対象Webアプリケーション111は、いずれかのWebアプリケーションフレームワーク(以下、フレームワークともいう)を使用している。
Webアプリケーション診断装置101は、診断対象Webアプリケーション111を管理する。
より具体的には、Webアプリケーション診断装置101は、診断対象Webアプリケーション111においていずれのWebアプリケーションフレームワークが使用されているかを判別するとともに、判別したWebアプリケーションフレームワークに対応させてWebアプリケーションに対する擬似攻撃を行って、Webアプリケーションにおけるセキュリティホールの診断を行う。
The diagnosis
The web application
More specifically, the Web application
Webアプリケーション診断装置101は、HTTPリクエスト送信部105、HTTPレスポンス受信部106、雛形HTTPリクエスト生成部107、擬似攻撃生成部103、セキュリティホール判定部102、診断結果表示部104および通信記録部114といった従来のWebアプリケーション診断装置に備えられた機能に加え、フレームワーク判定部112、フレームワーク識別情報蓄積部113を備えている。
The Web
HTTPリクエスト送信部105は、診断対象Webアプリケーション111が稼動しているサーバアドレスとHTTPリクエストを入力として、同アドレスで指定されるサーバにHTTPリクエストを送信する機能である。
The HTTP
同様にHTTPレスポンス受信部106は、診断対象WebアプリケーションからのHTTPレスポンスを受信する機能である。
Similarly, the HTTP
雛形HTTPリクエスト生成部107は、Webアプリケーションにとって正常に処理可能なHTTPリクエストを生成する機能である。
The template HTTP
擬似攻撃生成部103は、後述するフレームワーク判定部112により特定されたフレームワークに固有のセキュリティホールに対する診断のための擬似攻撃は省略して診断対象Webアプリケーション111におけるセキュリティホールの診断のための擬似攻撃を行う。
前述したように、フレームワークのセキュリティホールは、フレームワークを提供するベンダやセキュリティコミュニティによって十分検証されており、フレームワークが消費するパラメータに関する診断は単に診断時間を浪費するのみであるため、擬似攻撃生成部103は、診断対象Webアプリケーション111に使用されているフレームワークのパラメータに対する擬似攻撃は省略し、診断対象Webアプリケーション111独自のパラメータに対する擬似攻撃のみを行う。
The
As mentioned above, the security holes of the framework are fully verified by the vendors and security communities that provide the framework, and the diagnosis of parameters consumed by the framework only wastes diagnostic time. The
セキュリティホール判定部102は、擬似攻撃生成部103による擬似攻撃を通じて診断対象Webアプリケーション111におけるセキュリティホールを判定する。
The security
擬似攻撃生成部103及びセキュリティホール判定部102は、Webアプリケーション診断部の例である。
The pseudo
診断結果表示部104は、セキュリティホール判定部102によるセキュリティホールの判定結果を表示する。
The diagnosis
フレームワーク判定部112は、診断対象Webアプリケーション111から取得されたHTML、JavaScript(登録商標)ファイルのテキストを解析し、診断対象Webアプリケーション111で使用されているフレームワークを特定する機能である。
フレームワーク判定部112は、フレームワーク判定部及び判別情報取得部の例である。
The
The
フレームワーク識別情報蓄積部113は、Webアプリケーションで使用されているフレームワークを特定するためのフレームワーク識別情報(シグニチャ)を蓄積する機能である。
フレームワーク識別情報は、フレームワークの判別に用いられる情報であり、判別情報の例である。
また、フレームワーク識別情報蓄積部113は、判別情報記憶領域の例である。
The framework identification
The framework identification information is information used for discrimination of the framework, and is an example of discrimination information.
The framework identification
通信記録部114は、診断対象Webアプリケーション111との間の通信を記録する。
具体的には、診断対象Webアプリケーション111とHTTPリクエスト送信部105との間の通信、及び診断対象Webアプリケーション111とHTTPレスポンス受信部106との間の通信を記録する。
The
Specifically, the communication between the diagnosis
図2を用いてWebアプリケーション診断装置101の概略動作について説明する。
はじめにWebアプリケーション診断装置101は、診断実施者に対し診断対象サイトのトップページURLを入力させ(S202)、指定されたURLまで移動する(S203)。
さらに、Webアプリケーション診断装置101は、診断実施者に診断対象ページまでの移動操作を行わせ、トップページから診断対象ページに至る間のWebサーバとの通信を通信記録部114に記録する(S204)。
A schematic operation of the Web application
First, the Web
Further, the Web
次にWebアプリケーション診断装置101は、診断実施者に診断対象ページ指定を行わせた(S205)上で、診断対象Webアプリケーション111の操作を行わせる。
Webアプリケーション診断装置101は、診断実施者による診断対象Webアプリケーション111の操作によって発生するWebサーバ110との通信を診断対象の通信として通信記録部114に記録する(S206)(通信記録ステップ)。
Next, the Web
The Web application
Webアプリケーション診断装置101は、診断対象者に対して診断対象Webアプリケーション111の操作終了後に診断開始指示を行わせ(S207)、診断開始指示が行われた時点で診断対象の通信に対してセキュリティ診断を開始する。
セキュリティ診断では、Webアプリケーション診断装置101は、診断対象Webアプリケーション111の操作によって発生したWebサーバ110との通信記録の中から診断対象Webアプリケーション111から受信したWebページを取得し(S208)、フレームワーク判定部112がフレーム識別情報を取得しWebページに照合して診断対象Webアプリケーション111で使用されているフレームワークを特定する(S209)(判別情報取得ステップ)(フレームワーク判定ステップ)。
フレームワークを特定する動作については、後で詳述する。
The Web
In the security diagnosis, the Web
The operation for specifying the framework will be described in detail later.
フレームワークの特定が終わると、雛形HTTPリクエスト生成部107が、診断対象Webアプリケーション111へ送信する擬似攻撃のHTTPリクエストを生成するための雛形となるHTTPリクエストを生成する(S210)。
このHTTPリクエストは、Webアプリケーションで正常に処理されるものである。
次に、擬似攻撃生成部103は、特定したフレームワークの情報を元に診断対象のパラメータを特定し、生成したHTTPリクエストの雛形から擬似攻撃データを作成する(S211)。この擬似攻撃データは、フレームワークのパラメータを除外した診断対象Webアプリケーション111独自のパラメータに対する擬似攻撃を行うためのデータである。
そして、セキュリティホール判定部102は、作成された擬似攻撃データを用いて診断対象Webアプリケーション111の診断を行う(S212)。
診断対象のパラメータを特定し、擬似攻撃データを作成、診断を行う処理動作の詳細に関しては、本明細書では言及しない。
When the specification of the framework is completed, the template HTTP
This HTTP request is normally processed by the Web application.
Next, the pseudo
Then, the security
The details of the processing operation for specifying the parameter to be diagnosed, creating pseudo-attack data, and performing diagnosis are not mentioned in this specification.
以降では、フレームワークを特定する動作について説明する。
図5は、フレームワーク識別情報蓄積部113に格納されているフレームワーク識別情報の例を示した図である。
フレームワーク識別情報蓄積部113には、0個以上のフレームワーク識別情報が格納されている。
各フレームワーク識別情報は、フレームワーク名402、ファイルタイプ404、詳細指定405、パターン文字列406で構成されている。
Hereinafter, the operation for specifying the framework will be described.
FIG. 5 is a diagram illustrating an example of the framework identification information stored in the framework identification
The framework identification
Each framework identification information includes a
図5で示したようにファイルタイプ404が“HTML”である場合には、詳細指定405は特定の部分を指定する構文(XPathなど)で表されたHTML文書内の照合対象ノード条件と照合箇所を特定するための情報である。
つまり、詳細指定405は、後述のパターン文字列406が配置されているWebページ内の文字列配置位置を示す。
As shown in FIG. 5, when the
That is, the
パターン文字列406は、フレームワークを特定するための正規表現文字列である。パターン文字列は、フレームワークの判別に用いられる文字列であり、判別用文字列の例である。
フレームワーク名402は、使用されているフレームワークの名前を表す。
The
The
図3及び図4を用いてフレームワーク判定部112がフレームワークを特定する動作について説明する。
フレームワーク判定部112は、フレームワーク識別情報蓄積部113からフレームワーク識別情報を取り出す(S302)。
取り出すべきフレームワーク識別情報がない場合には、フレームワーク判定部112は該当するフレームワークが存在しないとし、「該当なし」を出力し(S313)、処理を終了する(S314)。
フレームワーク判定部112は、取り出したフレームワーク識別情報のファイルタイプ404と、診断対象のファイルタイプが同一であるかを確認し(S303)、同一である場合にはファイルタイプが“HTML”である事を確認する(S304)。
本実施の形態では、ファイルタイプは必ず“HTML”となる。
また、取り出したフレームワーク識別情報のファイルタイプ404と、診断対象のファイルタイプが異なる場合には、フレームワーク判定部112は次のフレームワーク識別情報を取り出す。
The operation of the
The
If there is no framework identification information to be extracted, the
The
In the present embodiment, the file type is always “HTML”.
If the
次にフレームワーク判定部112は、フレームワーク識別情報の詳細指定405が空でない事を確認し(S305)、XPathで特定部分を指定する構文で記述された詳細指定405を用い、診断対象ページファイルから照合対象箇所を抽出する(S306)。
そして、フレームワーク判定部112は、抽出した箇所それぞれに対して(S307)、フレームワーク識別情報のパターン文字列406とのマッチングを行う(S308)。
抽出した箇所とフレームワーク識別情報のパターン文字が一致した場合(S309でYES)には、フレームワーク判定部112は、フレームワーク識別情報のフレームワーク名402を出力し(S315)、処理を終了する(S314)。
Next, the
Then, the
When the extracted part and the pattern character of the framework identification information match (YES in S309), the
照合箇所が複数抽出された場合には、フレームワーク判定部112は、抽出された照合箇所それぞれに対してパターンマッチングを行う(S307〜S310)。
抽出された照合箇所のいずれもパターンに一致しない場合には、フレームワーク判定部112は次の詳細指定を用いる。
つまり、フレームワーク識別情報の詳細指定が複数指定されている場合には、フレームワーク判定部112は、指定されている詳細指定それぞれに対して照合箇所を抽出し、抽出された照合箇所全てに対してパターンマッチングを行う(S306〜S311)。
指定された詳細指定のいずれでもパターンに一致になければ、フレームワーク判定部112は次のフレームワーク識別情報を用いる。
フレームワーク判定部112は、複数のフレームワーク識別情報に対して個々に照合を行い(S302〜S312)、最初にマッチしたフレームワークを診断対象のフレームワークとしてみなす。
When a plurality of verification locations are extracted, the
If none of the extracted collation points matches the pattern, the
In other words, when a plurality of detailed designations of the framework identification information are designated, the
If none of the designated detailed designations matches the pattern, the
The
以上のように、診断対象Webアプリケーションからの応答(Webページファイル)に対して、Webページのファイルタイプを判別し、特定の部分を指定する構文(XPathなど)で表されたHTML文書内の照合対象ノード条件と照合箇所を特定する情報を元に照合箇所を抽出し、特定のパターンにマッチするかを判断する事で、フレームワークを特定し、フレームワーク情報を元にした擬似攻撃データを作成する事が可能になる、という効果がある。 As described above, in response to a response (web page file) from the diagnosis target web application, the collation in the HTML document represented by the syntax (such as XPath) that determines the file type of the web page and specifies a specific part. Based on the information that identifies the target node condition and the matching location, the matching location is extracted, and by determining whether it matches a specific pattern, the framework is identified and the pseudo attack data based on the framework information is created The effect is that it is possible to do.
つまり、本実施の形態では、通信記録とフレームワーク識別情報を用いてWebアプリケーションに使用されているフレームワークを判別し、既に十分な検証が行われているフレームワークについての診断を省略し、Webアプリケーション独自のパラメータにのみ擬似攻撃を行って、Webアプリケーションに対する診断の効率化を図ることができる。 In other words, in the present embodiment, the framework used in the web application is determined using the communication record and the framework identification information, the diagnosis of the framework that has already been sufficiently verified is omitted, and the web It is possible to improve the efficiency of diagnosis for a Web application by performing a pseudo attack only on the parameters unique to the application.
なお、本実施の形態では、フレームワーク識別情報蓄積部113が、Webアプリケーション診断装置101と同一装置内で機能することを想定しているが、フレームワーク識別情報蓄積部113がリモートのデータベースサーバに格納されていてももちろん構わない。
また、フレームワーク識別情報蓄積部113内のフレームワーク識別情報を、リモートの配布サーバから定期的に取得して、常に最新のフレームワークに対応するようにする構成も可能である。
In this embodiment, it is assumed that the framework identification
Further, it is possible to obtain the framework identification information in the framework identification
以上、本実施の形態では、
擬似攻撃データを含んだHTTPリクエストを診断対象のWebアプリケーションへ送信し、その応答であるHTTPレスポンスを解析することによって該Webアプリケーション上のセキュリティホールの有無を判定するWebアプリケーション診断装置において、
Webアプリケーションからの応答に含まれるテキストの中から、Webアプリケーションが使用しているフレームワーク名を特定するフレームワーク判定部を有するWebアプリケーション診断装置を説明した。
As described above, in the present embodiment,
In a Web application diagnostic apparatus that determines whether there is a security hole on the Web application by transmitting an HTTP request including pseudo attack data to a Web application to be diagnosed and analyzing an HTTP response that is a response to the HTTP request.
A web application diagnostic apparatus having a framework determination unit that identifies a framework name used by a web application from text included in a response from the web application has been described.
また、本実施の形態では、フレームワーク判定部から参照され、フレームワーク名、1つ乃至複数の照合箇所、パターン文字列で構成されたフレームワーク識別情報が格納されたフレームワーク識別情報蓄積部を有するWebアプリケーション診断装置を説明した。 In the present embodiment, a framework identification information storage unit that stores framework identification information that is referred to by the framework determination unit and that includes a framework name, one or a plurality of verification locations, and a pattern character string is stored. The web application diagnostic apparatus having the above has been described.
また、本実施の形態では、照合箇所が、ファイルタイプとファイルタイプ固有の詳細指定情報で構成されたフレームワーク識別情報が格納されたフレームワーク識別情報蓄積部を有するWebアプリケーション診断装置を説明した。 Further, in the present embodiment, the Web application diagnosis apparatus has been described in which the collation part has a framework identification information storage unit in which framework identification information configured by a file type and detailed specification information unique to the file type is stored.
また、本実施の形態では、ファイルタイプがHTMLであって、詳細指定では特定の部分を指定する構文によりHTML文書内の照合対象ノード条件と照合箇所を特定可能であるWebアプリケーション診断装置を説明した。 In the present embodiment, the Web application diagnosis apparatus has been described in which the file type is HTML, and in the detailed specification, the collation target node condition and the collation location in the HTML document can be identified by the syntax for designating a specific part. .
実施の形態2.
実施の形態1では、フレームワーク識別情報が、フレームワーク名、ファイルタイプ、詳細指定、パターン文字列で構成されており、ファイルタイプが“HTML”である場合のフレームワーク判定部の動作について説明した。
本実施の形態では、フレームワーク識別情報が、フレームワーク名、ファイルタイプ、パターン文字列で構成されており、ファイルタイプが“HTML”である場合(図5の詳細設定405が省略されている場合)のフレームワーク判定部112の動作について説明する。
In the first embodiment, the operation of the framework determination unit when the framework identification information is composed of the framework name, file type, detailed designation, and pattern character string, and the file type is “HTML” has been described. .
In this embodiment, the framework identification information is composed of a framework name, a file type, and a pattern character string, and the file type is “HTML” (when the
図6は、本実施の形態に係るフレームワーク識別情報蓄積部113に格納されているフレームワーク識別情報の例を示した図である。
フレームワーク識別情報蓄積部113には、0個以上のフレームワーク識別情報が格納されている。
各フレームワーク識別情報は、フレームワーク名502、ファイルタイプ504、パターン文字列505で構成されている。
パターン文字列505は、フレームワークを特定するための正規表現文字列であり、判別用文字列の例である。
フレームワーク名502は、使用されているフレームワークの名前を表す。
FIG. 6 is a diagram showing an example of the framework identification information stored in the framework identification
The framework identification
Each framework identification information includes a
The
The
図3及び図4を用いてフレームワーク判定部112がフレームワークを特定する動作について説明する。
フレームワーク判定部112は、フレームワーク識別情報蓄積部113からフレームワーク識別情報を取り出す(S302)。
取り出すべきフレームワーク識別情報がない場合には、フレームワーク判定部112は該当するフレームワークが存在しないとし、「該当なし」を出力し(S313)、処理を終了する(S314)。
フレームワーク判定部112は、取り出したフレームワーク識別情報のファイルタイプ504と、診断対象のファイルタイプが同一であるかを確認し(S303)、同一である場合にはファイルタイプが“HTML”である事を確認する(S304)。
本実施の形態では、ファイルタイプは必ず“HTML”となる。
また、取り出したフレームワーク識別情報のファイルタイプと、診断対象のファイルタイプが異なる場合には、フレームワーク判定部112は次のフレームワーク識別情報を取り出す。
The operation of the
The
If there is no framework identification information to be extracted, the
The
In the present embodiment, the file type is always “HTML”.
When the file type of the extracted framework identification information is different from the file type to be diagnosed, the
次にフレームワーク判定部112は、フレームワーク識別情報の詳細指定が空(詳細指定が存在しない)である事を確認し(S305)、診断対象ページファイル全てに対してフレームワーク識別情報のパターン文字列505とのマッチングを行う(S316)。
そして、診断対象ページファイルとフレームワーク識別情報のパターン文字列505が一致した場合には、フレームワーク判定部112は、フレームワーク識別情報のフレームワーク名502を出力し(S315)、処理を終了する(S314)。
Next, the
If the page file to be diagnosed matches the
診断対象ページファイルにパターン文字列505と一致する箇所が存在しない場合には、フレームワーク判定部112は、次のフレームワーク識別情報を用いる。
フレームワーク判定部は、複数のフレームワーク識別情報に対して個々に照合を行い(S302〜S312)、最初にマッチしたフレームワークを診断対象のフレームワークとしてみなす。
When there is no portion that matches the
The framework determination unit individually collates a plurality of pieces of framework identification information (S302 to S312), and regards the first matched framework as the diagnosis target framework.
以上のように、診断対象Webアプリケーションからの応答(Webページファイル)に対してWebページのファイルタイプを判別し、タグも含めたHTMLファイル全体に特定パターンにマッチする箇所が存在するかを判断することで、フレームワークを特定し、フレームワーク情報を元にした擬似攻撃データを作成する事が可能になる、という効果がある。 As described above, the file type of the Web page is determined with respect to the response (Web page file) from the diagnosis target Web application, and it is determined whether there is a portion matching the specific pattern in the entire HTML file including the tag. Thus, there is an effect that it becomes possible to specify a framework and create pseudo attack data based on the framework information.
本実施の形態では、フレームワーク識別情報蓄積部113が、Webアプリケーション診断装置101と同一装置内で機能することを想定しているが、フレームワーク識別情報蓄積部113がリモートのデータベースサーバに格納されていてももちろん構わない。
また、フレームワーク識別情報蓄積部113内のフレームワーク識別情報を、リモートの配布サーバから定期的に取得して、常に最新のフレームワークに対応するようにする構成も可能である。
In this embodiment, it is assumed that the framework identification
Further, it is possible to obtain the framework identification information in the framework identification
また、本実施の形態で示したフレームワーク識別情報蓄積部113は、実施の形態1で示したフレームワーク識別情報蓄積部113と統一してももちろん構わない。
この場合、実施の形態2で使用されるフレームワーク識別情報はフレームワーク名、ファイルタイプ、空の詳細指定、パターン文字列から構成される。
In addition, the framework identification
In this case, the framework identification information used in the second embodiment is composed of the framework name, file type, empty detailed designation, and pattern character string.
以上、本実施の形態では、照合箇所が、ファイルタイプで構成されたフレームワーク識別情報が格納されたフレームワーク識別情報蓄積部を有するWebアプリケーション診断装置を説明した。 As described above, in the present embodiment, the Web application diagnosis apparatus has been described in which the collation portion includes the framework identification information storage unit in which the framework identification information configured by the file type is stored.
また、本実施の形態では、ファイルタイプがHTMLであって、タグも含め、HTML文書全体が照合対象となるWebアプリケーション診断装置を説明した。 Further, in the present embodiment, the Web application diagnosis apparatus has been described in which the file type is HTML and the entire HTML document including the tag is a collation target.
実施の形態3.
実施の形態1では、ファイルタイプが“HTML”である場合のフレームワーク判定部の動作について説明した。本実施の形態では、ファイルタイプが“JavaScript”(登録商標)である場合のフレームワーク判定部の動作について説明する。
In the first embodiment, the operation of the framework determination unit when the file type is “HTML” has been described. In the present embodiment, the operation of the framework determination unit when the file type is “JavaScript” (registered trademark) will be described.
近年ではAjax(Asynchronous JavaScript(登録商標) And XML)とよばれるJavaScript(登録商標)からWebアプリケーションへの非同期通信による画面更新技術を利用したWebアプリケーションも普及しつつある。
AjaxではJavaScript(登録商標)からWebアプリケーションへと送信されるパラメータの様式が定まっておらず、従来のWeb診断技術では独自のフォーマットを使用してパラメータを送信するWebアプリケーション向けの擬似攻撃(HTTPリクエスト)を生成することができないという課題がある。
本実施の形態では、このような課題に対応するWebアプリケーション診断装置101を説明する。
In recent years, a Web application using a screen update technique based on asynchronous communication from a JavaScript (registered trademark) to a Web application called Ajax (Asynchronous JavaScript (registered trademark) And XML) is becoming widespread.
In Ajax, the format of parameters transmitted from JavaScript (registered trademark) to the Web application is not fixed, and the conventional Web diagnostic technology uses a unique format to send parameters using a unique attack (HTTP request) ) Cannot be generated.
In the present embodiment, a Web application
図7は、本実施の形態に係るフレームワーク識別情報蓄積部113に格納されているフレームワーク識別情報の例を示した図である。
フレームワーク識別情報蓄積部113には、0個以上のフレームワーク識別情報が格納されている。
各フレームワーク識別情報は、フレームワーク名602、ファイルタイプ604、詳細指定605、パターン文字列606で構成されている。
図7で示したようにファイルタイプが“JavaScript”(登録商標)である場合には、詳細指定605は照合開始行と照合終了行である。
照合開始行が省略された場合には、ファイル先頭が、照合終了行が省略された場合には、ファイル末尾が指定される。
そして、パターン文字列606は、フレームワークを特定するための正規表現文字列であり、判別用文字列の例である。
フレームワーク名602は、使用されているフレームワークの名前を表す。
FIG. 7 is a diagram showing an example of the framework identification information stored in the framework identification
The framework identification
Each framework identification information includes a
As shown in FIG. 7, when the file type is “JavaScript” (registered trademark), the
If the collation start line is omitted, the beginning of the file is designated. If the collation end line is omitted, the end of the file is designated.
The
The
図3及び図4を用いてフレームワーク判定部112がフレームワークを特定する動作について説明する。
フレームワーク判定部112は、フレームワーク識別情報蓄積部113からフレームワーク識別情報を取り出す(S302)。
取り出すべきフレームワーク識別情報がない場合には、フレームワーク判定部112は該当するフレームワークが存在しないとし、「該当なし」を出力し(S313)、処理を終了する(S314)。
フレームワーク判定部112は、取り出したフレームワーク識別情報のファイルタイプ604と、診断対象のファイルタイプが同一であるかを確認し(S303)、同一である場合にはファイルタイプが“JavaScript”(登録商標)である事を確認する(S318)。
本実施の形態では、ファイルタイプは必ず“JavaScript”(登録商標)となる。
また、取り出したフレームワーク識別情報のファイルタイプ604と、診断対象のファイルタイプが異なる場合には、フレームワーク判定部112は次のフレームワーク識別情報を取り出す。
The operation of the
The
If there is no framework identification information to be extracted, the
The
In the present embodiment, the file type is always “Java Script” (registered trademark).
If the
次にフレームワーク判定部112は、フレームワーク識別情報の詳細指定が空でない事を確認し(S319)、フレームワーク識別情報の詳細指定605で指定された照合開始行から順に診断対象ページファイルから照合対象行を抽出する(S320)。
そして、フレームワーク判定部112は、抽出した照合対象行それぞれに対してフレームワーク識別情報のパターン文字列606とのマッチングを行う(S321)。
照合対象行とフレームワーク識別情報のパターン文字列606が一致した場合には、フレームワーク判定部112は、フレームワーク識別情報のフレームワーク名602を出力し(S315)、処理を終了する(S314)。
照合対象行とフレームワーク識別情報のパターン文字列606が一致しない場合には、フレームワーク判定部112は、照合対象行とフレームワーク識別情報のパターン文字列606とのマッチングを、詳細指定605で指定された照合終了行まで行う(S320〜S323)。
照合開始行から照合終了行までにパターン文字列606と一致しなければ、フレームワーク判定部112は、次のフレームワーク識別情報を用いる。
フレームワーク判定部112は、複数のフレームワーク識別情報に対して個々に照合を行い(S302〜S312)、最初にマッチしたフレームワークを診断対象のフレームワークとしてみなす。
Next, the
Then, the
When the matching target line and the
When the matching target line and the
If it does not match the
The
以上のように、診断対象Webアプリケーションからの応答(Webページファイル)に対して、Webページのファイルタイプを判別し、照合開始行から照合終了行までを抽出し、特定のパターンにマッチするかを判断する事で、フレームワークを特定し、フレームワーク情報を元にした擬似攻撃データを作成する事が可能になる、という効果がある。 As described above, in response to a response (web page file) from the diagnosis target web application, the file type of the web page is discriminated, the lines from the collation start line to the collation end line are extracted, and whether or not a specific pattern is matched. By determining, it is possible to identify the framework and create pseudo attack data based on the framework information.
本実施の形態におけるフレームワーク識別情報蓄積部113が、Webアプリケーション診断装置101と同一装置内で機能することを想定しているが、フレームワーク識別情報蓄積部113がリモートのデータベースサーバに格納されていてももちろん構わない。
また、フレームワーク識別情報蓄積部113内のフレームワーク識別情報を、リモートの配布サーバから定期的に取得して、常に最新のフレームワークに対応するようにする構成も可能である。
また、本実施の形態で示したフレームワーク識別情報蓄積部113は、実施の形態1で示したフレームワーク識別情報蓄積部113と統一してももちろん構わない。
Although it is assumed that the framework identification
Further, it is possible to obtain the framework identification information in the framework identification
In addition, the framework identification
以上、本実施の形態では、フレームワーク判定部から参照され、フレームワーク名、照合箇所、パターン文字列で構成されたフレームワーク識別情報が格納されたフレームワーク識別情報蓄積部を有するWebアプリケーション診断装置を説明した。 As described above, in the present embodiment, a Web application diagnosis apparatus having a framework identification information accumulation unit that is referred to by a framework determination unit and stores framework identification information composed of a framework name, a collation location, and a pattern character string. Explained.
また、本実施の形態では、照合箇所が、ファイルタイプとファイルタイプ固有の詳細指定情報で構成されたフレームワーク識別情報が格納されたフレームワーク識別情報蓄積部を有するWebアプリケーション診断装置を説明した。 Further, in the present embodiment, the Web application diagnosis apparatus has been described in which the collation part has a framework identification information storage unit in which framework identification information configured by a file type and detailed specification information unique to the file type is stored.
また、本実施の形態では、ファイルタイプがJavaScript(登録商標)であって、照合開始行と照合終了行を指定可能であるWebアプリケーション診断装置を説明した。 In the present embodiment, the Web application diagnosis apparatus has been described in which the file type is JavaScript (registered trademark) and the collation start line and the collation end line can be specified.
実施の形態4.
実施の形態3では、フレームワーク識別情報が、フレームワーク名、ファイルタイプ、詳細指定情報、パターン文字列で構成されており、ファイルタイプが“JavaScript”(登録商標)である場合のフレームワーク判定部の動作について説明した。
本実施の形態では、フレームワーク識別情報が、フレームワーク名、ファイルタイプ、パターン文字列で構成されており、ファイルタイプが“JavaScript”(登録商標)である場合(図7の詳細指定605が省略されている場合)のフレームワーク判定部の動作について説明する。
In the third embodiment, the framework identification unit is configured when the framework identification information includes a framework name, a file type, detailed designation information, and a pattern character string, and the file type is “JavaScript” (registered trademark). The operation of was explained.
In the present embodiment, the framework identification information includes a framework name, a file type, and a pattern character string, and the file type is “JavaScript” (registered trademark) (
図8は、本実施の形態に係るフレームワーク識別情報蓄積部113に格納されているフレームワーク識別情報の例を示した図である。
フレームワーク識別情報蓄積部113には、0個以上のフレームワーク識別情報が格納されている。
各フレームワーク識別情報は、フレームワーク名702、ファイルタイプ704、パターン文字列705で構成されている。
パターン文字列705は、フレームワークを特定するための正規表現文字列であり、判別用文字列の例である。
フレームワーク名702は、使用されているフレームワークの名前を表す。
FIG. 8 is a diagram showing an example of the framework identification information stored in the framework identification
The framework identification
Each framework identification information includes a
The
図3及び図4を用いてフレームワーク判定部112がフレームワークを特定する動作について説明する。
フレームワーク判定部112は、フレームワーク識別情報蓄積部113からフレームワーク識別情報を取り出す(S302)。
取り出すべきフレームワーク識別情報がない場合には、フレームワーク判定部112は、該当するフレームワークが存在しないとし、「該当なし」を出力し(S313)、処理を終了する(S314)。
フレームワーク判定部112は、取り出したフレームワーク識別情報のファイルタイプ704と、診断対象のファイルタイプが同一であるかを確認し(S303)、同一である場合にはファイルタイプが“JavaScript”(登録商標)である事を確認する(S318)。
本実施の形態では、ファイルタイプは必ず“JavaScript”(登録商標)となる。
また、取り出したフレームワーク識別情報のファイルタイプ704と、診断対象のファイルタイプが異なる場合には、フレームワーク判定部112は次のフレームワーク識別情報を取り出す。
The operation of the
The
If there is no framework identification information to be extracted, the
The
In the present embodiment, the file type is always “Java Script” (registered trademark).
When the
次にフレームワーク判定部112は、フレームワーク識別情報の詳細指定が空(詳細指定が存在しない)である事を確認し(S319)、診断対象ページファイル全てに対してフレームワーク識別情報のパターン文字列705とのマッチングを行う(S316)。
そして、診断対象ページファイルとフレームワーク識別情報のパターン文字列705が一致した場合には、フレームワーク識別情報のフレームワーク名702を出力し(S315)、処理を終了する(S314)。
Next, the
When the diagnosis target page file matches the
診断対象ページファイルにパターン文字列705と一致する箇所が存在しない場合には、フレームワーク判定部112は、次のフレームワーク識別情報を用いる。
フレームワーク判定部112は、複数のフレームワーク識別情報に対して個々に照合を行い(S302〜S312)、最初にマッチしたフレームワークを診断対象のフレームワークとしてみなす。
When there is no portion that matches the
The
以上のように、診断対象Webアプリケーションからの応答(Webページファイル)に対してWebページのファイルタイプを判別し、JavaScript(登録商標)ファイル全体に特定パターンにマッチする箇所が存在するかを判断することで、フレームワークを特定し、フレームワーク情報を元にした擬似攻撃データを作成する事が可能になる、という効果がある。 As described above, the file type of the Web page is determined with respect to the response (Web page file) from the diagnosis target Web application, and it is determined whether there is a portion that matches the specific pattern in the entire JavaScript (registered trademark) file. Thus, there is an effect that it becomes possible to specify a framework and create pseudo attack data based on the framework information.
本実施の形態におけるフレームワーク識別情報蓄積部113が、Webアプリケーション診断装置101と同一装置内で機能することを想定しているが、フレームワーク識別情報蓄積部113がリモートのデータベースサーバに格納されていてももちろん構わない。
また、フレームワーク識別情報蓄積部113内のフレームワーク識別情報を、リモートの配布サーバから定期的に取得して、常に最新のフレームワークに対応するようにする構成も可能である。
Although it is assumed that the framework identification
Further, it is possible to obtain the framework identification information in the framework identification
また、本実施の形態で示したフレームワーク識別情報蓄積部113は、実施の形態1及び実施の形態3で示したフレームワーク識別情報蓄積部113と統一してももちろん構わない。
この場合、実施の形態4で使用されるフレームワーク識別情報はフレームワーク名、ファイルタイプ、空の詳細指定、パターン文字列から構成される。
In addition, the framework identification
In this case, the framework identification information used in the fourth embodiment is composed of the framework name, file type, empty detailed designation, and pattern character string.
以上、本実施の形態では、照合箇所が、ファイルタイプで構成されたフレームワーク識別情報が格納されたフレームワーク識別情報蓄積部を有するWebアプリケーション診断装置を説明した。 As described above, in the present embodiment, the Web application diagnosis apparatus has been described in which the collation portion includes the framework identification information storage unit in which the framework identification information configured by the file type is stored.
また、本実施の形態では、ファイルタイプがJavaScript(登録商標)であって、スクリプトファイル全体が照合対象となるWebアプリケーション診断装置を説明した。 Further, in the present embodiment, the Web application diagnosis apparatus has been described in which the file type is JavaScript (registered trademark) and the entire script file is the target of collation.
最後に、実施の形態1〜4に示したWebアプリケーション診断装置101のハードウェア構成例について説明する。
図9は、実施の形態1〜4に示すWebアプリケーション診断装置101のハードウェア資源の一例を示す図である。
なお、図9の構成は、あくまでもWebアプリケーション診断装置101のハードウェア構成の一例を示すものであり、Webアプリケーション診断装置101のハードウェア構成は図9に記載の構成に限らず、他の構成であってもよい。
Finally, a hardware configuration example of the Web application
FIG. 9 is a diagram illustrating an example of hardware resources of the Web application
Note that the configuration of FIG. 9 is merely an example of the hardware configuration of the Web application
図9において、Webアプリケーション診断装置101は、プログラムを実行する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)、プリンタ装置906、スキャナ装置907と接続していてもよい。また、磁気ディスク装置920の代わりに、光ディスク装置、メモリカード(登録商標)読み書き装置などの記憶装置でもよい。
RAM914は、揮発性メモリの一例である。ROM913、FDD904、CDD905、磁気ディスク装置920の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置の一例である。
実施の形態1〜4で説明した「フレームワーク識別情報蓄積部113」及び「通信記録部114」は、RAM914、磁気ディスク装置920等により実現される。
通信ボード915、キーボード902、マウス903、スキャナ装置907、FDD904などは、入力装置の一例である。
また、通信ボード915、表示装置901、プリンタ装置906などは、出力装置の一例である。
In FIG. 9, the Web application
The
Further, the
The
The “framework identification
A
The
通信ボード915は、図1に示すように、ネットワークに接続されている。例えば、通信ボード915は、インターネットの他、LAN(ローカルエリアネットワーク)、WAN(ワイドエリアネットワーク)、SAN(ストレージエリアネットワーク)などに接続されていても構わない。
As shown in FIG. 1, the
磁気ディスク装置920には、オペレーティングシステム921(OS)、ウィンドウシステム922、プログラム群923、ファイル群924が記憶されている。
プログラム群923のプログラムは、CPU911がオペレーティングシステム921、ウィンドウシステム922を利用しながら実行する。
The
The programs in the
また、RAM914には、CPU911に実行させるオペレーティングシステム921のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。
また、RAM914には、CPU911による処理に必要な各種データが格納される。
The
The
また、ROM913には、BIOS(Basic Input Output System)プログラムが格納され、磁気ディスク装置920にはブートプログラムが格納されている。
Webアプリケーション診断装置101の起動時には、ROM913のBIOSプログラム及び磁気ディスク装置920のブートプログラムが実行され、BIOSプログラム及びブートプログラムによりオペレーティングシステム921が起動される。
The
When the Web application
上記プログラム群923には、実施の形態1〜4の説明において「〜部」(「フレームワーク識別情報蓄積部113」及び「通信記録部114」以外、以下同様)として説明している機能を実行するプログラムが記憶されている。プログラムは、CPU911により読み出され実行される。
The
ファイル群924には、実施の形態1〜4の説明において、「〜の判断」、「〜の判定」、「〜の計算」、「〜の比較」、「〜の照合」、「〜の診断」、「〜の更新」、「〜の設定」、「〜の登録」、「〜の選択」等として説明している処理の結果を示す情報やデータや信号値や変数値やパラメータが、「〜ファイル」や「〜データベース」の各項目として記憶されている。
「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してCPU911によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示などのCPUの動作に用いられる。
抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示のCPUの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリ、レジスタ、キャッシュメモリ、バッファメモリ等に一時的に記憶される。
また、実施の形態1〜4で説明しているフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、RAM914のメモリ、FDD904のフレキシブルディスク、CDD905のコンパクトディスク、磁気ディスク装置920の磁気ディスク、その他光ディスク、ミニディスク、DVD等の記録媒体に記録される。また、データや信号は、バス912や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
In the
The “˜file” and “˜database” are stored in a recording medium such as a disk or a memory. Information, data, signal values, variable values, and parameters stored in a storage medium such as a disk or memory are read out to the main memory or cache memory by the
Information, data, signal values, variable values, and parameters are stored in the main memory, registers, cache memory, and buffers during the CPU operations of extraction, search, reference, comparison, calculation, processing, editing, output, printing, and display. It is temporarily stored in a memory or the like.
In addition, arrows in the flowcharts described in the first to fourth embodiments mainly indicate input / output of data and signals, and the data and signal values are the
また、実施の形態1〜4の説明において「〜部」として説明しているものは、「〜回路」、「〜装置」、「〜機器」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」として説明しているものは、ROM913に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、DVD等の記録媒体に記憶される。プログラムはCPU911により読み出され、CPU911により実行される。すなわち、プログラムは、実施の形態1〜4の「〜部」としてコンピュータを機能させるものである。あるいは、実施の形態1〜4の「〜部」の手順や方法をコンピュータに実行させるものである。
In addition, what is described as “to part” in the description of the first to fourth embodiments may be “to circuit”, “to device”, “to device”, and “to step”, It may be “˜procedure” or “˜processing”. That is, what is described as “˜unit” may be realized by firmware stored in the
このように、実施の形態1〜4に示すWebアプリケーション診断装置101は、処理装置たるCPU、記憶装置たるメモリ、磁気ディスク等、入力装置たるキーボード、マウス、通信ボード等、出力装置たる表示装置、通信ボード等を備えるコンピュータであり、上記したように「〜部」として示された機能をこれら処理装置、記憶装置、入力装置、出力装置を用いて実現するものである。
As described above, the Web
101 Webアプリケーション診断装置、102 セキュリティホール判定部、103 擬似攻撃生成部、104 診断結果表示部、105 HTTPリクエスト送信部、106 HTTPレスポンス受信部、107 雛形HTTPリクエスト生成部、108 インターネット、110 Webサーバ、111 診断対象Webアプリケーション、112 フレームワーク判定部、113 フレームワーク識別情報蓄積部、114 通信記録部。
DESCRIPTION OF
Claims (8)
前記Webアプリケーションとの通信を記録する通信記録部と、
Webアプリケーションフレームワークの判別に用いられる判別情報を記憶している判別情報記憶領域から判別情報を取得する判別情報取得部と、
前記通信記録部による通信記録と前記判別情報取得部により取得された判別情報とを用いて、前記WebアプリケーションにおいていずれのWebアプリケーションフレームワークが使用されているかを判別するフレームワーク判定部とを有することを特徴とする管理装置。 A management device that communicates with a web application using a web application framework and manages the web application,
A communication recording unit for recording communication with the Web application;
A discrimination information acquisition unit that acquires discrimination information from a discrimination information storage area that stores discrimination information used for discrimination of a web application framework;
A framework determination unit that determines which Web application framework is used in the Web application using the communication record by the communication recording unit and the determination information acquired by the determination information acquisition unit; Management device characterized by.
前記判別情報記憶領域から、Webアプリケーションフレームワークごとに固有の判別用文字列が示される判別情報を取得し、
前記フレームワーク判定部は、
前記通信記録部による通信記録のうち前記Webアプリケーションから受信したWebページを抽出するとともに、抽出したWebページにいずれかのWebアプリケーションフレームワークの判別用文字列が含まれているか否かを判定し、前記Webページに含まれている判別用文字列に対応するWebアプリケーションフレームワークが前記Webアプリケーションにおいて使用されていると判定することを特徴とする請求項1に記載の管理装置。 The discrimination information acquisition unit
From the discrimination information storage area, obtain discrimination information indicating a unique discrimination character string for each Web application framework,
The framework determination unit
Extracting a web page received from the web application from the communication record by the communication recording unit, determining whether the extracted web page includes a character string for determination of any web application framework; The management apparatus according to claim 1, wherein the management apparatus determines that a Web application framework corresponding to a determination character string included in the Web page is used in the Web application.
前記判別情報記憶領域から、判別用文字列と当該判別用文字列が配置されているWebページ内の文字列配置位置が示される判別情報を取得し、
前記フレームワーク判定部は、
抽出したWebページ内の文字列配置位置に判別用文字列が含まれているか否かを判定することを特徴とする請求項2に記載の管理装置。 The discrimination information acquisition unit
From the determination information storage area, the determination information indicating the character string arrangement position in the Web page where the character string for determination and the character string for determination is arranged,
The framework determination unit
The management apparatus according to claim 2, wherein it is determined whether or not a character string for determination is included in a character string arrangement position in the extracted Web page.
前記フレームワーク判定部により判別されたWebアプリケーションフレームワークに対応させて、前記Webアプリケーションにおけるセキュリティホールの診断を行うWebアプリケーション診断部を有することを特徴とする請求項1〜3のいずれかに記載の管理装置。 The management device further includes:
4. The Web application diagnosis unit according to claim 1, further comprising a Web application diagnosis unit that diagnoses a security hole in the Web application in correspondence with the Web application framework determined by the framework determination unit. Management device.
前記フレームワーク判定部により判別されたWebアプリケーションフレームワークに対応させて前記Webアプリケーションに対する擬似攻撃を行って、前記Webアプリケーションにおけるセキュリティホールの診断を行うことを特徴とする請求項4に記載の管理装置。 The web application diagnosis unit
5. The management apparatus according to claim 4, wherein a security hole in the web application is diagnosed by performing a pseudo attack on the web application in correspondence with the web application framework determined by the framework determination unit. .
前記フレームワーク判定部により判別されたWebアプリケーションフレームワークに固有のセキュリティホールの診断のための擬似攻撃は省略して前記Webアプリケーションに対する擬似攻撃を行うことを特徴とする請求項5に記載の管理装置。 The web application diagnosis unit
6. The management apparatus according to claim 5, wherein a pseudo attack for diagnosing a security hole unique to the web application framework determined by the framework determination unit is omitted and the pseudo attack is performed on the web application. .
前記コンピュータが、前記Webアプリケーションとの通信を記録する通信記録ステップと、
前記コンピュータが、Webアプリケーションフレームワークの判別に用いられる判別情報を記憶している判別情報記憶領域から判別情報を取得する判別情報取得ステップと、
前記コンピュータが、前記通信記録ステップによる通信記録と前記判別情報取得ステップにより取得された判別情報とを用いて、前記WebアプリケーションにおいていずれのWebアプリケーションフレームワークが使用されているかを判別するフレームワーク判定ステップとを有することを特徴とする管理方法。 A method of managing the web application, performed by a computer that communicates with a web application using a web application framework,
A communication recording step in which the computer records communication with the Web application;
A determination information acquisition step in which the computer acquires determination information from a determination information storage area storing determination information used for determination of a Web application framework;
Framework determination step in which the computer determines which Web application framework is used in the Web application using the communication record in the communication recording step and the determination information acquired in the determination information acquisition step. The management method characterized by having.
前記Webアプリケーションとの通信を記録する通信記録処理と、
Webアプリケーションフレームワークの判別に用いられる判別情報を記憶している判別情報記憶領域から判別情報を取得する判別情報取得処理と、
前記通信記録処理による通信記録と前記判別情報取得処理により取得された判別情報とを用いて、前記WebアプリケーションにおいていずれのWebアプリケーションフレームワークが使用されているかを判別するフレームワーク判定処理とを実行させることを特徴とするプログラム。 On a computer that communicates with a web application that uses the web application framework,
A communication recording process for recording communication with the Web application;
Discrimination information acquisition processing for acquiring discrimination information from a discrimination information storage area storing discrimination information used for discrimination of a web application framework;
A framework determination process for determining which Web application framework is used in the Web application is executed using the communication record by the communication recording process and the determination information acquired by the determination information acquisition process. A program characterized by that.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009176099A JP5274401B2 (en) | 2009-07-29 | 2009-07-29 | Management apparatus, management method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009176099A JP5274401B2 (en) | 2009-07-29 | 2009-07-29 | Management apparatus, management method, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011028665A JP2011028665A (en) | 2011-02-10 |
JP5274401B2 true JP5274401B2 (en) | 2013-08-28 |
Family
ID=43637303
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009176099A Expired - Fee Related JP5274401B2 (en) | 2009-07-29 | 2009-07-29 | Management apparatus, management method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5274401B2 (en) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06324853A (en) * | 1993-05-14 | 1994-11-25 | Mitsubishi Electric Corp | Source program editor setting object oriented programming language as target |
JP2006092475A (en) * | 2004-09-27 | 2006-04-06 | Hitachi Software Eng Co Ltd | Source code inspection system |
US20080120420A1 (en) * | 2006-11-17 | 2008-05-22 | Caleb Sima | Characterization of web application inputs |
US8656495B2 (en) * | 2006-11-17 | 2014-02-18 | Hewlett-Packard Development Company, L.P. | Web application assessment based on intelligent generation of attack strings |
JP2009015570A (en) * | 2007-07-04 | 2009-01-22 | Nippon Telegr & Teleph Corp <Ntt> | System and method for distributing vulnerability information |
-
2009
- 2009-07-29 JP JP2009176099A patent/JP5274401B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2011028665A (en) | 2011-02-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11822919B2 (en) | Auto-generation of API documentation via implementation-neutral analysis of API traffic | |
US10613971B1 (en) | Autonomous testing of web-based applications | |
CN102272757B (en) | Method for server-side logging of client browser state through markup language | |
CN107918733A (en) | The system and method for detecting the malicious element of webpage | |
CN109376291B (en) | Website fingerprint information scanning method and device based on web crawler | |
US20150324478A1 (en) | Detection method and scanning engine of web pages | |
JP4023803B2 (en) | Web application development support apparatus, data processing method, and program | |
KR20090108000A (en) | Method and apparatus for detecting computer fraud | |
CN104508672B (en) | Program execution device and program analysis device | |
JP2008117093A (en) | User operation recording/reproducing method and device | |
CN107092826B (en) | Webpage content safety real-time monitoring method | |
CN103562927A (en) | Automated security testing | |
KR102231726B1 (en) | Apparatus and method for analyzing vulnerabilities | |
CN108632219A (en) | A kind of website vulnerability detection method, detection service device and system | |
CN103870752B (en) | A kind of method, apparatus and equipment for being used to detect Flash XSS loopholes | |
WO2022063133A1 (en) | Sensitive information detection method and apparatus, and device and computer-readable storage medium | |
JP2009140155A (en) | Test program for application program | |
JP4878193B2 (en) | Determination program, determination method, and determination apparatus | |
CN110276183B (en) | Reverse Turing verification method and device, storage medium and electronic equipment | |
JP5274401B2 (en) | Management apparatus, management method, and program | |
CN116361793A (en) | Code detection method, device, electronic equipment and storage medium | |
CN107797917B (en) | Performance test script generation method and device | |
JP5253298B2 (en) | Web application diagnosis apparatus, Web application diagnosis program, and Web application diagnosis method | |
JP6142878B2 (en) | Information system performance evaluation apparatus, method and program | |
CN109218284B (en) | XSS vulnerability detection method and device, computer equipment and readable medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120201 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130327 |
|
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: 20130416 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130514 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |