JP5618861B2 - Information processing apparatus, information processing method, and program - Google Patents

Information processing apparatus, information processing method, and program Download PDF

Info

Publication number
JP5618861B2
JP5618861B2 JP2011036664A JP2011036664A JP5618861B2 JP 5618861 B2 JP5618861 B2 JP 5618861B2 JP 2011036664 A JP2011036664 A JP 2011036664A JP 2011036664 A JP2011036664 A JP 2011036664A JP 5618861 B2 JP5618861 B2 JP 5618861B2
Authority
JP
Japan
Prior art keywords
web page
attack
pseudo
parameter
information
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
JP2011036664A
Other languages
Japanese (ja)
Other versions
JP2012174082A (en
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 Building Techno-Service Co Ltd
Original Assignee
Mitsubishi Electric Corp
Mitsubishi Electric Building Techno-Service Co Ltd
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 Building Techno-Service Co Ltd filed Critical Mitsubishi Electric Corp
Priority to JP2011036664A priority Critical patent/JP5618861B2/en
Publication of JP2012174082A publication Critical patent/JP2012174082A/en
Application granted granted Critical
Publication of JP5618861B2 publication Critical patent/JP5618861B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)

Description

本発明は、Webページの改ざん攻撃に対する脆弱性を検査する技術に関する。   The present invention relates to a technique for inspecting vulnerability to a Web page tampering attack.

通常、Webアプリケーションの開発では、一般的なアプリケーションの開発と同様、開発元において開発仕様に基づいて試験を行い、開発仕様どおりにWebアプリケーションが動作することを確認してからリリースされる。
昨今、Webアプリケーションの脆弱性を狙った攻撃による被害が増加する中、Webアプリケーションに対しては、開発仕様に基づいた機能の動作試験だけではなく、Webアプリケーションのセキュリティに関する試験も実施する必要性がでてきた。
一般には、この場合、Webアプリケーションの機能試験を完了した後、Webアプリケーションをインターネットへ公開する前に、セキュリティサービスベンダが提供するWebアプリケーション診断サービスを利用して、開発したWebアプリケーションにセキュリティの脆弱性がないことを確認する。
これは、Webアプリケーションのセキュリティ試験では、Webアプリケーションの脆弱性に関する専門的な知識が必要とされるため、Webアプリケーションの開発元では、十分な試験が行えないためである。
しかしながら、Webアプリケーションのセキュリティ試験は、Webアプリケーションが完成してからの実施となるため、仮に、Webアプリケーションに脆弱性が見つかった場合には、脆弱性を修正するための工期が別途かかってしまうことが課題であった。
Usually, in the development of a Web application, as in the case of development of a general application, a developer performs a test based on a development specification and confirms that the Web application operates according to the development specification before being released.
In recent years, the damage caused by attacks targeting web application vulnerabilities has increased, and for web applications, it is necessary to conduct not only functional operation tests based on development specifications but also web application security tests. It came out.
Generally, in this case, after completing the function test of the Web application and before publishing the Web application to the Internet, the Web application diagnostic service provided by the security service vendor is used to develop security vulnerabilities in the developed Web application. Make sure there is no.
This is because the web application security test requires specialized knowledge regarding the vulnerability of the web application, and the web application developer cannot perform a sufficient test.
However, since the security test of the Web application is performed after the Web application is completed, if a vulnerability is found in the Web application, a work period for correcting the vulnerability is separately required. Was an issue.

上記の課題を解決するため、Webアプリケーション開発時の試験においてWebアプリケーションの脆弱性に関する専門的な知識がない開発元においても、セキュリティ試験を実施できるようにすることを目的とした従来技術として、システム仕様や設計書に記載されているブラウザ画面上の入力項目に関する項目属性(データ長・文字データ種類・データ範囲など)を予め仕様情報として設定しておくことによって、正常または異常系の評価データの生成、及び、試験の実施を自動で行えるようにしている技術がある(例えば、特許文献1)。
また、同様にシステム仕様や設計書の情報を予め設定しておき、設定した仕様書情報を基に、Webアプリケーションの応答メッセージに含まれる値が仕様書の定義と一致しているかどうかを自動で検査する方法も提案されている(例えば、特許文献2、特許文献3)。
In order to solve the above problems, a system as a conventional technique for enabling a security test to be carried out even by a developer who does not have specialized knowledge about web application vulnerabilities in a web application development test. By setting the item attributes (data length, character data type, data range, etc.) related to the input items on the browser screen described in the specifications and design documents as specification information in advance, normal or abnormal evaluation data There is a technique that enables generation and testing to be performed automatically (for example, Patent Document 1).
Similarly, information on system specifications and design documents is set in advance, and based on the set specification information, whether or not the value included in the response message of the Web application matches the specification definition is automatically determined. An inspection method has also been proposed (for example, Patent Document 2 and Patent Document 3).

特開2006−113993号公報JP 2006-113993 A 特開2008−112300号公報JP 2008-112300 A 特開2008−242738号公報JP 2008-242738 A

従来のWebアプリケーションのセキュリティ試験では、Webアプリケーションから出力されるWebページに含まれるパラメタ値の改ざん攻撃に成功したとしても、そのパラメタ値が持つ意味やセキュリティ上の重要性が不明であったため、それが、後の処理においてセキュリティの不具合を引き起こすかどうかまでは検出できないことが課題としてある。
つまり、セキュリティ上の不具合を引き起こす重要なパラメタについて、改ざん攻撃に対する脆弱性検査を確実に実施すること必要であるが、従来技術では、重要なパラメタであっても改ざん攻撃に対する脆弱性検査から漏れてしまうという課題がある。
In the security test of the conventional Web application, even if the parameter value included in the Web page output from the Web application is successfully altered, the meaning and security importance of the parameter value are unknown. However, it is a problem that it cannot be detected until it causes a security defect in later processing.
In other words, it is necessary to conduct a vulnerability check against tampering attacks with respect to important parameters that cause security problems. However, in the conventional technology, even important parameters are leaked from the vulnerability check against tampering attacks. There is a problem of end.

この発明は上記のような課題を解決することを主な目的としており、従来のWebアプリケーションのセキュリティ試験では実施できなかった、重要な意味を持つパラメタについての改ざん攻撃に対する脆弱性の検査を確実にできるようにし、Webアプリケーションのセキュリティ試験の精度向上を実現することを主な目的とする。   The main object of the present invention is to solve the above-mentioned problems, and it is possible to surely check for vulnerabilities against tampering attacks on important parameters that could not be implemented by conventional Web application security tests. The main purpose is to improve the accuracy of Web application security testing.

本発明に係る情報処理装置は、
改ざん攻撃に対する脆弱性検査として実施される疑似改ざん攻撃の攻撃対象となるWebページを選別するための選別基準が定義されている選別基準情報を記憶する選別基準情報記憶部と、
疑似改ざん攻撃の対象となるパラメタが疑似攻撃対象パラメタとして定義されているパラメタ情報を記憶するパラメタ情報記憶部と、
前記選別基準情報の選別基準に基づき、疑似改ざん攻撃の攻撃対象の候補である複数の候補Webページの中から疑似改ざん攻撃の攻撃対象となる疑似攻撃対象Webページを選別するWebページ選別部と、
前記Webページ選別部により選別された疑似攻撃対象Webページに含まれているパラメタの中から前記パラメタ情報に定義されている疑似攻撃対象パラメタに該当するパラメタを抽出し、抽出したパラメタのパラメタ値を所定の改ざん値にして疑似改ざん攻撃を実施する疑似改ざん攻撃実施部とを有することを特徴とする。
An information processing apparatus according to the present invention includes:
A selection criterion information storage unit for storing selection criterion information in which selection criteria for selecting a Web page that is a target of a pseudo-tampering attack that is implemented as a vulnerability check against a tampering attack is defined;
A parameter information storage unit that stores parameter information in which a parameter that is a target of a pseudo-tampering attack is defined as a pseudo-attack target parameter;
A web page sorting unit that sorts out a pseudo-attack target web page that is a target of a pseudo-tampering attack from a plurality of candidate web pages that are candidates for a target of a pseudo-tampering attack based on the sorting criteria of the screening standard information;
The parameter corresponding to the pseudo attack target parameter defined in the parameter information is extracted from the parameters included in the pseudo attack target web page selected by the web page selection unit, and the parameter value of the extracted parameter is And a pseudo-tampering attack execution unit that performs a pseudo-tampering attack with a predetermined tampering value.

本発明では、疑似改ざん攻撃の攻撃対象となるWebページの選別基準が定義されている選別基準情報に基づき疑似攻撃対象Webページを選別し、また、疑似改ざん攻撃の対象となるパラメタが定義されているパラメタ情報に基づき、疑似攻撃対象Webページに含まれているパラメタの中から疑似改ざん攻撃の対象となるパラメタを抽出し、抽出したパラメタのパラメタ値を改ざん値にして疑似改ざん攻撃を実施する。
このため、セキュリティ上の不具合を引き起こす重要なWebページを選別基準情報において定義し、また、セキュリティ上の不具合を引き起こす重要なパラメタをパラメタ情報において定義することにより、重要なWebページの重要なパラメタについて改ざん攻撃に対する脆弱性の検査を実施することができる。
In the present invention, a pseudo attack target Web page is selected based on selection criteria information in which a selection criterion of a Web page to be attacked by a pseudo falsification attack is defined, and a parameter to be a target of a pseudo tamper attack is defined. Based on the parameter information, a parameter that is the target of the pseudo-tampering attack is extracted from the parameters included in the Web page targeted for the pseudo-attack, and the pseudo-tampering attack is performed using the parameter value of the extracted parameter as the tampering value.
For this reason, important Web pages that cause security problems are defined in the selection criteria information, and important parameters that cause security problems are defined in the parameter information. It is possible to inspect vulnerabilities against tampering attacks.

実施の形態1に係るWebアプリケーション自動試験装置の構成例を示す図。FIG. 3 is a diagram illustrating a configuration example of a Web application automatic test apparatus according to the first embodiment. 実施の形態1に係る試験対象ページ情報DBに記憶されているデータの例を示す図。FIG. 4 is a diagram illustrating an example of data stored in a test target page information DB according to the first embodiment. 実施の形態1に係るWebページ画面遷移情報DBに記憶されているデータの例を示す図。The figure which shows the example of the data memorize | stored in Web page screen transition information DB which concerns on Embodiment 1. FIG. 実施の形態1に係るWebページ特徴情報DBに記憶されているデータの例を示す図。FIG. 4 is a diagram showing an example of data stored in a Web page feature information DB according to the first embodiment. 実施の形態1に係るWebページ構成要素DBに記憶されているデータの例を示す図。FIG. 4 shows an example of data stored in a Web page component DB according to the first embodiment. 実施の形態1に係るWebページ種類特定部の動作例を示すフローチャート図。FIG. 4 is a flowchart showing an operation example of a Web page type identification unit according to the first embodiment. 実施の形態1に係るWebページ種類特定部の動作例を示すフローチャート図。FIG. 4 is a flowchart showing an operation example of a Web page type identification unit according to the first embodiment. 実施の形態1に係る取引フローパターンDBに記憶されているデータの例を示す図。The figure which shows the example of the data memorize | stored in transaction flow pattern DB which concerns on Embodiment 1. FIG. 実施の形態1に係るWebページ重要度判定部の動作例を示すフローチャート図。FIG. 6 is a flowchart showing an operation example of a Web page importance degree determination unit according to the first embodiment. 実施の形態1に係るパラメタ属性DBに記憶されているデータの例を示す図。The figure which shows the example of the data memorize | stored in parameter attribute DB which concerns on Embodiment 1. FIG. 実施の形態1に係る重要パラメタ特定部の動作例を示すフローチャート図。FIG. 4 is a flowchart showing an operation example of an important parameter specifying unit according to the first embodiment. 実施の形態1に係る重要パラメタ特定部の動作例を示すフローチャート図。FIG. 4 is a flowchart showing an operation example of an important parameter specifying unit according to the first embodiment. 実施の形態1に係るWebページ重要パラメタDBに記憶されているデータの例を示す図。The figure which shows the example of the data memorize | stored in Web page important parameter DB which concerns on Embodiment 1. FIG. 実施の形態2に係るWebアプリケーション自動試験装置の構成例を示す図。FIG. 4 is a diagram illustrating a configuration example of a Web application automatic test apparatus according to a second embodiment. 実施の形態2に係る仕様書DBに記憶されているデータの例を示す図。The figure which shows the example of the data memorize | stored in the specification DB which concerns on Embodiment 2. FIG. 実施の形態2に係る評価項目決定部の動作例を示すフローチャート図。FIG. 9 is a flowchart showing an operation example of an evaluation item determination unit according to the second embodiment. 実施の形態2に係る評価項目決定部の動作例を示すフローチャート図。FIG. 9 is a flowchart showing an operation example of an evaluation item determination unit according to the second embodiment. 実施の形態1に係る脆弱性検査データDBに記憶されているデータの例を示す図。The figure which shows the example of the data memorize | stored in the vulnerability test data DB which concerns on Embodiment 1. FIG. 実施の形態1及び2に係るWebアプリケーション自動試験装置のハードウェア構成例を示す図。FIG. 3 is a diagram showing a hardware configuration example of a Web application automatic test apparatus according to Embodiments 1 and 2.

実施の形態1.
本実施の形態では、従来のWebアプリケーションのセキュリティ試験では分からなかった、重要な意味を持つパラメタの改ざん攻撃成功を検出できるようにすることで、Webアプリケーションのセキュリティ試験の精度向上を実現する構成を説明する。
Embodiment 1 FIG.
In the present embodiment, a configuration that realizes an improvement in accuracy of a security test for a Web application by enabling detection of a successful tampering attack on a parameter having an important meaning, which has not been understood in a security test for a conventional Web application. explain.

図1は、実施の形態1におけるWebアプリケーション自動試験装置の構成概要を示す図である。   FIG. 1 is a diagram showing an outline of the configuration of the Web application automatic test apparatus according to the first embodiment.

図1において、101は、Webアプリケーション自動試験装置を表しており、102は、試験対象となるWebアプリケーション131が動作するWebサーバ装置(以下、単にWebサーバともいう)を表している。
Webアプリケーション自動試験装置101は、情報処理装置の例である。
In FIG. 1, reference numeral 101 denotes a Web application automatic test apparatus, and reference numeral 102 denotes a Web server apparatus (hereinafter also simply referred to as a Web server) on which a Web application 131 to be tested operates.
The Web application automatic test apparatus 101 is an example of an information processing apparatus.

また、図1において、試験対象ページ情報DB111は、試験対象となるWebアプリケーションが提供するWebページの情報を格納したデータベースである。
評価データ生成部112は、試験対象ページ情報DB111、Webアプリケーションのセキュリティ脆弱性を検査するための脆弱性検査データを格納した脆弱性検査データDB113、Webアプリケーションのセキュリティ試験で行う一般的な評価項目を定義したセキュリティ評価項目一覧118からWebアプリケーションを試験するための評価データを生成する。
セキュリティ評価項目一覧118で定義される一般的な評価項目の例としては、SQLインジェクション、OSコマンドインジェクション/ステルスコマンド、パス名やパラメタの未チェック/ディレクトリトラバーサル、セッション管理の不備/強制ブラウジング/セキュアモードでないクッキー、クロスサイトスクリプティング、クロスサイトリクエストフォージェリ、HTTPヘッダインジェクション、メールの第三者中継、アクセス制御や認可制御の欠落、隠しフィールドの操作、パラメタの改ざん、バックドアとデバッグオプション、Cookieの濫用、不要な情報の開示、などがある。
In FIG. 1, a test target page information DB 111 is a database that stores information on Web pages provided by a Web application to be tested.
The evaluation data generation unit 112 includes test target page information DB 111, vulnerability inspection data DB 113 storing vulnerability inspection data for inspecting security vulnerabilities of Web applications, and general evaluation items to be performed in Web application security tests. Evaluation data for testing the Web application is generated from the defined security evaluation item list 118.
Examples of general evaluation items defined in the security evaluation item list 118 include SQL injection, OS command injection / stealth command, path name and parameter unchecked / directory traversal, inadequate session management / forced browsing / secure mode Non-cookies, cross-site scripting, cross-site request forgery, HTTP header injection, third-party mail relay, missing access control and authorization control, hidden field manipulation, parameter tampering, backdoor and debugging options, cookie abuse And disclosure of unnecessary information.

生成された評価データは、評価データ送信部114からWebサーバ102で稼動しているWebアプリケーション131に送信され、その応答メッセージを、応答受信部115で受信する。
応答メッセージは、評価結果判定部116に送られ、そこで脆弱性の有無の判定を行い、判定結果を評価結果表示部117に表示する。
The generated evaluation data is transmitted from the evaluation data transmitting unit 114 to the Web application 131 running on the Web server 102, and the response message is received by the response receiving unit 115.
The response message is sent to the evaluation result determination unit 116 where the presence / absence of vulnerability is determined and the determination result is displayed on the evaluation result display unit 117.

また、Webページ種類特定部122は、Webページ画面遷移情報DB120、Webページ特徴情報DB121、Webページ構成要素DB123の情報を基に、試験対象ページのWebページのカテゴリー(商品ページ、購入フォーム、確認ページ、決済完了ページ、ユーザ登録ページ、ユーザ情報表示・編集ページ、パスワード変更ページ、情報一覧ページなど)を特定する。   Further, the web page type identification unit 122 uses the web page screen transition information DB 120, the web page feature information DB 121, and the web page component DB 123 to determine the web page category (product page, purchase form, confirmation) of the test target page. Page, payment completion page, user registration page, user information display / edit page, password change page, information list page, etc.).

Webページ重要度判定部125は、Webページ種類特定部122で特定された試験対象ページのWebページのカテゴリー、Webページ画面遷移情報DB120、Webアプリケーションで提供される各取引フローのパターンを格納した取引フローパターンDB124を基に、試験対象となる一連の取引フローにおける重要ページを特定する。   The Web page importance level determination unit 125 stores a transaction that stores the Web page category of the test target page specified by the Web page type specification unit 122, the Web page screen transition information DB 120, and the pattern of each transaction flow provided by the Web application. Based on the flow pattern DB 124, an important page in a series of transaction flows to be tested is specified.

重要パラメタ特定部127は、Webページ間で渡されるパラメタのうち、改ざん攻撃が成功することによって、後の処理においてセキュリティの不具合を発生させる可能性のある重要なパラメタ(商品購入フローにおける、金額、ユーザ情報、クレジットカード番号など)を、取引フローごと重要となるパラメタ文字列を格納したパラメタ属性DB126の情報を参照して決定する。   The important parameter specifying unit 127 is an important parameter (amount of money in the product purchase flow, which may cause a security defect in the subsequent processing due to a successful falsification attack among parameters passed between Web pages. User information, credit card number, etc.) are determined with reference to information in the parameter attribute DB 126 storing parameter strings that are important for each transaction flow.

Webページ重要度判定部125及び重要パラメタ特定部127によって特定された取引フロー(商品購入フロー、ユーザ登録フロー、ユーザパスワードの変更フローなど)における重要ページ、及び、重要ページに含まれる重要パラメタの情報は、Webページ重要パラメタDB128に格納され、後の、評価結果判定部116における重要パラメタ改ざん攻撃の成否の判定で用いられる。   Information on important pages and important parameters included in important pages in the transaction flow (product purchase flow, user registration flow, user password change flow, etc.) specified by the Web page importance level determination unit 125 and the important parameter specification unit 127 Is stored in the Web page important parameter DB 128 and used in the subsequent determination of the success or failure of the important parameter falsification attack in the evaluation result determination unit 116.

ここで、Webアプリケーション自動試験装置101の動作を詳細に説明する前に、Webアプリケーション自動試験装置101の動作の概要を説明する。   Here, before describing the operation of the Web application automatic test apparatus 101 in detail, an outline of the operation of the Web application automatic test apparatus 101 will be described.

本実施の形態に係るWebアプリケーション自動試験装置101は、改ざん攻撃に対する脆弱性検査として実施される疑似改ざん攻撃の攻撃対象となる重要なWebページ(以下、疑似攻撃対象Webページともいう)を選別する。
つまり、本実施の形態に係るWebアプリケーション自動試験装置101は、疑似改ざん攻撃の攻撃対象の候補である複数の試験対象ページ(以下、候補Webページともいう)の中から疑似攻撃対象Webページを選別し、選別した疑似攻撃対象Webページ内のパラメタのうち疑似改ざん攻撃の対象となるパラメタ(以下、疑似攻撃対象パラメタともいう)を抽出し、抽出したパラメタのパラメタ値を所定の改ざん値にして疑似改ざん攻撃を実施する。
疑似改ざん攻撃とは、Webアプリケーションの試験の一試験項目として実施される改ざん攻撃を模擬したテストであり、パラメタ値を改ざん値にしたWebページ(評価データ)をWebサーバ102に送信することである。
疑似改ざん攻撃により疑似攻撃対象Webページの改ざん攻撃に対する脆弱性を評価することができる。
疑似攻撃対象Webページは、例えば、改ざん攻撃があった場合の被害が他のWebページに比べて大きいと推測されるWebページである。
また、疑似改ざん攻撃の対象となるパラメタも、例えば、改ざん攻撃があった場合の被害が他のパラメタに比べて大きいと推測されるパラメタである。
The Web application automatic test apparatus 101 according to the present embodiment selects important Web pages (hereinafter also referred to as pseudo attack target Web pages) that are targets of a pseudo-tampering attack that is performed as a vulnerability check against tampering attacks. .
That is, the Web application automatic test apparatus 101 according to the present embodiment selects a pseudo attack target Web page from a plurality of test target pages (hereinafter also referred to as candidate Web pages) that are candidates for a pseudo tamper attack attack target. Then, a parameter that is a target of a pseudo-falsification attack (hereinafter, also referred to as a pseudo-attack target parameter) is extracted from the parameters in the selected Web page of the pseudo-attack attack, and the parameter value of the extracted parameter is changed to a predetermined falsification value to simulate Implement a tampering attack.
The pseudo-tampering attack is a test that simulates a tampering attack that is performed as a test item of a Web application test, and is a transmission of a Web page (evaluation data) with a parameter value set to a tampering value to the Web server 102. .
The vulnerability to the falsification attack of the pseudo attack target Web page can be evaluated by the pseudo falsification attack.
The pseudo attack target web page is, for example, a web page that is estimated to have a greater damage in the case of a falsification attack than other web pages.
In addition, the parameter that is the target of the pseudo-tampering attack is also a parameter that is estimated to have a greater damage compared to the other parameters when there is a tampering attack, for example.

Webページ特徴情報DB121、Webページ構成要素DB123、取引フローパターンDB124には、疑似攻撃対象Webページを選別するための選別基準が定義されている。
より具体的には、Webページ特徴情報DB121には、Webページのカテゴリー(商品ページ、購入フォーム、確認ページ等)が複数示され、カテゴリーごとに、各カテゴリーに属するWebページのページ構成における特徴及び他のWebページとのリンクにおける特徴が示されるデータが格納されている。
また、Webページ構成要素DB123には、Webページのリンク先URL(Uniform Resource Locator)に出現する可能性のある文字列が示されるデータが格納されている。
更に、取引フローパターンDB124には、Webアプリケーションにより提供される複数の取引フロー(商品購入フロー、ユーザ登録フロー、ユーザパスワードの変更フローなど)が示され、取引フローごとに、各取引フローにおいて利用されるWebページのカテゴリーが示され、取引フローごとに、重要ページのカテゴリー、つまり、疑似改ざん攻撃の攻撃対象となるカテゴリーが示されるデータが格納されている。
詳細は、後述するが、Webページ特徴情報DB121には、例えば図4に示すデータが記憶されており、Webページ構成要素DB123には、例えば図5に示すデータが記憶されており、取引フローパターンDB124には、例えば図8に示すデータが記憶されている。
なお、Webページ特徴情報DB121、Webページ構成要素DB123、取引フローパターンDB124に記憶されているデータは、疑似攻撃対象Webページを選別するための選別基準を定義しており、選別基準情報の例に相当する。
また、Webページ特徴情報DB121、Webページ構成要素DB123、取引フローパターンDB124は、選別基準情報記憶部の例に相当する。
In the Web page characteristic information DB 121, the Web page component DB 123, and the transaction flow pattern DB 124, selection criteria for selecting the pseudo attack target Web page are defined.
More specifically, the Web page feature information DB 121 shows a plurality of Web page categories (product page, purchase form, confirmation page, etc.), and for each category, the characteristics of the page configuration of the Web page belonging to each category and Data indicating characteristics of links to other Web pages is stored.
The Web page component DB 123 stores data indicating a character string that may appear in the link destination URL (Uniform Resource Locator) of the Web page.
Further, the transaction flow pattern DB 124 shows a plurality of transaction flows (product purchase flow, user registration flow, user password change flow, etc.) provided by the Web application, and is used in each transaction flow for each transaction flow. Web page categories are shown, and for each transaction flow, data indicating the categories of important pages, that is, the categories to be attacked by the pseudo-tampering attack, is stored.
Although details will be described later, for example, the data shown in FIG. 4 is stored in the Web page feature information DB 121, and the data shown in FIG. 5 is stored in the Web page component DB 123, for example. For example, data shown in FIG. 8 is stored in the DB 124.
Note that the data stored in the Web page feature information DB 121, the Web page component DB 123, and the transaction flow pattern DB 124 define a selection criterion for selecting a pseudo attack target Web page. Equivalent to.
Further, the Web page feature information DB 121, the Web page component DB 123, and the transaction flow pattern DB 124 correspond to an example of a selection criterion information storage unit.

Webページ種類特定部122は、Webページ特徴情報DB121に示されているカテゴリーごとのページ構成における特徴及び他のWebページとのリンクにおける特徴に基づいて、各候補Webページを複数のカテゴリーのうちのいずれかのカテゴリーに分類する。
つまり、WebページAは商品ページ、WebページBは購入フォーム、WebページCは確認ページというように各候補Webページを該当するカテゴリーに分類する。
また、Webページ重要度判定部125は、取引フローパターンDB124の取引フローパターンとWebページ種類特定部122による候補Webページのカテゴリーの分類結果に基づき、複数の候補Webページが複数の取引フローのうちのいずれの取引フローに対応しているのかを判定する。
また、Webページ重要度判定部125は、取引フローパターンDB124の取引フローパターンに基づき、判定した取引フローにおける重要ページ(すなわち、疑似攻撃対象Webページ)を選別する。
前述したように、取引フローパターンには、重要ページのカテゴリー、つまり、疑似改ざん攻撃の攻撃対象となるカテゴリーが示されている。
このため、Webページ重要度判定部125は、取引フローパターンを参照し、判定した取引フローについて疑似改ざん攻撃の攻撃対象とされているカテゴリーに分類されたWebページを疑似攻撃対象Webページとして選別する。
なお、Webページ種類特定部122とWebページ重要度判定部125は、Webページ選別部の例である。
また、Webページ種類特定部122とWebページ重要度判定部125による重要ページの選別処理は、Webページ選別ステップに相当する。
また、Webページ種類特定部122によるWebページ特徴情報DB120の情報及びWebページ構成要素DB123の情報の読み出し処理、Webページ重要度判定部125による取引フローパターンDB124の情報の読み出し処理は、選別基準情報読み出しステップに相当する。
The web page type identification unit 122 assigns each candidate web page from a plurality of categories based on the features in the page configuration for each category shown in the web page feature information DB 121 and the features in the link with other web pages. Classify into one of the categories.
That is, each candidate Web page is classified into a corresponding category such that Web page A is a product page, Web page B is a purchase form, and Web page C is a confirmation page.
In addition, the web page importance level determination unit 125 includes a plurality of candidate web pages out of a plurality of transaction flows based on the transaction flow pattern in the transaction flow pattern DB 124 and the classification result of the candidate web page category by the web page type identification unit 122. Which transaction flow is supported is determined.
Further, the web page importance level determination unit 125 selects an important page (that is, a pseudo attack target web page) in the determined transaction flow based on the transaction flow pattern of the transaction flow pattern DB 124.
As described above, the transaction flow pattern indicates the category of the important page, that is, the category to be attacked by the pseudo-tampering attack.
For this reason, the Web page importance level determination unit 125 refers to the transaction flow pattern, and selects, as the Web page targeted for the pseudo attack, the Web page classified into the category targeted for the pseudo-tampering attack for the determined transaction flow. .
The web page type identification unit 122 and the web page importance determination unit 125 are examples of a web page selection unit.
Also, the important page sorting process by the web page type specifying unit 122 and the web page importance level judging unit 125 corresponds to a web page sorting step.
In addition, the process of reading the information of the Web page feature information DB 120 and the information of the Web page component DB 123 by the Web page type identification unit 122 and the process of reading the information of the transaction flow pattern DB 124 by the Web page importance level determination unit 125 This corresponds to the reading step.

パラメタ属性DB126には、重要パラメタ、つまり、疑似改ざん攻撃の対象となるパラメタが定義されているデータが格納されている。
パラメタ属性DB126に格納されているデータはパラメタ情報の例であり、パラメタ属性DB126はパラメタ情報記憶部の例に相当する。
The parameter attribute DB 126 stores important parameters, that is, data defining parameters to be subjected to a pseudo-tampering attack.
Data stored in the parameter attribute DB 126 is an example of parameter information, and the parameter attribute DB 126 corresponds to an example of a parameter information storage unit.

重要パラメタ特定部127は、Webページ重要度判定部125により選別された疑似攻撃対象Webページに含まれているパラメタの中からパラメタ属性DB126で定義されている重要パラメタに該当するパラメタを抽出する。
重要パラメタに該当するとして抽出されたパラメタは疑似攻撃対象パラメタの例に相当する。
また、評価データ生成部112と評価データ送信部114は、疑似改ざん攻撃を実施する。
具体的には、評価データ生成部112が、重要パラメタ特定部127により抽出されたパラメタのパラメタ値を所定の改ざん値にしたWebページ(評価データ)を生成し、評価データ送信部114が、評価データをWebサーバ102に送信する。
重要パラメタ特定部127、評価データ生成部112及び評価データ送信部114は、疑似改ざん攻撃実施部の例に相当する。
なお、重要パラメタ特定部127、評価データ生成部112及び評価データ送信部114による重要パラメタの抽出処理、疑似改ざん攻撃の実施処理は、疑似改ざん攻撃実施ステップに相当する。
また、重要パラメタ特定部127によるパラメタ属性DB126からの情報の読み出し処理は、パラメタ情報読み出しステップに相当する。
The important parameter specifying unit 127 extracts a parameter corresponding to the important parameter defined in the parameter attribute DB 126 from the parameters included in the pseudo attack target web page selected by the web page importance level judging unit 125.
The parameters extracted as corresponding to the important parameters correspond to examples of pseudo attack target parameters.
In addition, the evaluation data generation unit 112 and the evaluation data transmission unit 114 perform a pseudo-tampering attack.
Specifically, the evaluation data generation unit 112 generates a Web page (evaluation data) in which the parameter value of the parameter extracted by the important parameter specifying unit 127 is a predetermined falsification value, and the evaluation data transmission unit 114 Data is transmitted to the Web server 102.
The important parameter identification unit 127, the evaluation data generation unit 112, and the evaluation data transmission unit 114 correspond to an example of a pseudo-tamper attack execution unit.
Note that the important parameter extraction processing and the pseudo tampering attack execution processing performed by the important parameter specifying unit 127, the evaluation data generating unit 112, and the evaluation data transmitting unit 114 correspond to a pseudo tampering attack execution step.
Also, the process of reading information from the parameter attribute DB 126 by the important parameter specifying unit 127 corresponds to a parameter information reading step.

次に、図面を参照して、本実施の形態に係るWebアプリケーション自動試験装置101の動作を詳細に説明する。   Next, the operation of the Web application automatic test apparatus 101 according to the present embodiment will be described in detail with reference to the drawings.

まず、準備として、Webアプリケーションによって提供されるWebページの一覧の取得と、それらの画面遷移情報の生成を行う。
また、Webアプリケーション131によって提供されるWebページ一覧は、試験実施者が手動でWebアプリケーションにアクセスして収集してもよいし、自動でWebページ一覧を収集する技術(Webクローリング技術)を用いて収集してもよい。
Webページの画面遷移情報に関しては、収集したWebページのHTML(Hyper Text Markup Language)で記載されているページのリンク関係を抽出することで、各ページを頂点とし、リンク関係をエッジとした有向グラフで生成する。
抽出したWebページの画面遷移情報は、Webページ画面遷移情報DB120に格納しておく。
First, as a preparation, acquisition of a list of Web pages provided by the Web application and generation of screen transition information thereof are performed.
In addition, the web page list provided by the web application 131 may be collected by the tester manually accessing the web application, or using a technology for automatically collecting the web page list (web crawling technology). May be collected.
As for the screen transition information of Web pages, by extracting the link relations of pages described in HTML (Hyper Text Markup Language) of the collected Web pages, it is a directed graph with each page as a vertex and the link relation as an edge. Generate.
The screen transition information of the extracted web page is stored in the web page screen transition information DB 120.

図2に、Webアプリケーション131によって提供されるWebページの一覧を格納しておく、試験対象ページ情報DB111の構造(200)を示す。
図2では、試験対象ページのURL、Webアプリケーション131への送信メッセージと、送信メッセージに対するWebアプリケーション131からの応答メッセージ(Webページ)を関連付けて保存しておく。
FIG. 2 shows the structure (200) of the test target page information DB 111 that stores a list of Web pages provided by the Web application 131.
In FIG. 2, the URL of the test target page, the transmission message to the Web application 131, and the response message (Web page) from the Web application 131 to the transmission message are stored in association with each other.

図3に、Webページ画面遷移情報DB120の構造(300)を示す。
図3では、試験対象ページURLに対する、リンク元URL、及び、リンク先URLが格納されている。
複数のリンク元URLからリンクされている試験対象ページのURLに関しては、リンク元URLが異なる複数の行が格納される。
複数のリンク先URLを持つ試験対象ページURLに関しても同様である。
Webページ画面遷移情報DB120の情報を基に、試験対象ページのURLのリンク関係を有向グラフで抽出できる。
FIG. 3 shows the structure (300) of the Web page screen transition information DB 120.
In FIG. 3, the link source URL and the link destination URL for the test target page URL are stored.
With respect to the URL of the test target page linked from a plurality of link source URLs, a plurality of rows having different link source URLs are stored.
The same applies to the test target page URL having a plurality of link destination URLs.
Based on the information in the Web page screen transition information DB 120, the link relation of the URL of the test target page can be extracted as a directed graph.

次に、評価結果判定部116において重要パラメタ(疑似攻撃対象パラメタ)の改ざん攻撃の成否を判定するために用いるWebページ重要パラメタDB128に格納されている、重要ページ(疑似攻撃対象Webページ)と重要ページに含まれる重要パラメタを決定する方法について説明する。   Next, the important page (pseudo attack target Web page) and the important page stored in the Web page important parameter DB 128 used for determining whether the falsification attack of the important parameter (pseudo attack target parameter) is successful in the evaluation result determination unit 116. A method for determining important parameters included in a page will be described.

Webページ種類特定部122では、Webページ特徴情報DB121に格納されているWebページの種類を特定するための特徴情報、及び、Webページ構成要素DB123に格納されているWebページの構成要素を特定するための構成要素特定文字列を基に、読み込んだWebページ(候補Webページ)の種類(カテゴリー)を特定する。
Webページの種類としては、例えば、商品取引であれば、商品情報表示ページ、購入のための購入フォーム入力ページ、購入フォーム入力で入力した値の確認ページ、購入決済完了ページなどがある。
それぞれのページには種類を示す特徴がある。
The web page type identification unit 122 identifies the feature information for identifying the type of the web page stored in the web page feature information DB 121 and the component of the web page stored in the web page component element DB 123. The type (category) of the read Web page (candidate Web page) is specified based on the component specifying character string.
Examples of the types of Web pages include a product information display page, a purchase form input page for purchase, a confirmation page for a value entered in the purchase form input, a purchase settlement completion page, and the like for a product transaction.
Each page has a feature that indicates its type.

図4に、Webページ特徴情報DB121の構造(400)を示す。
なお、図4では説明を簡単にするため、各Webページ種類別の特徴を文章で記載しているが、実際には、コンピュータで処理しやすいよう、条件式や数値によって記述するものとする。
Webページの種類を示す特徴としては、例えば、購入決済完了ページであれば、トップページからのリンク経路が長い傾向にある。
また、購入決済完了ページには、例えば、印刷ボタンが表示されている、結果を送信するためのメールアドレス入力がある、購入後アンケート入力画面へのリンクがあるといった構成要素の存在が考えられる。
これらの各構成要素にスコアをつけておき、ページを構成する要素のスコアを加算していき、得られたスコアが予め定められた閾値を超えた場合に、購入決済完了ページであると特定する。
なお、判定で用いる閾値は、ページ種類ごとに設定してもよいし、ページ種類間で同一の閾値としてもよい。
FIG. 4 shows the structure (400) of the Web page feature information DB 121.
In FIG. 4, for the sake of simplicity, the features for each Web page type are described in text, but in actuality, they are described by conditional expressions and numerical values so that they can be easily processed by a computer.
As a feature indicating the type of Web page, for example, in the case of a purchase settlement completion page, the link path from the top page tends to be long.
In addition, the purchase settlement completion page may have components such as, for example, a print button displayed, an email address input for transmitting the result, and a link to a post-purchase questionnaire input screen.
A score is assigned to each of these components, and the scores of the components constituting the page are added, and when the obtained score exceeds a predetermined threshold, the purchase settlement completion page is specified. .
Note that the threshold value used in the determination may be set for each page type, or may be the same threshold value between page types.

また、図5に、Webページ構成要素DB123の構造(500)を示す。
図5に示すように、構成要素ごとに構成要素特定文字列が定義されており、試験対象ページのリンク先URL(構成要素)に、構成要素特定文字列と一致する文字列があった場合に、その構成要素名を特定できる。
URLに関しては、その主たるコンテンツに関係した文字列がURLに表れる可能性が高い。
例えば、印刷ページへのURLであれば、印刷に最適なページ整形を行うコンテンツが主たるコンテンツとなるため、印刷に関連した文字列(例えば、print、outputなど)の文字列がURLに含まれている可能性が高い。
このような、URLに現れる主たるコンテンツに関連した文字列を手がかりに、試験対象ページの構成要素を特定する。
なお、図5に示すように、構成要素特定文字列は、正規表現を用いて定義してもよい。
正規表現を用いることにより、類似した複数の構成要素特定文字列をまとめて定義できるため、Webページ構成要素DB123に格納しておくデータ量を削減できる。
FIG. 5 shows the structure (500) of the Web page component DB 123.
As shown in FIG. 5, when a component specific character string is defined for each component, and there is a character string that matches the component specific character string in the link destination URL (component) of the test target page. The component name can be specified.
With respect to the URL, there is a high possibility that a character string related to the main content appears in the URL.
For example, in the case of a URL to a print page, the content that performs page shaping optimal for printing is the main content. Therefore, a character string of a character string related to printing (for example, print, output, etc.) is included in the URL. There is a high possibility.
The constituent elements of the test target page are specified using the character string related to the main content appearing in the URL as a clue.
In addition, as shown in FIG. 5, you may define a component specific character string using a regular expression.
By using regular expressions, a plurality of similar component element specifying character strings can be defined together, so that the amount of data stored in the Web page component element DB 123 can be reduced.

次に、Webページ種類特定部122の動作について詳細を説明する。
図6及び図7に、Webページ種類特定部122の処理のフローチャートを示す。
Next, details of the operation of the Web page type identification unit 122 will be described.
6 and 7 show flowcharts of processing of the Web page type specifying unit 122. FIG.

Webページ種類特定部122では、最初に、試験対象ページ情報DB111に格納されている、Webアプリケーション131からの応答メッセージ(Webページ)を1つ読み込む(S601)。
次に、Webページ種類特定部122は、試験対象ページ(候補Webページ)のURLを基に、Webページ画面遷移情報DB120を参照して、TOPページからのリンクの長さを計算する(S602)。
このとき複雑な画面遷移の構造をもつWebアプリケーションでは冗長な経路やループが発生する場合がある。
これらに関しては、最短の経路を探索する既存の技術が応用できる。
例えば、ダイクストラ法などが有名である。
次に、Webページ種類特定部122は、得られたTOPページからのリンクの長さを基に、Webページ特徴情報DB121の情報を読み出し、リンクの長さが条件と一致するWebページ種類を検索する(S603)。
リンクの長さの特徴に当てはまるWebページ種類が検索で抽出された場合は、特徴の当てはまるWebページ種類のスコアを加算する(S604、S605)。
次に、Webページ種類特定部122は、Webページ画面遷移情報DB120から試験対象ページのリンク先URLを抽出し(S606)、リンク先を1つ選択し(S607)、抽出したリンク先URLの文字列を基にWebページ構成要素DB123を検索し、該当する情報を読み出し、試験対象ページの構成要素を特定する(S608)。
次に、Webページ種類特定部122は、Webページ画面遷移情報DB120から抽出した全てのリンク先URLについて構成要素を特定する(S609)。
The web page type identification unit 122 first reads one response message (web page) from the web application 131 stored in the test target page information DB 111 (S601).
Next, based on the URL of the test target page (candidate Web page), the Web page type specifying unit 122 refers to the Web page screen transition information DB 120 and calculates the length of the link from the TOP page (S602). .
At this time, a redundant path or loop may occur in a Web application having a complicated screen transition structure.
With regard to these, existing techniques for searching for the shortest route can be applied.
For example, the Dijkstra method is famous.
Next, the web page type specifying unit 122 reads information in the web page feature information DB 121 based on the obtained link length from the TOP page, and searches for a web page type whose link length matches the condition. (S603).
If a Web page type that applies to the link length feature is extracted by the search, the score of the Web page type that applies the feature is added (S604, S605).
Next, the Web page type specifying unit 122 extracts the link destination URL of the test target page from the Web page screen transition information DB 120 (S606), selects one link destination (S607), and extracts the characters of the extracted link destination URL. The Web page component DB 123 is searched based on the column, the corresponding information is read, and the component of the test target page is specified (S608).
Next, the Web page type specifying unit 122 specifies components for all link destination URLs extracted from the Web page screen transition information DB 120 (S609).

次に、Webページ種類特定部122は、特定した構成要素から1つを選択し(S610)、Webページ特徴情報DB121を検索(S611)した結果として、構成要素の特徴が当てはまるWebページ種類が存在した場合には、特徴の当てはまるWebページ種類にスコアを加算する(S612、S613)。
S609で特定した試験対象ページの構成要素全てに関してWebページ特徴情報DB121を検索して、Webページ種類のスコアについて加算が完了(S614)した後に、仮に、スコアが加算されたWebページ種類が1つも存在しなかった場合は、Webページ種類特定部122は、S601で読み込んだ試験対象ページに関するWebページ種類は不明と判定する(S615、S616)。
スコアが加算されたWebページ種類が1つでも存在した場合、Webページ種類特定部122は、そのスコアが閾値を超えているかどうかを判断する(S617)。
スコアが閾値を超えたWebページ種類がただ1つであった場合、試験対象ページは、そのWebページ種類であると判定する(S618、S622)。
閾値を超えたWebページ種類が複数あった場合、及び、閾値を超えたWebページ種類が無かった場合は、スコアの大きさからWebページ種類を判定する。
仮に、スコアの最高値を持つWebページ種類が複数同じスコアであった場合には、試験対象ページは、複数のWebページ種類の特徴を持つものと判定する(S619、S620、S622)。
また、スコアの最高値を持つWebページ種類がただ1つであった場合、その試験対象ページのWebページ種類として判定する(S619、S621、S622)。
最終的に、試験対象ページ情報DB111に含まれる全ての試験対象ページに対して、Webページ種類が特定できた場合に処理を終了する(S623)。
Next, the Web page type specifying unit 122 selects one of the specified components (S610), and as a result of searching the Web page feature information DB 121 (S611), there is a Web page type to which the feature of the component applies. If so, the score is added to the Web page type to which the feature applies (S612, S613).
After searching the Web page feature information DB 121 for all the components of the test target page specified in S609 and completing the addition of the Web page type score (S614), there is one Web page type to which the score is added. If it does not exist, the Web page type specifying unit 122 determines that the Web page type related to the test target page read in S601 is unknown (S615, S616).
When there is even one web page type to which the score is added, the web page type specifying unit 122 determines whether the score exceeds a threshold value (S617).
When there is only one web page type whose score exceeds the threshold, it is determined that the test target page is the web page type (S618, S622).
When there are a plurality of Web page types that exceed the threshold value and there are no Web page types that exceed the threshold value, the Web page type is determined from the size of the score.
If a plurality of Web page types having the highest score have the same score, it is determined that the test target page has characteristics of a plurality of Web page types (S619, S620, S622).
If there is only one web page type having the highest score, it is determined as the web page type of the test target page (S619, S621, S622).
Finally, the process ends when the web page type can be specified for all the test target pages included in the test target page information DB 111 (S623).

例えば、購入決済完了ページが特定された場合、購入決済完了ページへリンクしているページを確認ページ、また、確認ページへリンクしているページは、購入フォーム入力ページ、購入フォーム入力ページへリンクしているページは、商品情報表示ページ、というようにリンクをさかのぼって、各Webページの種類を特定していくことも可能である。
さらに、各ページの種類は、ページのタイトルにも特徴が表れたり、確認ページではCSRF(Cross Site Request Forgeries)対策のための乱数を値にもつパラメタが含まれていたりといった特徴もあるため、これらの情報も併用することによって、Webページの種類を特定する精度が向上する。
For example, if a purchase settlement completion page is specified, a page linked to the purchase settlement completion page is linked to the confirmation page, and a page linked to the confirmation page is linked to the purchase form entry page or purchase form entry page. It is possible to specify the type of each Web page by going back to the page, such as a product information display page.
In addition, each page type has characteristics such as the title of the page, and the confirmation page includes parameters with random numbers for CSRF (Cross Site Request Forgeries) countermeasures. By using this information together, the accuracy of specifying the type of Web page is improved.

次に、Webページ重要度判定部125の動作について説明する。
Webページ重要度判定部125は、Webアプリケーションで提供される各取引フローのパターンを格納した取引フローパターンDB124を基に、試験対象となる一連の取引フローにおける重要ページを特定する。
Next, the operation of the Web page importance level determination unit 125 will be described.
The web page importance level determination unit 125 identifies an important page in a series of transaction flows to be tested based on the transaction flow pattern DB 124 that stores patterns of each transaction flow provided by the web application.

図8に、取引フローパターンDB124の構造(700)を示す。
図8に示すように、Webページのリンク元、及び、リンク先の情報を下に、取引フローパターンごとにページのリンクパターン、取引フローパターンにおいて重要なページに対する重要フラグが定義されている。
FIG. 8 shows the structure (700) of the transaction flow pattern DB 124.
As shown in FIG. 8, an important flag for an important page in the page link pattern and the transaction flow pattern is defined for each transaction flow pattern, with information on the link source and link destination of the Web page.

取引フローパターンDB124では、取引フローにおいて重要なページには、重要フラグが設定されている(図8の確認ページ)。
例えば、商品購入フローにおいては、最終的に購入決済完了ページへ遷移する確認ページが重要である。
なぜなら、確認ページから購入決済完了ページへ送信されるパラメタは、そのまま購入決済の処理に利用される可能性があるため、確認ページから購入決済完了ページへ送信されるパラメタが改ざんされた場合、適切な処理を行っていなければ、改ざんされた値で決済処理が行われてしまう危険性がある。
したがって、Webページ重要度判定部125は、この各取引フローにおける重要フラグの情報を基に、確認ページを意味する試験対象ページを重要ページ(疑似攻撃対象Webページ)として特定する。
In the transaction flow pattern DB 124, an important flag is set for an important page in the transaction flow (confirmation page in FIG. 8).
For example, in a product purchase flow, a confirmation page that finally transitions to a purchase settlement completion page is important.
Because the parameter sent from the confirmation page to the purchase settlement completion page may be used for the purchase settlement process as it is, if the parameter sent from the confirmation page to the purchase settlement completion page is tampered with, Otherwise, there is a risk that the payment process will be performed with the altered value.
Therefore, the web page importance level determination unit 125 identifies the test target page that means the confirmation page as the important page (pseudo attack target web page) based on the information of the important flag in each transaction flow.

図9に、Webページ重要度判定部125における重要ページの特定処理を表すフローチャートを示す。
図9を用いて、Webページ重要度判定部125の処理を説明する。
FIG. 9 is a flowchart showing important page specifying processing in the Web page importance level determination unit 125.
The processing of the Web page importance level determination unit 125 will be described with reference to FIG.

Webページ重要度判定部125では、まず、Webページ種類特定部122の出力である、試験対象ページのWebページ種類特定結果から、試験対象ページのURLと、そのWebページ種類を選択する(S801)。
次に、Webページ重要度判定部125は、試験対象ページのURLを基に、Webページ画面遷移情報DB120を検索して、試験対象ページのリンク元URLとリンク先URLを取得する(S802)。
次に、Webページ重要度判定部125は、リンク元URLとリンク先URLのWebページ種類を、Webページ種類特定部122の出力から特定し、それらと、試験対象ページのWebページ種類を基に、取引フローパターンDB124の情報を検索し、取引フローパターンと重要フラグを取得する(読み出す)(S803)。
取引パターンが特定された場合(S804)、Webページ重要度判定部125は、試験対象ページ、取引フローパターン、重要フラグを取引フロー特定結果として記憶する(S805)。
全ての試験対象ページについて、取引フローパターンの特定の処理を完了した場合、Webページ重要度判定部125は、取引フローパターンの特定結果から、重要フラグが1である試験対象ページを、取引フロー上重要ページとして抽出し、取引フローパターンと重要ページ(複数可)を、重要ページ特定結果として出力して処理を終了する(S806、S807、S808)。
First, the Web page importance level determination unit 125 selects the URL of the test target page and the Web page type from the Web page type specification result of the test target page, which is the output of the Web page type specifying unit 122 (S801). .
Next, the web page importance level determination unit 125 searches the web page screen transition information DB 120 based on the URL of the test target page, and acquires the link source URL and link destination URL of the test target page (S802).
Next, the web page importance determination unit 125 identifies the web page type of the link source URL and the link destination URL from the output of the web page type identification unit 122, and based on these and the web page type of the test target page. Then, the information of the transaction flow pattern DB 124 is searched to acquire (read out) the transaction flow pattern and the important flag (S803).
When the transaction pattern is specified (S804), the Web page importance level determination unit 125 stores the test target page, the transaction flow pattern, and the importance flag as the transaction flow specification result (S805).
When the specific process of the transaction flow pattern is completed for all the test target pages, the web page importance level determination unit 125 selects the test target page whose importance flag is 1 on the transaction flow from the specific result of the transaction flow pattern. Extract as important pages, output the transaction flow pattern and important page (s) as important page identification results, and end the process (S806, S807, S808).

Webページ重要度判定部125では、例えば、商品情報表示ページ、購入フォーム入力ページ、確認ページ、購入決済完了ページが順にリンクされている取引フローパターンは、商品購入フローであると特定する。   In the Web page importance level determination unit 125, for example, a transaction flow pattern in which a product information display page, a purchase form input page, a confirmation page, and a purchase settlement completion page are sequentially linked is specified as a product purchase flow.

次に、重要パラメタ特定部127の動作について説明する。
重要パラメタ特定部127では、Webページ重要度判定部125の出力である、重要ページ特定結果に含まれる、取引フローパターンと重要ページからパラメタ属性DB126を参照して、重要パラメタ(疑似攻撃対象パラメタ)を特定する。
Next, the operation of the important parameter specifying unit 127 will be described.
The important parameter specifying unit 127 refers to the parameter attribute DB 126 from the transaction flow pattern and the important page included in the important page specifying result, which is the output of the web page importance determining unit 125, and sets the important parameter (pseudo attack target parameter). Is identified.

重要パラメタ(疑似攻撃対象パラメタ)とは、その後の処理においてセキュリティの不具合を引き起こす可能性のある値が設定されたHTML(HyperText Markup Language)のformタグ内の変数を指す。
したがって重要パラメタが存在する試験対象ページには、少なくとも1つのformタグが存在する。
formタグ内の変数は、次の画面へ遷移する際に、Webアプリケーションに送られ処理される。
The important parameter (pseudo attack target parameter) refers to a variable in a form tag of HTML (HyperText Markup Language) in which a value that may cause a security defect in subsequent processing is set.
Therefore, at least one form tag exists in the test target page where the important parameter exists.
The variable in the form tag is sent to the Web application and processed when the screen transitions to the next screen.

図10にパラメタ属性DB126の構成(900)を示す。
図10に示すように、取引フローごとに、重要なパラメタ文字列が定義されている。
なお、図10に示すように、重要パラメタ文字列は、正規表現を用いて定義してもよい。
正規表現を用いることにより、類似した複数のパラメタ名をまとめて定義できるため、パラメタ属性DB126に格納しておくデータ量を削減できる。
FIG. 10 shows the configuration (900) of the parameter attribute DB 126.
As shown in FIG. 10, an important parameter character string is defined for each transaction flow.
As shown in FIG. 10, the important parameter character string may be defined using a regular expression.
By using regular expressions, a plurality of similar parameter names can be defined together, so that the amount of data stored in the parameter attribute DB 126 can be reduced.

重要パラメタ特定部127では、まず、Webページ重要度判定部125によって特定された取引フローを基にパラメタ属性DB126を検索し、重要パラメタ文字列を取得する。   The important parameter specifying unit 127 first searches the parameter attribute DB 126 based on the transaction flow specified by the Web page importance determining unit 125, and acquires an important parameter character string.

図11及び図12に、重要パラメタ特定部127における重要パラメタの特定処理を表すフローチャートを示す。
図11及び図12を用いて、重要パラメタ特定部127の処理を説明する。
FIG. 11 and FIG. 12 are flowcharts showing the important parameter specifying process in the important parameter specifying unit 127.
The process of the important parameter specifying unit 127 will be described with reference to FIGS. 11 and 12.

重要パラメタ特定部127では、まず、Webページ重要度判定部125によって特定された重要ページに複数のformタグがあるかどうか判断する(S1001)。
重要ページに複数のformタグが含まれている場合には、その中から1つのformタグを選択する(S1002)。
次に、重要パラメタ特定部127は、選択したformタグ内のaction(リンク先ページ)の値を基に、Webページ画面遷移情報DB120を参照し、リンク先ページへリンクしている全てのページを抽出する(S1003)。つまり、リンク先ページをリンク先としている他のWebページの存否を判断する。
抽出した結果、リンク先ページへリンクしているページが複数あった場合(当該リンク先ページをリンク先としている他のWebページが存在する場合)、当該リンク先ページは広告ページや検索ページといった、取引フローとは関係のないリンクであると判断し、次のformタグを選択する(S1004)。
重要パラメタ特定部127は、S1002からS1004の処理を繰り返し、重要ページのみからリンクされているページへのformタグ(つまり、リンク先のWebページにリンクしている他のWebページが存在しないformタグ)を特定する。
なお、重要ページには、重要パラメタを含むformタグからのみ遷移するページが必ず1つ存在するため、S1002からS1004のループは、必ず終了する。
重要ページにformタグが1つしかなかった場合、及び、S1002からS1004の処理によって、重要ページにこのページからのみリンクされたページへのリンクを持つformが特定された場合、S1005の処理に移る。
S1005では、重要パラメタ特定部127は、Webページ重要度判定部125で特定された、取引フローパターンを基に、パラメタ属性DB126を検索し、重要パラメタ文字列を抽出する(読み出す)。
The important parameter specifying unit 127 first determines whether there are a plurality of form tags on the important page specified by the Web page importance level determining unit 125 (S1001).
If the important page includes a plurality of form tags, one form tag is selected from them (S1002).
Next, the important parameter specifying unit 127 refers to the Web page screen transition information DB 120 based on the value of the action (link destination page) in the selected form tag, and displays all pages linked to the link destination page. Extract (S1003). That is, it is determined whether or not there is another Web page that uses the link destination page as the link destination.
If there are multiple pages linked to the linked page as a result of the extraction (if there are other web pages that link to the linked page), the linked page can be an advertisement page or a search page, The link is determined to be unrelated to the transaction flow, and the next form tag is selected (S1004).
The important parameter specifying unit 127 repeats the processing from S1002 to S1004, and forms tag to the page linked from only the important page (that is, form tag in which there is no other web page linked to the linked web page) ).
Note that since there is always one page that changes only from the form tag including the important parameter, the loop from S1002 to S1004 always ends.
If there is only one form tag in the important page, and if a form having a link to a page linked only from this page is identified in the important page by the processing from S1002 to S1004, the process proceeds to S1005. .
In S1005, the important parameter specifying unit 127 searches the parameter attribute DB 126 based on the transaction flow pattern specified by the Web page importance level determining unit 125, and extracts (reads out) an important parameter character string.

次に、重要パラメタ特定部127は、重要ページのform内に含まれているパラメタを1つ選択(S1006)し、選択したformタグ内のパラメタ名と重要パラメタ文字列を比較する(S1007)。
比較の結果、重要パラメタ文字列と一致するパラメタ名がformタグ内に存在した場合、そのパラメタを重要パラメタとして記憶する(S1008)。
重要パラメタ特定部127は、formタグ内に存在する全てのパラメタ名について比較を行った後に(S1009)、比較の結果得られた重要パラメタ(複数可)を出力する(S1010)。
出力された、重要ページのURL、重要パラメタが含まれているformタグのactionの値、重要パラメタはWebページ重要パラメタDB128に格納される(S1011)。
Next, the important parameter specifying unit 127 selects one parameter included in the form of the important page (S1006), and compares the parameter name in the selected form tag with the important parameter character string (S1007).
As a result of the comparison, if a parameter name that matches the important parameter character string exists in the form tag, the parameter is stored as an important parameter (S1008).
The important parameter specifying unit 127 compares all the parameter names existing in the form tag (S1009), and then outputs the important parameter (s) obtained as a result of the comparison (S1010).
The output URL of the important page, the action value of the form tag including the important parameter, and the important parameter are stored in the Web page important parameter DB 128 (S1011).

図13に、Webページ重要パラメタDB128の構造(1100)を示す。
Webページ重要パラメタDB128では、重要ページのURL、重要パラメタを含むformタグに設定されたactionの値(リンク先ページ)、重要パラメタのパラメタ名を重要パラメタのパラメタ名別に関連付けて保存しておく。
これらの情報は、後の、評価結果判定部116において参照され、重要パラメタに関する改ざん攻撃の成否の判定で用いられる。
FIG. 13 shows the structure (1100) of the Web page important parameter DB 128.
In the Web page important parameter DB 128, the URL of the important page, the action value (link destination page) set in the form tag including the important parameter, and the parameter name of the important parameter are stored in association with each parameter name of the important parameter.
These pieces of information are referred to later in the evaluation result determination unit 116, and are used in the determination of the success or failure of the falsification attack related to the important parameter.

試験対象ページに含まれる全ての重要ページについて、Webページ重要パラメタDB128への重要パラメタの特定が完了した後に、Webアプリケーション自動試験装置101は、Webサーバ102上で動作するWebアプリケーション131の試験を開始する。
試験は、試験対象ページ情報DB111、及び、脆弱性検査データDB113の情報を基に、評価データ生成部112において、試験対象ページに対して、セキュリティ評価項目一覧118に記載された全ての試験を実施するために必要な評価データを生成するところから始まる。
For all important pages included in the test target page, after the important parameters are specified in the Web page important parameter DB 128, the Web application automatic test apparatus 101 starts testing the Web application 131 operating on the Web server 102. To do.
In the test, all the tests described in the security evaluation item list 118 are performed on the test target page in the evaluation data generation unit 112 based on the information of the test target page information DB 111 and the vulnerability inspection data DB 113. It starts from the generation of the evaluation data necessary to do this.

図18に、脆弱性検査データDB113の構造(1500)を示す。
図18に示すように、脆弱性検査データDB113では、試験項目と、その試験項目を検査するために用いられる脆弱性検査データが対応づけられて格納されている。
評価データ生成部112は、脆弱性検査データDB113で定義されている試験項目、脆弱性検査データに基づいて、重要ページの重要パラメタの値を改ざん値に変更して評価ページを生成する。
例えば、図13の重要パラメタ名に含まれるproductIDに対して、評価データ生成部112は、現実には存在しない商品名を設定したWebページを評価データとして生成する。
評価データの作成が完了した後、評価データ送信部114によって、作成された評価データが試験対象ページ別に、試験対象ページの提供元であるWebアプリケーション131に対して送信される。
送信した評価データに対するWebアプリケーションからの応答メッセージは、応答受信部115で受信する。
FIG. 18 shows the structure (1500) of the vulnerability check data DB 113.
As shown in FIG. 18, in the vulnerability inspection data DB 113, test items and vulnerability inspection data used for inspecting the test items are stored in association with each other.
The evaluation data generation unit 112 generates an evaluation page by changing the important parameter value of the important page to a falsification value based on the test items and vulnerability check data defined in the vulnerability check data DB 113.
For example, for the product ID included in the important parameter name of FIG. 13, the evaluation data generation unit 112 generates a Web page in which a product name that does not actually exist is set as evaluation data.
After the creation of the evaluation data is completed, the evaluation data transmission unit 114 transmits the created evaluation data to the Web application 131 that is the test target page provider for each test target page.
The response reception unit 115 receives a response message from the Web application for the transmitted evaluation data.

評価結果判定部116では、応答受信部115で受信した応答メッセージと、試験対象ページ情報DB111に格納されているWebアプリケーション131へ正常にアクセスした際のWebアプリケーション131からの応答メッセージとを比較し、送信した評価データによって、Webアプリケーション131の応答メッセージに変化が見られたかどうか判定する。   The evaluation result determination unit 116 compares the response message received by the response reception unit 115 with the response message from the Web application 131 when the Web application 131 stored in the test target page information DB 111 is normally accessed, It is determined whether or not a change is found in the response message of the Web application 131 based on the transmitted evaluation data.

なお、上述した、評価データ生成部112での評価データの作成処理、作成した評価データをWebアプリケーション131に送信する評価データ送信部114の処理、Webアプリケーション131からの応答を受信する応答受信部115の処理、応答受信部115で受信したWebアプリケーション131からの応答メッセージを判定する評価結果判定部116における、重要パラメタ改ざん攻撃成功の判定処理以外の処理は、既存技術として様々な手法が公開されており、本実施の形態においても既存技術と同様の実装が行われているものとする。   The above-described evaluation data creation process in the evaluation data generation unit 112, the process of the evaluation data transmission unit 114 that transmits the created evaluation data to the Web application 131, and the response reception unit 115 that receives a response from the Web application 131. In the process other than the critical parameter falsification attack success determination process in the evaluation result determination unit 116 for determining the response message from the Web application 131 received by the response reception unit 115, various methods are disclosed as existing technologies. In this embodiment, it is assumed that the same implementation as the existing technology is performed.

評価結果判定部116において、パラメタが改ざんされた評価データを送信した場合のWebアプリケーション131の応答メッセージが、Webページ画面遷移情報DB120に格納されているWebアプリケーション131の遷移情報と比較した結果、エラーページなど正常ページとは異なるページへ遷移しなかった場合、疑似改ざん攻撃が成功した可能性がある。
この場合、評価結果判定部116では、Webページ重要パラメタDB128を参照し、疑似改ざん攻撃に成功したパラメタが重要パラメタかどうか判定する。
つまり、重要パラメタを改ざんした評価データに対するWebアプリケーション131からの応答がエラーページ等のWebアプリケーション131において異常を検知したことが示される応答ではない場合には、重要パラメタを改ざんした疑似改ざん攻撃が成功したと判定する。
疑似改ざん攻撃に成功したパラメタが、重要パラメタであった場合には、セキュリティ上重要なパラメタの改ざん攻撃に成功したものとして検出する。
それ以外は、改ざんされてもセキュリティ上のリスクが低いパラメタか、改ざんされたパラメタをWebアプリケーション131が検出し、エラー処理したことを意味するため、改ざん攻撃の成功とは見なさない。
最終的に、評価結果判定部116で判定された結果は、評価結果表示部117に表示され、ユーザへ通知される。
The evaluation result determination unit 116 compares the response message of the Web application 131 when the evaluation data with the altered parameter is transmitted with the transition information of the Web application 131 stored in the Web page screen transition information DB 120, resulting in an error. If the page does not transition to a page different from the normal page, such as a page, the pseudo-tampering attack may have succeeded.
In this case, the evaluation result determination unit 116 refers to the Web page important parameter DB 128 and determines whether the parameter that succeeded in the pseudo-tampering attack is an important parameter.
In other words, if the response from the Web application 131 to the evaluation data in which the important parameter has been altered is not a response indicating that an abnormality has been detected in the Web application 131 such as an error page, the pseudo-falsification attack in which the important parameter has been altered is successful. It is determined that
If the parameter that succeeded in the pseudo-tampering attack is an important parameter, it is detected as a successful alteration attack of the parameter important for security.
Other than that, it means that the Web application 131 has detected a parameter with a low security risk even if it has been tampered with or has been tampered with, and is not regarded as a successful tampering attack.
Finally, the result determined by the evaluation result determination unit 116 is displayed on the evaluation result display unit 117 and notified to the user.

以上のように、本実施の形態では、試験対象ページの種類をWebページの特徴情報を基に特定して、特定したWebページの前後関係から、取引フローパターン情報を基に、Web取引フローの種別を特定し、特定した取引フローに対してセキュリティ上重要なWebページを特定するとともに、パラメタ値に改ざん攻撃が発生した場合にその後の処理においてセキュリティの不具合を引き起こす可能性のある重要パラメタを予め特定しておく。
このため、これまでは、難しかった重要なパラメタの改ざん攻撃の成否を検出することができる。
また、重要パラメタの特定では、重要ページに複数のformタグがあった場合であっても正確に重要なパラメタを特定可能である。
これにより、Webアプリケーションの試験において、セキュリティ試験精度が向上する。
As described above, in this embodiment, the type of the test target page is specified based on the feature information of the Web page, and based on the transaction flow pattern information from the context of the specified Web page, Specify the type, specify a Web page that is important for security for the specified transaction flow, and specify important parameters that may cause security problems in subsequent processing if a tampering attack occurs in the parameter value. Keep specific.
For this reason, it is possible to detect the success or failure of a falsification attack of an important parameter that has been difficult until now.
In addition, when specifying an important parameter, it is possible to accurately specify an important parameter even when there are a plurality of form tags on the important page.
This improves the security test accuracy in the Web application test.

以上、本実施の形態では、
試験対象ページの種類を、Webページの特徴情報を基に特定する手段と、特定したWebページの前後関係から、取引フローパターン情報を基に、Web取引フローの種別を特定する手段と、特定した取引フローに対してセキュリティ上重要なWebページを特定する手段と、パラメタ値の改ざん攻撃が発生した場合にその後の処理においてセキュリティの不具合を引き起こす可能性のある重要なパラメタを特定する手段と、重要なパラメタの改ざん攻撃の成否を検査する手段とを備えた、Webアプリケーション自動試験装置を説明した。
As described above, in the present embodiment,
A means for specifying the type of the test target page based on the characteristic information of the Web page and a means for specifying the type of the Web transaction flow based on the transaction flow pattern information from the context of the specified Web page A means to identify Web pages that are important to security for the transaction flow, a means to identify important parameters that may cause security problems in subsequent processing when a parameter value tampering attack occurs, and important A Web application automatic test apparatus having a means for checking the success or failure of a parameter alteration attack has been described.

実施の形態2.
以上の実施の形態1では、試験対象であるWebアプリケーションが出力するWebページにおける重要ページを特定し、その重要ページに含まれる重要パラメタを特定しておくことにより、重要パラメタの改ざん攻撃の成否を検出するようにしたものであるが、次に、試験を効率的に実施する場合の形態を示す。
Embodiment 2. FIG.
In the first embodiment described above, the success or failure of the falsification attack of the important parameter is determined by specifying the important page in the Web page output by the Web application to be tested and specifying the important parameter included in the important page. Next, a mode in which the test is efficiently performed will be described.

図14は、実施の形態2におけるWebアプリケーション自動試験装置101の構成概要を示す図である。
図14において、仕様書DB1201は、ユーザが入力したWebアプリケーションの仕様書情報を格納しておくデータベースである。
評価項目決定部1202は、試験対象ページ情報DB、仕様書DB1201、Webアプリケーションのセキュリティ試験で行う一般的な評価項目を定義したセキュリティ評価項目一覧118の情報を基に、試験で実施する評価項目を自動で決定する。
より具体的には、評価項目決定部1202は、Webページに対する評価項目(試験項目)が複数示されているセキュリティ評価項目一覧118(試験項目情報の例)を入力し、仕様書情報を参照して、試験対象ページごとに、セキュリティ評価項目一覧118に示されている評価項目(試験項目)が対象としている対象属性が含まれているか否かを判断する。
そして、試験対象ページに対象属性が含まれていない場合に当該対象属性に対応する評価項目を当該試験対象ページに対する試験での実施項目(試験実施項目)から除外して、試験対象ページごとに実施項目を決定する。
なお、評価項目決定部1202は試験実施項目決定部の例である。
なお、符号111から131は、図1の構成と同様であるため説明を省略する。
FIG. 14 is a diagram illustrating a configuration outline of the Web application automatic test apparatus 101 according to the second embodiment.
In FIG. 14, a specification DB 1201 is a database that stores Web application specification information input by the user.
The evaluation item determination unit 1202 determines the evaluation items to be executed in the test based on the information in the test target page information DB, the specification DB 1201, and the security evaluation item list 118 that defines general evaluation items to be performed in the Web application security test. Determine automatically.
More specifically, the evaluation item determination unit 1202 inputs a security evaluation item list 118 (example of test item information) in which a plurality of evaluation items (test items) for the Web page are shown, and refers to the specification information. Thus, for each test target page, it is determined whether or not the target attribute targeted by the evaluation item (test item) shown in the security evaluation item list 118 is included.
Then, if the test target page does not include the target attribute, the evaluation item corresponding to the target attribute is excluded from the test item (test test item) for the test target page, and is performed for each test target page. Determine the item.
The evaluation item determination unit 1202 is an example of a test execution item determination unit.
Reference numerals 111 to 131 are the same as those in FIG.

次に動作について説明する。
まず、実施の形態1で説明したWebページ重要パラメタDB128への情報の出力(図12のS1011)までの一連の処理は既に完了しているものとする。
ユーザは、Webアプリケーションの試験を開始する際に、ユーザインタフェースから、Webアプリケーションの仕様情報を入力する。
入力されたWebアプリケーションの仕様情報は、仕様書DB1201に格納される。
Next, the operation will be described.
First, it is assumed that a series of processes up to output of information to the Web page important parameter DB 128 described in Embodiment 1 (S1011 in FIG. 12) has already been completed.
When starting a Web application test, the user inputs specification information of the Web application from the user interface.
The input specification information of the Web application is stored in the specification DB 1201.

図15に、仕様書DBの構造と、ユーザが入力するWebアプリケーションの仕様書情報の例を示す(1300)。
図15に示すように、仕様書情報には、試験対象ページごとに、試験対象ページに設定されている属性が示される。
なお、設定項目にDBと記述されている試験対象ページは、DBアクセスを行うという属性を有する。
また、設定項目にPARAMと記述され、タイプにhiddenと記述されている試験対象ページは、hiddenパラメタが存在するという属性を有する。
また、設定項目にSSLと記述されている試験対象ページは、SSL通信を行うという属性を有する。
また、設定項目にCOOKIEと記述されている試験対象ページは、Cookieを用いるという属性を有する。
また、設定項目にMAILと記述されている試験対象ページは、電子メール送信を行うという属性を有する。
FIG. 15 shows an example of the specification DB structure and Web application specification information input by the user (1300).
As shown in FIG. 15, the specification information indicates attributes set in the test target page for each test target page.
Note that the test target page described as DB in the setting item has an attribute of performing DB access.
Further, the test target page in which “PARAM” is described in the setting item and “hidden” is described in the type has an attribute that the hidden parameter exists.
Moreover, the test target page described as SSL in the setting item has an attribute of performing SSL communication.
Further, the test target page described as “COOKIE” in the setting item has an attribute of using Cookie.
Further, the test target page described as MAIL in the setting item has an attribute of performing e-mail transmission.

次に、評価項目決定部1202では、仕様書DB1201、及び、試験対象ページ情報DB111の情報を基に、セキュリティ評価項目一覧118から、ページごと試験する項目を自動で決定する。   Next, the evaluation item determination unit 1202 automatically determines items to be tested for each page from the security evaluation item list 118 based on the information in the specification DB 1201 and the test target page information DB 111.

図16及び図17に、評価項目決定部1202における動作のフローチャートを示す。
図16及び図17を用いて、評価項目決定部1202における動作を説明する。
16 and 17 show flowcharts of the operation in the evaluation item determination unit 1202.
The operation in the evaluation item determination unit 1202 will be described with reference to FIGS. 16 and 17.

評価項目決定部1202では、まず、試験対象ページ情報DB111を参照し、試験対象ページの一覧を取得する(S1401)。
次に、評価項目決定部1202は、取得した試験対象ページの一覧から、試験対象ページを1つ選択する(S1402)。
次に、評価項目決定部1202は、選択した試験対象ページに関して、仕様書DB1201から仕様情報を取得する(S1403)。
次に、評価項目決定部1202は、セキュリティ評価項目一覧118を読み込み、初期設定として、セキュリティ評価項目一覧118に記載の全ての項目を実施するよう設定する(S1404)。
次に、評価項目決定部1202は、仕様書DB1201から取得した仕様情報を基に、不要な評価項目を不実施に設定していく(S1405〜S1416)。
S1405では、評価項目決定部1202は、仕様情報を基に、試験対象ページがDBアクセスするかどうかを判定して、DBアクセスしない場合は、SQLインジェクションの項目を不実施に設定する(S1406)。
S1407では、評価項目決定部1202は、試験対象ページにhiddenパラメタがあるかどうか判定して、無い場合には、隠しフィールドの操作の項目を不実施に設定する(S1408)。
S1409では、評価項目決定部1202は、試験対象ページにパラメタがあるかどうか判定し、無い場合には、パラメタの改ざんの項目、及び、クロスサイトスクリプティングの項目を不実施に設定する(S1410)。
S1411では、評価項目決定部1202は、診断対象ページにてCookieを使用しているか判断し、使用していない場合には、Cookieの濫用の項目を不実施に設定する(S1412)。
S1413では、評価項目決定部1202は、試験対象ページがSSL通信を行うかどうか判断して、行わない場合には、セキュアモードでないCookieの項目を不実施に設定する(S1414)。
S1415では、評価項目決定部1202は、診断対象ページにて、メールを送信するかどうかを判定し、メールを送信しない場合には、メールの第三者中継の項目を不実施に設定する(S1416)。
S1417まで到達した際に、S1401で取得した試験対象ページの一覧に記載されている全ての試験対象ページについて試験項目を決定したかどうか判断し、残りがあれば、再びS1402からの処理を行う。
最終的に、S1417にて、全ての試験対象ページについて試験項目を決定したと判断された場合、試験対象ページごとの評価項目を出力して動作を終了する(S1418)。
The evaluation item determination unit 1202 first refers to the test target page information DB 111 and acquires a list of test target pages (S1401).
Next, the evaluation item determination unit 1202 selects one test target page from the list of acquired test target pages (S1402).
Next, the evaluation item determination unit 1202 acquires specification information from the specification DB 1201 regarding the selected test target page (S1403).
Next, the evaluation item determination unit 1202 reads the security evaluation item list 118, and sets to execute all items described in the security evaluation item list 118 as an initial setting (S1404).
Next, the evaluation item determination unit 1202 sets unnecessary evaluation items to be ineffective based on the specification information acquired from the specification document DB 1201 (S1405 to S1416).
In step S1405, the evaluation item determination unit 1202 determines whether or not the test target page performs DB access based on the specification information. If the DB access is not performed, the evaluation item determination unit 1202 sets the SQL injection item to non-execution (S1406).
In step S1407, the evaluation item determination unit 1202 determines whether the test target page includes a hidden parameter. If there is no hidden parameter, the evaluation item determination unit 1202 sets the operation item in the hidden field to be ineffective (S1408).
In step S1409, the evaluation item determination unit 1202 determines whether there is a parameter on the test target page. If there is no parameter, the evaluation item determination unit 1202 sets the parameter alteration item and the cross-site scripting item to be ineffective (S1410).
In step S1411, the evaluation item determination unit 1202 determines whether the cookie is used on the diagnosis target page. If the cookie is not used, the evaluation item determination unit 1202 sets the cookie abuse item to be not implemented (S1412).
In step S1413, the evaluation item determination unit 1202 determines whether the test target page performs SSL communication. If not, the evaluation item determination unit 1202 sets the cookie item that is not in the secure mode to non-execution (S1414).
In step S1415, the evaluation item determination unit 1202 determines whether to send an email on the diagnosis target page. If the email is not sent, the evaluation item determination unit 1202 sets the third-party relay item of the email to ineffective (S1416). ).
When the process reaches S1417, it is determined whether or not the test items have been determined for all the test target pages described in the list of test target pages acquired in S1401, and if there are remaining items, the processing from S1402 is performed again.
Finally, if it is determined in S1417 that the test items have been determined for all the test target pages, the evaluation items for each test target page are output and the operation is terminated (S1418).

評価項目決定部1202において、全ての試験対象ページに対する試験実施項目が決定された後に、評価データ生成部112では、評価項目決定部でページごとに決定された試験実施項目、仕様書DB1201、及び、脆弱性検査データDB113の情報を基に、ページごとの評価データを作成する。
評価データに設定するデータは、仕様書DB1201で設定項目がパラメタ(図15において設定項目がPARAMである項目)に設定されているパラメタの値が取りうる範囲(最小値、最大値)を基に決定される。
作成された評価データは、評価データ送信部114を介してWebアプリケーション131に送信される。
その後の、Webアプリケーション131からの応答メッセージ受信から、評価結果表示部117に評価結果が表示されるまでの処理は、実施の形態1と同様である。
In the evaluation item determination unit 1202, after the test execution items for all the test target pages are determined, the evaluation data generation unit 112 performs the test execution items determined for each page by the evaluation item determination unit, the specification DB 1201, and Evaluation data for each page is created based on the information in the vulnerability inspection data DB 113.
The data set in the evaluation data is based on the range (minimum value, maximum value) that can be taken by the parameter value set in the parameter DB 1201 in the specification document DB 1201 (item whose setting item is PARAM in FIG. 15). It is determined.
The created evaluation data is transmitted to the Web application 131 via the evaluation data transmission unit 114.
The subsequent processing from the reception of the response message from the Web application 131 until the evaluation result is displayed on the evaluation result display unit 117 is the same as in the first embodiment.

以上のように、本実施の形態では、実施の形態1に加え、ユーザが入力したWebアプリケーションの仕様情報を基に、ページごと試験を実施するセキュリティ評価項目を決定し、決定した評価項目ごとに評価データを作成することで、Webアプリケーションに対して、仕様上必要のない試験を行わないようにしているため、Webアプリケーションの試験全体の実施効率が向上し、試験実施時間の短縮を図ることができる。   As described above, in the present embodiment, in addition to the first embodiment, the security evaluation items to be tested for each page are determined based on the Web application specification information input by the user. By creating evaluation data, tests that are not required in the specifications are not performed on the Web application, so the efficiency of the entire Web application test can be improved and the test execution time can be shortened. it can.

以上、本実施の形態では、
Webアプリケーションの仕様情報を入力する手段と、入力したWebアプリケーションの仕様情報と、セキュリティ評価項目一覧の情報とを基に、試験項目を自動で決定する手段とを備えた、Webアプリケーション自動試験装置を説明した。
As described above, in the present embodiment,
A web application automatic test apparatus comprising means for inputting specification information of a web application, means for automatically determining a test item based on the inputted web application specification information and security evaluation item list information explained.

最後に、実施の形態1及び2に示したWebアプリケーション自動試験装置101のハードウェア構成例について説明する。
図19は、実施の形態1及び2に示すWebアプリケーション自動試験装置101のハードウェア資源の一例を示す図である。
なお、図19の構成は、あくまでもWebアプリケーション自動試験装置101のハードウェア構成の一例を示すものであり、Webアプリケーション自動試験装置101のハードウェア構成は図19に記載の構成に限らず、他の構成であってもよい。
Finally, a hardware configuration example of the Web application automatic test apparatus 101 shown in the first and second embodiments will be described.
FIG. 19 is a diagram illustrating an example of hardware resources of the Web application automatic test apparatus 101 described in the first and second embodiments.
The configuration in FIG. 19 is merely an example of the hardware configuration of the Web application automatic test apparatus 101. The hardware configuration of the Web application automatic test apparatus 101 is not limited to the configuration illustrated in FIG. It may be a configuration.

図19において、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及び2で説明した「〜DB」は、RAM914や磁気ディスク装置920により実現される。
通信ボード915、キーボード902、マウス903、スキャナ装置907、FDD904などは、入力装置の一例である。
また、通信ボード915、表示装置901、プリンタ装置906などは、出力装置の一例である。
19, the Web application automatic test apparatus 101 includes a CPU 911 (also referred to as a central processing unit, a central processing unit, a processing unit, an arithmetic unit, a microprocessor, a microcomputer, and a processor) that executes a program.
The CPU 911 is connected to, for example, a ROM (Read Only Memory) 913, a RAM (Random Access Memory) 914, a communication board 915, a display device 901, a keyboard 902, a mouse 903, and a magnetic disk device 920 via a bus 912. Control hardware devices.
Further, the CPU 911 may be connected to an FDD 904 (Flexible Disk Drive), a compact disk device 905 (CDD), a printer device 906, and a scanner device 907. Further, instead of the magnetic disk device 920, a storage device such as an optical disk device or a memory card (registered trademark) read / write device may be used.
The RAM 914 is an example of a volatile memory. The storage media of the ROM 913, the FDD 904, the CDD 905, and the magnetic disk device 920 are an example of a nonvolatile memory. These are examples of the storage device.
The “˜DB” described in the first and second embodiments is realized by the RAM 914 and the magnetic disk device 920.
A communication board 915, a keyboard 902, a mouse 903, a scanner device 907, an FDD 904, and the like are examples of input devices.
The communication board 915, the display device 901, the printer device 906, and the like are examples of output devices.

通信ボード915は、ネットワークに接続されている。
例えば、通信ボード915は、LAN(ローカルエリアネットワーク)、インターネット、WAN(ワイドエリアネットワーク)、SAN(ストレージエリアネットワーク)などに接続されている。
The communication board 915 is connected to the network.
For example, the communication board 915 is connected to a LAN (local area network), the Internet, a WAN (wide area network), a SAN (storage area network), and the like.

磁気ディスク装置920には、オペレーティングシステム921(OS)、ウィンドウシステム922、プログラム群923、ファイル群924が記憶されている。
プログラム群923のプログラムは、CPU911がオペレーティングシステム921、ウィンドウシステム922を利用しながら実行する。
The magnetic disk device 920 stores an operating system 921 (OS), a window system 922, a program group 923, and a file group 924.
The programs in the program group 923 are executed by the CPU 911 using the operating system 921 and the window system 922.

また、RAM914には、CPU911に実行させるオペレーティングシステム921のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。
また、RAM914には、CPU911による処理に必要な各種データが格納される。
The RAM 914 temporarily stores at least part of the operating system 921 program and application programs to be executed by the CPU 911.
The RAM 914 stores various data necessary for processing by the CPU 911.

また、ROM913には、BIOS(Basic Input Output System)プログラムが格納され、磁気ディスク装置920にはブートプログラムが格納されている。
Webアプリケーション自動試験装置101の起動時には、ROM913のBIOSプログラム及び磁気ディスク装置920のブートプログラムが実行され、BIOSプログラム及びブートプログラムによりオペレーティングシステム921が起動される。
The ROM 913 stores a BIOS (Basic Input Output System) program, and the magnetic disk device 920 stores a boot program.
When the Web application automatic test apparatus 101 is activated, the BIOS program in the ROM 913 and the boot program in the magnetic disk device 920 are executed, and the operating system 921 is activated by the BIOS program and the boot program.

上記プログラム群923には、実施の形態1及び2の説明において「〜部」、「〜手段」として説明している機能を実行するプログラムが記憶されている。プログラムは、CPU911により読み出され実行される。   The program group 923 stores programs that execute the functions described as “˜unit” and “˜means” in the description of the first and second embodiments. The program is read and executed by the CPU 911.

ファイル群924には、実施の形態1及び2の説明において、「〜の判断」、「〜の計算」、「〜の加算」、「〜の比較」、「〜の選択」、「〜の特定」、「〜の抽出」、「〜の評価」、「〜の検索」、「〜の更新」、「〜の設定」、「〜の登録」、「〜の生成」等として説明している処理の結果を示す情報やデータや信号値や変数値やパラメタが、「〜ファイル」や「〜データベース」の各項目として記憶されている。
「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメタは、読み書き回路を介してCPU911によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示などのCPUの動作に用いられる。
抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示のCPUの動作の間、情報やデータや信号値や変数値やパラメタは、メインメモリ、レジスタ、キャッシュメモリ、バッファメモリ等に一時的に記憶される。
また、実施の形態1及び2で説明しているフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、RAM914のメモリ、FDD904のフレキシブルディスク、CDD905のコンパクトディスク、磁気ディスク装置920の磁気ディスク、その他光ディスク、ミニディスク、DVD等の記録媒体に記録される。また、データや信号は、バス912や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
In the description of the first and second embodiments, the file group 924 includes “determination of”, “calculation of”, “addition of”, “comparison of”, “selection of”, and “specification of”. ”,“ Extraction of ”,“ evaluation of ”,“ search for ”,“ update of ”,“ setting of ”,“ registration of ”,“ generation of ”, etc. Information, data, signal values, variable values, and parameters indicating the results are stored as items of “˜file” and “˜database”.
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 CPU 911 via a read / write circuit, and extracted, searched, referenced, compared, and calculated. Used for CPU operations such as calculation, processing, editing, output, printing, and display.
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, operation, calculation, processing, editing, output, printing, and display. It is temporarily stored in a memory or the like.
In addition, the arrows in the flowcharts described in the first and second embodiments mainly indicate input / output of data and signals, and the data and signal values are the RAM 914 memory, the FDD 904 flexible disk, the CDD 905 compact disk, and the magnetic field. Recording is performed on a recording medium such as a magnetic disk of the disk device 920, other optical disks, mini disks, DVDs, and the like. Data and signals are transmitted online via a bus 912, signal lines, cables, or other transmission media.

また、実施の形態1及び2の説明において「〜部」、「〜手段」として説明しているものは、「〜回路」、「〜装置」、「〜機器」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。
すなわち、実施の形態1及び2で説明したフローチャートに示すステップ、手順、処理により、本発明に係る情報処理方法を実現することができる。
また、「〜部」、「〜手段」として説明しているものは、ROM913に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、DVD等の記録媒体に記憶される。プログラムはCPU911により読み出され、CPU911により実行される。すなわち、プログラムは、実施の形態1及び2の「〜部」、「〜手段」としてコンピュータを機能させるものである。あるいは、実施の形態1及び2の「〜部」、「〜手段」の手順や方法をコンピュータに実行させるものである。
Further, in the description of the first and second embodiments, what is described as “to part” and “to means” may be “to circuit”, “to device”, and “to device”. It may be “˜step”, “˜procedure”, “˜processing”.
That is, the information processing method according to the present invention can be realized by the steps, procedures, and processes shown in the flowcharts described in the first and second embodiments.
In addition, what is described as “˜unit” and “˜means” may be realized by firmware stored in the ROM 913. Alternatively, it may be implemented only by software, or only by hardware such as elements, devices, substrates, and wirings, by a combination of software and hardware, or by a combination of firmware. Firmware and software are stored as programs in a recording medium such as a magnetic disk, a flexible disk, an optical disk, a compact disk, a mini disk, and a DVD. The program is read by the CPU 911 and executed by the CPU 911. That is, the program causes the computer to function as “˜unit” and “˜means” of the first and second embodiments. Alternatively, the procedures and methods of “to part” and “to means” of the first and second embodiments are executed by a computer.

このように、実施の形態1及び2に示すWebアプリケーション自動試験装置101は、処理装置たるCPU、記憶装置たるメモリ、磁気ディスク等、入力装置たるキーボード、マウス、通信ボード等、出力装置たる表示装置、通信ボード等を備えるコンピュータであり、上記したように「〜部」、「〜手段」として示された機能をこれら処理装置、記憶装置、入力装置、出力装置を用いて実現するものである。   As described above, the Web application automatic test apparatus 101 shown in the first and second embodiments includes a CPU as a processing device, a memory as a storage device, a magnetic disk, a keyboard as an input device, a mouse, a communication board, and a display device as an output device. The computer includes a communication board and the like, and implements the functions indicated as “˜unit” and “˜means” using the processing device, the storage device, the input device, and the output device as described above.

101 Webアプリケーション自動試験装置、102 Webサーバ、111 試験対象ページ情報DB、112 評価データ生成部、113 脆弱性検査データDB、114 評価データ送信部、115 応答受信部、116 評価結果判定部、117 評価結果表示部、118 セキュリティ評価項目一覧、120 Webページ画面遷移情報DB、121 Webページ特徴情報DB、122 Webページ種類特定部、123 Webページ構成要素DB、124 取引フローパターンDB、125 Webページ重要度判定部、126 パラメタ属性DB、127 重要パラメタ特定部、128 Webページ重要パラメタDB、131 Webアプリケーション、1201 仕様書DB、1202 評価項目決定部。   DESCRIPTION OF SYMBOLS 101 Web application automatic test apparatus, 102 Web server, 111 Test object page information DB, 112 Evaluation data generation part, 113 Vulnerability inspection data DB, 114 Evaluation data transmission part, 115 Response reception part, 116 Evaluation result determination part, 117 Evaluation Result display section, 118 Security evaluation item list, 120 Web page screen transition information DB, 121 Web page feature information DB, 122 Web page type specifying section, 123 Web page component DB, 124 Transaction flow pattern DB, 125 Web page importance Determination unit, 126 Parameter attribute DB, 127 Important parameter specifying unit, 128 Web page important parameter DB, 131 Web application, 1201 Specification DB, 1202 Evaluation item determination unit.

Claims (12)

改ざん攻撃に対する脆弱性検査として実施される疑似改ざん攻撃の攻撃対象となるWebページを選別するための選別基準が定義されている選別基準情報を記憶する選別基準情報記憶部と、
疑似改ざん攻撃の対象となるパラメタが定義されているパラメタ情報を記憶するパラメタ情報記憶部と、
前記選別基準情報の選別基準に基づき、疑似改ざん攻撃の攻撃対象の候補である複数の候補Webページの中から疑似改ざん攻撃の攻撃対象となる疑似攻撃対象Webページを選別するWebページ選別部と、
前記Webページ選別部により選別された疑似攻撃対象Webページに含まれているパラメタの中から前記パラメタ情報に定義されているパラメタに該当するパラメタを疑似攻撃対象パラメタとして抽出し、抽出した疑似攻撃対象パラメタのパラメタ値を所定の改ざん値にして疑似改ざん攻撃を実施する疑似改ざん攻撃実施部とを有することを特徴とする情報処理装置。
A selection criterion information storage unit for storing selection criterion information in which selection criteria for selecting a Web page that is a target of a pseudo-tampering attack that is implemented as a vulnerability check against a tampering attack is defined;
A parameter information storage unit for storing parameter information in which parameters to be subjected to a pseudo-tampering attack are defined;
A web page sorting unit that sorts out a pseudo-attack target web page that is a target of a pseudo-tampering attack from a plurality of candidate web pages that are candidates for a target of a pseudo-tampering attack based on the sorting criteria of the screening standard information;
A parameter corresponding to the parameter defined in the parameter information is extracted as a pseudo attack target parameter from the parameters included in the Web page selected by the web page selection unit, and the extracted pseudo attack target An information processing apparatus comprising: a pseudo-tampering attack execution unit that performs a pseudo-tampering attack by setting a parameter value of a parameter to a predetermined tampering value.
前記選別基準情報記憶部は、
Webページのカテゴリーが複数示され、カテゴリーごとに、各カテゴリーに属するWebページの特徴としてWebページ内のページ構成における特徴及び他のWebページとのリンクにおける特徴が示され、更に、Webアプリケーションにより提供される複数の取引フローが示され、取引フローごとに、各取引フローにおいて利用されるWebページのカテゴリーが示され、取引フローごとに、疑似改ざん攻撃の攻撃対象となるカテゴリーが示されている選別基準情報を記憶し、
前記Webページ選別部は、
前記選基準情報に示されているカテゴリーごとのページ構成における特徴及び他のWebページとのリンクにおける特徴に基づいて、各候補Webページを複数のカテゴリーのうちのいずれかのカテゴリーに分類し、候補Webページのカテゴリーの分類結果に基づき、前記複数の候補Webページが前記複数の取引フローのうちのいずれの取引フローに対応しているのかを判定し、判定した取引フローにおいて疑似改ざん攻撃の攻撃対象とされているカテゴリーに分類されたWebページを疑似攻撃対象Webページとして選別することを特徴とする請求項1に記載の情報処理装置。
The selection criteria information storage unit
Multiple categories of web pages are shown, and for each category, the features of the web page within each web page and the features of links to other web pages are shown as features of web pages belonging to each category. Multiple transaction flows to be displayed, and for each transaction flow, the category of the Web page used in each transaction flow is indicated, and for each transaction flow, the category to be attacked by the pseudo-tampering attack is indicated Memorize the reference information,
The web page sorting unit
Based on the characteristics of the link between the feature and other Web pages in the page configuration of each category are shown in the selection based reference information, classifies each candidate Web page to one of the categories of a plurality of categories, Based on the classification result of the category of the candidate Web page, it is determined which of the plurality of transaction flows corresponds to the plurality of candidate Web pages, and a pseudo-tampering attack in the determined transaction flow The information processing apparatus according to claim 1, wherein a Web page classified into a target category is selected as a pseudo attack target Web page.
前記選別基準情報記憶部は、
取引フローごとに、各取引フローにおいて利用されるWebページのカテゴリーと、カテゴリー間のリンク関係とが示され、取引フローごとに、疑似改ざん攻撃の攻撃対象となるカテゴリーが示されている選別基準情報を記憶し、
前記Webページ選別部は、
各候補Webページを複数のカテゴリーのうちのいずれかのカテゴリーに分類した後に、前記複数の候補Webページの間のリンク関係を解析して、前記複数の候補Webページが前記複数の取引フローのうちのいずれの取引フローに対応しているのかを判定することを特徴とする請求項2に記載の情報処理装置。
The selection criteria information storage unit
For each transaction flow, the category of the Web page used in each transaction flow and the link relationship between the categories are shown, and the selection criteria information that indicates the category that is the target of the pseudo-tampering attack for each transaction flow Remember
The web page sorting unit
After classifying each candidate web page into one of a plurality of categories, the link relationship between the plurality of candidate web pages is analyzed, and the plurality of candidate web pages are included in the plurality of transaction flows. The information processing apparatus according to claim 2, wherein the transaction flow is determined.
前記パラメタ情報記憶部は、
取引フローごとに疑似改ざん攻撃の対象となるパラメタが定義されているパラメタ情報を記憶しており、
前記疑似改ざん攻撃実施部は、
前記Webページ選別部により判定された取引フローに対応するパラメタを前記パラメタ情報から取得し、前記Webページ選別部により選別された疑似攻撃対象Webページに含まれているパラメタの中から、取得したパラメタに該当するパラメタを疑似攻撃対象パラメタとして抽出することを特徴とする請求項2又は3に記載の情報処理装置。
The parameter information storage unit
Stores parameter information that defines parameters subject to pseudo-tampering attacks for each transaction flow,
The pseudo-tamper attack execution unit
The parameter corresponding to the transaction flow determined by the Web page selection unit is acquired from the parameter information, and the parameter acquired from the parameters included in the pseudo attack target Web page selected by the Web page selection unit The information processing apparatus according to claim 2, wherein a parameter corresponding to is extracted as a pseudo attack target parameter.
前記疑似改ざん攻撃実施部は、
前記Webページ選別部により選別された疑似攻撃対象Webページ内のformタグに含まれているパラメタの中から前記パラメタ情報に定義されているパラメタに該当するパラメタを疑似攻撃対象パラメタ抽出することを特徴とする請求項1〜4のいずれかに記載の情報処理装置。
The pseudo-tamper attack execution unit
A parameter corresponding to a parameter defined in the parameter information is extracted from parameters included in a form tag in a Web page targeted by a pseudo attack selected by the Web page selecting unit. The information processing apparatus according to claim 1.
前記疑似改ざん攻撃実施部は、
前記Webページ選別部により選別された疑似攻撃対象Webページ内のformタグごとに、action値で指定されているリンク先のWebページをリンク先としている他のWebページの存否を判断し、
前記リンク先のWebページをリンク先としている他のWebページが存在しないformタグに含まれているパラメタの中から前記パラメタ情報に定義されているパラメタに該当するパラメタを疑似攻撃対象パラメタとして抽出することを特徴とする請求項5に記載の情報処理装置。
The pseudo-tamper attack execution unit
For each form tag in the Web page targeted by the pseudo attack selected by the Web page selection unit, it is determined whether or not there is another Web page that has the link destination Web page specified by the action value as a link destination,
A parameter corresponding to the parameter defined in the parameter information is extracted as a pseudo attack target parameter from the parameters included in the form tag in which there is no other Web page linked to the linked Web page. The information processing apparatus according to claim 5.
前記疑似改ざん攻撃実施部は、
疑似攻撃対象パラメタのパラメタ値を所定の改ざん値にした疑似攻撃対象Webページを、当該疑似攻撃対象Webページの提供元のWebサーバ装置に送信して、疑似改ざん攻撃を実施することを特徴とする請求項1〜6のいずれかに記載の情報処理装置。
The pseudo-tamper attack execution unit
A pseudo-attack attack is performed by transmitting a pseudo-attack target web page in which the parameter value of the pseudo-attack target parameter is set to a predetermined falsification value to the web server device that provides the pseudo-attack target web page. The information processing apparatus according to claim 1.
前記選別基準情報記憶部は、
改ざん攻撃があった場合の被害が他のWebページに比べて大きいと推測されるWebページが疑似改ざん攻撃の攻撃対象として選別される選別基準が定義されている選別基準情報を記憶しており、
前記パラメタ情報記憶部は、
改ざん攻撃があった場合の被害が他のパラメタに比べて大きいと推測されるパラメタが定義されているパラメタ情報を記憶していることを特徴とする請求項1〜7のいずれかに記載の情報処理装置。
The selection criteria information storage unit
It stores selection criteria information that defines the selection criteria for selecting a Web page that is assumed to have a greater damage in the case of a tampering attack than other Web pages as an attack target for a pseudo-tampering attack,
The parameter information storage unit
The information according to any one of claims 1 to 7, characterized by storing parameter information in which parameters that are assumed to be greater damage than other parameters are defined when there is a falsification attack. Processing equipment.
前記情報処理装置は、更に、
Webページに対する試験項目が複数示されている試験項目情報を入力し、
試験の対象となるWebページごとに、前記試験項目情報に示されている試験項目が対象としている対象属性が含まれているか否かを判断し、Webページに対象属性が含まれていない場合に当該対象属性に対応する試験項目を当該Webページに対する試験での試験実施項目から除外して、Webページごとに試験実施項目を決定する試験実施項目決定部とを有することを特徴とする請求項1〜8のいずれかに記載の情報処理装置。
The information processing apparatus further includes:
Enter test item information that shows multiple test items for a web page,
When it is determined whether or not the target attribute targeted by the test item indicated in the test item information is included for each Web page to be tested, and the target attribute is not included in the Web page 2. A test execution item determination unit that determines a test execution item for each Web page by excluding a test item corresponding to the target attribute from a test execution item in a test for the Web page. Information processing apparatus in any one of -8.
前記試験実施項目決定部は、
試験の対象となるWebページの仕様書情報を参照して、Webページに対象属性が含まれているか否かを判断することを特徴とする請求項9に記載の情報処理装置。
The test execution item determination unit
The information processing apparatus according to claim 9, wherein it is determined whether or not a target attribute is included in the Web page with reference to specification information of the Web page to be tested.
改ざん攻撃に対する脆弱性検査として実施される疑似改ざん攻撃の攻撃対象となるWebページを選別するための選別基準が定義されている選別基準情報を、コンピュータが、所定の記憶領域から読み出す選別基準情報読み出しステップと、
疑似改ざん攻撃の対象となるパラメタが定義されているパラメタ情報を、前記コンピュータが、所定の記憶領域から読み出すパラメタ情報読み出しステップと、
前記コンピュータが、前記選別基準情報の選別基準に基づき、疑似改ざん攻撃の攻撃対象の候補である複数の候補Webページの中から疑似改ざん攻撃の攻撃対象となる疑似攻撃対象Webページを選別するWebページ選別ステップと、
前記コンピュータが、前記Webページ選別ステップにより選別された疑似攻撃対象Webページに含まれているパラメタの中から前記パラメタ情報に定義されているパラメタに該当するパラメタを疑似攻撃対象パラメタとして抽出し、抽出した疑似攻撃対象パラメタのパラメタ値を所定の改ざん値にして疑似改ざん攻撃を実施する疑似改ざん攻撃実施ステップとを有することを特徴とする情報処理方法。
Selection criteria information read by a computer that reads selection criteria information in which selection criteria for selecting a Web page that is the target of a pseudo-tampering attack that is implemented as a vulnerability check against alteration attacks is read from a predetermined storage area Steps,
A parameter information reading step in which the computer reads parameter information in which parameters to be subjected to a pseudo-tampering attack are defined from a predetermined storage area; and
A Web page for selecting, from the plurality of candidate Web pages that are candidates for an attack target of the pseudo-tampering attack, the computer from which the pseudo-attack attack target Web page is targeted by the computer based on the selection criteria of the selection criteria information A sorting step;
The computer extracts, as a pseudo attack target parameter, a parameter corresponding to the parameter defined in the parameter information from the parameters included in the pseudo attack target Web page selected by the Web page selection step. And a pseudo-falsification attack execution step of performing a pseudo-falsification attack with the parameter value of the target parameter for the pseudo-attack as a predetermined falsification value.
改ざん攻撃に対する脆弱性検査として実施される疑似改ざん攻撃の攻撃対象となるWebページを選別するための選別基準が定義されている選別基準情報を、所定の記憶領域から読み出す選別基準情報読み出しステップと、
疑似改ざん攻撃の対象となるパラメタが定義されているパラメタ情報を、所定の記憶領域から読み出すパラメタ情報読み出しステップと、
前記選別基準情報の選別基準に基づき、疑似改ざん攻撃の攻撃対象の候補である複数の候補Webページの中から疑似改ざん攻撃の攻撃対象となる疑似攻撃対象Webページを選別するWebページ選別ステップと、
前記Webページ選別ステップにより選別された疑似攻撃対象Webページに含まれているパラメタの中から前記パラメタ情報に定義されているパラメタに該当するパラメタを疑似攻撃対象パラメタとして抽出し、抽出した疑似攻撃対象パラメタのパラメタ値を所定の改ざん値にして疑似改ざん攻撃を実施する疑似改ざん攻撃実施ステップとをコンピュータに実行させることを特徴とするプログラム。
A selection criterion information reading step for reading out selection criterion information defining a selection criterion for selecting a Web page to be attacked by a pseudo-tampering attack performed as a vulnerability check against a tampering attack, from a predetermined storage area;
A parameter information reading step for reading out parameter information in which a parameter subject to a pseudo-tampering attack is defined from a predetermined storage area;
A Web page selection step of selecting a pseudo-attack target Web page that is an attack target of the pseudo-tampering attack from a plurality of candidate Web pages that are candidates for an attack target of the pseudo-tampering attack based on the selection criteria of the selection standard information;
A parameter corresponding to the parameter defined in the parameter information is extracted as a pseudo attack target parameter from the parameters included in the Web page selected by the web page selection step, and the extracted pseudo attack target A program that causes a computer to execute a pseudo-falsification attack execution step for performing a pseudo-falsification attack by setting a parameter value of a parameter to a predetermined falsification value.
JP2011036664A 2011-02-23 2011-02-23 Information processing apparatus, information processing method, and program Expired - Fee Related JP5618861B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011036664A JP5618861B2 (en) 2011-02-23 2011-02-23 Information processing apparatus, information processing method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011036664A JP5618861B2 (en) 2011-02-23 2011-02-23 Information processing apparatus, information processing method, and program

Publications (2)

Publication Number Publication Date
JP2012174082A JP2012174082A (en) 2012-09-10
JP5618861B2 true JP5618861B2 (en) 2014-11-05

Family

ID=46976927

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011036664A Expired - Fee Related JP5618861B2 (en) 2011-02-23 2011-02-23 Information processing apparatus, information processing method, and program

Country Status (1)

Country Link
JP (1) JP5618861B2 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5326035B1 (en) * 2012-10-18 2013-10-30 株式会社 ディー・エヌ・エー Server device
JP6261244B2 (en) * 2013-09-06 2018-01-17 株式会社富士通マーケティング WEB application test apparatus and program thereof
JP7206122B2 (en) * 2019-01-31 2023-01-17 三菱重工業株式会社 DATASET VERIFICATION DEVICE AND PROGRAM, METHOD AND DATASET VERIFICATION SYSTEM
JP2023094338A (en) * 2021-12-23 2023-07-05 エムオーテックス株式会社 Vulnerability diagnosing device, control method of vulnerability diagnosing device, and vulnerability diagnosing program
JP7320211B1 (en) * 2023-06-12 2023-08-03 株式会社エーアイセキュリティラボ Systems, methods and programs for testing website vulnerabilities

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1256064B1 (en) * 2000-01-28 2008-10-15 Websense Inc. System and method for controlling access to internet sites
JP4405248B2 (en) * 2003-03-31 2010-01-27 株式会社東芝 Communication relay device, communication relay method, and program
JP2005259014A (en) * 2004-03-15 2005-09-22 Nec Corp Security measure retrieval device, method, and program
JP2007128119A (en) * 2004-12-17 2007-05-24 Pcsafe Inc Method and system for carrying out filter processing of url, web page, and content
JP4619867B2 (en) * 2005-06-01 2011-01-26 三菱電機株式会社 Server diagnostic device, server monitoring device, and server diagnostic program
TW200825835A (en) * 2006-12-13 2008-06-16 Inst Information Industry System and method of detecting web page vulnerability and recording medium thereof
KR101001132B1 (en) * 2008-02-22 2010-12-15 엔에이치엔비즈니스플랫폼 주식회사 Method and System for Determining Vulnerability of Web Application
US8365290B2 (en) * 2009-05-15 2013-01-29 Frederick Young Web application vulnerability scanner
JP5253298B2 (en) * 2009-05-28 2013-07-31 三菱電機株式会社 Web application diagnosis apparatus, Web application diagnosis program, and Web application diagnosis method

Also Published As

Publication number Publication date
JP2012174082A (en) 2012-09-10

Similar Documents

Publication Publication Date Title
Heydari et al. Detection of fake opinions using time series
CN109375945B (en) Firmware version detection method and vulnerability repair rate evaluation method for Internet of things equipment
CN109101469B (en) Extracting searchable information from digitized documents
US8943588B1 (en) Detecting unauthorized websites
CN107918733A (en) The system and method for detecting the malicious element of webpage
JP5618861B2 (en) Information processing apparatus, information processing method, and program
CN109104421B (en) Website content tampering detection method, device, equipment and readable storage medium
CN104158828B (en) The method and system of suspicious fishing webpage are identified based on cloud content rule base
US11797668B2 (en) Sample data generation apparatus, sample data generation method, and computer readable medium
CN101751530B (en) Method for detecting loophole aggressive behavior and device
CN113849760B (en) Sensitive information risk assessment method, system and storage medium
US9703683B2 (en) Software testing coverage
Rau et al. Transferring tests across web applications
KR102051350B1 (en) Method and system for data acquisition for analyzing transaction of cryptocurrency
US9495542B2 (en) Software inspection system
CN109886016A (en) For detecting the method, equipment and computer readable storage medium of abnormal data
CN108694325A (en) The condition discriminating apparatus of the discriminating conduct and specified type website of specified type website
US20190362291A1 (en) Generating and publishing a problem ticket
Khattar et al. Sarathi: Characterization study on regression bugs and identification of regression bug inducing changes: A case-study on google chromium project
KR102299525B1 (en) Product Evolution Mining Method And Apparatus Thereof
US11574053B1 (en) System and method for detecting malicious scripts
Carpineto et al. Automatic assessment of website compliance to the European cookie law with CooLCheck
US20170161753A1 (en) Detecting websites associated with counterfeit goods
CN115292187A (en) Method and device for automatically testing code-free page, electronic equipment and medium
Amankwah et al. Fast bug detection algorithm for identifying potential vulnerabilities in juliet test cases

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20131009

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140606

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140617

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140728

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140916

R150 Certificate of patent or registration of utility model

Ref document number: 5618861

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees