JP2007259171A - Incorrect information generating apparatus, incorrect information generating method, incorrect information generating program, vulnerability inspecting apparatus, vulnerability inspecting method, and vulnerability inspecting program - Google Patents

Incorrect information generating apparatus, incorrect information generating method, incorrect information generating program, vulnerability inspecting apparatus, vulnerability inspecting method, and vulnerability inspecting program Download PDF

Info

Publication number
JP2007259171A
JP2007259171A JP2006081992A JP2006081992A JP2007259171A JP 2007259171 A JP2007259171 A JP 2007259171A JP 2006081992 A JP2006081992 A JP 2006081992A JP 2006081992 A JP2006081992 A JP 2006081992A JP 2007259171 A JP2007259171 A JP 2007259171A
Authority
JP
Japan
Prior art keywords
information
vulnerability
inspection
attribute
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2006081992A
Other languages
Japanese (ja)
Inventor
Hiroyuki Sakakibara
裕之 榊原
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
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2006081992A priority Critical patent/JP2007259171A/en
Publication of JP2007259171A publication Critical patent/JP2007259171A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/30Computing systems specially adapted for manufacturing

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To prevent an incorrect access according to an incorrect certificate by inspecting effect when an incorrect certificate in which incorrect information being embedded into an attribute is given to a PKI system. <P>SOLUTION: A vulnerability information searching unit 130 is designed to acquire inspection information by searching vulnerability information based on product information and setting information about an object 200 to be inspected. A setting attribute determining unit 140 is designed to determine an attribute for setting the inspection information based on operation information and attribute information. An incorrect information producing unit 150 is designed to produce incorrect certificate information by setting the inspection information to the above described attribute. An inspection processing unit 160 is designed to perform the inspection relating to the object 200 to be inspected based on the incorrect certificate information produced by the incorrect information producing unit 150 by a processing device 980. <P>COPYRIGHT: (C)2008,JPO&INPIT

Description

本発明は、例えば、PKI(Public Key Infrastructure)システム(公開鍵基盤システム)の証明書等の属性情報を参照する機能における脆弱性等の調査をする攻撃コードを含んだ証明書等を生成する装置、および、その検査をする装置に関する。   The present invention, for example, an apparatus for generating a certificate including an attack code for investigating a vulnerability or the like in a function of referring to attribute information such as a certificate of a public key infrastructure (PKI) system (public key infrastructure system) And an apparatus for inspecting the same.

従来、不具合や脆弱性を検査する検査システムでは、検査したいシステムである検査対象に対して、既知の脆弱性を攻撃する特殊なデータ(exploit)を送信する。例えば、検査対象がcgiを使用したWebサイトでであり、そのcgiにおいて、コマンドインジェクションの脆弱性が発見されている場合は、コマンドインジェクションを起こすデータがexploit(検査情報、不正情報)に該当する。この例では、検査システムは、例えば、cgiに対してHTTP(Hyper Text Transfer Protocol)のPOSTリクエストでexploitをcgiに送り込む。
検査対象は、例えば、exploitを受信するとレスポンスを返す。この時、本来はexploitのような異常なデータを受信した場合エラーを返すべきである。しかし、脆弱性が存在した場合、exploitが検査対象で動作した結果、本来返すべきエラー以外のデータがレスポンスで返信されることがある。従来の検査システムは、このレスポンスを確認することで脆弱性の有無を確認する。あるいは、検査対象のログを確認し、コマンドインジェクションが成功したか確認する。
特開2005−130450号公報 特開2005−286443号公報 Adil Alsaid and Chris J. Mitchell. Installing Fake Root Keys on a PC. In D. Chadwick and G. Zhao, editors, EuroPKI 2005, volume 3545 of Lecture Notes in Computer Science, pages 227−239. Springer−Verlag, Berlin, July 2005.
Conventionally, an inspection system that inspects defects and vulnerabilities transmits special data (exploit) that attacks known vulnerabilities to an inspection target that is a system to be inspected. For example, if the inspection target is a website using cgi and a vulnerability of command injection is found in the cgi, the data that causes the command injection corresponds to the exploit (inspection information, illegal information). In this example, the inspection system sends an exploit to cgi with a POST request of HTTP (Hyper Text Transfer Protocol) for cgi, for example.
For example, the inspection target returns a response when it receives the exploit. At this time, an error should be returned when abnormal data such as exploit is received. However, when there is a vulnerability, data other than the error that should be returned may be returned as a response as a result of the operation of the exploit on the inspection target. The conventional inspection system confirms the presence or absence of the vulnerability by confirming this response. Alternatively, check the inspection target log and check whether the command injection is successful.
JP 2005-130450 A JP 2005-286443 A Adil Alsaid and Chris J. et al. Mitchell. Installed Fake Root Keys on a PC. In D. Chadwick and G. Zhao, editors, EuroPKI 2005, volume 3545 of Lecture Notes in Computer Science, pages 227-239. Springer-Verlag, Berlin, July 2005.

従来、PKIシステムにおける証明書は信頼できるものとして扱っている。そのため、従来の検査システムでは、証明書に含まれた属性に攻撃を行う情報が入っているかはチェックしないため、証明書に含まれた属性を扱う処理には脆弱性が残存している恐れがある。
また、証明書は信頼できる機関が発行するため、検証に成功すれば信用できる情報として扱われている。しかし、非特許文献1にはトラストストアへ不正な証明書をインストールする攻撃についての記載がある。つまり、証明書の検証を回避する攻撃がある。したがって、信用できない証明書が存在する。
したがって、不正情報が属性に埋め込まれた不正な証明書による不正アクセスが行われるという課題がある。つまり、不正情報が属性に埋め込まれた証明書をPKIシステムに与えた場合の影響の検査が不足しているという課題がある。
Conventionally, certificates in a PKI system are treated as reliable. For this reason, the conventional inspection system does not check whether the attribute included in the certificate contains attacking information, so there may be a vulnerability remaining in the processing of the attribute included in the certificate. is there.
In addition, since the certificate is issued by a trusted organization, if the verification is successful, it is treated as reliable information. However, Non-Patent Document 1 describes an attack that installs an unauthorized certificate in a trust store. In other words, there are attacks that circumvent certificate validation. Therefore, there are untrusted certificates.
Therefore, there is a problem that unauthorized access is performed using an unauthorized certificate in which unauthorized information is embedded in an attribute. That is, there is a problem that the inspection of the influence when a certificate in which illegal information is embedded in an attribute is given to the PKI system is insufficient.

本発明は、例えば、不正情報が属性に埋め込まれた証明書を生成することを目的とする。また、本発明は、例えば、不正情報が属性に埋め込まれた証明書をPKIシステムに与えた場合の影響の検査をすることを目的とする。   For example, an object of the present invention is to generate a certificate in which unauthorized information is embedded in an attribute. Another object of the present invention is to examine the influence when a certificate in which illegal information is embedded in an attribute is given to a PKI system.

本発明にかかる不正情報生成装置は、例えば、公開鍵暗号システムにおける検査対象物の製品情報と、検査対象物のセキュリティの設定情報と、検査対象物が証明情報を利用する方法である運用情報とを記憶装置に記憶する製品運用記憶部と、検査対象物の脆弱性情報と上記脆弱性情報に対する検査情報とを記憶装置に記憶する脆弱性情報記憶部と、上記証明情報の属性情報を記憶装置に記憶する属性情報記憶部と、上記製品運用記憶部が記憶した製品情報と設定情報とに基づき、上記脆弱性情報記憶部が記憶した脆弱性情報を検索して上記脆弱性情報に対する検査情報を処理装置により取得する脆弱性情報検索部と、上記製品運用記憶部が記憶した運用情報と上記属性情報記憶部が記憶した属性情報とに基づき、上記脆弱性情報検索部が取得した検査情報を設定する属性を処理装置により判定する設定属性判定部と、上記設定属性判定部が判定した属性に、上記脆弱性情報検索部が取得した検査情報を設定して不正証明情報を生成して記憶装置に記憶する不正情報生成部とを備えることを特徴とする。   The unauthorized information generation apparatus according to the present invention includes, for example, product information of an inspection target in a public key cryptosystem, setting information of security of the inspection target, operation information that is a method of using certification information by the inspection target, A product operation storage unit for storing the information in the storage device, a vulnerability information storage unit for storing the vulnerability information of the inspection object and the inspection information for the vulnerability information in the storage device, and the attribute information of the certification information The vulnerability information stored in the vulnerability information storage unit is searched based on the attribute information storage unit stored in the product information, the product information stored in the product operation storage unit, and the setting information, and inspection information for the vulnerability information is obtained. Based on the vulnerability information search unit acquired by the processing device, the operation information stored in the product operation storage unit, and the attribute information stored in the attribute information storage unit, the vulnerability information search unit takes The setting attribute determination unit that determines the attribute for setting the inspection information by the processing device and the inspection information acquired by the vulnerability information search unit are set to the attribute determined by the setting attribute determination unit to generate fraud certification information And a fraudulent information generation unit stored in the storage device.

本発明にかかる不正情報生成装置によれば、例えば、検査対象物の製品情報と設定情報とに基づき脆弱性情報を検索して検査情報を取得する脆弱性情報検索部と、運用情報と属性情報とに基づき、検査情報を設定する属性を処理装置により判定する設定属性判定部と、上記検査情報を上記属性に設定して不正証明情報を生成する不正情報生成部とを備えることにより、不正情報が属性に埋め込まれた証明書を生成することが可能である。   According to the fraudulent information generation apparatus according to the present invention, for example, a vulnerability information search unit that searches for vulnerability information based on product information and setting information of an inspection target and acquires inspection information, operation information, and attribute information And a fraudulent information generation unit that sets the inspection information as the attribute and generates fraud proof information. It is possible to generate a certificate with embedded in the attribute.

以下、図に基づき本発明の実施の形態について説明する。   Hereinafter, embodiments of the present invention will be described with reference to the drawings.

まず、図1、図2に基づき本発明にかかる脆弱性検査システム(不正情報生成システム)1000のハードウェア構成の一例について説明する。   First, an example of the hardware configuration of the vulnerability check system (illegal information generation system) 1000 according to the present invention will be described with reference to FIGS.

図1は、実施の形態にかかる脆弱性検査システム1000の外観の一例を示した図である。
図1において、脆弱性検査システム1000は、CRT(Cathode Ray Tube)表示装置901、キーボード(K/B)902、マウス903、コンパクトディスク装置(CDD)905、データベース908、システムユニット909、サーバ910を備え、これらはケーブルで接続されている。
さらに、脆弱性検査システム1000は、ローカルエリアネットワーク(LAN)942、ゲートウェイ941を介してインターネット940に接続されている。また、脆弱性検査システム1000は、インターネット940を介して外部サーバ916等と接続されている。
ここで、CRT表示装置901、K/B902、マウス903、CDD905、システムユニット909等は、後述する脆弱性検査装置(不正情報生成装置)100の一例である。また、サーバ910、外部サーバ916など、およびこれらに記憶されたソフトウェア(S/W)などは、脆弱性の検査を行う対象である検査対象物200の一例である。また、CRT表示装置901は表示装置986の一例である。
FIG. 1 is a diagram illustrating an example of an appearance of a vulnerability inspection system 1000 according to the embodiment.
In FIG. 1, a vulnerability inspection system 1000 includes a CRT (Cathode Ray Tube) display device 901, a keyboard (K / B) 902, a mouse 903, a compact disk device (CDD) 905, a database 908, a system unit 909, and a server 910. These are connected by cables.
Further, the vulnerability inspection system 1000 is connected to the Internet 940 via a local area network (LAN) 942 and a gateway 941. The vulnerability inspection system 1000 is connected to an external server 916 and the like via the Internet 940.
Here, the CRT display device 901, the K / B 902, the mouse 903, the CDD 905, the system unit 909, and the like are examples of a vulnerability check device (unauthorized information generation device) 100 described later. In addition, the server 910, the external server 916, and the like, and the software (S / W) stored therein are examples of the inspection target 200 that is a target for performing a vulnerability check. The CRT display device 901 is an example of the display device 986.

図2は、実施の形態における脆弱性検査装置100のハードウェア構成の一例を示す図である。
図2において、脆弱性検査装置100は、コンピュータであり、プログラムを実行するCPU(Central Processing Unit)911を備えている。CPU911は、バス912を介してROM(Read Only Memory)913、RAM(Random Access Memory)914、通信ボード915、CRT表示装置901、K/B902、マウス903、FDD(Flexible Disk)904、CDD905、磁気ディスク装置920と接続されている。
RAM914は、揮発性メモリの一例である。ROM913、磁気ディスク装置920は、不揮発性メモリの一例である。これらは、記憶装置984の一例である。
通信ボード915は、LAN942等に接続されている。
また、K/B902、マウス903等は、入力装置982の一例である。
また、CPU911は、処理装置980の一例である。
また、通信ボード915は、通信装置988の一例である。
FIG. 2 is a diagram illustrating an example of a hardware configuration of the vulnerability testing apparatus 100 according to the embodiment.
In FIG. 2, the vulnerability testing apparatus 100 is a computer and includes a CPU (Central Processing Unit) 911 that executes a program. The CPU 911 includes a ROM (Read Only Memory) 913, a RAM (Random Access Memory) 914, a communication board 915, a CRT display device 901, a K / B 902, a mouse 903, an FDD (Flexible Disk) 904, a CDD 905, and a magnetic disk. A disk device 920 is connected.
The RAM 914 is an example of a volatile memory. The ROM 913 and the magnetic disk device 920 are examples of a nonvolatile memory. These are examples of the storage device 984.
The communication board 915 is connected to the LAN 942 or the like.
K / B 902, mouse 903, and the like are examples of the input device 982.
The CPU 911 is an example of a processing device 980.
The communication board 915 is an example of the communication device 988.

ここで、通信ボード915は、LAN942に限らず、直接、インターネット940、或いはISDN等のWAN(ワイドエリアネットワーク)に接続されていても構わない。直接、インターネット940、或いはISDN等のWANに接続されている場合、脆弱性検査装置100は、インターネット940、或いはISDN等のWANに接続され、ゲートウェイ941は不用となる。
磁気ディスク装置920には、オペレーティングシステム(OS)921、ウィンドウシステム922、プログラム群923、ファイル群924が記憶されている。プログラム群923は、CPU911、OS921、ウィンドウシステム922により実行される。
Here, the communication board 915 is not limited to the LAN 942 but may be directly connected to the Internet 940 or a WAN (Wide Area Network) such as ISDN. When directly connected to a WAN such as the Internet 940 or ISDN, the vulnerability testing apparatus 100 is connected to a WAN such as the Internet 940 or ISDN, and the gateway 941 is unnecessary.
The magnetic disk device 920 stores an operating system (OS) 921, a window system 922, a program group 923, and a file group 924. The program group 923 is executed by the CPU 911, the OS 921, and the window system 922.

上記プログラム群923には、以下に述べる実施の形態の説明において、例えば、「脆弱性検査部(不正情報生成部)110」として説明する機能を実行するプログラムが記憶されている。プログラムは、CPU911により読み出され実行される。
ファイル群924には、以下に述べる実施の形態の説明において、「〜判定」として説明するものが、「〜ファイル」として記憶されている。
また、以下に述べる実施の形態の説明において説明するフローチャートの矢印の部分は主としてデータの入出力を示し、そのデータの入出力のためにデータは、磁気ディスク装置920、FD、光ディスク、CD、MD(ミニディスク)、DVD(Digital Versatile Disk)等のその他の記録媒体に記録される。あるいは、信号線やその他の伝送媒体により伝送される。
The program group 923 stores a program that executes a function described as, for example, the “vulnerability inspection unit (illegal information generation unit) 110” in the description of the embodiment described below. The program is read and executed by the CPU 911.
In the file group 924, what is described as “to determination” in the description of the embodiment described below is stored as “to file”.
Also, the arrows in the flowcharts described in the following description of the embodiments mainly indicate data input / output, and the data for the data input / output is the magnetic disk device 920, FD, optical disk, CD, MD. (Mini disc), DVD (Digital Versatile Disk) and other recording media. Alternatively, it is transmitted through a signal line or other transmission medium.

また、以下に述べる実施の形態の説明において「脆弱性検査部(不正情報生成部)110」として説明するものは、ROM913に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、ハードウェアのみ、或いは、ソフトウェアとハードウェアとの組合せ、さらには、ファームウェアとの組合せで実施されても構わない。   In addition, what is described as the “vulnerability inspection unit (illegal information generation unit) 110” in the description of the embodiment described below may be realized by firmware stored in the ROM 913. Alternatively, it may be implemented by software alone, hardware alone, a combination of software and hardware, or a combination of firmware.

また、以下に述べる実施の形態を実施するプログラムは、また、磁気ディスク装置920、FD、光ディスク、CD、MD、DVD等のその他の記録媒体による記録装置を用いて記憶されても構わない。   In addition, a program that implements the embodiment described below may be stored using a recording device using another recording medium such as the magnetic disk device 920, FD, optical disk, CD, MD, DVD, or the like.

次に、図3に基づき実施の形態にかかる脆弱性検査装置100の概要について説明する。図3は、実施の形態にかかる脆弱性検査装置100の概要を示す図である。
脆弱性検査装置100は、脆弱性情報DB(DataBase)192、検査処理部160を備える。また、脆弱性検査装置100は、検査対象物200とN/W(ネットワーク)を介して接続される。検査対象物200は脆弱性の有無を検査したいシステムであり、例えばWebサイト、DBシステムである。検査処理部160は、脆弱性の有無等を検査する検査ツールである。また、脆弱性情報DB192は、後述する検査プラグインが記憶された検査プラグインDBである。
検査処理部160は、脆弱性情報DB192から例えば定期的に最新の脆弱性に対応した検査プラグインを取り込む。検査プラグインは様々な脆弱性が公開、発見される毎に作成され、脆弱性情報DB192に格納される。
検査処理部160は検査プラグインが設定された検査情報を検査対象物200へ送信する。検査対象物200は、検査情報を処理してレスポンスを返す。脆弱性検査装置100は、例えば、このレスポンスを確認することで脆弱性の有無を判定する。
Next, the outline | summary of the vulnerability test | inspection apparatus 100 concerning embodiment is demonstrated based on FIG. FIG. 3 is a diagram illustrating an overview of the vulnerability testing apparatus 100 according to the embodiment.
The vulnerability inspection apparatus 100 includes a vulnerability information DB (DataBase) 192 and an inspection processing unit 160. Moreover, the vulnerability test | inspection apparatus 100 is connected with the test object 200 via N / W (network). The inspection object 200 is a system for inspecting for the presence or absence of vulnerability, for example, a Web site or a DB system. The inspection processing unit 160 is an inspection tool that inspects for the presence of vulnerability or the like. The vulnerability information DB 192 is an inspection plug-in DB in which inspection plug-ins described later are stored.
The inspection processing unit 160 fetches, for example, an inspection plug-in corresponding to the latest vulnerability periodically from the vulnerability information DB 192. The inspection plug-in is created each time various vulnerabilities are disclosed and discovered, and stored in the vulnerability information DB 192.
The inspection processing unit 160 transmits the inspection information in which the inspection plug-in is set to the inspection object 200. The inspection object 200 processes the inspection information and returns a response. For example, the vulnerability testing apparatus 100 determines the presence or absence of vulnerability by confirming this response.

次に、図4に基づきPKIシステムの検査概念について説明する。図4は、PKIシステムの検査概念の一例としてHTTPS(Hyper Text Transfer Protocol over Secure Sockets Layer,HTTP Over SSL)を利用したPKIシステムの脆弱性を示す図である。
図4は、SSL(Secure Sockets Layer)でHTTP通信を保護するシステムの機能ブロック図である。システムは、HTML(HyperText Markup Language)層401、HTTP層402、SSL層405、TCP/IP(Transmission Control Protocol/Internet Protocol)層406に分けられ、さらに、SSL層とHTTP層の間に、PKC(Public Key Certificate)層403、ASN.1(Abstract Syntax Notation One)層404が位置づけられる。
PKIシステムの脆弱性として、例えば、SSL層405、ASN.1層404、PKC層403に特化した脆弱性が指摘されている。SSL層405で例を挙げると、ハンドシェイクデータの異常によりDoS(Denial of Service)が発生する。また、ASN.1層404で例を挙げると、不正なASN.1エンコードの証明書によりバッファオーバフローが発生する。また、PKC層403で例を挙げると、不正な証明書のパスにより、証明書のセキュリティチェックが回避される等である。
これまで検査プラグインは、このようにPKIシステムのPKIに直接関わる実装の脆弱性を検査するものである。つまり、これまで検査プラグインでは、不正情報が属性に埋め込まれた証明書に対するPKIシステムの脆弱性の検査は行われていない。
Next, the inspection concept of the PKI system will be described with reference to FIG. FIG. 4 is a diagram showing the vulnerability of the PKI system using HTTPS (Hyper Text Transfer Protocol over Secure Sockets Layer, HTTP Over SSL) as an example of the inspection concept of the PKI system.
FIG. 4 is a functional block diagram of a system that protects HTTP communication with SSL (Secure Sockets Layer). The system is divided into an HTML (HyperText Markup Language) layer 401, an HTTP layer 402, an SSL layer 405, a TCP / IP (Transmission Control Protocol / Internet Protocol) layer 406, and a PKC (HTTP) layer between the SSL layer and the HTTP layer. Public Key Certificate) layer 403, ASN. 1 (Abstract Syntax Notation One) layer 404 is positioned.
As vulnerability of the PKI system, for example, SSL layer 405, ASN. Vulnerabilities specific to the first layer 404 and the PKC layer 403 are pointed out. Taking the SSL layer 405 as an example, DoS (Denial of Service) occurs due to an abnormality in handshake data. In addition, ASN. For example, in the first layer 404, an illegal ASN. Buffer overflow occurs due to a certificate of one encoding. For example, in the PKC layer 403, a certificate security check is avoided due to an invalid certificate path.
So far, the inspection plug-in inspects the vulnerability of the implementation directly related to the PKI of the PKI system. That is, until now, the inspection plug-in has not inspected the vulnerability of the PKI system for the certificate in which the illegal information is embedded in the attribute.

次に、不正情報が属性に埋め込まれた証明書に対するPKIシステムの脆弱性の検査を行わないことの危険性と課題について説明する。以下の3つ段階に分けて説明する。
まず、1つ目の段階として、信用できない証明書の存在について説明する。証明書は信頼できる機関が発行するため、検証に成功すれば信用できる情報として扱われている。しかし、証明書の検証を回避する攻撃がある。したがって、信用できない証明書が存在する。
次に、2つ目の段階として、exploitが属性に埋め込まれた証明書による不正アクセスについて説明する。上記の証明書の検証を回避する攻撃が行われた場合、exploitが属性に埋め込まれた証明書による不正アクセスが行われる可能性がある。
そして、3つ目の段階として、PKIシステムの検査での不足事項について説明する。つまり、exploitが属性に埋め込まれた証明書による不正アクセスが行われるのを未然に防止するため、不正情報が属性に埋め込まれた証明書をPKIシステムに与えた場合の影響の検査が不足している。
Next, the risk and problem of not inspecting the vulnerability of the PKI system for a certificate in which unauthorized information is embedded in an attribute will be described. The description will be divided into the following three steps.
First, as the first stage, the existence of an untrusted certificate will be described. Since the certificate is issued by a trusted organization, it is treated as credible information if it is successfully verified. However, there are attacks that circumvent certificate validation. Therefore, there are untrusted certificates.
Next, as a second stage, unauthorized access using a certificate in which an exploit is embedded in an attribute will be described. If an attack that circumvents the verification of the certificate is performed, there is a possibility that unauthorized access is performed using the certificate in which the exploit is embedded in the attribute.
As a third stage, a shortage in the inspection of the PKI system will be described. In other words, in order to prevent unauthorized access by a certificate in which an exploit is embedded in an attribute, there is a lack of examination of the effect when a certificate in which unauthorized information is embedded in an attribute is given to the PKI system. Yes.

まず、1つ目の段階である信用できない証明書の存在について説明する。
本来、PKIにおける証明書は信頼できる機関が発行するため証明書の正当性が確認できれば、その証明書の属性は信頼できるものとして扱う。証明書を受信した側で、その証明書が不正なものか否かは、その証明書の検証をもって確認される。証明書の検証は通常以下のように行われる。
まず、証明書を受信した装置は、受信した証明書の署名を、証明書を発行したCA(Certificate Authority)の公開鍵で確認する。次に、証明書を受信した装置は、有効期限、失効状態を確認する。失効状態は確認しない運用もある。この後、証明書を受信した装置は、証明書を信用できるものとして扱い、属性を参照する。
ここで、証明書を発行したCAの公開鍵が本物であることの保証が必要である。公開鍵が本物であることがどのように、保証されているか説明する。
まず、CAが自身の公開鍵を自身の秘密鍵で署名を行うself−signed証明書を発行する。
次に、self−signed証明書を、そのCAが発行する証明書を受信するPKIアプリケーションのトラストストアに、予め埋め込む。ここで、トラストストアとは、信用できる証明書の格納場所である。例えば、PKIアプリケーションとしてブラウザを利用する場合、CAはブラウザのベンダに対して、self−signed証明書をトラストストアに格納してもらうように依頼する。この時、そのCAが正当なものであるかをブラウザのベンダが別途確認をした上でトラストストアに格納し、出荷する。つまり、ユーザがブラウザを利用する段階において、既にトラストストアには上記CAのself−signed証明書が信頼できるCAの証明書として格納されている。
そして、CAは、SSL対応Webサーバに対して、サーバ証明書を発行する。ブラウザのユーザが、このWebサイトに接続するとSSLハンドシェイクが実行され、その過程でWebサーバ側からサーバ証明書が送信される。ブラウザでは、トラストストアのCA証明書を使用して、サーバ証明書を検証することが可能である。
例えば、悪意のある第三者が不正なSSL対応Webサーバを設置し、また悪意のある第三者自身がCAを設置してCA証明書を生成し、さらに悪意のある第三者自身がサーバ証明書を発行して、Webサーバに設定したとする。この場合、ブラウザのトラストストア内にその悪意のある第三者自身のCA証明書が格納されていないため、ブラウザは悪意のある第三者が設置した不正SSL対応Webサーバのサイトに正常に接続できない。つまり、そのブラウザのトラストストアに格納されているCAの証明書の下で発行されたサーバ証明書でなければ正しく接続できない。これは、ブラウザのベンダが認証してトラストストアに格納したCA証明書以外は、そのブラウザは信用していないということになる。
このように、PKIアプリケーションの運用では、トラストストアの管理が非常に重要である。また、初期状態のPKIアプリケーションのトラストストアを操作しない限りは、CAの信頼できるself−signed証明書に変更はない。
First, the existence of an untrusted certificate, which is the first stage, will be described.
Originally, a certificate in PKI is issued by a trusted organization, so if the validity of the certificate can be confirmed, the attribute of the certificate is treated as reliable. On the side of receiving the certificate, whether or not the certificate is invalid is confirmed by verifying the certificate. Certificate verification is usually performed as follows.
First, the device that has received the certificate checks the signature of the received certificate with the public key of the CA (Certificate Authority) that issued the certificate. Next, the device that has received the certificate checks the expiration date and revocation status. Some operations do not check the revocation status. Thereafter, the device that has received the certificate treats the certificate as trustworthy and refers to the attribute.
Here, it is necessary to guarantee that the public key of the CA that issued the certificate is authentic. Explain how the public key is guaranteed to be authentic.
First, the CA issues a self-signed certificate for signing its own public key with its own private key.
Next, the self-signed certificate is embedded in advance in the trust store of the PKI application that receives the certificate issued by the CA. Here, the trust store is a storage location of a trusted certificate. For example, when using a browser as a PKI application, the CA requests the browser vendor to store a self-signed certificate in the trust store. At this time, the vendor of the browser separately checks whether the CA is valid, stores it in the trust store, and ships it. That is, when the user uses the browser, the CA self-signed certificate is already stored in the trust store as a trusted CA certificate.
Then, the CA issues a server certificate to the SSL-compatible Web server. When a browser user connects to this Web site, an SSL handshake is executed, and a server certificate is transmitted from the Web server in the process. The browser can verify the server certificate using the CA certificate of the trust store.
For example, a malicious third party installs an unauthorized SSL-compliant Web server, the malicious third party installs a CA to generate a CA certificate, and the malicious third party itself creates a server. Assume that a certificate is issued and set in the Web server. In this case, since the malicious third party's own CA certificate is not stored in the browser's trust store, the browser normally connects to the site of the unauthorized SSL-compliant Web server installed by the malicious third party. Can not. In other words, a server certificate issued under the CA certificate stored in the browser's trust store can be connected correctly. This means that the browser does not trust other than the CA certificate authenticated by the browser vendor and stored in the trust store.
Thus, trust store management is very important in the operation of PKI applications. Further, as long as the trust store of the PKI application in the initial state is not operated, there is no change to the CA's reliable self-signed certificate.

ところが、トラストストアに不正なCAの証明書をインストールする攻撃方法がある。トラストストアに不正なCAの証明書をインストールする攻撃方法として、例えば、OS用の暗号/PKIライブラリ等を使用し、トラストストアに不正なCA証明書を書き込むプログラムがある。このプログラムが実行された場合、ユーザに気づかれないままトラストストアに不正なCA証明書が書き込まれてしまう。
例えば、先の例の、悪意のある第三者が不正なSSL対応Webサーバを設置したい場合に、トラストストアに不正なCA証明書を書き込むプログラムをメールに添付して、エンドユーザへ送信する。また、悪意のある第三者は、例えば、メール本文中にメンテナンスのため添付のプログラムを実行するように指示を行う。このような攻撃方法は、メール添付型ウィルスが蔓延することや、不正なプログラムを実行するユーザが多いことからも、攻撃として有効である。
上記プログラムは実行されるとトラストストアに不正なCA証明書を書き込む。しかし、それ以上の悪意のある行為は実行しない。つまり、その後エンドユーザのPCには何の影響も及ぼさない。そのため、不正なCAをトラストストアに書き込まれてもユーザは気がつかない。また、ウィルス検知ソフトでは通常トラストストアをスキャンしないため、検知されない。
したがって、そのトラストストアを利用するPKIアプリケーションにおいて、不正なCA証明書の下で発行された証明書が、信頼できる証明書として扱われてしまう。このため、上記の例では、ブラウザで不正なSSL対応Webサイトに接続した場合、不正なサーバ証明書の検証が正常に行われる。つまり、ブラウザは、不正なサーバ証明書を信用する。不正なSSL対応Webサーバのサイトに正常な接続が可能となり、ブラウザのユーザは、そのサイトが不正であることに気づかない。
なお、不正なCA証明書下での証明書の発行自体は、エンドユーザのPCとは全く別の場所で行われる。悪意のあるユーザは、不正なCA証明書に含まれる公開鍵と対の秘密鍵を保持しているので、秘密鍵を使用して任意の不正な証明書を生成することができる。
However, there is an attack method in which an unauthorized CA certificate is installed in the trust store. As an attack method for installing an unauthorized CA certificate in the trust store, for example, there is a program for writing an unauthorized CA certificate in the trust store using an OS encryption / PKI library or the like. When this program is executed, an invalid CA certificate is written in the trust store without being noticed by the user.
For example, when a malicious third party in the previous example wants to install an unauthorized SSL-compatible Web server, a program for writing an unauthorized CA certificate in a trust store is attached to an email and transmitted to an end user. In addition, a malicious third party instructs, for example, to execute a program attached for maintenance in the mail text. Such an attack method is effective as an attack because of the spread of email-attached viruses and the large number of users who execute unauthorized programs.
When the program is executed, it writes an invalid CA certificate in the trust store. However, no further malicious acts are performed. That is, it has no effect on the PC of the end user thereafter. Therefore, even if an unauthorized CA is written in the trust store, the user does not notice. Virus detection software usually does not scan the trust store, so it is not detected.
Therefore, in a PKI application that uses the trust store, a certificate issued under an unauthorized CA certificate is treated as a reliable certificate. For this reason, in the above example, when the browser is connected to an unauthorized SSL-compatible website, the unauthorized server certificate is normally verified. In other words, the browser trusts an invalid server certificate. A normal connection to an unauthorized SSL-compatible Web server site is possible, and the browser user is unaware that the site is unauthorized.
It should be noted that the issue of a certificate under an unauthorized CA certificate itself is performed at a location completely different from the end user's PC. Since the malicious user holds the private key paired with the public key included in the unauthorized CA certificate, the malicious user can generate an arbitrary unauthorized certificate using the private key.

PKIの運用において、証明書の安全性については、正当なCAの秘密鍵の漏洩や解読によるCAの成りすましや、証明書の失効の確実性に着目される。それは、悪意のある第三者が、自身の都合の良い偽造証明書を生成することや、無効化された証明書を有効であるかのように偽装ことへの防止のためである。
しかし、正当なCAに成りすます方法の一つとして、悪意のある第三者によるトラストストアへの不正なCA証明書のインストールが挙げられる。そして、トラストストアへの不正なCA証明書のインストールが成功すれば、その後は、悪意のあるユーザが任意の不正な証明書を正当なものとしてエンドユーザに受け入れさせることが可能である。
In the operation of PKI, with regard to the security of the certificate, attention is paid to the CA impersonation due to the leakage or decryption of the legitimate CA private key and the certainty of the certificate revocation. This is to prevent malicious third parties from generating their own forged certificates or forging revoked certificates as if they were valid.
However, one method for impersonating a valid CA is to install an unauthorized CA certificate into a trust store by a malicious third party. If the unauthorized CA certificate is successfully installed in the trust store, then the malicious user can allow the end user to accept any unauthorized certificate as valid.

また、上記では一例としてエンドユーザを対象とした不正なCA証明書のトラストストアへのインストールについて説明した。しかし、証明書を受け入れるサーバ(例えば、SSL対応Webサーバ)のトラストストアの改ざんについては、一般的に、エンドユーザに比べ管理が厳重であるため、困難である。しかし、任意のプログラムを実行できてしまうようなソフトウェアやOSの脆弱性が数多く報告されていることから、上記のようなプログラムをサーバで実行するような不正アクセスが発生する可能性がある。つまり、クライアント側、サーバ側に限定せず、不正なCA証明書のトラストストアへのインストールの可能性を考慮する必要がある。   In the above description, as an example, the installation of an unauthorized CA certificate for the end user in the trust store has been described. However, falsification of a trust store of a server that accepts a certificate (for example, an SSL-compatible Web server) is generally difficult because it is more strictly managed than an end user. However, since many vulnerabilities of software and OS that can execute an arbitrary program have been reported, there is a possibility that unauthorized access such as executing the above program on a server may occur. That is, it is necessary to consider the possibility of installing an unauthorized CA certificate in the trust store, not limited to the client side and the server side.

次に、2つ目の段階であるexploitが属性に埋め込まれた証明書による不正アクセスについて説明する。上記のように証明書の検証を回避する攻撃が行われた場合、exploitが属性に埋め込まれた証明書による不正アクセスが行われる可能性がある。   Next, unauthorized access using a certificate in which an exploit, which is the second stage, is embedded in an attribute will be described. When an attack that avoids certificate verification is performed as described above, there is a possibility that unauthorized access is performed using a certificate in which an exploit is embedded in an attribute.

ここで、証明書の属性は他のアプリケーションのパラメータとして指定されることが多い。例えば、エンドユーザの証明書のSubjectDNは証明書の持ち主を示している。サーバ側では、提示された証明書の持ち主でデータベースを検索する運用があり、SubjectDNが使用されることが考えられる。あるいは、証明書に含まれた画像情報を表示する場合は、画像を表示するプログラムへ画像の属性がパラメータとして渡される。
証明書の属性は、検証が成功すれば信頼できる情報とみなされる。よって、上述のような属性情報においては、値の正当性の厳密なチェックは行われず、そのまま別のプログラムにパラメータとして渡している可能性がある。また、属性情報を渡されたプログラム側においても、属性は信用できる情報として、厳密なチェックを行わない可能性がある。
ここで、例えば、属性に不正なアクセスコードが記載されていることが考えられる。トラストストアに不正なCA証明書をインストールすることにより、悪意の第三者が、不正な証明書を正当なものとして、受信者に受け入れさせる可能性があることについて上記にて説明した。したがって、不正なアクセスコードが記載された証明書が、正当な証明書として受け入れられる可能性もある。この場合、渡されたアプリケーション側に脆弱性がある場合に、属性情報として不正なアクセスコードが記載されていると不正アクセスが成功する可能性がある。
また、上述したように、これまで検査プラグインによるPKIアプリケーションの脆弱性を検査する方法は、各PKIの機能レイヤ毎に発見された既知の脆弱性の残存を検査するのみである。つまり、1つのPKIシステムとして運用した場合に、不正なアクセスコードを保持した証明書を受信した場合の脆弱性の検査は行われていない。
Here, the attribute of the certificate is often specified as a parameter of another application. For example, SubjectDN of the end user certificate indicates the owner of the certificate. On the server side, there is an operation of searching the database by the owner of the presented certificate, and it is conceivable that SubjectDN is used. Alternatively, when displaying the image information included in the certificate, the attribute of the image is passed as a parameter to the program for displaying the image.
Certificate attributes are considered reliable information if verification is successful. Therefore, in the attribute information as described above, the correctness of the value is not strictly checked, and it may be passed as a parameter to another program as it is. Further, even on the program side to which the attribute information is passed, there is a possibility that the attribute is not strictly checked as credible information.
Here, for example, it is conceivable that an illegal access code is described in the attribute. It has been described above that a malicious third party may allow a recipient to accept an unauthorized certificate as legitimate by installing an unauthorized CA certificate in the trust store. Therefore, a certificate in which an unauthorized access code is written may be accepted as a valid certificate. In this case, if there is a vulnerability on the passed application side, unauthorized access may be successful if an unauthorized access code is described as attribute information.
Further, as described above, the method for inspecting the vulnerability of the PKI application by the inspection plug-in so far only inspects the remaining of the known vulnerability discovered for each functional layer of each PKI. That is, when operating as a single PKI system, a vulnerability check is not performed when a certificate holding an unauthorized access code is received.

次に、具体的な証明書の属性を利用した不正アクセスの例を示す。まず、図5に基づきPKC(Public Key Certificate)の属性を利用した不正アクセスの例を説明する。図5は、PKCの属性を利用した不正アクセスの例を示す図である。   Next, an example of unauthorized access using specific certificate attributes is shown. First, an example of unauthorized access using a PKC (Public Key Certificate) attribute will be described with reference to FIG. FIG. 5 is a diagram illustrating an example of unauthorized access using a PKC attribute.

通信相手の証明書の失効のチェックにおいて証明書のextensionであるCRL−DP(CRL Distribution Point:RFC3280)を使用してCRLの取得を行うことがある。CRL−DPには、CRLの取得先として配布先のURLを指定可能である。ここで、PKIの実装以外の部分での実装にURLを扱う処理に実装ミス等の脆弱性があると、不正なURLを含んだCRL−DPにより異常終了等の不具合が発生する可能性がある。もし、この異常終了がバッファオーバフローに起因するものであれば、攻撃の対象になる可能性がある。つまり、不正なURLを含んだCRL−DPが証明書に設定されていた場合に、攻撃される可能性がある。
図5では、PKC層413がPKCから抽出したCRL−DPから、さらにURLを抽出してHTTP層412へ渡す。HTTP層412は受け取ったURLに基づき通信を試みる。しかし、渡されたURLは不正なURLであるため、URLの処理やHTTPの処理に脆弱性が存在した場合に異常な処理を行う可能性がある。
この例では、例えば、HTTP層412とPKC層413との接続IF417の実装に脆弱性が存在する場合、又は、HTTP層412に脆弱性が存在する場合に、異常な処理が発生する。しかし、これらの脆弱性の検査は、PKI自身の実装の脆弱性の検査(PKC層413の検査)だけでは発見できない。つまり、これまで検査プラグインによるPKI自身の実装の脆弱性の検査では上記の脆弱性は発見できない。
When checking the revocation of the certificate of the communication partner, the CRL may be obtained using a CRL-DP (CRL Distribution Point: RFC3280) which is an extension of the certificate. In the CRL-DP, a distribution destination URL can be designated as a CRL acquisition destination. Here, if there is a vulnerability such as an implementation error in the handling of URL in the implementation other than the implementation of PKI, there is a possibility that a malfunction such as abnormal termination may occur due to CRL-DP including an illegal URL. . If this abnormal termination is caused by a buffer overflow, there is a possibility of attack. That is, if a CRL-DP including an illegal URL is set in the certificate, there is a possibility of an attack.
In FIG. 5, the URL is further extracted from the CRL-DP extracted from the PKC by the PKC layer 413 and passed to the HTTP layer 412. The HTTP layer 412 attempts communication based on the received URL. However, since the passed URL is an illegal URL, there is a possibility that abnormal processing may be performed if there is a vulnerability in URL processing or HTTP processing.
In this example, for example, when there is a vulnerability in the implementation of the connection IF 417 between the HTTP layer 412 and the PKC layer 413, or when there is a vulnerability in the HTTP layer 412, abnormal processing occurs. However, these vulnerabilities cannot be detected only by checking the vulnerabilities of the PKI's own implementation (inspection of the PKC layer 413). That is, until now, the above vulnerability cannot be found by examining the vulnerability of the implementation of PKI itself by the inspection plug-in.

ここで、HTTP層412にURLの処理の実装ミス等があり、既知の脆弱性として知られている場合は、図3に示す脆弱性情報DB192に検査用のプラグインが格納されている場合がある。よって、検査で脆弱性を発見できた場合にはパッチの適用等の対策をとることが可能である。
しかし、その場合は、HTTP層412に対する検査を実施したのみである。つまり、PKIシステムとの連携において脆弱性が発生するか否かの観点での検査は実施していない。例えば、PKIシステムと連携しない動作モードでは、不正なパラメータのチェックを行うが、PKIシステムと連携するモードではパラメータのチェックを行わない可能性もある。なぜなら、証明書が検証されているため、パラメータを信用しているためである。
また、接続IF417を自作している場合等は、接続IF417の脆弱性の確認も必要である。自作している部分についての検査プラグインは存在しないため、検査プラグインを利用した検査は期待できないからである。
つまり、実際にPKIシステムと連携する環境において、不正な証明書を使用した検査を行わなければ、脆弱性の残存を見落とす可能性がある。
Here, when there is a URL processing error in the HTTP layer 412 and it is known as a known vulnerability, a plug-in for inspection may be stored in the vulnerability information DB 192 shown in FIG. is there. Therefore, if a vulnerability is found by inspection, it is possible to take measures such as applying a patch.
However, in that case, only the inspection for the HTTP layer 412 was performed. That is, no inspection is performed from the viewpoint of whether or not vulnerability occurs in cooperation with the PKI system. For example, in an operation mode not linked to the PKI system, an illegal parameter check is performed, but in a mode linked to the PKI system, the parameter check may not be performed. This is because the parameters are trusted because the certificate is verified.
In addition, when the connection IF 417 is created by itself, it is necessary to check the vulnerability of the connection IF 417. This is because there is no inspection plug-in for the part that you make yourself, so you cannot expect inspection using the inspection plug-in.
In other words, in an environment that actually cooperates with the PKI system, there is a possibility that the remaining of the vulnerability may be overlooked unless an inspection using an invalid certificate is performed.

次に、図6に基づきAC(Attribute Certificate)の属性を利用した不正アクセスの例を説明する。図6は、ACの属性を利用した不正アクセスの例を示す図である。   Next, an example of unauthorized access using an attribute of AC (Attribute Certificate) will be described with reference to FIG. FIG. 6 is a diagram illustrating an example of unauthorized access using an AC attribute.

ACは通信相手の属性の確認に用いられるものである。ACは、ACの属性に基づいてサービスを提供するアプリケーションに利用される。例えば、ACにおける属性をアクセス管理DBに渡し、特定の情報へのアクセス権の照合を行うとする。属性を引数としてDBに渡す処理に不具合があると、不正なSQL文を挿入された属性によりSQLをDB上で実行される可能性がある。
図6では、AC層423がACからAccessIdentityを抽出し、DBアクセス層426に渡す。ここでは、AccessIdentityをアクセスコントロールに使用するものとする。DBアクセス層426はAccessIdentityを検索キーとしてDB427にアクセスを試みる。しかし、AccessIdentityに不正なSQL文が挿入されている場合、かつDBアクセス層426に脆弱性が存在した場合に、DB427に対して不正なSQL文の送出を行う可能性がある。
この例では、AC層423とDB427の接続を担当するDBアクセス層426の実装に脆弱性が存在する場合、又は、DB427に脆弱性が存在する場合にAccessIdentityに挿入された不正なSQL文が実行されてしまうことが考えられる。しかし、これらの脆弱性の検査は、PKIの脆弱性の検査(AC層423の検査)だけでは発見できない。つまり、これまで検査プラグインによるPKI自身の実装の脆弱性の検査では上記の脆弱性は発見できない。
AC is used for confirming the attribute of the communication partner. The AC is used for an application that provides a service based on an attribute of the AC. For example, it is assumed that the attribute in the AC is passed to the access management DB and access rights to specific information are collated. If there is a problem in the process of passing the attribute as an argument to the DB, there is a possibility that the SQL is executed on the DB by the attribute in which an invalid SQL statement is inserted.
In FIG. 6, the AC layer 423 extracts AccessIdentity from the AC and passes it to the DB access layer 426. Here, it is assumed that AccessIdentity is used for access control. The DB access layer 426 tries to access the DB 427 using AccessIdentity as a search key. However, if an invalid SQL sentence is inserted in AccessIdentity and if there is a vulnerability in the DB access layer 426, there is a possibility of sending an invalid SQL sentence to the DB 427.
In this example, if there is a vulnerability in the implementation of the DB access layer 426 responsible for the connection between the AC layer 423 and the DB 427, or if there is a vulnerability in the DB 427, an invalid SQL statement inserted in the AccessIdentity is executed. It is thought that it will be done. However, these vulnerabilities cannot be detected only by the PKI vulnerability inspection (AC layer 423 inspection). That is, until now, the above vulnerability cannot be found by examining the vulnerability of the implementation of PKI itself by the inspection plug-in.

ここで、DB層427に処理の実装ミス等があり、既知の脆弱性として知られている場合は、図3に示す脆弱性情報DB192に検査用のプラグインが格納されている場合がある。よって、検査で脆弱性を発見できた場合にはパッチの適用等の対策をとることが可能である。
しかし、その場合は、DB層427に対する検査を実施したのみである。つまり、PKIシステムとの連携において脆弱性が発生するか否かの観点での検査は実施していない。例えば、PKIシステムと連携しない動作モードでは、不正なパラメータのチェックを行うが、PKIシステムと連携するモードではパラメータのチェックを行わない可能性もある。なぜなら、証明書が検証されているため、パラメータを信用しているためである。
また、DBアクセス層426を自作している場合等は、DBアクセス層426の脆弱性の確認も必要である。自作している部分についての検査プラグインは存在しないため、検査プラグインを利用した検査は期待できないからである。
Here, when there is a processing error in the DB layer 427 and it is known as a known vulnerability, a plug-in for inspection may be stored in the vulnerability information DB 192 shown in FIG. Therefore, if a vulnerability is found by inspection, it is possible to take measures such as applying a patch.
However, in that case, only the DB layer 427 is inspected. That is, no inspection is performed from the viewpoint of whether or not vulnerability occurs in cooperation with the PKI system. For example, in an operation mode not linked to the PKI system, an illegal parameter check is performed, but in a mode linked to the PKI system, the parameter check may not be performed. This is because the parameters are trusted because the certificate is verified.
In addition, when the DB access layer 426 is created by itself, it is necessary to check the vulnerability of the DB access layer 426. This is because there is no inspection plug-in for the part that you make yourself, so you cannot expect inspection using the inspection plug-in.

次に、図7に基づきCC(Content Certificate)の属性を利用した不正アクセスの例を説明する。RFC3709 Internet X.509 Public Key Infrastructure:Logotypes in X.509 Certificatesでは、証明書に画像データ等のコンテンツの情報を含めるためのextensionが定義されている。当extensionは、証明書に画像データ自体を含めるのではなく、証明書に関連付けたい画像データの大きさや取得先のアドレス情報を定義し、この定義情報のみを証明書に含めることで、証明書の肥大を防いでいる。しかし、そもそもは証明書と画像データの結びつきを示したいのであるから、画像データ自体を証明書に含めても証明書が大きくなるだけで、同じ目的が達成できる。ここでは、説明を簡単にするために証明書に画像データ自身を含めた証明書をCC(Content Certificate)と呼ぶことにする。図7は、CCの属性を利用した不正アクセスの例を示す図である。   Next, an example of unauthorized access using a CC (Content Certificate) attribute will be described with reference to FIG. RFC3709 Internet X. 509 Public Key Infrastructure: Logotypes in X. In 509 Certificates, an extension for including content information such as image data in a certificate is defined. This extension does not include the image data itself in the certificate, but defines the size and address information of the image data to be associated with the certificate, and includes only this definition information in the certificate. Prevents hypertrophy. However, since we want to show the connection between the certificate and the image data in the first place, even if the image data itself is included in the certificate, the same purpose can be achieved simply by increasing the certificate. Here, for simplicity of explanation, a certificate including the image data itself in the certificate is referred to as CC (Content Certificate). FIG. 7 is a diagram illustrating an example of unauthorized access using CC attributes.

CCは、例えば、Webサイトの真正性を示すための企業のロゴの画像データを含んだ証明書である。CC用プラグインをインストールしたブラウザでCCを適用したサイトを閲覧すると、CCで保証された企業ロゴが表示される。これにより、そのWebサイトが詐称サイトではないことが分かる。画像を含んだ証明書であるため、ブラウザにおける画像表示に実装ミスがあると、不正な画像を含んだCCによりフリーズ等の異常処理が発生する可能性がある。
図7では、CC層432がCCから画像データを抽出し、コンテンツ表示層431に渡す。しかし、不正な画像であった場合、コンテンツ表示層431においてフリーズ等の異常処理が発生する場合がある。
この例では、コンテンツ表示層431、あるいはコンテンツ表示層431とCC層432の間のIF437に脆弱性が存在する場合に、フリーズ等の異常処理が発生することが考えられる。しかし、これらの脆弱性の検査は、PKIの脆弱性の検査(CC層432の検査)だけでは発見できない。つまり、これまで検査プラグインによるPKI自身の実装の脆弱性の検査では上記の脆弱性は発見できない。
The CC is, for example, a certificate including image data of a company logo for indicating the authenticity of a website. When browsing a site to which CC is applied with a browser in which a CC plug-in is installed, a company logo guaranteed by CC is displayed. Thereby, it can be seen that the Web site is not a spoofing site. Since the certificate includes an image, if there is a mounting error in the image display in the browser, abnormal processing such as freezing may occur due to CC including an illegal image.
In FIG. 7, the CC layer 432 extracts image data from the CC and passes it to the content display layer 431. However, if the image is invalid, abnormal processing such as freezing may occur in the content display layer 431.
In this example, when there is a vulnerability in the content display layer 431 or the IF 437 between the content display layer 431 and the CC layer 432, it is considered that abnormal processing such as freezing occurs. However, these vulnerability inspections cannot be found only by the PKI vulnerability inspection (the inspection of the CC layer 432). That is, until now, the above vulnerability cannot be found by examining the vulnerability of the implementation of PKI itself by the inspection plug-in.

ここで、コンテンツ表示層431に処理の実装ミス等があり、既知の脆弱性として知られている場合は、図3に示す脆弱性情報DB192に検査用のプラグインが格納されている場合がある。よって、検査で脆弱性を発見できた場合にはパッチの適用等の対策をとることが可能である。
しかし、その場合は、コンテンツ表示層431に対する検査を実施したのみである。つまり、PKIシステムと連携しない動作モードでは、不正なパラメータのチェックを行うが、PKIシステムと連携するモードではパラメータのチェックを行わない可能性もある。なぜなら、証明書が検証されているため、パラメータを信用しているためである。
また、IF437を自作している場合等は、IF437の脆弱性の確認も必要である。自作している部分についての検査プラグインは存在しないため、検査プラグインを利用した検査は期待できないからである。
なお、RFC3709に示されるextensionをそのまま使用した証明書においてもextensionに従い取得した画像データはコンテンツ表示層431に渡されるわけである。取得した画像データが不正な画像であれば、フリーズ等の異常処理が発生する可能性があり、上記のCCの例と同様の脆弱性の見落としの懸念がある。
Here, if there is a processing implementation mistake in the content display layer 431 and it is known as a known vulnerability, a plug-in for inspection may be stored in the vulnerability information DB 192 shown in FIG. . Therefore, if a vulnerability is found by inspection, it is possible to take measures such as applying a patch.
However, in that case, only the content display layer 431 is inspected. In other words, in the operation mode not linked with the PKI system, an illegal parameter check is performed, but in the mode linked with the PKI system, the parameter check may not be performed. This is because the parameters are trusted because the certificate is verified.
In addition, when IF437 is made by itself, it is necessary to check the vulnerability of IF437. This is because there is no inspection plug-in for the part that you make yourself, so you cannot expect inspection using the inspection plug-in.
Note that even in a certificate using the extension shown in RFC 3709 as it is, the image data acquired according to the extension is passed to the content display layer 431. If the acquired image data is an illegal image, there is a possibility that abnormal processing such as freezing may occur, and there is a concern of overlooking the same vulnerability as in the above CC example.

つまり、上記の3つの例では、実際にPKIシステムと連携する環境において、不正な証明書を使用した検査を行わなければ、脆弱性の残存を見落とす可能性が残っている。   In other words, in the above three examples, there is a possibility that the remaining vulnerability is overlooked unless an inspection using an invalid certificate is performed in an environment that actually cooperates with the PKI system.

そして、3つめの段階であるPKIシステムの検査での不足事項について説明する。上記の内容を踏まえると、PKIシステムの検査において以下の点からの検査が不足している。
まず、上述したように不正プログラムによりトラストストアが改変する攻撃がある。このため、受信した証明書は検証が成功しても信頼できるとは限らない。したがって、PKIの処理部分から連携するアプリケーションへ、不正な証明書の属性を引き渡した場合に不正アクセスがなされる可能性があることを考慮した検査が必要である。
また、不正な証明書がない場合であっても、証明書の情報をパラメータとして他のアプリケーションへ引き渡す際の処理に不具合があることが考えられる。したがって、上記不具合が脆弱性に繋がる恐れがあるため、そのような不具合は予め発見し、修正しておくべきである。
また、証明書だけでなく、CRL(Certificate Revocation List)やOCSP(Online Certificate Status Protocol)等の失効情報も、署名が付与されており、署名の検証が成功すれば、属性は信頼できるものとして取り扱われる。つまり、検査することなく失効情報の属性を利用した処理が行われるため、exploitが埋め込まれた情報の悪用が考えられる。
Then, the deficiencies in the third stage PKI system inspection will be described. In view of the above contents, the inspection from the following points is insufficient in the inspection of the PKI system.
First, as described above, there is an attack in which a trust store is modified by an unauthorized program. For this reason, the received certificate is not always reliable even if the verification is successful. Therefore, it is necessary to perform inspection in consideration of the possibility that unauthorized access may be made when an attribute of an unauthorized certificate is handed over from a PKI processing part to a linked application.
Even if there is no illegal certificate, it is possible that there is a problem in the processing when transferring the certificate information to another application as a parameter. Therefore, since the said malfunction may lead to a vulnerability, such a malfunction should be discovered and corrected beforehand.
Also, not only certificates but also revocation information such as CRL (Certificate Revocation List) and OCSP (Online Certificate Status Protocol) are provided with a signature, and if the signature verification is successful, the attribute is treated as reliable. It is. That is, since the processing using the attribute of the revocation information is performed without checking, the exploitation of the information in which the exploit is embedded can be considered.

ここで、PKIを使用したシステムにおける証明書と、証明書の失効を示す証明書の失効情報との一例について説明する。証明書としては、例えば、PKC(公開鍵証明書,RFC3280)、AC(属性証明書,RFC3281)、QC(Qualified Certificate,RFC3739)、PC(Proxy Certificate,RFC3820)、CSC(Code Signing Certificate)、DC(Device Certificate)、CC等がある。また、失効情報としては、例えば、CRL(RFC3280)、OCSP(失効の問い合わせサービス用プロトコル,RFC2560)等がある。   Here, an example of a certificate in a system using PKI and certificate revocation information indicating certificate revocation will be described. Certificates include, for example, PKC (Public Key Certificate, RFC3280), AC (Attribute Certificate, RFC3181), QC (Qualified Certificate, RFC3739), PC (Proxy Certificate, RFC3820), CSC (Code Signing Certificate), DC. (Device Certificate), CC, and the like. The revocation information includes, for example, CRL (RFC3280), OCSP (revocation inquiry service protocol, RFC2560), and the like.

実施の形態1.
まず、実施の形態1について説明する。実施の形態1では、検査対象物200をWebサーバとした場合の脆弱性検査装置(不正情報生成装置)100の例について説明する。
Embodiment 1 FIG.
First, the first embodiment will be described. Embodiment 1 demonstrates the example of the vulnerability test | inspection apparatus (illegal information generation apparatus) 100 at the time of making the test target object 200 into a Web server.

実施の形態1では、図3に基づき説明した脆弱性検査装置100の概要と同様に、脆弱性検査装置100は、既知の脆弱性情報に基づき検査情報を生成して、検査対象物200へ検査情報を送信する。そして、脆弱性検査装置100は、検査対象物200のレスポンス等を確認することで脆弱性の有無を判定する。ここでは特に、PKIアプリケーションシステムで使用しているソフトウェア等の既知の脆弱性情報に基づき、PKIアプリケーションシステムを攻撃可能と推測される不正な証明書を生成する。そして、不正な証明書に基づき検査情報を生成する。   In the first embodiment, similarly to the outline of the vulnerability inspection apparatus 100 described with reference to FIG. 3, the vulnerability inspection apparatus 100 generates inspection information based on known vulnerability information and inspects the inspection object 200. Send information. And the vulnerability test | inspection apparatus 100 determines the presence or absence of a vulnerability by confirming the response etc. of the test target object 200. FIG. Here, in particular, based on known vulnerability information such as software used in the PKI application system, an illegal certificate that is estimated to be able to attack the PKI application system is generated. Then, inspection information is generated based on an unauthorized certificate.

図8に基づき実施の形態1にかかる脆弱性検査装置100の機能について説明する。図8は、実施の形態1にかかる脆弱性検査装置100の機能を示す機能ブロック図である。
脆弱性検査装置100は、脆弱性検査部(不正情報生成部)110、処理装置980、入力装置982、記憶装置984、表示装置986を備える。
脆弱性検査部110は、例えばソフトウェア、プログラム等でも構わない。脆弱性検査部110がソフトウェア、プログラム等の場合でも、脆弱性検査部110は、以下に示すように、処理装置980、入力装置982、記憶装置984、表示装置986等のハードウェアを利用し、協働して情報処理を行うものである。脆弱性検査部110は、製品運用記憶部120、脆弱性情報記憶部122、属性情報記憶部124、脆弱性情報検索部130、設定属性判定部140、不正情報生成部150、検査処理部160、検査情報設定部162、検査実施部164、検査結果判定部166を備える。
製品運用記憶部120は、PKIシステムにおける検査対象物200が使用しているソフトウェアの製品名、バージョン等である製品情報と、検査対象物200のセキュリティパラメータ等の設定情報と、検査対象物200が検査対象物が利用する証明情報を含む運用情報とを記憶装置984に製品運用DB190として記憶する。
脆弱性情報記憶部122は、検査対象物200の脆弱性情報と脆弱性情報に対する検査情報とを記憶装置984に脆弱性情報DB192として記憶する。例えば、脆弱性情報記憶部122は、インターネット940等で公開されているPKIに関する脆弱性情報および対応するexploitと、PKI以外の脆弱性情報および対応するexploitとを脆弱性情報DB192として記憶装置984に格納する。
属性情報記憶部124は、証明書(証明情報)の各属性およびextensionの構造の情報である属性情報を記憶装置984に属性情報DB194として記憶する。
脆弱性情報検索部130は、製品運用記憶部120が製品運用DB190に記憶した製品情報と設定情報とに基づき、脆弱性情報記憶部122が記憶した脆弱性情報を検索して脆弱性情報に対する検査情報を処理装置980により取得する。
設定属性判定部140は、製品運用記憶部120が製品運用DB190に記憶した運用情報と属性情報記憶部124が属性情報DB194に記憶した属性情報とに基づき、脆弱性情報検索部130が取得した検査情報を設定する属性を処理装置980により判定する。つまり、脆弱性情報DB192、製品運用DB190、属性情報DB194と連携し、脆弱性情報DB192から得られた脆弱性情報を利用し、証明書のどの属性にexploitを設定するか判定する。また、設定属性判定部140は、証明情報検索部142、証明情報属性検索部144、設定属性検索部146を備える。証明情報検索部142は、製品運用記憶部120が製品運用DB190に記憶した運用情報から利用する証明情報を検索する。証明情報属性検索部144は、属性情報記憶部124が属性情報DB194に記憶した属性情報から証明情報検索部142が検索した証明情報の属性情報を検索する。設定属性検索部146は、証明情報属性検索部144が検索した属性情報から脆弱性情報検索部130が検索した検査情報の検査(攻撃)箇所を設定可能な属性を検索する。
不正情報生成部150は、設定属性判定部140が判定した属性に、脆弱性情報検索部130が取得した検査情報を設定して不正証明情報を生成して記憶装置984に記憶する。つまり、不正情報生成部150は、設定属性判定部140で特定された証明情報の属性情報に、脆弱性情報DB192から得られたexploitを設定した不正証明情報(exploit証明書)を生成する。
検査処理部160は、不正情報生成部150が生成した不正証明情報に基づき、上記検査対象物200に対して検査を処理装置980により実施する。つまり、検査処理部160は、例えば検査用ソフトウェア等である。検査処理部160は、例えば、検査対象物200とセキュア通信を行う機能を備える。検査処理部160は、例えば、HTTPSのクライアント或いはサーバのソフトウェア等が該当する。検査処理部160は、プロトコルデータと不正証明情報とを検査対象物200へ送付する。
検査情報設定部162は、不正情報生成部150が生成した不正証明情報を、検査対象物200に接続して検査を行う検査処理部160に処理装置980により設定する。検査情報設定部162は、不正証明情報を検査用ソフトウェアである検査処理部160に設定する。
検査実施部164は、検査情報設定部162が不正証明情報を設定した検査処理部160へ処理装置980により検査の実行の指示をする。つまり、検査実施部164は、検査用ソフトウェアに対して不正証明情報を使用して検査対象物200に対して通信を開始する命令を出す。
検査結果判定部166は、検査実施部164がした指示により、検査処理部160が実行した検査に対する検査対象物200の動作に基づき、脆弱性が再現したか否かを処理装置980により判定する。検査結果判定部166は、例えば、検査対象物200からのレスポンスが想定されるものであるか否かを確認する。
検査対象物200は、脆弱性が存在するか検査する対象であり、例えば、PKIを適用したWebアプリケーション、データベース、ブラウザ等である。
Based on FIG. 8, the function of the vulnerability testing apparatus 100 according to the first embodiment will be described. FIG. 8 is a functional block diagram illustrating functions of the vulnerability check apparatus 100 according to the first embodiment.
The vulnerability testing apparatus 100 includes a vulnerability testing unit (unauthorized information generation unit) 110, a processing device 980, an input device 982, a storage device 984, and a display device 986.
The vulnerability inspection unit 110 may be software, a program, or the like, for example. Even when the vulnerability checking unit 110 is software, a program, etc., the vulnerability checking unit 110 uses hardware such as a processing device 980, an input device 982, a storage device 984, a display device 986, as shown below. Information is processed in collaboration. The vulnerability inspection unit 110 includes a product operation storage unit 120, a vulnerability information storage unit 122, an attribute information storage unit 124, a vulnerability information search unit 130, a setting attribute determination unit 140, an unauthorized information generation unit 150, an inspection processing unit 160, An inspection information setting unit 162, an inspection execution unit 164, and an inspection result determination unit 166 are provided.
The product operation storage unit 120 includes product information such as product name and version of software used by the inspection target 200 in the PKI system, setting information such as security parameters of the inspection target 200, and the inspection target 200. Operation information including certification information used by the inspection object is stored as a product operation DB 190 in the storage device 984.
The vulnerability information storage unit 122 stores the vulnerability information of the inspection target 200 and the inspection information for the vulnerability information in the storage device 984 as the vulnerability information DB 192. For example, the vulnerability information storage unit 122 stores vulnerability information related to PKI published on the Internet 940 or the like and the corresponding exploit and vulnerability information other than PKI and the corresponding exploit in the storage device 984 as the vulnerability information DB 192. Store.
The attribute information storage unit 124 stores each attribute of the certificate (certification information) and attribute information that is information on the structure of the extension in the storage device 984 as the attribute information DB 194.
The vulnerability information search unit 130 searches the vulnerability information stored in the vulnerability information storage unit 122 based on the product information and setting information stored in the product operation DB 190 by the product operation storage unit 120 and inspects the vulnerability information. Information is acquired by the processing device 980.
The setting attribute determination unit 140 uses the inspection acquired by the vulnerability information search unit 130 based on the operation information stored in the product operation DB 190 by the product operation storage unit 120 and the attribute information stored in the attribute information DB 194 by the attribute information storage unit 124. An attribute for setting information is determined by the processing device 980. That is, in cooperation with the vulnerability information DB 192, the product operation DB 190, and the attribute information DB 194, the vulnerability information obtained from the vulnerability information DB 192 is used to determine which attribute of the certificate is set to the exploit. The setting attribute determination unit 140 includes a proof information search unit 142, a proof information attribute search unit 144, and a setting attribute search unit 146. The certification information search unit 142 searches for certification information to be used from the operation information stored in the product operation DB 190 by the product operation storage unit 120. The certification information attribute search unit 144 searches the attribute information of the certification information searched by the certification information search unit 142 from the attribute information stored in the attribute information DB 194 by the attribute information storage unit 124. The setting attribute search unit 146 searches the attribute information searched by the certification information attribute search unit 144 for an attribute that can set the inspection (attack) location of the inspection information searched by the vulnerability information search unit 130.
The fraud information generation unit 150 sets the inspection information acquired by the vulnerability information search unit 130 to the attribute determined by the setting attribute determination unit 140 to generate fraud certification information and stores it in the storage device 984. That is, the fraud information generation unit 150 generates fraud proof information (exploit certificate) in which the exploit obtained from the vulnerability information DB 192 is set in the attribute information of the proof information specified by the setting attribute determination unit 140.
The inspection processing unit 160 uses the processing device 980 to inspect the inspection object 200 based on the fraud certification information generated by the fraud information generation unit 150. That is, the inspection processing unit 160 is, for example, inspection software. The inspection processing unit 160 has a function of performing secure communication with the inspection object 200, for example. The inspection processing unit 160 corresponds to, for example, HTTPS client or server software. The inspection processing unit 160 sends protocol data and fraud certification information to the inspection object 200.
The inspection information setting unit 162 sets the fraud proof information generated by the fraud information generation unit 150 to the inspection processing unit 160 that performs inspection by connecting to the inspection target 200 by the processing device 980. The inspection information setting unit 162 sets the fraud certification information in the inspection processing unit 160 that is inspection software.
The inspection execution unit 164 instructs the inspection processing unit 160 to which the inspection information setting unit 162 has set the fraud certification information to execute the inspection using the processing device 980. That is, the inspection execution unit 164 issues a command to start communication with the inspection target object 200 using fraud certification information to the inspection software.
The inspection result determination unit 166 determines, based on an instruction given by the inspection execution unit 164, whether or not the vulnerability has been reproduced based on the operation of the inspection target 200 with respect to the inspection performed by the inspection processing unit 160. For example, the inspection result determination unit 166 confirms whether or not a response from the inspection object 200 is assumed.
The inspection object 200 is an object to be inspected for the presence of vulnerability, and is, for example, a Web application, database, browser, or the like to which PKI is applied.

次に、図9、図10に基づき実施の形態1にかかる脆弱性検査装置100の動作について説明する。図9は、実施の形態1にかかる脆弱性検査装置100の処理とデータの流れを示した図である。図10は、実施の形態1にかかる脆弱性検査装置100の動作である脆弱性検査処理(脆弱性検査方法、脆弱性検査プログラム)を示すフローチャートである。ここでは、脆弱性検査装置100は、SSLを適用したWebサーバにおける証明書の処理に関する不具合および脆弱性を検査する。   Next, operation | movement of the vulnerability test apparatus 100 concerning Embodiment 1 is demonstrated based on FIG. 9, FIG. FIG. 9 is a diagram illustrating a process and a data flow of the vulnerability testing apparatus 100 according to the first embodiment. FIG. 10 is a flowchart showing a vulnerability inspection process (a vulnerability inspection method, a vulnerability inspection program) that is an operation of the vulnerability inspection apparatus 100 according to the first embodiment. Here, the vulnerability inspection apparatus 100 inspects defects and vulnerabilities related to certificate processing in a Web server to which SSL is applied.

事前に、脆弱性情報記憶部122は、インターネット940等から脆弱性情報および対応するexploitとを脆弱性情報DB192として記憶装置984に記憶する(脆弱性情報記憶ステップ)。また、属性情報記憶部124は、規定されている証明情報の各属性およびextensionの構造の情報である属性情報を記憶装置984に属性情報DB194として記憶する(属性情報記憶ステップ)。   The vulnerability information storage unit 122 stores the vulnerability information and the corresponding exploit from the Internet 940 or the like in advance in the storage device 984 as the vulnerability information DB 192 (vulnerability information storage step). Further, the attribute information storage unit 124 stores each attribute of the specified proof information and attribute information that is information on the structure of the extension in the storage device 984 as the attribute information DB 194 (attribute information storage step).

そして、製品運用記憶ステップ(S101)では、製品運用記憶部120は、製品情報と設定情報と運用情報とを記憶装置984に製品運用DB190として記憶する。ここでは、例えば、製品運用記憶部120は、図11に示す製品情報と設定情報と運用情報とを記憶する。つまり、製品運用記憶部120は、製品情報としてWebserverX2.0.x、設定情報としてHTTPS、クライアント認証、運用情報としてPKCのチェックにCRLを使用、CRL−DP可、OCSP不可という情報を記憶する。図11は、製品運用記憶部120が製品運用DB190として記憶する情報の一例である。   In the product operation storage step (S101), the product operation storage unit 120 stores the product information, the setting information, and the operation information in the storage device 984 as the product operation DB 190. Here, for example, the product operation storage unit 120 stores the product information, setting information, and operation information shown in FIG. That is, the product operation storage unit 120 stores WebserverX2.0. x, HTTPS is set as setting information, client authentication, CRL is used for checking PKC as operation information, information that CRL-DP is possible, OCSP is not possible is stored. FIG. 11 is an example of information stored in the product operation storage unit 120 as the product operation DB 190.

次に、脆弱性情報検索ステップ(S102)では、脆弱性情報検索部130は、製品運用DB190に記憶した製品情報と設定情報とに基づき、脆弱性情報DB192を検索する。脆弱性情報検索部130は、例えば、製品運用DB190から製品情報、設定情報として図12に示す情報を取り出す。図12は、脆弱性情報検索部130が検査キーとして使用する情報の一例である。つまり、脆弱性情報検索部130は、製品情報として製品名WebserverX2.0.x、設定情報としてセキュアプロトコルはSSL、通信プロトコルはHTTP、セキュリティはクライアント認証という情報を取り出す。そして、脆弱性情報検索部130は、これらの情報を検索キーとして脆弱性情報DB192を検索する。
ここで、脆弱性情報記憶部122は、例えば、脆弱性情報DB192に図13に示す情報を記憶したとする。図13は、脆弱性情報DB192に記憶する情報の一例である。つまり、脆弱性情報DB192はソフトウェア名称、攻撃種別、脆弱性が発生する処理、脆弱性が発生する箇所(ライブラリ、OS、アプリケーション自体等)、プロトコル、セキュリティ、exploitの有無、exploitの攻撃箇所、exploit本体を管理する。また、セキュリティの項目では、例えばSSLを使用している場合は、SSL、クライアント認証等、使用するセキュリティ技術が記述される。しかし、説明の簡単のため、ここでは、セキュリティの脆弱性については検査の対象としないので記述しない。しかし、セキュリティについて記載する場合の例を、エントリNo.4に示す。エントリNo.4には、SSH(Secure Shell)ツールXの脆弱性の例が格納されている。これは、SSHというセキュリティプロトコルの実装に脆弱性があるため、セキュリティの項目にSSHが記録されている。
脆弱性情報検索部130は、例えば、上記検索キーにより脆弱性情報DB192を検索する場合に、製品名を必須とし、かつ、セキュアプロトコル、通信プロトコル、認証方法のいずれか1つ以上がマッチするエントリを検索する。この場合、検索されるのはエントリ1である。エントリ1は、WebserverXのHTTPエンジンのリクエストに脆弱性あり、不正なURLにより異常終了が発生するという脆弱性情報である。なお、この例では、SSL、クライアント認証では検索されず、WebserverX、HTTPのキーワドでのみ検索されたと仮定した。ここで、エントリ1の情報より脆弱性の発生箇所がURLの処理であることが判断できる。つまり、Exploit(検査情報)の攻撃箇所にはURLが指定されている。
Next, in the vulnerability information search step (S102), the vulnerability information search unit 130 searches the vulnerability information DB 192 based on the product information and the setting information stored in the product operation DB 190. For example, the vulnerability information search unit 130 extracts the information shown in FIG. 12 as product information and setting information from the product operation DB 190. FIG. 12 is an example of information used by the vulnerability information search unit 130 as an inspection key. That is, the vulnerability information search unit 130 uses the product name WebserverX2.0. x, as the setting information, the secure protocol is SSL, the communication protocol is HTTP, and the security is client authentication. And the vulnerability information search part 130 searches vulnerability information DB192 using such information as a search key.
Here, it is assumed that the vulnerability information storage unit 122 stores the information illustrated in FIG. 13 in the vulnerability information DB 192, for example. FIG. 13 is an example of information stored in the vulnerability information DB 192. In other words, the vulnerability information DB 192 includes software name, attack type, processing for generating the vulnerability, location where the vulnerability occurs (library, OS, application itself, etc.), protocol, security, existence of exploit, exploit attack location, exploit Manage the console. In the security item, for example, when SSL is used, the security technology to be used such as SSL and client authentication is described. However, for simplicity of explanation, security vulnerabilities are not described here because they are not subject to inspection. However, an example in which security is described is an entry number. 4 shows. Entry No. 4, an example of vulnerability of SSH (Secure Shell) tool X is stored. Since this is vulnerable to the implementation of a security protocol called SSH, SSH is recorded in the security item.
For example, when searching the vulnerability information DB 192 with the search key, the vulnerability information search unit 130 requires a product name and an entry that matches one or more of a secure protocol, a communication protocol, and an authentication method. Search for. In this case, entry 1 is searched. Entry 1 is vulnerability information that a request of the HTTP engine of WebserverX is vulnerable and abnormal termination occurs due to an illegal URL. In this example, it is assumed that the search is not performed by SSL or client authentication but only by the keyword of WebserverX or HTTP. Here, it can be determined from the information of entry 1 that the location of the vulnerability is the URL processing. That is, a URL is specified for the attack location of Exploit (inspection information).

次に、証明情報検索ステップ(S103)では、証明情報検索部142は、製品運用DB190に記憶した運用情報から利用する証明情報を検索する。証明情報検索部142は、製品運用DB190の運用情報からCRL−DPをexploitの設定対象の候補と判断する。この判断は、運用情報に証明書の運用方法として、証明書の失効のチェックにCRLを使用することが記述されているからである。また、失効情報を確認するためのプロトコルであるOCSPの利用は不可となっているため、失効の確認手段としてCRLに特定されるからである。さらに、CRL−DPを利用することでCRLを取得することができるからである。   Next, in a certification information search step (S103), the certification information search unit 142 searches for certification information to be used from the operation information stored in the product operation DB 190. The certification information search unit 142 determines that the CRL-DP is a candidate for setting the exploit from the operation information of the product operation DB 190. This determination is because the operation information describes that the CRL is used for the certificate revocation check as the certificate operation method. Moreover, since the use of OCSP which is a protocol for confirming revocation information is impossible, it is specified by CRL as a revocation confirmation means. Furthermore, it is because CRL can be acquired by using CRL-DP.

次に、証明情報属性検索ステップ(S104)では、証明情報属性検索部144は、属性情報DB194に記憶した属性情報から証明情報検索部142が検索した証明情報の属性情報を検索する。つまり、証明情報属性検索部144は、CRL−DPの構造情報を属性情報DB194から取得する。   Next, in the certification information attribute retrieval step (S104), the certification information attribute retrieval unit 144 retrieves the attribute information of the certification information retrieved by the certification information retrieval unit 142 from the attribute information stored in the attribute information DB 194. That is, the certification information attribute search unit 144 acquires CRL-DP structure information from the attribute information DB 194.

次に、設定属性検索ステップ(S105)では、設定属性検索部146は、CRL−DPにURLを設定できることを判定する。設定属性検索部146は、既に、脆弱性情報DB192における検索結果よりexploitのタイプがURLであることを判定できる。そこで、設定属性検索部146は、図14に示すCRL−DPの構造情報からURLを設定可能な属性を検索する。図14は、属性情報DB194が記憶する属性情報の一例としてCRL−DPの構造情報を示す図である。設定属性検索部146は、検索の結果uniformResourceIdentifierにURLが設定できることを検索する。つまり、設定属性検索部146は、「CRL Distribution Points」、「DistributionPoint」、「distributionPoint」、「GeneralNames」、「GeneralName」、「uniformResourceIdentifier」の順に辿ることで、uniformResourceIdentifierを検索する。その結果、設定属性検索部146は、CRL−DPのuniformResourceIdentifierにexploitを設定することを決定する。
そして、設定属性判定部140はCRL−DPのuniformResourceIdentifierを、exploitを設定対象である、属性情報として不正情報生成部150に渡す。
ここで、(S103)から(S105)までは、設定属性判定ステップである。
Next, in the setting attribute search step (S105), the setting attribute search unit 146 determines that a URL can be set in the CRL-DP. The setting attribute search unit 146 can already determine from the search result in the vulnerability information DB 192 that the type of exploit is URL. Therefore, the setting attribute search unit 146 searches for an attribute for which a URL can be set from the CRL-DP structure information shown in FIG. FIG. 14 is a diagram illustrating CRL-DP structure information as an example of attribute information stored in the attribute information DB 194. The setting attribute search unit 146 searches for a URL that can be set in the uniformResourceIdentifier as a result of the search. In other words, the setting attribute search unit 146 searches “CRL Distribution Point”, “Distribution Point”, “distribution Point”, “General Names”, “General Name”, “uniform Resource ID” in the order of “first”. As a result, the setting attribute search unit 146 determines to set “exploit” in the uniform ResourceIdentifier of the CRL-DP.
The setting attribute determination unit 140 then passes the CRL-DP uniform ResourceIdentifier to the unauthorized information generation unit 150 as attribute information for which “exploit” is set.
Here, (S103) to (S105) are setting attribute determination steps.

次に、不正情報生成ステップ(S106)では、不正情報生成部150は、設定属性判定部140が判定した属性に、脆弱性情報検索部130が取得したexploitを設定して不正証明情報を生成して記憶装置984に記憶する。不正情報生成部150は、例えば、まず、一対の公開鍵と秘密鍵とを生成する。次に、不正情報生成部150は、CRL−DPのURLにexploitのURLを設定する。例えば、CRL−DPのURLにexploitのURLとして「http://www.abc.com/」を設定する。次に、不正情報生成部150は、不正証明情報において証明される公開鍵として上記で生成した公開鍵を設定する。そして、不正情報生成部150は、生成した不正証明情報が検査用に別途生成した不正な認証期間である不正CAを証明する不正CA証明書の配下の証明書となるように、Issuer(発行者)に不正CA証明書のSubjectを設定する。さらに、不正情報生成部150は、不正CA証明書の不正CA公開鍵と対をなす不正CA秘密鍵により署名を付与する。
ここでは、脆弱性検査装置100は、例えば、上記不正CA公開鍵を事前に検査対象物200に渡しておく。つまり、検査対象物200のトラストストアに不正CA公開鍵を記憶させておく。そのため、検査対象物200は、上記不正証明情報を受け取り検証すると、トラストストアにある不正CA公開鍵により不正証明情報が認証できる。したがって、検査対象物200は、不正証明情報を信用する。その結果として、検査対象物200は、不正証明情報の属性情報に埋め込まれたexploitにより脆弱性が発生する可能性がある。
Next, in the fraud information generation step (S106), the fraud information generation unit 150 generates fraud certification information by setting the exploit acquired by the vulnerability information search unit 130 to the attribute determined by the setting attribute determination unit 140. And stored in the storage device 984. For example, the unauthorized information generation unit 150 first generates a pair of public key and secret key. Next, the fraudulent information generation unit 150 sets the URL of the exploit in the URL of the CRL-DP. For example, “http://www.abc.com/” is set as the URL of the exploit in the URL of the CRL-DP. Next, the fraud information generation unit 150 sets the public key generated above as the public key proved in the fraud certification information. Then, the fraudulent information generation unit 150 issues an issuer (issuer) so that the generated fraud certification information becomes a certificate under a fraudulent CA certificate that certifies a fraudulent CA that is a fraudulent authentication period separately generated for inspection. ) To set the subject of the unauthorized CA certificate. Further, the unauthorized information generation unit 150 gives a signature using an unauthorized CA private key paired with the unauthorized CA public key of the unauthorized CA certificate.
Here, for example, the vulnerability inspection apparatus 100 passes the unauthorized CA public key to the inspection object 200 in advance. That is, the unauthorized CA public key is stored in the trust store of the inspection object 200. Therefore, when the inspection object 200 receives and verifies the fraud certification information, the fraud certification information can be authenticated by the fraud CA public key in the trust store. Accordingly, the inspection object 200 trusts the fraud certification information. As a result, there is a possibility that the inspection target 200 may be vulnerable due to the exploit embedded in the attribute information of the fraud proof information.

次に、検査情報設定ステップ(S107)では、検査情報設定部162は、不正情報生成部150が生成した不正証明情報を、検査対象物200に接続して検査を行う検査処理部160に処理装置980により設定する。ここでは、検査情報設定部162は、Webサーバを検査するため、HTTPSのクライアントのソフトウェアを検査処理部160として、(S106)で、不正情報生成部150が生成した不正証明情報と秘密鍵とを設定する。検査処理部160に該当する試験ツールとしては、例えば公開されているのHTTPSライブラリ等を利用可能である。上記ライブラリには秘密鍵や証明書を設定する仕組みが公開されているものもあるため、これらを利用することで、検査情報設定部162の動作が実現可能である。   Next, in the inspection information setting step (S107), the inspection information setting unit 162 connects the fraud certification information generated by the fraud information generation unit 150 to the inspection object 200 and performs processing on the processing unit 160. Set by 980. Here, in order to inspect the Web server, the inspection information setting unit 162 uses the HTTPS client software as the inspection processing unit 160, and uses (S106) the fraud certification information generated by the fraud information generation unit 150 and the secret key. Set. As a test tool corresponding to the inspection processing unit 160, for example, a publicly available HTTPS library can be used. Some of the above libraries have publicly disclosed a mechanism for setting a secret key and a certificate. By using these, the operation of the inspection information setting unit 162 can be realized.

次に、検査実施ステップ(S108)では、検査実施部164は、検査情報設定部162が不正証明情報を設定した検査処理部160へ処理装置980により検査の実行の指示をする。つまり、検査実施部164は、検査処理部160に対し検査対象物200に接続する命令を出す。例えば、検査実施部164はOSのコマンドを実行するスクリプトとして実現することができる。つまり、前述の検査処理部160の起動コマンドを実行するスクリプトを記述すれば実現できる。   Next, in the inspection execution step (S108), the inspection execution unit 164 instructs the inspection processing unit 160 to which the inspection information setting unit 162 has set the fraud certification information by the processing device 980 to execute the inspection. That is, the inspection execution unit 164 issues a command for connecting to the inspection target 200 to the inspection processing unit 160. For example, the inspection execution unit 164 can be realized as a script that executes an OS command. That is, it can be realized by writing a script for executing the above-described start command of the inspection processing unit 160.

次に、検査処理ステップ(S109)では、検査処理部160は、不正情報生成部150が生成した不正証明情報に基づき、上記検査対象物200に対して検査を処理装置980により実施する。つまり、検査処理部160は、HTTPSによる通信を開始し、ハンドシェイクにおいて、クライアント認証用の証明書として不正証明情報を送信する。
ここでは、検査対象物200は、SSL適用Webサーバ等が該当する。検査対象物200は、ハンドシェイクにおいて運用情報に従いクライアント認証用の証明書として送付された不正証明情報を受信する。そして、検査対象物200はCRL−DPを抽出し、さらにURLを抽出する。URLにはexploitが設定されている。上述したように、検査対象物200は、トラストストアにある不正CA公開鍵により不正証明情報を認証し、不正証明情報を信用する。そのため、ここでは、検査対象物200は、exploitの部分まで含めてHTTP処理層にパラメータとして渡したとする。つまり、検査対象物200は、exploitが挿入(連結)された属性情報をそのまま渡してしまったとする。図13に示すように、HTTP処理層では、exploitを渡された場合に、DoSが発生する脆弱性がある。したがって、exploitが挿入された属性情報をそのままHTTP処理層に渡してしまった結果としてDoSが発生する。
Next, in the inspection processing step (S109), the inspection processing unit 160 performs an inspection on the inspection object 200 by the processing device 980 based on the fraud certification information generated by the fraud information generation unit 150. That is, the inspection processing unit 160 starts communication using HTTPS, and transmits fraud certification information as a certificate for client authentication in a handshake.
Here, the inspection object 200 corresponds to an SSL application Web server or the like. The inspection object 200 receives fraud certificate information sent as a certificate for client authentication according to the operation information in the handshake. Then, the inspection object 200 extracts the CRL-DP and further extracts the URL. “Exploit” is set in the URL. As described above, the inspection object 200 authenticates the fraud certification information with the fraud CA public key in the trust store and trusts the fraud certification information. Therefore, here, it is assumed that the inspection object 200 is passed to the HTTP processing layer as a parameter including the portion of the exploit. That is, it is assumed that the inspection object 200 has passed the attribute information in which the exploit is inserted (linked) as it is. As shown in FIG. 13, the HTTP processing layer has a vulnerability in which DoS occurs when exploit is passed. Accordingly, DoS is generated as a result of passing attribute information with the expand inserted to the HTTP processing layer as it is.

そして、検査結果判定ステップ(S110)では、検査結果判定部166は、検査処理部160が実行した検査に対する検査対象物200の動作に基づき、脆弱性が再現したか否かを処理装置980により判定する。検査結果判定部166は、例えば、検査対象物200からの返信を待つ。検査対象物200の脆弱性が再現しなければ、エラーレスポンスが返信される場合が考えられる。しかし、検査結果判定部166は、例えば、返信もなく、TCPの切断信号が無い場合には、不正証明情報が原因で脆弱性が再現したか、不具合が発生したと判断できる。検査結果判定部166は、検査対象物200が出力したログを確認することにより不正証明情報が原因で脆弱性が再現したか、不具合が発生したと判断しても構わない。
ここで、(S107)から(S110)までは検査ステップである。
In the inspection result determination step (S110), the inspection result determination unit 166 determines, based on the operation of the inspection object 200 with respect to the inspection performed by the inspection processing unit 160, whether or not the vulnerability has been reproduced by the processing device 980. To do. The inspection result determination unit 166 waits for a reply from the inspection object 200, for example. If the vulnerability of the inspection target 200 is not reproduced, an error response may be returned. However, for example, if there is no reply and no TCP disconnection signal, the inspection result determination unit 166 can determine that the vulnerability has been reproduced due to the fraud certification information or that a defect has occurred. The inspection result determination unit 166 may determine that the vulnerability has been reproduced due to the fraud certification information or that a defect has occurred by checking the log output by the inspection object 200.
Here, (S107) to (S110) are inspection steps.

この例は、図5に示す様に、PKIシステムのHTTPの不具合や脆弱性を不正証明情報により再現できるか確認することに相当する。このように、実施の形態1にかかる脆弱性検査装置100によれば、脆弱性情報DB192と製品運用DB190と属性情報DB194とを連携させることにより、不正証明情報を生成できる。そして、不正証明情報を検査対象物200に送り込み、不具合や脆弱性が起こるか確認することが可能である。不具合や脆弱性が確認できた場合は、実装に誤りがある可能性が高いため、修正等を施すことで、事前に証明書による攻撃に備えることが可能である。   As shown in FIG. 5, this example corresponds to confirming whether or not the HTTP defect or vulnerability of the PKI system can be reproduced by the fraud proof information. As described above, according to the vulnerability testing apparatus 100 according to the first embodiment, it is possible to generate fraud certification information by linking the vulnerability information DB 192, the product operation DB 190, and the attribute information DB 194. Then, it is possible to send fraud certification information to the inspection object 200 and check whether a defect or vulnerability occurs. If defects or vulnerabilities are confirmed, there is a high possibility that there is an error in the implementation. Therefore, it is possible to prepare for an attack with a certificate in advance by making corrections.

つまり、実施の形態1にかかる脆弱性検査装置100は、以下の機能を備えた不正PKI情報生成装置である。不正PKI情報生成装置は、検査対象のPKIシステムにおける、利用ソフトウェアの情報、PKCの利用情報、通信手段の情報、セキュリティの設定情報を格納した製品運用DB190、脆弱性情報とexploitを格納した脆弱性情報DB192、PKCのデータフォーマットを格納したPKI情報DB(属性情報DB194)を利用し、検査対象のPKIシステムにおけるソフトウェアの脆弱性情報とexploitを検索し、exploitを格納する公開鍵証明書(PKC)の属性を決定し、exploit証明書(不正証明情報)を生成する。   That is, the vulnerability check apparatus 100 according to the first embodiment is an unauthorized PKI information generation apparatus having the following functions. The fraudulent PKI information generation device is a product operation DB 190 that stores software information, PKC usage information, communication means information, security setting information, and vulnerability information and exploit information stored in the PKI system to be inspected. Information DB192, PKI information DB (attribute information DB194) storing the PKC data format is used to search software vulnerability information and exploit in the PKI system to be inspected, and public key certificate (PKC) that stores the exploit , And generate an exploit certificate (incorrect proof information).

実施の形態2.
次に、実施の形態2について説明する。実施の形態2では、検査対象物200をアクセス制御サーバとした場合の脆弱性検査装置(不正情報生成装置)100の例について説明する。
Embodiment 2. FIG.
Next, a second embodiment will be described. In the second embodiment, an example of a vulnerability inspection apparatus (unauthorized information generation apparatus) 100 when the inspection target 200 is an access control server will be described.

実施の形態2にかかる脆弱性検査装置100の機能、および動作の流れは、実施の形態1にかかる脆弱性検査装置100の機能、および動作の流れと同様である。そこで、図15と図10とに基づき実施の形態2にかかる脆弱性検査装置100の動作について説明する。図15は、実施の形態2にかかる脆弱性検査装置100の処理とデータの流れを示した図である。
ここでは、不正証明情報としてACを使用し、ACを適用したアクセス制御サーバにおけるSQLの処理に関する不具合および脆弱性を検査する。
The function and operation flow of the vulnerability check apparatus 100 according to the second embodiment are the same as the function and operation flow of the vulnerability check apparatus 100 according to the first embodiment. Therefore, the operation of the vulnerability check apparatus 100 according to the second embodiment will be described with reference to FIGS. 15 and 10. FIG. 15 is a diagram illustrating a process and a data flow of the vulnerability check apparatus 100 according to the second embodiment.
Here, AC is used as fraud proof information, and a defect and vulnerability related to SQL processing in an access control server to which AC is applied are inspected.

実施の形態1同様、事前に、脆弱性情報記憶部122は、インターネット940等から脆弱性情報および対応するexploitとを脆弱性情報DB192として記憶装置984に記憶する(脆弱性情報記憶ステップ)。また、属性情報記憶部124は、規定されている証明情報の各属性およびextensionの構造の情報である属性情報を記憶装置984に属性情報DB194として記憶する(属性情報記憶ステップ)。   Like the first embodiment, the vulnerability information storage unit 122 stores the vulnerability information and the corresponding exploit from the Internet 940 or the like in advance in the storage device 984 as the vulnerability information DB 192 (vulnerability information storage step). Further, the attribute information storage unit 124 stores each attribute of the specified proof information and attribute information that is information on the structure of the extension in the storage device 984 as the attribute information DB 194 (attribute information storage step).

そして、製品運用記憶ステップ(S101)では、製品運用記憶部120は、図16に示す製品情報と設定情報と運用情報とを記憶する。つまり、製品運用記憶部120は、製品情報としてSQL−DBX1x、設定情報としてSQLprotocol、運用情報としてACをアクセスコントロールに使用、AccessIdentitiy利用という情報を記憶する。図16は、製品運用記憶部120が製品運用DB190として記憶する情報の一例である。   In the product operation storage step (S101), the product operation storage unit 120 stores the product information, setting information, and operation information shown in FIG. That is, the product operation storage unit 120 stores information such as SQL-DBX1x as product information, SQL protocol as setting information, AC as operation information for access control, and AccessIdentity usage. FIG. 16 is an example of information stored in the product operation storage unit 120 as the product operation DB 190.

次に、脆弱性情報検索ステップ(S102)では、脆弱性情報検索部130は、例えば、製品運用DB190から製品情報、設定情報として図17に示す情報を取り出す。図17は、脆弱性情報検索部130が検査キーとして使用する情報の一例である。つまり、脆弱性情報検索部130は、製品情報として製品名SQL−DBX1x、設定情報としてセキュアプロトコルは指定なし、通信プロトコルはSQLprotocol、セキュリティは指定なしという情報を取り出す。そして、脆弱性情報検索部130は、これらの情報を検索キーとして脆弱性情報DB192を検索する。
ここで、脆弱性情報記憶部122は、例えば、実施の形態1同様、脆弱性情報DB192に図13に示す情報を記憶したとする。
脆弱性情報検索部130は、例えば、上記検索キーにより脆弱性情報DB192を検索する場合に、製品名を必須とし、かつ、セキュアプロトコル、通信プロトコル、セキュリティのいずれか1つ以上がマッチするエントリを検索する。この場合、検索されるのはエントリ2である。エントリ2は、SQL−DBXアクセスIF(インターフェイス)にSQLInjectionの脆弱性ありという脆弱性情報である。エントリ2から、脆弱性の発生箇所がアクセスIFの処理であることが判断できる。つまり、Exploit(検査情報)の攻撃箇所にはSQLコマンドが指定されている。
Next, in the vulnerability information search step (S102), the vulnerability information search unit 130 extracts the information shown in FIG. 17 as product information and setting information from the product operation DB 190, for example. FIG. 17 is an example of information used by the vulnerability information search unit 130 as an inspection key. That is, the vulnerability information search unit 130 extracts product name SQL-DBX1x as product information, secure protocol is not specified as setting information, communication protocol is SQL protocol, and security is not specified. And the vulnerability information search part 130 searches vulnerability information DB192 using such information as a search key.
Here, it is assumed that the vulnerability information storage unit 122 stores the information illustrated in FIG. 13 in the vulnerability information DB 192, for example, as in the first embodiment.
For example, when the vulnerability information search unit 130 searches the vulnerability information DB 192 using the search key, the vulnerability information search unit 130 includes an entry that requires a product name and matches any one or more of a secure protocol, a communication protocol, and security. Search for. In this case, entry 2 is searched. The entry 2 is vulnerability information indicating that the SQL-DBX access IF (interface) is vulnerable to SQL Injection. From entry 2, it can be determined that the location where the vulnerability occurs is the process of the access IF. That is, an SQL command is specified for the attack location of Exploit (inspection information).

次に、証明情報検索ステップ(S103)では、証明情報検索部142は、製品運用DB190の運用情報からAccessIdentitiyをexploitの設定対象の候補と判断する。   Next, in the certification information search step (S103), the certification information search unit 142 determines that AccessIdentity is a candidate for setting the exploit from the operation information of the product operation DB 190.

次に、証明情報属性検索ステップ(S104)では、証明情報属性検索部144は、AccessIdentitiyの構造情報を属性情報DB194から取得する。   Next, in the proof information attribute search step (S104), the proof information attribute search unit 144 acquires the structure information of AccessIdentity from the attribute information DB 194.

次に、設定属性検索ステップ(S105)では、設定属性検索部146は、AccessIdentitiyにSQLコマンドを設定できることを判定する。設定属性検索部146は、既に、脆弱性情報DB192における検索結果よりexploitのタイプがSQLコマンドであることを判定できる。そこで、設定属性検索部146は、図18に示すAccessIdentitiyの構造情報からSQLコマンドを設定可能な属性を検索する。図18は、属性情報DB194が記憶する属性情報の一例としてAccessIdentitiyの構造情報を示す図である。設定属性検索部146は、検索の結果dNSNameにSQLコマンドが設定できることを検索する。つまり、設定属性検索部146は、「AccessIdentity」、「SvceAuthInfo」、「ident」、「GeneralName」、「dNSName」の順に辿ることで、dNSNameを検索する。SQLは文字列であるから、文字列を格納できる属性を検索する。その結果、設定属性検索部146は、AccessIdentitiyのdNSNameにexploitを設定することを決定する。ここでは、dNSNameの属性は「IA5String:Any 7−bit US ASCII character」となっており、SQLコマンドを設定可能である。つまり、rfc822Name、uniformResourceIdentifierであっても同様にSQLコマンドを設定可能であるため、rfc822Name、uniformResourceIdentifierにexploitを設定するとしても構わない。   Next, in the setting attribute search step (S105), the setting attribute search unit 146 determines that an SQL command can be set in AccessIdentity. The setting attribute search unit 146 can already determine from the search result in the vulnerability information DB 192 that the type of exploit is an SQL command. Therefore, the setting attribute search unit 146 searches for attributes that can set the SQL command from the structure information of AccessIdentity shown in FIG. FIG. 18 is a diagram illustrating the structure information of AccessIdentity as an example of attribute information stored in the attribute information DB 194. The setting attribute search unit 146 searches for a SQL command that can be set in the dNSName as a result of the search. That is, the setting attribute search unit 146 searches for dNSName by following the order of “AccessIdentity”, “SvceAuthInfo”, “ident”, “GeneralName”, and “dNSName”. Since SQL is a character string, an attribute that can store the character string is searched. As a result, the setting attribute search unit 146 determines to set “exploit” in the dNSName of AccessIdentity. Here, the attribute of dNSName is “IA5String: Any 7-bit US ASCII character”, and an SQL command can be set. That is, since the SQL command can be similarly set even in the case of rfc822Name and uniformResourceIdentifier, it is possible to set “exploit” in rfc822Name and uniformResourceIdentifier.

次に、不正情報生成ステップ(S106)では、不正情報生成部150は、まず、AccessIdentitiyのidentにdNSNameとしてexploitのSQLコマンドを設定する。不正情報生成部150は、例えば、dNSNameが「abc.com」であり、SQLコマンドが「SELECT * FROM ABC_T」であった場合、「abc.com:SELECT * FROM ABC_T」のように設定する。そして、不正情報生成部150は、生成した不正証明情報が検査用に別途生成した不正な属性認証機関である不正AAの公開鍵を証明する不正AA証明書の配下の証明書となるように、Issuerに不正AA証明書のSubjectを設定する。さらに、不正情報生成部150は、不正AA用の公開鍵と対をなす不正AA秘密鍵により署名を付与する。
実施の形態1同様、脆弱性検査装置100は、例えば、上記不正AA用の公開鍵を事前に検査対象物200に渡しておく。そのため、検査対象物200は、上記不正証明情報を受け取り検証すると、不正AA用の公開鍵により不正証明情報が認証できる。したがって、検査対象物200は、不正証明情報を信用する。その結果として、検査対象物200は、不正証明情報の属性情報に埋め込まれたexploitにより脆弱性が発生する可能性がある。
Next, in the fraud information generation step (S106), the fraud information generation unit 150 first sets an exploit SQL command as dNSName in the identity of AccessIdentity. For example, if the dNSName is “abc.com” and the SQL command is “SELECT * FROM ABC_T”, the unauthorized information generation unit 150 sets “abc.com: SELECT * FROM ABC_T”. Then, the fraud information generation unit 150 is configured so that the generated fraud certification information becomes a certificate under the fraud AA certificate that certifies the public key of the fraud AA that is a fraud attribute authentication authority that is separately generated for inspection. The Subject of the unauthorized AA certificate is set in Issuer. Furthermore, the unauthorized information generation unit 150 gives a signature using an unauthorized AA private key that is paired with the public key for the unauthorized AA.
As in the first embodiment, the vulnerability testing apparatus 100 passes the public key for unauthorized AA to the inspection target 200 in advance, for example. Therefore, when the inspection object 200 receives and verifies the fraud certification information, the fraud certification information can be authenticated by the public key for fraud AA. Accordingly, the inspection object 200 trusts the fraud certification information. As a result, there is a possibility that the inspection target 200 may be vulnerable due to the exploit embedded in the attribute information of the fraud proof information.

次に、検査情報設定ステップ(S107)では、検査情報設定部162は、AC利用アクセス制御サーバを検査するため、対となるAC提示クライアントを検査処理部160として、(S106)で、不正情報生成部150が生成した不正証明情報を設定する。   Next, in the inspection information setting step (S107), the inspection information setting unit 162 uses the AC presentation client to be a pair as the inspection processing unit 160 to inspect the AC use access control server, and in (S106), generates illegal information. The fraud certification information generated by the unit 150 is set.

次に、検査実施ステップ(S108)では、検査実施部164は、検査処理部160に対し検査対象物200に接続する命令を出す。   Next, in the inspection execution step (S108), the inspection execution unit 164 issues a command to connect to the inspection object 200 to the inspection processing unit 160.

次に、検査処理ステップ(S109)では、検査処理部160は、検査対象物200と通信を開始し、ACとして不正証明情報が送信される。
ここでは、検査対象物200はAC利用アクセス制御サーバ等が該当する。検査対象物200では、送付された不正証明情報を受信する。そして、検査対象物200は、AccessIdentitiyを抽出し、さらにidentを抽出する。identにはdNSNameとしてexploitが挿入されている。上述したように、検査対象物200は、不正AA用の公開鍵により不正証明情報を認証し、不正証明情報を信用する。そのため、ここでは、検査対象物200は、exploitの部分まで含めてDBアクセス処理層にパラメータとして渡したとする。つまり、exploitが挿入(連結)された、SQLコマンドをそのまま渡してしまったとする。図13に示すように、DBアクセス処理層では、exploitを渡された場合に、SQLInjectionが発生する脆弱性がある。したがって、exploitが挿入された属性情報をそのままDBアクセス処理層に渡してしまった結果としてSQLが実行されてしまう。
Next, in the inspection processing step (S109), the inspection processing unit 160 starts communication with the inspection object 200, and the fraud certification information is transmitted as AC.
Here, the inspection object 200 corresponds to an AC use access control server or the like. The inspection object 200 receives the sent fraud certification information. Then, the inspection object 200 extracts AccessIdentity, and further extracts an ident. The expand is inserted as dNSName in the ident. As described above, the inspection object 200 authenticates the fraud certification information with the public key for fraud AA and trusts the fraud certification information. For this reason, here, it is assumed that the inspection object 200 is passed as a parameter to the DB access processing layer including the portion of the exploit. In other words, it is assumed that the SQL command with the expand inserted (linked) is passed as it is. As shown in FIG. 13, the DB access processing layer has a vulnerability that causes SQL Injection when an exploit is passed. Therefore, SQL is executed as a result of passing the attribute information in which the exploit is inserted to the DB access processing layer as it is.

そして、検査結果判定ステップ(S110)では、検査結果判定部166は、例えば、検査対象物200からの返信を待つ。検査対象物200の脆弱性が再現しなければ、エラーレスポンスが返信される場合が考えられる。しかし、検査結果判定部166は、例えば、返信もなく、TCPの切断信号が無い場合には、不正証明情報が原因で脆弱性が再現したか、不具合が発生したと判断できる。   In the inspection result determination step (S110), the inspection result determination unit 166 waits for a reply from the inspection object 200, for example. If the vulnerability of the inspection target 200 is not reproduced, an error response may be returned. However, for example, if there is no reply and no TCP disconnection signal, the inspection result determination unit 166 can determine that the vulnerability has been reproduced due to the fraud certification information or that a defect has occurred.

この例は、図6に示す様に、PKIシステムのDBアクセスの不具合や脆弱性を不正証明情報により再現できるか確認することに相当する。このように、実施の形態2にかかる脆弱性検査装置100によれば、脆弱性情報DB192と製品運用DB190と属性情報DB194を連携させることにより、不正証明情報を生成できる。そして、不正証明情報を検査対象物200に送り込み、不具合や脆弱性が起こるか確認することが可能である。不具合や脆弱性が確認できた場合は、実装に誤りがある可能性が高いため、修正等を施すことで、事前に証明書による攻撃に備えることが可能である。   As shown in FIG. 6, this example is equivalent to confirming whether or not the DB access failure or vulnerability of the PKI system can be reproduced by the fraud proof information. As described above, according to the vulnerability testing apparatus 100 according to the second embodiment, it is possible to generate fraud certification information by linking the vulnerability information DB 192, the product operation DB 190, and the attribute information DB 194. Then, it is possible to send fraud certification information to the inspection object 200 and check whether a defect or vulnerability occurs. If defects or vulnerabilities are confirmed, there is a high possibility that there is an error in the implementation. Therefore, it is possible to prepare for an attack with a certificate in advance by making corrections.

実施の形態3.
次に、実施の形態3について説明する。実施の形態3では、Webサーバにブラウザがアクセスする際のブラウザの画像の処理に関する不具合や脆弱性を検査する脆弱性検査装置(不正情報生成装置)100の例について説明する。
Embodiment 3 FIG.
Next, Embodiment 3 will be described. In the third embodiment, an example of a vulnerability inspection apparatus (incorrect information generation apparatus) 100 that inspects defects and vulnerabilities related to browser image processing when a browser accesses a Web server will be described.

実施の形態3にかかる脆弱性検査装置100の機能、および動作の流れは、実施の形態1にかかる脆弱性検査装置100の機能、および動作の流れと同様である。そこで、図19と図10とに基づき実施の形態3にかかる脆弱性検査装置100の動作について説明する。図19は、実施の形態3にかかる脆弱性検査装置100の処理とデータの流れを示した図である。
ここでは、不正証明情報としてCCを使用し、CCを適用したWebサーバにブラウザがアクセスする際のブラウザの画像の処理に関する不具合や脆弱性を検査する。
The function and operation flow of the vulnerability check apparatus 100 according to the third embodiment are the same as the function and operation flow of the vulnerability check apparatus 100 according to the first embodiment. The operation of the vulnerability check apparatus 100 according to the third embodiment will be described with reference to FIGS. 19 and 10. FIG. 19 is a diagram illustrating a process and a data flow of the vulnerability check apparatus 100 according to the third embodiment.
Here, CC is used as fraud proof information, and a defect or vulnerability relating to browser image processing when the browser accesses a Web server to which CC is applied is inspected.

実施の形態1同様、事前に、脆弱性情報記憶部122は、インターネット940等から脆弱性情報および対応するexploitとを脆弱性情報DB192として記憶装置984に記憶する(脆弱性情報記憶ステップ)。また、属性情報記憶部124は、規定されている証明情報の各属性およびextensionの構造の情報である属性情報を記憶装置984に属性情報DB194として記憶する(属性情報記憶ステップ)。   Like the first embodiment, the vulnerability information storage unit 122 stores the vulnerability information and the corresponding exploit from the Internet 940 or the like in advance in the storage device 984 as the vulnerability information DB 192 (vulnerability information storage step). Further, the attribute information storage unit 124 stores each attribute of the specified proof information and attribute information that is information on the structure of the extension in the storage device 984 as the attribute information DB 194 (attribute information storage step).

そして、製品運用記憶ステップ(S101)では、製品運用記憶部120は、図20に示す製品情報と設定情報と運用情報とを記憶する。つまり、製品運用記憶部120は、製品情報としてbrowserXSP1、設定情報としてHTTP、運用情報としてCCによりサイトの真正性を確認、Verifiable Contentを参照するという情報を記憶する。図20は、製品運用記憶部120が製品運用DB190として記憶する情報の一例である。   In the product operation storage step (S101), the product operation storage unit 120 stores the product information, setting information, and operation information shown in FIG. That is, the product operation storage unit 120 stores information that confirms the authenticity of the site by referring to browserXSP1 as the product information, HTTP as the setting information, and CC as the operation information, and referring to the Verifiable Content. FIG. 20 is an example of information stored in the product operation storage unit 120 as the product operation DB 190.

次に、脆弱性情報検索ステップ(S102)では、脆弱性情報検索部130は、例えば、製品運用DB190から製品情報、設定情報として図21に示す情報を取り出す。図21は、脆弱性情報検索部130が検査キーとして使用する情報の一例である。つまり、脆弱性情報検索部130は、製品情報として製品名browserXSP1、設定情報としてセキュアプロトコルは指定なし、通信プロトコルはHTTP、セキュリティは指定なしという情報を取り出す。そして、脆弱性情報検索部130は、これらの情報を検索キーとして脆弱性情報DB192を検索する。
ここで、脆弱性情報記憶部122は、例えば、実施の形態1同様、脆弱性情報DB192に図13に示す情報を記憶したとする。
脆弱性情報検索部130は、例えば、上記検索キーにより脆弱性情報DB192を検索する場合に、製品名を必須とし、かつ、セキュアプロトコル、通信プロトコル、セキュリティのいずれか1つ以上がマッチするエントリを検索する。この場合、検索されるのはエントリ3である。エントリ3は、browserXSP1に画像処理の脆弱性がありという脆弱性情報である。エントリ3から、脆弱性の発生箇所が脆弱性の発生箇所が画像表示の処理であることが判断できる。つまり、Exploit(検査情報)の攻撃箇所にはGIF,JPEGが指定されている。
Next, in the vulnerability information search step (S102), the vulnerability information search unit 130 extracts the information shown in FIG. 21 as product information and setting information from the product operation DB 190, for example. FIG. 21 is an example of information used by the vulnerability information search unit 130 as an inspection key. That is, the vulnerability information search unit 130 extracts the product name browserXSP1 as product information, the secure protocol not specified as setting information, the communication protocol HTTP, and the security unspecified information. And the vulnerability information search part 130 searches vulnerability information DB192 using such information as a search key.
Here, it is assumed that the vulnerability information storage unit 122 stores the information illustrated in FIG. 13 in the vulnerability information DB 192, for example, as in the first embodiment.
For example, when the vulnerability information search unit 130 searches the vulnerability information DB 192 using the search key, the vulnerability information search unit 130 includes an entry that requires a product name and matches any one or more of a secure protocol, a communication protocol, and security. Search for. In this case, entry 3 is searched. Entry 3 is vulnerability information indicating that browserXSP1 has an image processing vulnerability. From entry 3, it can be determined that the location where the vulnerability is generated is the image display process. That is, GIF and JPEG are designated for the attack location of the Exploit (inspection information).

次に、証明情報検索ステップ(S103)では、証明情報検索部142は、製品運用DB190の運用情報からVerifiable Contentをexploitの設定対象の候補と判断する。   Next, in the certification information retrieval step (S103), the certification information retrieval unit 142 determines that the Verifiable Content is a candidate for setting the exploit from the operation information in the product operation DB 190.

次に、証明情報属性検索ステップ(S104)では、証明情報属性検索部144は、Verifiable Contentの構造情報を属性情報DB194から取得する。   Next, in the proof information attribute search step (S104), the proof information attribute search unit 144 acquires the structure information of the Verifiable Content from the attribute information DB 194.

次に、設定属性検索ステップ(S105)では、設定属性検索部146は、Verifiable Contentに画像を設定できることを認識する。設定属性検索部146は、既に、脆弱性情報DB192における検索結果よりexploitのタイプがGIF、JPEGであることを判定できる。そこで、設定属性検索部146は、実施の形態1、実施の形態2に示すようにVerifiable Contentの構造情報からGIF、JPEGを設定可能な属性を探す。   Next, in the setting attribute search step (S105), the setting attribute search unit 146 recognizes that an image can be set in the Verifiable Content. The setting attribute search unit 146 can already determine from the search result in the vulnerability information DB 192 that the type of exploit is GIF or JPEG. Therefore, the setting attribute search unit 146 searches for an attribute capable of setting GIF and JPEG from the structure information of the Verifiable Content as shown in the first and second embodiments.

次に、不正情報生成ステップ(S106)では、不正情報生成部150は、まず、設定属性検索部146が探したVerifiable Contentの属性にexploitのGIF、JPEGを設定する。そして、不正情報生成部150は、生成した不正証明情報が検査用に別途生成した不正な認証期間である不正CAを証明する不正CA証明書の配下の証明書となるように、Issuerに不正CA証明書のSubjectを設定する。さらに、不正情報生成部150は、不正CA証明書の不正CA公開鍵と対をなす不正CA秘密鍵により署名を付与する。
実施の形態1同様、脆弱性検査装置100は、例えば、上記不正CA公開鍵を事前に検査対象物200に渡しておく。そのため、検査対象物200は、上記不正証明情報を受け取り検証すると、不正CA公開鍵により不正証明情報が認証できる。したがって、検査対象物200は、不正証明情報を信用する。その結果として、検査対象物200は、不正証明情報の属性情報に埋め込まれたexploitにより脆弱性が発生する可能性がある。
Next, in the fraud information generation step (S106), the fraud information generation unit 150 first sets the GIF and JPEG of the exploit in the attribute of the verifiable content searched by the setting attribute search unit 146. Then, the fraudulent information generation unit 150 sends the fraudulent certificate information to the issuer so that the generated fraud certification information becomes a certificate under a fraudulent CA certificate that proves a fraudulent CA that is a fraudulent authentication period separately generated for inspection. Set the Subject of the certificate. Further, the unauthorized information generation unit 150 gives a signature using an unauthorized CA private key paired with the unauthorized CA public key of the unauthorized CA certificate.
As in the first embodiment, the vulnerability testing apparatus 100 passes the unauthorized CA public key to the inspection target 200 in advance, for example. Therefore, when the inspection object 200 receives and verifies the fraud certification information, the fraud certification information can be authenticated by the fraud CA public key. Accordingly, the inspection object 200 trusts the fraud certification information. As a result, there is a possibility that the inspection target 200 may be vulnerable due to the exploit embedded in the attribute information of the fraud proof information.

次に、検査情報設定ステップ(S107)では、検査情報設定部162は、ブラウザを検査するため、CC適用Webサイトを検査処理部160として、(S106)で、不正情報生成部150が生成した不正証明情報を設定する。検査情報設定部162の実現は、通常、Webのソフトウェアにはコンテンツの設置を指定する仕組みが備わっているため、この仕組みを利用すれば良い。   Next, in the inspection information setting step (S107), the inspection information setting unit 162 uses the CC application website as the inspection processing unit 160 to inspect the browser, and the fraud information generated by the unauthorized information generation unit 150 in (S106). Set certification information. The inspection information setting unit 162 is usually implemented by using a mechanism for designating content installation in Web software.

次に、検査実施ステップ(S108)では、検査実施部164は、検査処理部160に対し検査対象物200に接続する命令を出す。   Next, in the inspection execution step (S108), the inspection execution unit 164 issues a command to connect to the inspection object 200 to the inspection processing unit 160.

次に、検査処理ステップ(S109)では、検査処理部160は、検査対象物200と通信を開始し、CCとして不正証明情報が送信される。
ここでは、検査対象物200はブラウザ等が該当する。つまり、検査対象物200であるブラウザは、検査実施部164からの命令があると検査処理部160へアクセスするとしても構わない。または、検査を行うユーザが手動でブラウザにより検査処理部160へアクセスを行っても構わない。Webコンテンツを取得する際に、検査処理部160からCCとして不正証明情報が送信される。検査対象物200であるブラウザは、送信された不正証明情報を受信する。そして、検査対象物200は、CCを抽出し、さらにVerifiable Contentのexploitである画像が挿入された属性を抽出する。上述したように、検査対象物200は、不正CA公開鍵により不正証明情報を認証し、不正証明情報を信用する。そのため、ここでは、検査対象物200は、exploitの部分まで含めてコンテンツ表示層にパラメータとして渡したとする。つまり、exploitが挿入(連結)された、画像をそのまま渡してしまったとする。図13に示すように、コンテンツ表示層では、exploitを渡された場合に、BoF(Buffer OverFlow)が発生する脆弱性がある。したがって、exploitが挿入された属性情報をそのままコンテンツ表示層に渡してしまった結果としてBoFが発生してしまう。
Next, in the inspection processing step (S109), the inspection processing unit 160 starts communication with the inspection object 200, and fraud certification information is transmitted as CC.
Here, the inspection object 200 corresponds to a browser or the like. That is, the browser that is the inspection object 200 may access the inspection processing unit 160 when there is a command from the inspection execution unit 164. Alternatively, the user who performs the inspection may manually access the inspection processing unit 160 using a browser. When acquiring Web content, fraud certification information is transmitted as CC from the inspection processing unit 160. The browser which is the inspection object 200 receives the transmitted fraud certification information. Then, the inspection object 200 extracts the CC, and further extracts the attribute in which the image that is an Exploit of the Verifiable Content is inserted. As described above, the inspection object 200 authenticates the fraud certification information with the fraud CA public key and trusts the fraud certification information. Therefore, here, it is assumed that the inspection object 200 is passed as a parameter to the content display layer including the portion of the exploit. In other words, it is assumed that the image with the exploit inserted (connected) is passed as it is. As shown in FIG. 13, the content display layer has a vulnerability that BoF (Buffer OverFlow) occurs when “exploit” is passed. Therefore, BoF occurs as a result of passing the attribute information in which the exploit is inserted as it is to the content display layer.

そして、検査結果判定ステップ(S110)では、検査結果判定部166は、例えば、検査対象物200からの返信を待つ。検査対象物200の脆弱性が再現しなければ、エラーレスポンスが返信される場合が考えられる。しかし、検査結果判定部166は、例えば、返信もなく、TCPの切断信号が無い場合には、不正証明情報が原因で脆弱性が再現したか、不具合が発生したと判断できる。または、検査対象物200であるブラウザで、BoFが発生したために、正常にコンテンツが表示されない等の不具合が発生することを確認する。このことによりBoFの脆弱性が確認できる。   In the inspection result determination step (S110), the inspection result determination unit 166 waits for a reply from the inspection object 200, for example. If the vulnerability of the inspection target 200 is not reproduced, an error response may be returned. However, for example, if there is no reply and no TCP disconnection signal, the inspection result determination unit 166 can determine that the vulnerability has been reproduced due to the fraud certification information or that a defect has occurred. Alternatively, it is confirmed that a malfunction occurs such that content is not normally displayed because BoF has occurred in the browser that is the inspection object 200. This confirms the vulnerability of BoF.

この例は、図7に示す様に、PKIシステムのコンテンツ表示の不具合や脆弱性を不正証明情報により再現できるか確認することに相当する。このように、実施の形態3にかかる脆弱性検査装置100によれば、脆弱性情報DB192と製品運用DB190と属性情報DB194を連携させることにより、不正証明情報を生成できる。そして、不正証明情報を検査対象物200に送り込み、不具合や脆弱性が起こるか確認することが可能である。不具合や脆弱性が確認できた場合は、実装に誤りがある可能性が高いため、修正等を施すことで、事前に証明書による攻撃に備えることが可能である。   As shown in FIG. 7, this example corresponds to confirming whether or not the content display defect or vulnerability of the PKI system can be reproduced by the fraud proof information. As described above, according to the vulnerability testing apparatus 100 according to the third embodiment, fraud certification information can be generated by linking the vulnerability information DB 192, the product operation DB 190, and the attribute information DB 194. Then, it is possible to send fraud certification information to the inspection object 200 and check whether a defect or vulnerability occurs. If defects or vulnerabilities are confirmed, there is a high possibility that there is an error in the implementation. Therefore, it is possible to prepare for an attack with a certificate in advance by making corrections.

つまり、実施の形態2、実施の形態3かかる脆弱性検査装置100は、属性情報DB194に、PKC以外の各種証明書の構造の情報を格納することにより、PKCだけでなく、AC、CC等その他の証明書情報のexploit証明書を生成する機能を追加したものである。   In other words, the vulnerability testing apparatus 100 according to the second and third embodiments stores not only PKC but also AC, CC, etc. by storing information on the structure of various certificates other than PKC in the attribute information DB 194. A function for generating an exploit certificate of the certificate information is added.

実施の形態4.
次に、実施の形態4について説明する。実施の形態4では、複数の脆弱性情報が検索された場合に、各脆弱性情報に対する不正証明情報を生成する脆弱性検査装置(不正情報生成装置)100について説明する。
Embodiment 4 FIG.
Next, a fourth embodiment will be described. In the fourth embodiment, a vulnerability inspection apparatus (incorrect information generation apparatus) 100 that generates fraud certification information for each piece of vulnerability information when a plurality of pieces of vulnerability information is searched will be described.

前述した各実施の形態において、脆弱性情報検索ステップ(S102)で、脆弱性情報検索部130が脆弱性情報DB192から複数の脆弱性情報を検索した場合、それぞれの脆弱性情報に該当するexploitを設定した証明書を生成しても構わない。
つまり、脆弱性情報検索部130は、複数の脆弱性情報を検索した場合、複数の脆弱性情報の各脆弱性情報に対する検査情報を取得する。設定属性判定部140は、運用情報と属性情報とに基づき、脆弱性情報検索部130が取得した検査情報を設定する属性を複数の脆弱性情報の各脆弱性情報毎に判定する。不正情報生成部150は、設定属性判定部140が判定した属性に該当の検査情報を設定して、複数の脆弱性情報の各脆弱性情報毎に不正証明情報を生成する。
In each of the embodiments described above, when the vulnerability information search unit 130 searches for a plurality of vulnerability information from the vulnerability information DB 192 in the vulnerability information search step (S102), an exploit corresponding to each vulnerability information is displayed. You may generate a set certificate.
That is, the vulnerability information search unit 130 acquires inspection information for each vulnerability information of the plurality of vulnerability information when searching for a plurality of vulnerability information. The setting attribute determination unit 140 determines an attribute for setting the inspection information acquired by the vulnerability information search unit 130 for each vulnerability information of the plurality of vulnerability information based on the operation information and the attribute information. The fraud information generation unit 150 sets the corresponding inspection information to the attribute determined by the setting attribute determination unit 140, and generates fraud certification information for each vulnerability information of the plurality of vulnerability information.

例えば、実施の形態1の脆弱性情報検索ステップ(S102)において、3つの脆弱性情報が検索されたとする。この場合、設定属性判定ステップ(S103−S105)では、設定属性判定部140は、まず1つ目の脆弱性情報を選択する(1)。次に、設定属性判定部140は、実施の形態1と同様、選択した脆弱性情報に対応するexploitを埋め込む証明書の属性を、製品運用DB190、属性情報DB194の情報を利用し決定する(2)。そして、脆弱性検査装置100は、以降、不正証明情報の生成から検査まで同じ処理を実施する(3)。処理が終了すると、設定属性判定部140は、検索された2つ目の脆弱性情報について、上記(1)から(3)までの処理を行う。そして、また処理が終了すると、設定属性判定部140は、検索された3つ目の脆弱性情報について、上記(1)から(3)までの処理を行う。つまり、検索された脆弱性情報の数だけ(S103)以降の処理を繰り返す。   For example, assume that three pieces of vulnerability information are searched in the vulnerability information search step (S102) of the first embodiment. In this case, in the setting attribute determination step (S103-S105), the setting attribute determination unit 140 first selects the first vulnerability information (1). Next, the setting attribute determination unit 140 determines the attribute of the certificate in which the exploit corresponding to the selected vulnerability information is embedded using information in the product operation DB 190 and the attribute information DB 194 as in the first embodiment (2 ). Then, the vulnerability inspection apparatus 100 performs the same processing from the generation of fraud certification information to the inspection thereafter (3). When the process ends, the setting attribute determination unit 140 performs the processes (1) to (3) for the second vulnerability information that has been searched. When the process is completed, the setting attribute determination unit 140 performs the processes (1) to (3) for the third vulnerability information that has been searched. That is, the subsequent processing is repeated by the number of retrieved vulnerability information (S103).

つまり、実施の形態4にかかる脆弱性検査装置100は、脆弱性情報DB192から、複数の脆弱性情報が検索された場合、対応するexploitを設定した証明書を1つ1つ生成する機能を追加したものである。   That is, the vulnerability testing apparatus 100 according to the fourth embodiment has a function of generating, one by one, a certificate in which a corresponding exploit is set when a plurality of vulnerability information is searched from the vulnerability information DB 192. It is a thing.

実施の形態2、実施の形態3において、複数の脆弱性が検索された場合も同様の処理を行うことができる。   In the second and third embodiments, the same processing can be performed when a plurality of vulnerabilities are searched.

実施の形態5.
次に、実施の形態5について説明する。実施の形態5では、複数の脆弱性情報が検索された場合に、任意の組合せのexploitを持った不正証明情報を生成する脆弱性検査装置(不正情報生成装置)100について説明する。
Embodiment 5 FIG.
Next, a fifth embodiment will be described. In the fifth embodiment, a vulnerability inspection apparatus (unauthorized information generating apparatus) 100 that generates fraud certification information having an arbitrary combination of exploits when a plurality of pieces of vulnerability information are searched will be described.

前述した各実施の形態において、脆弱性情報検索ステップ(S102)で、脆弱性情報検索部130が脆弱性情報DB192から複数の脆弱性情報を検索した場合、検索した脆弱性情報の任意の組合せに含まれる各脆弱性情報に対応するexploitを設定した証明書を生成しても構わない。
つまり、脆弱性情報検索部130は、複数の脆弱性情報を検索した場合、複数の脆弱性情報から任意に選択した複数の脆弱性情報に対する検査情報を取得する。設定属性判定部140は、運用情報と属性情報とに基づき、脆弱性情報検索部130が取得した検査情報を設定する属性を任意に選択した複数の脆弱性情報の各脆弱性情報毎に判定する。不正情報生成部150は、設定属性判定部140が判定した属性に該当の検査情報を設定して1つの不正証明情報を生成する。または、不正情報生成部150は、設定属性判定部140が判定した属性に該当の検査情報を設定して、複数の脆弱性情報のすべての脆弱性情報の組合せ毎に不正証明情報を生成しても構わない。
In each of the above-described embodiments, when the vulnerability information search unit 130 searches for a plurality of vulnerability information from the vulnerability information DB 192 in the vulnerability information search step (S102), the vulnerability information search unit 130 selects any combination of the searched vulnerability information. You may generate | occur | produce the certificate which set the exploit corresponding to each vulnerability information contained.
That is, when searching for a plurality of vulnerability information, the vulnerability information search unit 130 acquires inspection information for a plurality of vulnerability information arbitrarily selected from the plurality of vulnerability information. The setting attribute determination unit 140 determines for each vulnerability information of a plurality of vulnerability information arbitrarily selected attributes for setting the inspection information acquired by the vulnerability information search unit 130 based on the operation information and the attribute information. . The fraud information generation unit 150 sets corresponding inspection information to the attribute determined by the setting attribute determination unit 140 and generates one fraud certification information. Alternatively, the fraud information generation unit 150 sets the corresponding inspection information to the attribute determined by the setting attribute determination unit 140, and generates fraud certification information for each combination of all vulnerability information of a plurality of vulnerability information. It doesn't matter.

例えば、実施の形態1において、脆弱性情報検索ステップ(S102)において、3つの脆弱性情報852が検索されたとする。この場合、設定属性判定ステップ(S103−S105)では、設定属性判定部140は、まず脆弱性情報の組合せを選択する。3つの脆弱性情報を、脆弱性情報1、脆弱性情報2、脆弱性情報3とする。設定属性判定部140が3つの脆弱性情報の中から例えばランダムに選択した結果として、例えば、脆弱性情報1、脆弱性情報3が選ばれたとする(1)。次に、設定属性判定部140は、脆弱性情報1に対して、実施の形態1同様、対応するexploitを埋め込む証明書の属性を、製品運用DB190、属性情報DB194の情報を利用し決定する。これを、属性情報1とする(2)。次に、設定属性判定部140は、脆弱性情報3に対して、実施の形態1同様、対応するexploitを埋め込む証明書の属性を、製品運用DB190、属性情報DB194の情報を利用し決定する。これを、属性情報3とする(3)。設定属性判定部140は(2)、(3)の処理で決定された2つの属性情報を不正情報生成部150に渡す(4)。不正情報生成部150は、属性情報1に該当するexploit1を脆弱性情報DB192から受け取る。同様に属性情報3に該当するexploit3を脆弱性情報DB192から受け取る(5)。不正情報生成部150は、属性情報1にexploit1を、属性情報3にexploit3を設定した不正証明情報を生成する(6)。脆弱性検査装置100は、以降、exploit証明書の設定から検査まで同じ処理を実施する(7)。   For example, in the first embodiment, it is assumed that three vulnerability information 852 are searched in the vulnerability information search step (S102). In this case, in the setting attribute determination step (S103-S105), the setting attribute determination unit 140 first selects a combination of vulnerability information. The three pieces of vulnerability information are referred to as vulnerability information 1, vulnerability information 2, and vulnerability information 3. For example, it is assumed that the vulnerability information 1 and the vulnerability information 3 are selected as a result of the setting attribute determination unit 140 selecting, for example, at random from the three pieces of vulnerability information (1). Next, the setting attribute determination unit 140 determines the attribute of the certificate in which the corresponding exploit is embedded for the vulnerability information 1 using the information in the product operation DB 190 and the attribute information DB 194 as in the first embodiment. This is attribute information 1 (2). Next, the setting attribute determination unit 140 determines the attribute of the certificate in which the corresponding exploit is embedded for the vulnerability information 3 using the information in the product operation DB 190 and the attribute information DB 194 as in the first embodiment. This is attribute information 3 (3). The setting attribute determination unit 140 passes the two pieces of attribute information determined in the processes (2) and (3) to the unauthorized information generation unit 150 (4). The unauthorized information generation unit 150 receives the exploit 1 corresponding to the attribute information 1 from the vulnerability information DB 192. Similarly, exploit3 corresponding to the attribute information 3 is received from the vulnerability information DB 192 (5). The fraud information generating unit 150 generates fraud certification information in which the attribute information 1 is set to “exploit 1” and the attribute information 3 is set to “exploit 3” (6). The vulnerability checking apparatus 100 thereafter performs the same processing from setting of the exploit certificate to checking (7).

脆弱性情報の任意の組合せは、検索された脆弱性情報を表示して、採用する脆弱性をGUI(Graphical User Interface)等でオペレータに選択させる方法や設定属性判定部140等がランダムに組合せを選んでも構わない。また、検索されたすべての脆弱性情報を含めても構わない。また、ランダムに組合せを選択する方法については、既にある手法を用いることができる。   Arbitrary combinations of vulnerability information can be obtained by displaying the searched vulnerability information and allowing the operator to select the vulnerability to be adopted using GUI (Graphical User Interface), etc. You can choose. In addition, all searched vulnerability information may be included. Moreover, about the method of selecting a combination at random, the existing method can be used.

また、図22に示すように脆弱性検査装置100は、オペレータにGUIにより脆弱性情報の組合せを選択させる機能を備えても構わない。図22は、オペレータにGUIにより脆弱性情報の組合せを選択させる機能を備える実施の形態5にかかる脆弱性検査装置100の機能ブロック図である。実施の形態5にかかる脆弱性検査装置100は、実施の形態1かかる脆弱性検査装置100の機能に加え、脆弱性情報選択部132を備える。脆弱性情報選択部132は、脆弱性情報検索部130が複数の脆弱性情報を検索した場合、検索した複数の脆弱性情報から所定の脆弱性情報を入力装置982により選択する。つまり、脆弱性情報選択部132は、例えば、検索された脆弱性情報がリスト表示された脆弱性を選択する。したがって、例えば、脆弱性情報検索部130は、脆弱性情報選択部132が選択した所定の脆弱性情報に対する検査情報を取得する。次に、設定属性判定部140は、運用情報と属性情報とに基づき、脆弱性情報検索部130が取得した検査情報を設定する属性を脆弱性情報選択部132が選択した所定の脆弱性情報の各脆弱性情報毎に判定する。そして、不正情報生成部150は、設定属性判定部140が判定した属性に該当の検査情報を設定して1つの不正証明情報を生成する。   Further, as shown in FIG. 22, the vulnerability testing apparatus 100 may be provided with a function that allows an operator to select a combination of vulnerability information using a GUI. FIG. 22 is a functional block diagram of the vulnerability check apparatus 100 according to the fifth embodiment having a function of allowing an operator to select a combination of vulnerability information using a GUI. The vulnerability check apparatus 100 according to the fifth embodiment includes a vulnerability information selection unit 132 in addition to the functions of the vulnerability check apparatus 100 according to the first embodiment. When the vulnerability information search unit 130 searches for a plurality of pieces of vulnerability information, the vulnerability information selection unit 132 selects predetermined vulnerability information from the searched pieces of vulnerability information using the input device 982. That is, the vulnerability information selection unit 132 selects, for example, the vulnerability in which the searched vulnerability information is displayed as a list. Therefore, for example, the vulnerability information search unit 130 acquires inspection information for the predetermined vulnerability information selected by the vulnerability information selection unit 132. Next, the setting attribute determination unit 140 sets the predetermined vulnerability information selected by the vulnerability information selection unit 132 based on the operation information and the attribute information. The vulnerability information selection unit 132 selects the attribute for setting the inspection information acquired by the vulnerability information search unit 130. Determine for each vulnerability information. Then, the fraud information generation unit 150 sets corresponding inspection information to the attribute determined by the setting attribute determination unit 140 and generates one fraud certification information.

図23は、脆弱性情報選択用GUIの一例である。図23に示すように脆弱性情報選択部132は、脆弱性情報1、脆弱性情報2、脆弱性情報3の3つの脆弱性から組合せを指定できる。図23では、脆弱性情報選択部132は、例えば、オペレータに脆弱性情報1、脆弱性情報3をチェックさせ、実行ボタンを押させることにより組合せを選択できる。   FIG. 23 is an example of a vulnerability information selection GUI. As shown in FIG. 23, the vulnerability information selection unit 132 can specify a combination from the three vulnerabilities of vulnerability information 1, vulnerability information 2, and vulnerability information 3. In FIG. 23, the vulnerability information selection unit 132 can select a combination by causing the operator to check the vulnerability information 1 and the vulnerability information 3, for example, and pressing an execution button.

つまり、実施の形態5にかかる脆弱性検査装置100は、脆弱性情報DB192から、複数の脆弱性情報が検索された場合、対応するexploitの任意の組合せを持った証明情報を生成する機能を追加したものである。ここで、組合せの決定は、検索された脆弱性情報を表示し、採用する脆弱性をGUIでオペレータに選択させる方法や装置がランダムに組合せを選ぶ方法や全ての組合せを生成する方法等が考えられる。   That is, the vulnerability testing apparatus 100 according to the fifth embodiment has a function of generating certification information having an arbitrary combination of corresponding exploits when a plurality of vulnerability information is searched from the vulnerability information DB 192. It is a thing. Here, the combination is determined by displaying the searched vulnerability information and allowing the operator to select the vulnerability to be adopted using the GUI, the method in which the device randomly selects a combination, and the method in which all combinations are generated. It is done.

実施の形態2、実施の形態3において、複数の脆弱性が検索された場合も同様の処理を行うことができる。また、自動的に全ての組合せ毎の不正証明情報を生成しても構わない。   In the second and third embodiments, the same processing can be performed when a plurality of vulnerabilities are searched. Further, fraud certification information for every combination may be automatically generated.

実施の形態6.
次に、実施の形態6について説明する。実施の形態6では、exploitに空白文字等を混入した派生系のexploitを生成して不正証明情報を生成する脆弱性検査装置(不正情報生成装置)100について説明する。
Embodiment 6 FIG.
Next, a sixth embodiment will be described. In the sixth embodiment, a vulnerability checking device (illegal information generating device) 100 that generates a derived-type exploit in which a blank character or the like is mixed in an exploit to generate fraud certification information will be described.

脆弱性検査装置100は、exploitに空白文字の混入等の派生系が考えられる場合は、混入文字の種類、数、位置等のパラメータを指定し派生exploitを生成しても構わない。そして、脆弱性検査装置100は、対応したexploit証明書を生成しても構わない。その場合は、脆弱性検査装置100は、例えば、パラメータを設定するGUIを備える。   The vulnerability checking apparatus 100 may generate a derived exploit by designating parameters such as the type, number, and position of the mixed characters when a derived system such as mixing of blank characters is considered in the exploit. And the vulnerability test | inspection apparatus 100 may produce | generate the corresponding exploit certificate. In that case, the vulnerability testing apparatus 100 includes a GUI for setting parameters, for example.

図24は、パラメータを設定する機能を備える実施の形態6にかかる脆弱性検査装置100の機能を示す機能ブロック図である。実施の形態6にかかる脆弱性検査装置100は、実施の形態1かかる脆弱性検査装置100の機能に加え、変更情報入力部152を備える。変更情報入力部152は、検査情報の変更情報を入力装置982により入力する。そして、不正情報生成部150は、設定属性判定部140が判定した属性に、脆弱性情報検索部130が取得した検査情報に変更情報入力部152が入力した変更情報を反映させた検査情報を設定して不正証明情報を生成して記憶装置984に記憶する。   FIG. 24 is a functional block diagram illustrating functions of the vulnerability check apparatus 100 according to the sixth embodiment having a function of setting parameters. The vulnerability check apparatus 100 according to the sixth embodiment includes a change information input unit 152 in addition to the functions of the vulnerability check apparatus 100 according to the first embodiment. The change information input unit 152 inputs the change information of the inspection information with the input device 982. Then, the fraud information generation unit 150 sets the inspection information in which the change information input by the change information input unit 152 is reflected in the inspection information acquired by the vulnerability information search unit 130 in the attribute determined by the setting attribute determination unit 140 Then, fraud proof information is generated and stored in the storage device 984.

図25は、脆弱性情報編集用GUIの一例である。図25に示すように変更情報入力部152は、表示された脆弱性情報のexploitを編集することができる。変更情報入力部152は、例えば、オペレータにexploitを修正させ、編集完了ボタンを押させることで、派生のexploitを設定した不正証明情報を生成できる。   FIG. 25 is an example of a vulnerability information editing GUI. As shown in FIG. 25, the change information input unit 152 can edit the exploit information of the displayed vulnerability information. The change information input unit 152 can generate fraud certification information in which a derived exploit is set, for example, by causing the operator to modify the exploit and pressing an edit completion button.

図26は、脆弱性情報編集用GUIの他の一例である。図26に示すように、変更情報入力部152は、exploitにおける挿入文字の位置を指定する挿入箇所、挿入する文字列を指定する挿入文字列、挿入する個数を指定する挿入個数をオペレータに指定させ、完了ボタンを押させることで、文字列を挿入した派生のexploitを設定した不正証明情報を生成できる。   FIG. 26 shows another example of the vulnerability information editing GUI. As shown in FIG. 26, the change information input unit 152 causes the operator to specify the insertion location for specifying the position of the insertion character in the exploit, the insertion character string for specifying the character string to be inserted, and the number of insertions for specifying the number of insertions. By pressing the completion button, it is possible to generate fraud certification information in which a derived exploit with a character string inserted is set.

また、変更情報入力部152は、GUIで文字の挿入を指定するのではなく、設定ファイルで指定することで、自動的に文字列が設定されるようにしても構わない。例えば、「exploitの先頭に’fff’を3つ挿入する」と指定された設定ファイルを、変更情報入力部152は読み込んで先頭に’fff’を3つ挿入したexploitを生成する実装は可能である。   Further, the change information input unit 152 may automatically set a character string by designating a setting file instead of designating insertion of a character by using a GUI. For example, the change information input unit 152 can read the setting file designated as “insert three 'fff' at the beginning of the exploit” and generate an exploit with three 'fff' inserted at the beginning. is there.

つまり、実施の形態6にかかる脆弱性検査装置100は、exploitに空白文字の混入等の派生系が考えられる場合、混入文字の種類、数、位置等のパラメータを指定し派生exploitを生成し、対応した不正証明情報を生成する機能を追加したものである。また、パラメータの挿入方法は、GUIでオペレータにパラメータを選択させる方法や予め設定されたパラメータを自動挿入する方法等が考えられる。   That is, the vulnerability testing apparatus 100 according to the sixth embodiment generates a derived exploit by designating parameters such as the type, number, and position of mixed characters when a derived system such as mixing of blank characters is considered in the exploit. A function for generating corresponding fraud proof information is added. In addition, as a parameter insertion method, a method of allowing an operator to select a parameter using a GUI, a method of automatically inserting a preset parameter, or the like can be considered.

実施の形態7.
次に、実施の形態7について説明する。実施の形態7では、不正証明情報にexploitの設定に加え、属性の異常値の設定を追加する脆弱性検査装置(不正情報生成装置)100について説明する。
Embodiment 7 FIG.
Next, a seventh embodiment will be described. In the seventh embodiment, a vulnerability inspection apparatus (incorrect information generation apparatus) 100 that adds an abnormal value setting of an attribute to an incorrect certification information in addition to an exploit setting will be described.

脆弱性検査装置100は、不正証明情報の内容として、脆弱性情報DB192で管理されるexploitの設定に加え、属性の異常値の設定も追加する機能を備えても構わない。例えば、上述した変更情報入力部152がこの処理を行っても構わない。変更情報入力部152は、例えば、有効期限切れ、署名異常、既知のextentionのフォーマット違反等を不正証明情報に追加する。その場合は、脆弱性検査装置100は、例えば、各種パラメータを設定するGUIを備える。   Vulnerability inspection apparatus 100 may include a function of adding an abnormal value setting of an attribute in addition to an exploit setting managed by vulnerability information DB 192 as the content of fraud proof information. For example, the change information input unit 152 described above may perform this process. The change information input unit 152 adds, for example, expiration date, signature abnormality, format violation of a known extension, etc. to the fraud certification information. In that case, the vulnerability testing apparatus 100 includes a GUI for setting various parameters, for example.

図27は、属性の異常値の設定を不正証明情報に追加する属性設定用GUIの一例である。図27に示すように、変更情報入力部152は、Version、有効期限、Subject等の必須属性、及び、鍵用途、証明書のポリシー等のPKCの属性の一部を表示し、これらを入力することで属性の異常値の設定を不正証明情報に追加できる。ここでは、変更情報入力部152は、指定する値は異常値を指定する。変更情報入力部152は、例えば、有効期限1042であれば、071001(YYMMDD)〜051031(YYMMDD)のように開始と終わりの日付の大小を逆に指定する。また、変更情報入力部152は、例えば、証明書のポリシー1045に検査対象のシステムでは受け入れない値を指定する。指定する属性には、例えば、選択欄にチェックを入れることで行う。また、編集完了ボタンを押すことで、異常な属性値を持ち、かつexploitを設定した不正証明情報を生成する。
これらの属性の例は一部であり、PKC、AC等の仕様は規定されているのでその規定の属性をGUIに表示することで、オペレータが異常値の指定を行うことができる。複数の属性の異常値を指定しても構わない。また、GUIで異常値を指定するのではなく、設定ファイルに異常値を指定することで、自動的に異常値が設定される実装でも構わない。
FIG. 27 is an example of an attribute setting GUI for adding the abnormal value setting of the attribute to the fraud proof information. As shown in FIG. 27, the change information input unit 152 displays and inputs some of the required attributes such as version, expiration date, and subject, and PKC attributes such as key usage and certificate policy. Thus, the setting of the abnormal value of the attribute can be added to the fraud certification information. Here, the change information input unit 152 designates an abnormal value as the designated value. For example, if the expiration date is 1042, the change information input unit 152 reversely specifies the start and end dates, such as 071001 (YYMMDD) to 051031 (YYMMDD). For example, the change information input unit 152 designates a value that is not accepted by the system to be inspected in the certificate policy 1045. An attribute to be specified is performed by, for example, checking a selection column. In addition, when the edit completion button is pressed, fraud certification information having an abnormal attribute value and setting “exploit” is generated.
Examples of these attributes are only a part, and specifications such as PKC and AC are defined. By displaying the defined attributes on the GUI, the operator can specify an abnormal value. You may specify abnormal values for multiple attributes. In addition, an abnormal value may be automatically set by specifying an abnormal value in a setting file instead of specifying an abnormal value by using a GUI.

つまり、実施の形態7にかかる脆弱性検査装置100は、不正証明情報として、脆弱性情報DB192に管理されたexploitの設定に加え、属性の異常値を設定する機能を追加したものである。ここで、属性の異常値とは、例えば、有効期限切れ、署名異常、既知のextentionのフォーマット違反等である。また、異常値の設定を追加する方法としては、GUIでオペレータに属性と異常値を指定させる方法や予め設定された属性と異常値を自動挿入する方法等が考えられる。   That is, the vulnerability testing apparatus 100 according to the seventh embodiment has a function for setting an abnormal value of an attribute as fraud proof information in addition to the setting of the exploit managed in the vulnerability information DB 192. Here, the abnormal value of the attribute is, for example, an expiration date, an abnormal signature, a format violation of a known extension, or the like. Further, as a method for adding an abnormal value setting, a method for allowing an operator to specify an attribute and an abnormal value using a GUI, a method for automatically inserting a preset attribute and an abnormal value, and the like can be considered.

実施の形態8.
次に、実施の形態8について説明する。実施の形態8では、製品運用DB190への製品情報の登録を自動に行う脆弱性検査装置(不正情報生成装置)100について説明する。
Embodiment 8 FIG.
Next, an eighth embodiment will be described. In the eighth embodiment, a vulnerability inspection apparatus (unauthorized information generation apparatus) 100 that automatically registers product information in the product operation DB 190 will be described.

脆弱性検査装置100は、製品運用DB190への情報の登録において、予め検査対象物200の情報をGUI等により手動で設定する他に、OSやアプリケーションのフィンガープリンティング手法により使用しているOSやアプリケーションの情報をネットワーク経由で自動的に収集しても構わない。
ここで、フィンガープリンティングとは、例えば、Webサーバに対してHTTPリクエストを送信すると、使用しているWebサーバの製品名やバージョンがレスポンスとして返信されることをいう。また、telnet接続でOS名が返信されることをいう。これらの返信された情報であるフィンガープリントを利用し検査対象物200のホストのOSや使用しているソフトウェアのバージョンを取得する。
In addition to manually setting the information of the inspection object 200 in advance by using a GUI or the like when registering information in the product operation DB 190, the vulnerability inspection apparatus 100 uses the OS or application fingerprinting technique. It is also possible to automatically collect this information via the network.
Here, fingerprinting means that, for example, when an HTTP request is transmitted to a Web server, the product name and version of the Web server being used are returned as a response. Also, it means that the OS name is returned by telnet connection. Using the fingerprint as the returned information, the OS of the host of the inspection object 200 and the version of the software used are acquired.

図28は、製品運用DB190への製品情報の登録を自動に行う実施の形態8にかかる脆弱性検査装置100の機能を示す機能ブロック図である。実施の形態8にかかる脆弱性検査装置100は、実施の形態1にかかる脆弱性検査装置100に加え、製品情報収集部172を備える。製品情報収集部172は、検査対象物200の製品情報をフィンガープリンティングにより収集する。そして、製品運用記憶部120は、製品情報収集部172が収集した製品情報を記憶する。   FIG. 28 is a functional block diagram illustrating functions of the vulnerability check apparatus 100 according to the eighth embodiment that automatically registers product information in the product operation DB 190. The vulnerability check apparatus 100 according to the eighth embodiment includes a product information collection unit 172 in addition to the vulnerability check apparatus 100 according to the first embodiment. The product information collection unit 172 collects product information of the inspection target 200 by fingerprinting. The product operation storage unit 120 stores the product information collected by the product information collection unit 172.

実施の形態8は、ホストのOSや使用しているソフトウェアのバージョンを取得するツールと同様の手法により、手動で製品の製品情報を製品運用DB190へ登録することなく、自動的に製品情報を登録可能である。   In the eighth embodiment, the product information is automatically registered without manually registering the product information in the product operation DB 190 by using the same method as that of the tool for acquiring the OS of the host and the version of the software being used. Is possible.

つまり、実施の形態8にかかる脆弱性検査装置100は、製品運用DB190への情報の登録において、予め検査対象の情報をGUI等で手動で設定するのではなく、OSやアプリケーションのフィンガープリンティング手法により使用しているOS/アプリケーションの情報をネットワーク経由で自動的に収集する機能を追加したものである。   That is, the vulnerability testing apparatus 100 according to the eighth embodiment does not manually set information to be tested in advance using a GUI or the like when registering information in the product operation DB 190, but by using an OS or application fingerprinting technique. A function for automatically collecting information on the OS / application being used via a network is added.

実施の形態9.
次に、実施の形態9について説明する。実施の形態9では、製品運用DB190への運用情報の登録を自動に行う脆弱性検査装置(不正情報生成装置)100について説明する。
Embodiment 9 FIG.
Next, Embodiment 9 will be described. In the ninth embodiment, a vulnerability inspection apparatus (unauthorized information generation apparatus) 100 that automatically registers operation information in the product operation DB 190 will be described.

脆弱性検査装置100は、検査対象物200がサーバ等である場合、どのような運用を行っているか、手動で製品運用DB190へ登録するのではなく、自動的に調査する。脆弱性検査装置100は、例えば、ポートスキャンにより開いているポートを検査する。この時、ポート443が稼動していれば、HTTPSが稼動している。つまり、脆弱性検査装置100は、SSL対応のWebサーバが稼動していると判断できる。次に、脆弱性検査装置100は、SSLのハンドシェイクでCertificateRequestがサーバから送信されていれば、そのサーバではクライアント認証を必要としていると判断できる。CertificateRequestが送信されない場合でも、クライアント側からClientCeritificateを送信すると、送信されたクライアント証明書をチェックするサーバがある。脆弱性検査装置100は、正常なクライアント証明書を送った場合と有効期限が切れている場合や署名が改ざんされている証明書を送った場合とで挙動が異なるときは、クライアント証明書の提供を強要しないが、受信した場合はチェックしている運用であると判断できる。   When the inspection target 200 is a server or the like, the vulnerability inspection apparatus 100 automatically investigates what operation is being performed, rather than manually registering it in the product operation DB 190. For example, the vulnerability inspection apparatus 100 inspects an open port by a port scan. At this time, if the port 443 is operating, HTTPS is operating. That is, the vulnerability testing apparatus 100 can determine that an SSL-compatible Web server is operating. Next, if the Certificate Request is transmitted from the server by the SSL handshake, the vulnerability testing apparatus 100 can determine that the server requires client authentication. Even when the Certificate Request is not transmitted, there is a server that checks the transmitted client certificate when the Client Certificate is transmitted from the client side. The vulnerability inspection apparatus 100 provides a client certificate when the behavior is different between when a normal client certificate is sent and when the validity period has expired or when a certificate whose signature has been tampered is sent. However, if it is received, it can be determined that the operation is checking.

図29は、製品運用DB190への運用情報の登録を自動に行う実施の形態9にかかる脆弱性検査装置100の機能を示す機能ブロック図である。実施の形態9にかかる脆弱性検査装置100は、実施の形態1にかかる脆弱性検査装置100に加え、運用情報特定部174を備える。運用情報特定部174は、検査対象物200に対してポートスキャンを行い、検査対象物200で動作するPKIシステムで利用するサービスを特定する。そして、製品運用記憶部120は、運用情報特定部174が収集したサービスを製品情報として記憶する。   FIG. 29 is a functional block diagram illustrating functions of the vulnerability check apparatus 100 according to the ninth embodiment that automatically registers operation information in the product operation DB 190. The vulnerability testing apparatus 100 according to the ninth embodiment includes an operation information specifying unit 174 in addition to the vulnerability testing apparatus 100 according to the first embodiment. The operation information specifying unit 174 performs a port scan on the inspection target 200 and specifies a service used in the PKI system operating on the inspection target 200. The product operation storage unit 120 stores the service collected by the operation information specifying unit 174 as product information.

実施の形態9は、ポートスキャン等により、手動で製品の運用情報を製品運用DB190へ登録することなく、自動的に製品情報を登録可能である。   In the ninth embodiment, product information can be automatically registered without manually registering product operation information in the product operation DB 190 by port scanning or the like.

つまり、実施の形態9にかかる脆弱性検査装置100は、検査対象物200が、サーバである場合、どのような運用を行っているか、ポートスキャンにより開いているポートを検査し、攻撃対象のPKIシステムのサービスを特定する機能を追加したものである。   That is, when the inspection target 200 is a server, the vulnerability inspection apparatus 100 according to the ninth embodiment inspects the operation that is being performed, the port that is opened by the port scan, and the attack target PKI. It adds a function that identifies system services.

実施の形態10.
次に、実施の形態10について説明する。上述した実施の形態1から実施の形態9までは、PKC、AC、CCに限らず、その他の証明情報に対しても適用することができる。例えば、QC(Qualified Certificate,RFC3739)、PC(Proxy Certificate,RFC3820)等のIETF(Internet Engineering Task Force)で仕様化されているほかの証明書や、CSC(Code Signing Certificate)、DC(Device Certificate)等のIETFで仕様化されていない独自の証明書に対しても適用することができる。これらの証明書の構造の情報を属性情報DB194に格納することで、各々の不正証明情報を作成可能である。
Embodiment 10 FIG.
Next, Embodiment 10 will be described. The first to ninth embodiments described above can be applied not only to PKC, AC, and CC but also to other certification information. For example, other certificates specified by IETF (Internet Engineering Task Force) such as QC (Qualified Certificate, RFC3739), PC (Proxy Certificate, RFC3820), CSC (Code Signaling Certificate), CSC (Code Signaling Certificate), It can also be applied to unique certificates that are not specified in the IETF. By storing information on the structure of these certificates in the attribute information DB 194, each piece of fraud certification information can be created.

実施の形態11.
次に、実施の形態11について説明する。実施の形態11では、証明書の失効情報に対してexploitを設定する脆弱性検査装置(不正情報生成装置)100の例について説明する。
Embodiment 11 FIG.
Next, Embodiment 11 will be described. In the eleventh embodiment, an example of a vulnerability check apparatus (unauthorized information generation apparatus) 100 that sets an exploit for certificate revocation information will be described.

脆弱性検査装置100は、証明書だけでなく、CRLやOCSPのリクエストやレスポンスの構造を属性情報DB194に格納することでexploitCRLやexploitOCSPのリクエストやレスポンスを不正証明情報として生成可能である。
例えば、RFC3280によればCRLには、そのCRLに対する差分の情報をDeltaCRLとして公開することが可能である。CRLにはDeltaCRLの公開場所を、「FreshestCRL::=CRLDistributionPoints」のextentionで示すことが可能である。
Vulnerability inspection apparatus 100 can generate not only certificates but also CRL and OCSP requests and responses in attribute information DB 194 to generate exploit CRL and exploit OCSP requests and responses as fraud proof information.
For example, according to RFC3280, it is possible to publish the difference information for the CRL as DeltaCRL in the CRL. In the CRL, the disclosure location of the DeltaCRL can be indicated by an extension of “FreshestCRL :: = CRLDtributionPoints”.

実施の形態11にかかる脆弱性検査装置100の機能、および動作の流れは、実施の形態1にかかる脆弱性検査装置100の機能、および動作の流れと同様である。そこで、図30と図10とに基づき実施の形態11にかかる脆弱性検査装置100の動作について説明する。図30は、実施の形態11にかかる脆弱性検査装置100の処理とデータの流れを示した図である。
ここでは、S/MIMEメーラのCRLの処理に関する不具合や脆弱性を検査する。
The function and operation flow of the vulnerability check apparatus 100 according to the eleventh embodiment are the same as the function and operation flow of the vulnerability check apparatus 100 according to the first embodiment. Therefore, the operation of the vulnerability check apparatus 100 according to the eleventh embodiment will be described based on FIG. 30 and FIG. FIG. 30 is a diagram illustrating a process and a data flow of the vulnerability testing apparatus 100 according to the eleventh embodiment.
Here, a defect or vulnerability related to the CRL processing of the S / MIME mailer is inspected.

実施の形態1同様、事前に、脆弱性情報記憶部122は、インターネット940等から脆弱性情報および対応するexploitとを脆弱性情報DB192として記憶装置984に記憶する(脆弱性情報記憶ステップ)。また、属性情報記憶部124は、規定されている証明情報の各属性およびextensionの構造の情報である属性情報を記憶装置984に属性情報DB194として記憶する(属性情報記憶ステップ)。   Like the first embodiment, the vulnerability information storage unit 122 stores the vulnerability information and the corresponding exploit from the Internet 940 or the like in advance in the storage device 984 as the vulnerability information DB 192 (vulnerability information storage step). Further, the attribute information storage unit 124 stores each attribute of the specified proof information and attribute information that is information on the structure of the extension in the storage device 984 as the attribute information DB 194 (attribute information storage step).

次に、製品運用記憶ステップ(S101)では、製品運用記憶部120は、図31に示す製品情報と設定情報と運用情報とを記憶する。図31は、製品運用記憶部120が製品運用DB190として記憶する情報の一例である。つまり、製品運用記憶部120は、製品情報としてS/MIME mailerX、設定情報としてHTTP、運用情報としてPKCのチェックにCRLを使用という情報を記憶する。図31は、製品運用記憶部120が製品運用DB190として記憶する情報の一例である。   Next, in the product operation storage step (S101), the product operation storage unit 120 stores the product information, setting information, and operation information shown in FIG. FIG. 31 is an example of information stored in the product operation storage unit 120 as the product operation DB 190. That is, the product operation storage unit 120 stores information that S / MIME mailerX is used as product information, HTTP is used as setting information, and CRL is used for checking PKC as operation information. FIG. 31 is an example of information stored in the product operation storage unit 120 as the product operation DB 190.

次に、脆弱性情報検索ステップ(S102)では、脆弱性情報検索部130は、例えば、製品運用DB190から製品情報、設定情報として図32に示す情報を取り出す。図32は、脆弱性情報検索部130が検査キーとして使用する情報の一例である。つまり、脆弱性情報検索部130は、製品情報として製品名S/MIME mailer、設定情報としてセキュアプロトコルS/MIME、通信プロトコルはHTTP、セキュリティは指定なしという情報を取り出す。そして、脆弱性情報検索部130は、これらの情報を検索キーとして脆弱性情報DB192を検索する。
その結果、HTTPエンジンのリクエストに脆弱性あり、不正なURLにより異常終了が発生するという脆弱性情報が検索されたとする。
Next, in the vulnerability information search step (S102), the vulnerability information search unit 130 takes out the information shown in FIG. 32 as product information and setting information from the product operation DB 190, for example. FIG. 32 is an example of information used by the vulnerability information search unit 130 as an inspection key. That is, the vulnerability information search unit 130 extracts product name S / MIME mailer as product information, secure protocol S / MIME as setting information, HTTP as a communication protocol, and no designation of security. And the vulnerability information search part 130 searches vulnerability information DB192 using such information as a search key.
As a result, it is assumed that there is a vulnerability in an HTTP engine request, and vulnerability information that an abnormal termination occurs due to an illegal URL is retrieved.

次に、証明情報検索ステップ(S103)では、証明情報検索部142は、製品運用DB190の運用情報からCRLをexploitの設定対象の候補と判断する。証明書の運用方法として、証明書の失効のチェックにCRLを使用することが記述されているためである。   Next, in the certification information retrieval step (S103), the certification information retrieval unit 142 determines that the CRL is a candidate for setting the exploit from the operation information in the product operation DB 190. This is because it is described that the CRL is used for the certificate revocation check as the certificate operation method.

次に、証明情報属性検索ステップ(S104)では、証明情報属性検索部144は、CRLの構造情報を属性情報DB194から取得する。   Next, in the certification information attribute retrieval step (S104), the certification information attribute retrieval unit 144 obtains CRL structure information from the attribute information DB 194.

次に、設定属性検索ステップ(S105)では、設定属性検索部146は、FreshestCRLにURLを設定できることを判定する。設定属性検索部146は、既に、脆弱性情報DB192における検索結果よりexploitのタイプがURLであることを判定できる。そこで、設定属性検索部146は、CRLの構造情報からURLを設定可能な属性を検索する。CRLのextensionであるFreshestCRLはCRLDistributionPointsと同じ型で定義されるが、実施の形態1に示すように、CRLDistributionPointsのuniformResourceIdentifierにURLが設定できることがわかる。つまり、設定属性検索部146は、「CRL Distribution Points」、「DistributionPoint」、「distributionPoint」、「GeneralNames」、「GeneralName」、「uniformResourceIdentifier」の順に辿ることで、FreshestCRLを検索する。つまり、FreshestCRLがexploitを設定するのに適していると判断する。その結果、設定属性検索部146は、CRLのextensionであるFreshestCRLのURLにexploitを設定することを決定する。   Next, in the setting attribute search step (S105), the setting attribute search unit 146 determines that a URL can be set in the RefreshCRL. The setting attribute search unit 146 can already determine from the search result in the vulnerability information DB 192 that the type of exploit is URL. Therefore, the setting attribute search unit 146 searches for an attribute for which a URL can be set from the CRL structure information. The RefreshCRL, which is an extension of the CRL, is defined in the same type as the CRLDtributionPoints. However, as shown in the first embodiment, it can be seen that a URL can be set in the uniformResourceIdentifier of the CRLdistributionPoints. That is, the setting attribute search unit 146 searches “CRL Distribution Point”, “Distribution Point”, “distribution Point”, “GeneralNames”, “GeneralName”, and “UniformResourceIdentif” in the order of “RegularIdentifier”. That is, it is determined that the RefreshCRL is suitable for setting the exploit. As a result, the setting attribute search unit 146 determines to set the exploit to the URL of the RefreshCRL that is an extension of the CRL.

次に、不正情報生成ステップ(S106)では、不正情報生成部150は、まず、FreshestCRLのURLにexploitのURLである「http://www.abc.com/・・・」を設定して不正証明情報であるexploitCRLを生成する。この時、不正情報生成部150は、生成した不正証明情報が検査用に別途生成した不正な認証期間である不正CAを証明する不正CA証明書の配下のCRLとなるように、Issuerに不正CA証明書のSubjectを設定する。さらに、不正情報生成部150は、不正CA証明書の不正CA公開鍵と対をなす不正CA秘密鍵により署名を付与する。
実施の形態1同様、脆弱性検査装置100は、上記不正CA公開鍵を事前に検査対象物200に渡しておく。そのため、検査対象物200は、上記不正証明情報を受け取り検証すると、不正CA公開鍵により不正証明情報が認証できる。したがって、検査対象物200は、不正証明情報を信用する。その結果として、検査対象物200は、不正証明情報の属性情報に埋め込まれたexploitにより脆弱性が発生する可能性がある。
Next, in the fraudulent information generation step (S106), the fraudulent information generation unit 150 first sets fraud URL “http://www.abc.com/... An expireCRL that is certification information is generated. At this time, the fraudulent information generation unit 150 sends the fraudulent certification information to the issuer so that the generated fraud certification information becomes a CRL under a fraudulent CA certificate that certifies a fraudulent CA that is a fraudulent authentication period separately generated for inspection. Set the Subject of the certificate. Further, the unauthorized information generation unit 150 gives a signature using an unauthorized CA private key paired with the unauthorized CA public key of the unauthorized CA certificate.
As in the first embodiment, the vulnerability inspection apparatus 100 passes the unauthorized CA public key to the inspection object 200 in advance. Therefore, when the inspection object 200 receives and verifies the fraud certification information, the fraud certification information can be authenticated by the fraud CA public key. Accordingly, the inspection object 200 trusts the fraud certification information. As a result, there is a possibility that the inspection target 200 may be vulnerable due to the exploit embedded in the attribute information of the fraud proof information.

次に、検査情報設定ステップ(S107)では、検査情報設定部162は、S/MIMEメールクライアントを検査処理部160として、(S106)で、不正情報生成部150が生成した不正証明情報を設定する。   Next, in the inspection information setting step (S107), the inspection information setting unit 162 sets the fraud certification information generated by the fraud information generation unit 150 in (S106) with the S / MIME mail client as the inspection processing unit 160. .

次に、検査実施ステップ(S108)では、検査実施部164は、検査処理部160に対し検査対象物200に接続する命令を出す。   Next, in the inspection execution step (S108), the inspection execution unit 164 issues a command to connect to the inspection object 200 to the inspection processing unit 160.

次に、検査処理ステップ(S109)では、検査処理部160は、S/MIME署名メール1156を生成し、不正証明情報であるexploitCRLを添付する。なお、署名は、不正CA証明書配下のS/MIME署名用証明書を予め発行しておき、S/MIMEメールに署名を付加してS/MIME署名用証明書をメールに添付する。つまり、S/MIME署名メールには、S/MIME用証明書とexploitCRLが添付される。そして、検査処理部160は、検査対象物200へ不正証明情報を付したS/MIME署名メールを送信する。
なお、S/MIME署名メールへの証明書とCRLの添付(格納)方法は、例えば、RFC2311(S/MIME Version 2 Message Specification)に基づいて行う。
ここでは、検査対象物200はS/MIMEメーラが該当する。検査対象物200はでは、S/MIME署名メールの署名を検査する作業が行われる。検査対象物200は、添付されている不正証明情報であるexploitCRLの署名をチェックし成功するので、FreshestCRLを抽出し、さらにURLを抽出する。URLにはexploitが挿入されているが、exploitの部分まで含めてHTTP処理層にパラメータとして渡したとする。つまり、exploitが挿入(連結)された、URL「http://www.abc.com/・・・」をそのままHTTP処理層へ渡してしまったとする。HTTP処理層では、exploitを渡された場合に、異常終了が発生する脆弱性がある。したがって、exploitが挿入(連結)された、URLをそのままHTTP処理層へ渡してしまった結果として異常終了が発生する。
Next, in the inspection processing step (S109), the inspection processing unit 160 generates an S / MIME signature mail 1156 and attaches an exposeCRL that is fraud proof information. For the signature, an S / MIME signature certificate under an unauthorized CA certificate is issued in advance, a signature is added to the S / MIME mail, and the S / MIME signature certificate is attached to the mail. That is, the S / MIME signature mail is attached with the S / MIME certificate and the exploitCRL. Then, the inspection processing unit 160 transmits an S / MIME signature mail with fraud information attached to the inspection object 200.
The method for attaching (storing) the certificate and CRL to the S / MIME signature mail is performed based on, for example, RFC2311 (S / MIME Version 2 Message Specification).
Here, the inspection object 200 corresponds to an S / MIME mailer. In the inspection object 200, an operation for inspecting the signature of the S / MIME signature mail is performed. Since the inspection object 200 succeeds by checking the signature of the exploitCRL, which is the attached illegal certification information, it extracts the RefreshCRL and further extracts the URL. Although an exploit is inserted in the URL, it is assumed that even the portion of the exploit is included and passed to the HTTP processing layer as a parameter. In other words, it is assumed that the URL “http://www.abc.com/...” Into which the exploit has been inserted (linked) is directly passed to the HTTP processing layer. The HTTP processing layer has a vulnerability that causes an abnormal termination when exploit is passed. Therefore, abnormal termination occurs as a result of passing the URL into which the exploit is inserted (linked) as it is to the HTTP processing layer.

そして、検査結果判定ステップ(S110)では、検査結果判定部166は、例えば、処理が所定以上に遅くなる等の現象が起こるか否かを確認する。検査対象物200の脆弱性が再現しなければ、所定の早さで処理が行われるはずである。しかし、検査結果判定部166は、例えば、所定以上に処理が遅い場合には、不正証明情報が原因で脆弱性が再現したか、不具合が発生したと判断できる。   Then, in the inspection result determination step (S110), the inspection result determination unit 166 confirms whether or not a phenomenon such as, for example, the processing is delayed more than a predetermined value occurs. If the vulnerability of the inspection target 200 is not reproduced, the process should be performed at a predetermined speed. However, for example, when the processing is slower than a predetermined value, the inspection result determination unit 166 can determine that the vulnerability has been reproduced due to the fraud proof information or that a defect has occurred.

このように、実施の形態11にかかる脆弱性検査装置100によれば、脆弱性情報DB192と製品運用DB190と属性情報DB194を連携させることにより、不正証明情報としてexploitCRLを生成し、これを検査対象1109に送り込み、不具合や脆弱性が起こるか確認する。不具合や脆弱性が確認できた場合は、実装に誤りがある可能性が高いため、修正等を施すことで、事前にCRLによる攻撃に備えることが可能である。   As described above, according to the vulnerability check apparatus 100 according to the eleventh embodiment, the vulnerability information DB 192, the product operation DB 190, and the attribute information DB 194 are linked to generate the exploit CRL as fraud proof information, and this is checked. Send to 1109 and check if any problems or vulnerabilities occur. If a defect or vulnerability can be confirmed, there is a high possibility that there is an error in the implementation. Therefore, it is possible to prepare for an attack by CRL in advance by correcting it.

実施の形態12.
次に、実施の形態12について説明する。実施の形態12では、証明書の失効状態の問い合わせを受け、返答を返すOCSPに対してexploitを設定する脆弱性検査装置(不正情報生成装置)100の例について説明する。
Embodiment 12 FIG.
Next, an embodiment 12 will be described. In the twelfth embodiment, an example of a vulnerability check apparatus (unauthorized information generation apparatus) 100 that sets an exploit for an OCSP that receives an inquiry about a certificate revocation status and returns a response will be described.

まず、図33に基づきOCSPの概要を説明する。図33は、OCSPの概要を示す図である。
OCSPクライアント410は、検証したい証明書の情報をOCSPリクエスト412に設定してOCSPサーバ420に送信する。OCSPサーバ420は、OCSPリクエスト412により問合せがあった証明書の失効状態をOCSPレスポンス422に設定してOCSPクライアント410に返信する。
なお、OCSPリクエスト412には、OCSPクライアント自身の署名と証明書が添付される。但し、OCSPリクエストに、OCSPクライアント自身の署名と証明書を添付することはオプションであり、必須ではない。また、OCSPレスポンス422には、OCSPサーバ420自身の署名と証明書が添付される。
First, the outline of OCSP will be described with reference to FIG. FIG. 33 is a diagram showing an outline of the OCSP.
The OCSP client 410 sets certificate information to be verified in the OCSP request 412 and transmits it to the OCSP server 420. The OCSP server 420 sets the revocation status of the certificate inquired by the OCSP request 412 in the OCSP response 422 and sends it back to the OCSP client 410.
The OCSP request 412 is accompanied by the signature and certificate of the OCSP client itself. However, attaching the signature and certificate of the OCSP client itself to the OCSP request is optional and not required. The OCSP response 422 is attached with the signature and certificate of the OCSP server 420 itself.

実施の形態12では、OCSPクライアント410/サーバ420に対して不正証明情報を送信して脆弱性の有無を検査する。   In the twelfth embodiment, fraud certification information is transmitted to the OCSP client 410 / server 420 to check for the presence of vulnerability.

まず、実施の形態12にかかる脆弱性検査装置100の機能、および動作の流れは、実施の形態1にかかる脆弱性検査装置100の機能、および動作の流れと同様である。そこで、OCSPクライアント410/サーバ420に対して不正証明情報を送信して脆弱性の有無を検査する方法について、実施の形態1と異なる部分について説明する。   First, the function and operation flow of the vulnerability check apparatus 100 according to the twelfth embodiment are the same as the function and operation flow of the vulnerability check apparatus 100 according to the first embodiment. Therefore, a part different from the first embodiment will be described for a method for inspecting whether or not there is a vulnerability by transmitting fraud certification information to the OCSP client 410 / server 420.

まず、OCSPクライアント410の脆弱性を検査する場合について説明する。OCSPクライアント410の脆弱性を検査する場合、検査対象物200は、OCSPクライアント410である。また、OCSPサーバ420のソフトウェアが検査処理部160である。製品運用記憶部120は、製品運用DB190にOCSPクライアント410のソフトウェア情報を設定する。また、属性情報記憶部124は、属性情報DB194にPKCおよびOCSPのデータ構造の情報を設定する。
ここで、OCSPサーバ420がOCSPクライアント410に対してOCSPレスポンス422を返信するが、このOCSPレスポンス422に不正証明情報を格納する。OCSPレスポンス422にはOCSPサーバ420の署名と証明書が付加されるので、実施の形態1と同様、脆弱性検査装置100は、不正証明情報を生成してOCSPレスポンス422に格納する。
First, a case where the vulnerability of the OCSP client 410 is inspected will be described. When the vulnerability of the OCSP client 410 is inspected, the inspection object 200 is the OCSP client 410. The software of the OCSP server 420 is the inspection processing unit 160. The product operation storage unit 120 sets software information of the OCSP client 410 in the product operation DB 190. Further, the attribute information storage unit 124 sets information on the data structure of PKC and OCSP in the attribute information DB 194.
Here, the OCSP server 420 returns an OCSP response 422 to the OCSP client 410, and the fraud certification information is stored in the OCSP response 422. Since the signature and certificate of the OCSP server 420 are added to the OCSP response 422, the vulnerability check apparatus 100 generates fraud certification information and stores it in the OCSP response 422 as in the first embodiment.

次に、OCSPサーバ420の脆弱性を検査する場合について説明する。OCSPサーバ420の脆弱性を検査する場合、検査対象物200は、OCSPサーバ420である。また、OCSPクライアント410のソフトウェアが検査処理部160である。製品運用記憶部120は、製品運用DB190にOCSPサーバ420のソフトウェア情報を設定する。また、属性情報記憶部124は、属性情報DB194にPKCおよびOCSPのデータ構造の情報を設定する。
ここで、OCSPクライアント410はOCSPサーバ420に対してOCSPリクエスト412を送信するが、このOCSPリクエスト412に不正証明情報を格納する。OCSPリクエスト412にはOCSPクライアント410の署名と証明書が付加されるので、実施の形態1と同様、脆弱性検査装置100は、不正証明情報を生成してOCSPリクエスト412に格納する。なお、OCSPリクエストに、OCSPクライアント自身の署名と証明書を添付することはオプションのため必須では無いが、ここでは添付することとする。
Next, a case where the vulnerability of the OCSP server 420 is inspected will be described. When the vulnerability of the OCSP server 420 is inspected, the inspection target 200 is the OCSP server 420. The software of the OCSP client 410 is the inspection processing unit 160. The product operation storage unit 120 sets software information of the OCSP server 420 in the product operation DB 190. Further, the attribute information storage unit 124 sets information on the data structure of PKC and OCSP in the attribute information DB 194.
Here, the OCSP client 410 transmits an OCSP request 412 to the OCSP server 420, and stores the invalid certification information in the OCSP request 412. Since the signature and certificate of the OCSP client 410 are added to the OCSP request 412, the vulnerability check apparatus 100 generates fraud certification information and stores it in the OCSP request 412 as in the first embodiment. Note that attaching the signature and certificate of the OCSP client itself to the OCSP request is optional because it is optional, but here it is attached.

実施の形態12では、OCSPリクエスト412/レスポンス422における送信者の証明書にexploitを格納した。しかし、脆弱性情報DB192から検索された脆弱性情報のexploitについて、格納するための適切なOCSPリクエスト412/レスポンス422のデータ構造が、証明書以外に検出された場合は、そのデータに対して実施の形態1から9までに示すようにそのデータにexploitを設定しても構わない。
例えば、OCSPリクエスト412/レスポンス422のどちらに対しても該当し、バイナリデータを設定するNonce、OCSPレスポンス422に該当し、URLを設定するCRLReferences、OCSPリクエスト422に該当し、URLを設定するServiceLocator等のOCSPプロトコルデータのextentionが該当する場合が考えられる。
In the twelfth embodiment, the exploit is stored in the certificate of the sender in the OCSP request 412 / response 422. However, if the data structure of the appropriate OCSP request 412 / response 422 for storing the exploit information of the vulnerability information retrieved from the vulnerability information DB 192 is detected other than the certificate, the data is implemented for that data. As shown in the first to ninth forms, an exploit may be set for the data.
For example, it corresponds to both OCSP request 412 / response 422, corresponds to Nonce for setting binary data, corresponds to OCSP response 422, corresponds to CRLReferences for setting URL, Service Locator for setting URL, etc. The extension of the OCSP protocol data may be applicable.

つまり、実施の形態11、実施の形態12にかかる脆弱性検査装置100は、属性情報DB194に、CRL、OCSP等の各種失効情報の構造の情報を格納することにより、exploit失効情報(不正失効情報)を生成する機能を追加したものである。   In other words, the vulnerability check apparatus 100 according to the eleventh and twelfth embodiments stores information on the structure of various revocation information such as CRL, OCSP, etc. in the attribute information DB 194, thereby allowing the expiry revocation information (illegal revocation information). ) Is added.

実施の形態にかかる脆弱性検査システム1000の外観の一例を示した図。The figure which showed an example of the external appearance of the vulnerability test | inspection system 1000 concerning embodiment. 実施の形態における脆弱性検査装置100のハードウェア構成の一例を示す図。The figure which shows an example of the hardware constitutions of the vulnerability test | inspection apparatus 100 in embodiment. 実施の形態にかかる脆弱性検査装置100の概要を示す図。The figure which shows the outline | summary of the vulnerability test | inspection apparatus 100 concerning embodiment. SSLでHTTP通信を保護するシステムの機能ブロック図。The functional block diagram of the system which protects HTTP communication by SSL. PKCの属性を利用した不正アクセスの例を示す図。The figure which shows the example of the unauthorized access using the attribute of PKC. ACの属性を利用した不正アクセスの例を示す図。The figure which shows the example of the unauthorized access using the attribute of AC. CCの属性を利用した不正アクセスの例を示す図。The figure which shows the example of the unauthorized access using the attribute of CC. 実施の形態1にかかる脆弱性検査装置100の機能を示す機能ブロック図。FIG. 3 is a functional block diagram showing functions of the vulnerability check apparatus 100 according to the first embodiment. 実施の形態1にかかる脆弱性検査装置100の処理とデータの流れを示した図。The figure which showed the process of the vulnerability test apparatus 100 concerning Embodiment 1, and the flow of data. 実施の形態1にかかる脆弱性検査装置100の動作である脆弱性検査処理(脆弱性検査方法、脆弱性検査プログラム)を示すフローチャート。3 is a flowchart showing vulnerability inspection processing (a vulnerability inspection method, a vulnerability inspection program) that is an operation of the vulnerability inspection apparatus 100 according to the first embodiment; 製品運用記憶部120が製品運用DB190として記憶する情報の一例。An example of information which product operation storage part 120 memorizes as product operation DB190. 脆弱性情報検索部130が検査キーとして使用する情報の一例。An example of information used by the vulnerability information search unit 130 as an inspection key. 脆弱性情報DB192に記憶する情報の一例。An example of the information memorize | stored in vulnerability information DB192. 属性情報DB194が記憶する属性情報の一例としてCRL−DPの構造情報を示す図。The figure which shows the structure information of CRL-DP as an example of the attribute information which attribute information DB194 memorize | stores. 実施の形態2にかかる脆弱性検査装置100の処理とデータの流れを示した図。The figure which showed the process and data flow of the vulnerability test apparatus 100 concerning Embodiment 2. FIG. 製品運用記憶部120が製品運用DB190として記憶する情報の一例。An example of information which product operation storage part 120 memorizes as product operation DB190. 脆弱性情報検索部130が検査キーとして使用する情報の一例。An example of information used by the vulnerability information search unit 130 as an inspection key. 属性情報DB194が記憶する属性情報の一例としてAccessIdentitiyの構造情報を示す図。The figure which shows the structure information of AccessIdentity as an example of the attribute information which attribute information DB194 memorize | stores. 実施の形態3にかかる脆弱性検査装置100の処理とデータの流れを示した図。The figure which showed the process of the vulnerability test apparatus 100 concerning Embodiment 3, and the flow of data. 製品運用記憶部120が製品運用DB190として記憶する情報の一例。An example of information which product operation storage part 120 memorizes as product operation DB190. 脆弱性情報検索部130が検査キーとして使用する情報の一例。An example of information used by the vulnerability information search unit 130 as an inspection key. オペレータにGUIにより脆弱性情報の組合せを選択させる機能を備える実施の形態5にかかる脆弱性検査装置100の機能ブロック図。FIG. 10 is a functional block diagram of a vulnerability check apparatus 100 according to the fifth embodiment, which has a function of allowing an operator to select a combination of vulnerability information using a GUI. 脆弱性情報選択用GUIの一例。An example of a vulnerability information selection GUI. パラメータを設定する機能を備える実施の形態6にかかる脆弱性検査装置100の機能を示す機能ブロック図。FIG. 9 is a functional block diagram showing functions of the vulnerability check apparatus 100 according to the sixth embodiment having a function of setting parameters. 脆弱性情報編集用GUIの一例。An example of a GUI for editing vulnerability information. 脆弱性情報編集用GUIの他の一例。Another example of GUI for editing vulnerability information. 属性の異常値の設定を不正証明情報に追加する属性設定用GUIの一例。An example of an attribute setting GUI for adding an abnormal value setting of an attribute to fraud proof information. 製品運用DB190への製品情報の登録を自動に行う実施の形態8にかかる脆弱性検査装置100の機能を示す機能ブロック図。FIG. 10 is a functional block diagram showing functions of the vulnerability check apparatus 100 according to the eighth embodiment for automatically registering product information in the product operation DB 190; 製品運用DB190への運用情報の登録を自動に行う実施の形態9にかかる脆弱性検査装置100の機能を示す機能ブロック図。FIG. 10 is a functional block diagram showing functions of the vulnerability check apparatus 100 according to the ninth embodiment that automatically registers operation information in the product operation DB 190; 実施の形態11にかかる脆弱性検査装置100の処理とデータの流れを示した図。The figure which showed the process of the vulnerability test apparatus 100 concerning Embodiment 11, and the flow of data. 製品運用記憶部120が製品運用DB190として記憶する情報の一例。An example of information which product operation storage part 120 memorizes as product operation DB190. 脆弱性情報検索部130が検査キーとして使用する情報の一例。An example of information used by the vulnerability information search unit 130 as an inspection key. OCSPの概要を示す図。The figure which shows the outline | summary of OCSP.

符号の説明Explanation of symbols

100 脆弱性検査装置、110 脆弱性検査部、120 製品運用記憶部、122 脆弱性情報記憶部、124 属性情報記憶部、130 脆弱性情報検索部、132 脆弱性情報選択部、140 設定属性判定部、142 証明情報検索部、144 証明情報属性検索部、146 設定属性検索部、150 不正情報生成部、152 変更情報入力部、160 検査処理部、162 検査情報設定部、164 検査実施部、166 検査結果判定部、172 製品情報収集部、174 運用情報特定部、200 検査対象物、−901 CRT表示装置、902 K/B、903 マウス、904 FDD、905 CDD、908 データベース、909 システムユニット、910 サーバ、911 CPU、912 バス、913 ROM、914 RAM、915 通信ボード、916 外部サーバ、920 磁気ディスク装置、921 OS、922 ウィンドウシステム、923 プログラム群、924 ファイル群、931 電話器、932 FAX機、940 インターネット、941 ゲートウェイ、942 LAN、980 処理装置、982 入力装置、984 記憶装置、986 表示装置、988 通信装置。   DESCRIPTION OF SYMBOLS 100 Vulnerability inspection apparatus, 110 Vulnerability inspection part, 120 Product operation storage part, 122 Vulnerability information storage part, 124 Attribute information storage part, 130 Vulnerability information search part, 132 Vulnerability information selection part, 140 Setting attribute determination part 142 Certification information search unit, 144 Certification information attribute search unit, 146 Setting attribute search unit, 150 Unauthorized information generation unit, 152 Change information input unit, 160 Inspection processing unit, 162 Inspection information setting unit, 164 Inspection execution unit, 166 Inspection Result determination unit, 172 Product information collection unit, 174 Operation information identification unit, 200 Inspection object, -901 CRT display device, 902 K / B, 903 mouse, 904 FDD, 905 CDD, 908 database, 909 system unit, 910 server 911 CPU, 912 bus, 913 ROM, 914 RA M, 915 communication board, 916 external server, 920 magnetic disk unit, 921 OS, 922 window system, 923 program group, 924 file group, 931 telephone, 932 FAX machine, 940 Internet, 941 gateway, 942 LAN, 980 processing unit 982 Input device, 984 Storage device, 986 Display device, 988 Communication device.

Claims (16)

公開鍵基盤システムにおける検査対象物の製品情報と、検査対象物のセキュリティの設定情報と、検査対象物が利用する証明情報を含む運用情報とを記憶装置に記憶する製品運用記憶部と、
検査対象物の脆弱性情報と上記脆弱性情報に対する検査情報とを記憶装置に記憶する脆弱性情報記憶部と、
上記証明情報の属性情報を記憶装置に記憶する属性情報記憶部と、
上記製品運用記憶部が記憶した製品情報と設定情報とに基づき、上記脆弱性情報記憶部が記憶した脆弱性情報を検索して上記脆弱性情報に対する検査情報を処理装置により取得する脆弱性情報検索部と、
上記製品運用記憶部が記憶した運用情報と上記属性情報記憶部が記憶した属性情報とに基づき、上記脆弱性情報検索部が取得した検査情報を設定する属性を処理装置により判定する設定属性判定部と、
上記設定属性判定部が判定した属性に、上記脆弱性情報検索部が取得した検査情報を設定して不正証明情報を生成して記憶装置に記憶する不正情報生成部と
を備えることを特徴とする不正情報生成装置。
A product operation storage unit for storing in the storage device product information of the inspection object in the public key infrastructure system, security setting information of the inspection object, and operation information including certification information used by the inspection object;
A vulnerability information storage unit for storing the vulnerability information of the inspection object and the inspection information for the vulnerability information in a storage device;
An attribute information storage unit for storing attribute information of the certification information in a storage device;
Vulnerability information search that searches for vulnerability information stored in the vulnerability information storage unit based on product information and setting information stored in the product operation storage unit, and obtains inspection information for the vulnerability information by a processing device And
A setting attribute determination unit that determines, by a processing device, an attribute for setting inspection information acquired by the vulnerability information search unit based on the operation information stored in the product operation storage unit and the attribute information stored in the attribute information storage unit When,
An illegal information generation unit configured to set the inspection information acquired by the vulnerability information search unit to the attribute determined by the setting attribute determination unit, generate fraud certification information, and store the fraud information in a storage device. Unauthorized information generator.
上記不正情報生成装置は、さらに、
上記不正情報生成部が生成した不正証明情報を、上記検査対象物に接続して検査を行う検査処理部に処理装置により設定する検査情報設定部と、
上記検査情報設定部が不正証明情報を設定した検査処理部へ処理装置により検査の実行の指示をする検査実施部と、
上記検査実施部がした指示により、検査処理部が実行した検査に対する検査対象物の動作に基づき、脆弱性が再現したか否かを処理装置により判定する検査結果判定部と
を備えることを特徴とする請求項1記載の不正情報生成装置。
The fraudulent information generation device further includes:
An inspection information setting unit that sets the fraud certification information generated by the fraud information generation unit to the inspection processing unit that performs inspection by connecting to the inspection object,
An inspection execution unit that instructs the execution of inspection by the processing device to the inspection processing unit in which the inspection information setting unit sets the fraud certification information;
An inspection result determination unit that determines whether or not the vulnerability has been reproduced based on the operation of the inspection object with respect to the inspection performed by the inspection processing unit according to the instruction given by the inspection execution unit. The unauthorized information generating apparatus according to claim 1.
上記設定属性判定部は、
上記製品運用記憶部が記憶した運用情報から利用する証明情報を検索する証明情報検索部と、
上記属性情報記憶部が記憶した属性情報から上記証明情報検索部が検索した証明情報の属性情報を検索する証明情報属性検索部と、
上記証明属性情報検索部が検索した属性情報から上記脆弱性情報検索部が検索した検査情報の検査箇所を設定可能な属性を検索する設定属性検索部と
を備えることを特徴とする請求項1記載の不正情報生成装置。
The setting attribute determination unit
A certification information retrieval unit for retrieving certification information to be used from the operational information stored in the product operational storage unit;
A proof information attribute search unit for searching attribute information of the proof information searched by the proof information search unit from the attribute information stored by the attribute information storage unit;
2. A setting attribute search unit for searching for an attribute capable of setting a test location of test information searched by the vulnerability information search unit from attribute information searched by the proof attribute information search unit. Incorrect information generator.
上記脆弱性情報検索部は、複数の脆弱性情報を検索した場合、上記複数の脆弱性情報の各脆弱性情報に対する検査情報を取得し、
上記設定属性判定部は、運用情報と属性情報とに基づき、上記脆弱性情報検索部が取得した検査情報を設定する属性を上記複数の脆弱性情報の各脆弱性情報毎に判定し、
上記不正情報生成部は、上記設定属性判定部が判定した属性に該当の検査情報を設定して、上記複数の脆弱性情報の各脆弱性情報毎に不正証明情報を生成する
ことを特徴とする請求項1記載の不正情報生成装置。
The vulnerability information search unit, when searching for a plurality of vulnerability information, obtains inspection information for each vulnerability information of the plurality of vulnerability information,
The setting attribute determination unit determines an attribute for setting the inspection information acquired by the vulnerability information search unit for each vulnerability information of the plurality of vulnerability information based on the operation information and the attribute information,
The fraud information generation unit sets the corresponding inspection information to the attribute determined by the setting attribute determination unit, and generates fraud certification information for each vulnerability information of the plurality of vulnerability information. The unauthorized information generating apparatus according to claim 1.
上記脆弱性情報検索部は、複数の脆弱性情報を検索した場合、上記複数の脆弱性情報から任意に選択した複数の脆弱性情報に対する検査情報を取得し、
上記設定属性判定部は、運用情報と属性情報とに基づき、上記脆弱性情報検索部が取得した検査情報を設定する属性を上記任意に選択した複数の脆弱性情報の各脆弱性情報毎に判定し、
上記不正情報生成部は、上記設定属性判定部が判定した属性に該当の検査情報を設定して1つの不正証明情報を生成する
ことを特徴とする請求項1記載の不正情報生成装置。
The vulnerability information search unit, when searching for a plurality of vulnerability information, obtains inspection information for a plurality of vulnerability information arbitrarily selected from the plurality of vulnerability information,
The set attribute determining unit determines, based on the operation information and attribute information, for each vulnerability information of the plurality of arbitrarily selected vulnerability information, the attribute for setting the inspection information acquired by the vulnerability information search unit And
2. The fraud information generating apparatus according to claim 1, wherein the fraud information generating unit sets corresponding inspection information to the attribute determined by the setting attribute determination unit and generates one fraud certification information.
上記不正情報生成装置は、さらに、
上記脆弱性情報検索部が複数の脆弱性情報を検索した場合、検索した複数の脆弱性情報から所定の脆弱性情報を入力装置により選択する脆弱性情報選択部を備え、
上記脆弱性情報検索部は、上記脆弱性情報選択部が選択した所定の脆弱性情報に対する検査情報を取得し、
上記設定属性判定部は、運用情報と属性情報とに基づき、上記脆弱性情報検索部が取得した検査情報を設定する属性を上記脆弱性情報選択部が選択した所定の脆弱性情報に対して判定し、
上記不正情報生成部は、上記設定属性判定部が判定した属性に該当の検査情報を設定して1つの不正証明情報を生成する
ことを特徴とする請求項1記載の不正情報生成装置。
The fraudulent information generation device further includes:
When the vulnerability information search unit searches for a plurality of vulnerability information, the vulnerability information search unit includes a vulnerability information selection unit that selects predetermined vulnerability information from the plurality of searched vulnerability information using an input device,
The vulnerability information search unit acquires inspection information for the predetermined vulnerability information selected by the vulnerability information selection unit,
The setting attribute determining unit determines, based on the operation information and the attribute information, an attribute for setting the inspection information acquired by the vulnerability information searching unit with respect to the predetermined vulnerability information selected by the vulnerability information selecting unit. And
2. The fraud information generating apparatus according to claim 1, wherein the fraud information generating unit sets corresponding inspection information to the attribute determined by the setting attribute determination unit and generates one fraud certification information.
上記脆弱性情報検索部は、複数の脆弱性情報を検索した場合、上記複数の脆弱性情報の各脆弱性情報に対する検査情報を取得し、
上記設定属性判定部は、運用情報と属性情報とに基づき、上記脆弱性情報検索部が取得した検査情報を設定する属性を上記複数の脆弱性情報の各脆弱性情報毎に判定し、
上記不正情報生成部は、上記設定属性判定部が判定した属性に該当の検査情報を設定して、上記複数の脆弱性情報のすべての脆弱性情報の組合せ毎に不正証明情報を生成する
ことを特徴とする請求項1記載の不正情報生成装置。
The vulnerability information search unit, when searching for a plurality of vulnerability information, obtains inspection information for each vulnerability information of the plurality of vulnerability information,
The setting attribute determination unit determines an attribute for setting the inspection information acquired by the vulnerability information search unit for each vulnerability information of the plurality of vulnerability information based on the operation information and the attribute information,
The fraud information generation unit sets the corresponding inspection information to the attribute determined by the setting attribute determination unit, and generates fraud certification information for each combination of all the vulnerability information of the plurality of vulnerability information. The fraud information generating apparatus according to claim 1, wherein:
上記不正情報生成装置は、さらに、
検査情報の変更情報を入力する変更情報入力部を備え、
上記不正情報生成部は、上記設定属性判定部が判定した属性に、上記脆弱性情報検索部が取得した検査情報に上記変更情報入力部が入力した変更情報を反映させた検査情報を設定して不正証明情報を生成して記憶装置に記憶する
ことを特徴とする請求項1記載の不正情報生成装置。
The fraudulent information generation device further includes:
Provided with a change information input unit for inputting inspection information change information,
The fraudulent information generation unit sets inspection information in which the change information input by the change information input unit is reflected in the inspection information acquired by the vulnerability information search unit in the attribute determined by the setting attribute determination unit. 2. The fraud information generating apparatus according to claim 1, wherein fraud certification information is generated and stored in a storage device.
上記不正情報生成装置は、さらに、
検査対象物の製品情報をフィンガープリンティングにより収集する製品情報収集部を備え、
上記製品運用記憶部は、上記製品情報収集部が収集した製品情報を記憶する
ことを特徴とする請求項1記載の不正情報生成装置。
The fraudulent information generation device further includes:
A product information collection unit that collects product information of inspection objects by fingerprinting,
2. The unauthorized information generation apparatus according to claim 1, wherein the product operation storage unit stores product information collected by the product information collection unit.
上記不正情報生成装置は、さらに、
検査対象物に対してポートスキャンを行い、検査対象物で動作する公開鍵基盤システムで利用するサービスを特定する運用情報特定部を備え、
上記製品運用記憶部は、上記運用情報特定部が特定したサービスを運用情報として記憶する
ことを特徴とする請求項1記載の不正情報生成装置。
The fraudulent information generation device further includes:
A port scan is performed on the inspection object, and an operation information specifying unit for specifying a service used in the public key infrastructure system operating on the inspection object is provided.
The fraud information generating apparatus according to claim 1, wherein the product operation storage unit stores the service specified by the operation information specifying unit as operation information.
検査対象物の脆弱性を検索する脆弱性検査装置において、
公開鍵基盤システムの証明情報の属性に検査情報を設定して不正証明情報を生成して記憶装置に記憶する不正情報生成部と、
上記不正情報生成部が生成した不正証明情報に基づき、上記検査対象物に対して検査を処理装置により実施する検査処理部と、
上記検査処理部が実施した検査に対する検査対象物の動作に基づき、脆弱性が再現したか否かを処理装置により判定する検査結果判定部と
を備えることを特徴とする脆弱性検査装置。
In a vulnerability inspection device that searches for vulnerabilities in inspection objects,
A fraud information generating unit that sets inspection information in the attribute of the certification information of the public key infrastructure system to generate fraud certification information and stores it in the storage device;
Based on the fraud certification information generated by the fraud information generation unit, an inspection processing unit that performs an inspection on the inspection object by a processing device;
A vulnerability inspection apparatus, comprising: an inspection result determination unit that determines whether or not vulnerability has been reproduced based on an operation of an inspection object with respect to an inspection performed by the inspection processing unit.
上記検査結果判定部は、上記検査処理部が実行した検査に対して上記検査対象物から所定の返信がない場合、脆弱性が再現したと判定する
ことを特徴とする請求項11記載の脆弱性検査装置。
The vulnerability according to claim 11, wherein the inspection result determination unit determines that the vulnerability has been reproduced when there is no predetermined reply from the inspection object with respect to the inspection performed by the inspection processing unit. Inspection device.
公開鍵基盤システムにおける検査対象物の製品情報と、検査対象物のセキュリティの設定情報と、検査対象物が証明情報を利用する方法である運用情報とを製品運用記憶部が記憶装置に記憶する製品運用記憶ステップと、
検査対象物の脆弱性情報と上記脆弱性情報に対する検査情報とを脆弱性情報記憶部が記憶装置に記憶する脆弱性情報記憶ステップと、
上記証明情報の属性情報を属性情報記憶部が記憶装置に記憶する属性情報記憶記憶ステップと、
上記製品運用記憶ステップで記憶した製品情報と設定情報とに基づき、上記脆弱性情報記憶ステップで記憶した脆弱性情報を検索して上記脆弱性情報に対する検査情報を脆弱性情報検索部が処理装置により取得する脆弱性情報検索ステップと、
上記製品運用記憶ステップで記憶した運用情報と上記属性情報記憶ステップで記憶した属性情報とに基づき、上記脆弱性情報検索ステップが取得した検査情報を設定する属性を設定属性判定部が処理装置により判定する設定属性判定ステップと、
上記設定属性判定ステップで判定した属性に、上記脆弱性情報検索ステップが取得した検査情報を設定して不正証明情報を生成して記憶装置に記憶する不正情報生成ステップと
を備えることを特徴とする不正情報生成方法。
The product operation storage unit stores in the storage device product information of the inspection object in the public key infrastructure system, security setting information of the inspection object, and operation information that is a method of using the certification information by the inspection object. A working memory step;
A vulnerability information storage step in which the vulnerability information storage unit stores the vulnerability information of the inspection object and the inspection information for the vulnerability information in a storage device;
An attribute information storage step in which the attribute information storage unit stores the attribute information of the certification information in a storage device;
Based on the product information stored in the product operation storage step and the setting information, the vulnerability information stored in the vulnerability information storage step is searched for, and the vulnerability information search unit uses the processing device to inspect the vulnerability information. A vulnerability information retrieval step to be acquired;
Based on the operation information stored in the product operation storage step and the attribute information stored in the attribute information storage step, the setting attribute determination unit determines the attribute for setting the inspection information acquired in the vulnerability information search step by the processing device. A setting attribute determination step to perform,
A fraud information generation step of setting the inspection information acquired in the vulnerability information search step to the attribute determined in the setting attribute determination step to generate fraud certification information and storing the fraud information in a storage device Incorrect information generation method.
公開鍵基盤システムにおける検査対象物の製品情報と、検査対象物のセキュリティの設定情報と、検査対象物が証明情報を利用する方法である運用情報とを製品運用記憶部が記憶装置に記憶する製品運用記憶ステップと、
検査対象物の脆弱性情報と上記脆弱性情報に対する検査情報とを脆弱性情報記憶部が記憶装置に記憶する脆弱性情報記憶ステップと、
上記証明情報の属性情報を属性情報記憶部が記憶装置に記憶する属性情報記憶記憶ステップと、
上記製品運用記憶ステップで記憶した製品情報と設定情報とに基づき、上記脆弱性情報記憶ステップで記憶した脆弱性情報を検索して上記脆弱性情報に対する検査情報を脆弱性情報検索部が処理装置により取得する脆弱性情報検索ステップと、
上記製品運用記憶ステップで記憶した運用情報と上記属性情報記憶ステップで記憶した属性情報とに基づき、上記脆弱性情報検索ステップが取得した検査情報を設定する属性を設定属性判定部が処理装置により判定する設定属性判定ステップと、
上記設定属性判定ステップで判定した属性に、上記脆弱性情報検索ステップが取得した検査情報を設定して不正証明情報を生成して記憶装置に記憶する不正情報生成ステップと
をコンピュータに実行させることを特徴とする不正情報生成プログラム。
The product operation storage unit stores in the storage device product information of the inspection object in the public key infrastructure system, security setting information of the inspection object, and operation information that is a method of using the certification information by the inspection object. A working memory step;
A vulnerability information storage step in which the vulnerability information storage unit stores the vulnerability information of the inspection object and the inspection information for the vulnerability information in a storage device;
An attribute information storage step in which the attribute information storage unit stores the attribute information of the certification information in a storage device;
Based on the product information stored in the product operation storage step and the setting information, the vulnerability information stored in the vulnerability information storage step is searched for, and the vulnerability information search unit uses the processing device to inspect the vulnerability information. A vulnerability information retrieval step to be acquired;
Based on the operation information stored in the product operation storage step and the attribute information stored in the attribute information storage step, the setting attribute determination unit determines the attribute for setting the inspection information acquired in the vulnerability information search step by the processing device. A setting attribute determination step to perform,
Causing the computer to execute a fraud information generation step in which the inspection information acquired in the vulnerability information search step is set in the attribute determined in the setting attribute determination step to generate fraud certification information and store it in the storage device. Characteristic illegal information generation program.
検査対象物の脆弱性を検索する脆弱性検査の脆弱性検査方法において、
公開鍵基盤システムの証明情報の属性に検査情報を設定して不正証明情報を生成して不正情報生成部が記憶装置に記憶する不正情報生成ステップと、
上記不正情報生成ステップで生成した不正証明情報に基づき、上記検査対象物に対して検査を検査処理部が処理装置により実施する検査処理ステップと、
上記検査処理ステップで実施した検査に対する検査対象物の動作に基づき、脆弱性が再現したか否かを検査結果判定部が処理装置により判定する検査結果判定ステップと
を備えることを特徴とする脆弱性検査方法。
In the vulnerability inspection method of vulnerability inspection to search for vulnerabilities of inspection objects,
A fraud information generating step in which inspection information is set in the attribute of the certification information of the public key infrastructure system to generate fraud proof information and the fraud information generation unit stores in the storage device;
Based on the fraud certification information generated in the fraud information generation step, an inspection processing step in which an inspection processing unit performs an inspection on the inspection object by a processing device;
Vulnerability comprising: an inspection result determination step in which the inspection result determination unit determines whether or not the vulnerability has been reproduced based on the operation of the inspection object with respect to the inspection performed in the inspection processing step by the processing device. Inspection method.
検査対象物の脆弱性を検索する脆弱性検査装置の脆弱性検査プログラムにおいて、
公開鍵基盤システムの証明情報の属性に検査情報を設定して不正証明情報を生成して不正情報生成部が記憶装置に記憶する不正情報生成ステップと、
上記不正情報生成ステップで生成した不正証明情報に基づき、上記検査対象物に対して検査を検査処理部が処理装置により実施する検査処理ステップと、
上記検査処理ステップで実施した検査に対する検査対象物の動作に基づき、脆弱性が再現したか否かを検査結果判定部が処理装置により判定する検査結果判定ステップと
をコンピュータに実行させることを特徴とする脆弱性検査プログラム。
In the vulnerability inspection program of the vulnerability inspection device that searches for vulnerabilities of inspection objects,
A fraud information generating step in which inspection information is set in the attribute of the certification information of the public key infrastructure system to generate fraud proof information and the fraud information generation unit stores in the storage device;
Based on the fraud certification information generated in the fraud information generation step, an inspection processing step in which an inspection processing unit performs an inspection on the inspection object by a processing device;
Based on the operation of the inspection object with respect to the inspection performed in the inspection processing step, the inspection result determination unit causes the computer to execute an inspection result determination step in which the processing result determination unit determines whether or not the vulnerability has been reproduced. Vulnerability inspection program.
JP2006081992A 2006-03-24 2006-03-24 Incorrect information generating apparatus, incorrect information generating method, incorrect information generating program, vulnerability inspecting apparatus, vulnerability inspecting method, and vulnerability inspecting program Pending JP2007259171A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006081992A JP2007259171A (en) 2006-03-24 2006-03-24 Incorrect information generating apparatus, incorrect information generating method, incorrect information generating program, vulnerability inspecting apparatus, vulnerability inspecting method, and vulnerability inspecting program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006081992A JP2007259171A (en) 2006-03-24 2006-03-24 Incorrect information generating apparatus, incorrect information generating method, incorrect information generating program, vulnerability inspecting apparatus, vulnerability inspecting method, and vulnerability inspecting program

Publications (1)

Publication Number Publication Date
JP2007259171A true JP2007259171A (en) 2007-10-04

Family

ID=38632929

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006081992A Pending JP2007259171A (en) 2006-03-24 2006-03-24 Incorrect information generating apparatus, incorrect information generating method, incorrect information generating program, vulnerability inspecting apparatus, vulnerability inspecting method, and vulnerability inspecting program

Country Status (1)

Country Link
JP (1) JP2007259171A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014503146A (en) * 2011-01-04 2014-02-06 クアルコム,インコーポレイテッド Method and apparatus for protecting against fraudulent certificates

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014503146A (en) * 2011-01-04 2014-02-06 クアルコム,インコーポレイテッド Method and apparatus for protecting against fraudulent certificates

Similar Documents

Publication Publication Date Title
US7743254B2 (en) Visualization of trust in an address bar
US9369460B2 (en) Authentication manager
US8380985B2 (en) Certificate validation method and certificate validation server and storage medium
EP2020798A2 (en) Method for detecting DNS redirects or fraudulent local certificates for SSL sites in pharming/phishing schemes by remote validation and using a credential manager and recorded certificate attributes
US8286225B2 (en) Method and apparatus for detecting cyber threats
US8776238B2 (en) Verifying certificate use
US10270602B2 (en) Verifying and enforcing certificate use
JP2005322234A (en) Security check of web service configuration
KR20030056285A (en) Apparatus and method for detecting illegitimate change of web resources
Ghasemisharif et al. Towards automated auditing for account and session management flaws in single sign-on deployments
JP2006270504A (en) Verification apparatus and communications system
US20100186086A1 (en) Methods for inspecting security certificates by network security devices to detect and prevent the use of invalid certificates
US7827399B1 (en) Certificate processing
KR20200000576A (en) A Method For Detecting Counterfeit application in Mobile Device Based On Blockchain
Jøsang et al. Service provider authentication assurance
JP2007065810A (en) Security inspection system
Oakes et al. A residential client-side perspective on ssl certificates
JP2017175227A (en) Certificate management system, certificate management method, and program
Völker et al. Can internet users protect themselves? challenges and techniques of automated protection of HTTP communication
JP2007259171A (en) Incorrect information generating apparatus, incorrect information generating method, incorrect information generating program, vulnerability inspecting apparatus, vulnerability inspecting method, and vulnerability inspecting program
Wang et al. DomainPKI: Domain aware certificate management
Li et al. The potential harm of email delivery: Investigating the HTTPs configurations of webmail services
McLuskie et al. X. 509 certificate error testing
Ma Understanding the trust relationships of the web PKI
Wong et al. A web services security testing framework