JP5801953B2 - アプリケーションのセキュリティ検査 - Google Patents
アプリケーションのセキュリティ検査 Download PDFInfo
- Publication number
- JP5801953B2 JP5801953B2 JP2014511332A JP2014511332A JP5801953B2 JP 5801953 B2 JP5801953 B2 JP 5801953B2 JP 2014511332 A JP2014511332 A JP 2014511332A JP 2014511332 A JP2014511332 A JP 2014511332A JP 5801953 B2 JP5801953 B2 JP 5801953B2
- Authority
- JP
- Japan
- Prior art keywords
- aut
- request
- observer
- application
- service
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/577—Assessing vulnerabilities and evaluating computer system security
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0727—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a storage system, e.g. in a DASD or network based storage system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0793—Remedial or corrective actions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1433—Vulnerability analysis
Description
AUT124は、スキャナ128とAUT124との間のネットワーク122を介した通信を可能にするネットワークインタフェイス202を含む。該ネットワークインタフェイス202は、AUT124のアタックサーフェスを露呈させるものであり、該AUT124を一般的な用途に利用可能とする場合に該AUT124へのアクセスを提供するために最終的に使用されることになるものと同じインタフェイスである。スキャナ128とAUT124との間のネットワークインタフェイス202を介した通信は、スキャナ128からAUT124へ発行されるHTTPリクエスト及びAUT124からスキャナ128へ発行されるHTTPレスポンスを介して行われる。AUT124をターゲットとしたリクエストはアプリケーションリクエストと称することが可能であり、AUT124から受信するレスポンスはアプリケーションレスポンスと称することが可能である。スキャナ128により生成されるアプリケーションリクエストは、AUT124の潜在的な脆弱性を露呈させるべく構成することが可能である。
・リクエスト毎ヘッダ
リクエスト毎ヘッダは、カスタムHTTPヘッダであり、オブザーバ126及びスキャナ128によって理解されるカスタムフィールド名とそれに続く1つ以上のフィールド値とを含むことが可能である。該カスタムHTTPヘッダは、AUT124によって無視される。本書で説明するフィールド名は、特定の一実施形態で使用することができるフィールド名の単なる一例として使用したものであり、本発明の範囲を制限することを意図したものではない、ということが理解されよう。
このバージョンヘッダの一例では、プレフィクス"X-WIPP"は、オブザーバ126により使用されるカスタムヘッダとしてのヘッダを識別するものである。フィールド名"X-WIPP-VERSION"は、バージョンヘッダとしてのカスタムヘッダを一意に識別する文字列である。フィールド値<language>は、アプリケーションリクエストを処理するためにAUT124により使用されるランタイム環境の名称(特にJava又は.NETなど)とすることが可能である。場合によっては、AUT124は、2つ以上のプロセスを実行することが可能であり、かかるプロセスを異なるランタイムインスタンスにより取り扱うことが可能である。例えば、AUT124は、アプリケーションリクエストを処理するためにロードバランサその他の作業分散構成を使用することが可能である。スキャナ128は、フィールド値<vm_id>を使用して、アプリケーションリクエストを取り扱うAUT124内のプロセスを識別することが可能である。例えば、フィールド値<vm_id>は、特定のJVMインスタンス(JAVAの場合)、CLRインスタンス(.NETの場合)、又はその他のタイプのランタイムインスタンスといった、アプリケーションリクエストを処理したランタイムインスタンスを一意に識別する名称とすることが可能である。フィールド値<version>は、オブザーバ126のバージョンを識別する数字又は文字列とすることが可能である。スキャナ128は、識別されたオブザーバ126のバージョンを使用して、オブザーバソフトウェアのバージョンによってオブザーバのインタフェイス208が変化する場合に該オブザーバ126との対話を適切に調整することが可能である。
このようにして、AUT124により提供されるHTTPレスポンスにかかわらずスキャナ128にファイル不発見エラーを報告することができる。
以下で更に説明するように、「サービスリクエスト」と題する章で、スキャナ128は、アプリケーションリクエストに応じてオブザーバ126により収集されたが未だアプリケーションレスポンスで報告されていない追加情報をリクエストすることが可能である。該追加情報は、本書で「トレース」と称するデータ構造内に含めることが可能である。該トレース内に含まれる情報は、特定のアプリケーションリクエストによりトリガされたAUT124の動作を記述するものである。該トレースリクエストサービスをサポートするために、オブザーバ126は、スキャナ128がリクエストされたトレースを該リクエストされたトレースに対応する特定のアプリケーションレスポンスに関連付けることを可能とすべく、各アプリケーションレスポンスにリクエストIDヘッダを追加することが可能である。一実施形態では、フィールド値<request_id>は、スキャナ128により割り当てられてアプリケーションリクエスト内に含められる。次いで、オブザーバ126が、対応するアプリケーションレスポンスに追加されるリクエストIDヘッダ内にそれと同一のrequest_id値を使用することが可能である。一実施形態では、スキャナ128はアプリケーションリクエストにリクエストIDヘッダを追加せず、この場合、オブザーバ126は、request_idのための一意の値を生成して、該request_idを、アプリケーションレスポンスに追加されるリクエストIDヘッダ内に含めることが可能である。何れの場合も、同一のrequest_id値をスキャナ128により使用して、それに対応するオブザーバ126からのトレースをリクエストすることが可能である。
該<service_name_list>値は、コンマで区切ったサービス名のリストとすることが可能であり、その各サービス名は、AUT124における変化の結果として新たな情報を提供し得るオブザーバ126により提供されるサービスを称するものである。AUT124に関する新たな情報が利用可能になると、オブザーバ126は、アプリケーションレスポンスにアップデートヘッダを追加することによりスキャナ128への通知を行うことが可能である。このようにして、アップデートヘッダは、AUT124に関する新たな情報が利用可能になったこと、及び該情報を取得するためにリクエストすべきサービスをスキャナ128に通知する。例えば、オブザーバ126が、AUT124のセキュリティ検査中に生成された追加のURLを検出した場合、該オブザーバ126は、スキャナ128にアップデートヘッダを送信することが可能であり、この場合、<service_name_list>は「アタックサーフェス」に等しくなる。該アップデートヘッダを受信した際に、スキャナ128は、識別された1つ以上のサービスをリクエストするサービスリクエストをオブザーバ126へ送信することが可能である。オブザーバ126は、指定した1つ以上のサービスのためのサービスリクエストをスキャナ128が発行するまで、あらゆるアプリケーションレスポンスでアップデートヘッダを送り続けることが可能である。
・サービスリクエスト−トレース
アプリケーションリクエストに応じて、オブザーバ126は、例えば、AUT124により実行された特定のコード、AUT124によりアクセスされたファイル、AUT124により実行されたデータベースクエリ、又はその他の情報を判定することにより、アプリケーションリクエストの結果を判定することが可能である。オブザーバ126により収集されたデータは、本書で「トレース」と称するデータ構造に格納することが可能である。一実施形態では、各トレースは、バッファ210に格納することが可能である。各トレースは、該トレースに対応するアプリケーションリクエスト及びアプリケーションレスポンスのリクエストIDを含むことが可能である。スキャナ128は、対応するトレースをオブザーバ126から読み出すことによって特定のアプリケーションリクエストによりトリガされたAUT124の内部動作について学習することが可能である。トレースを読み出すために、スキャナ128は、特定のアプリケーションリクエスト又はレスポンスに対応するトレースのリクエストを示すよう構成されたヘッダフィールド名/値の対を含むサービスリクエストをオブザーバ126に対して発行することが可能である。例えば、トレースをリクエストするための該フィールド名/値の対は、次のように規定することが可能である。
該値<request_id>は、「リクエスト毎ヘッダ」と題する章に関して上述したように、リクエストされたトレースに関連するアプリケーションリクエスト及び/又はアプリケーションレスポンスに対応するスキャナ128又はオブザーバ126により割り当てられた値である。トレースサービスリクエストを受信すると、オブザーバ126は、AUT124をバイパスして、該リクエストされたトレースを含むサービスレスポンスを生成することが可能である。一実施形態では、該リクエストされたトレースは、オブザーバ126によりバッファ210から読み出されてサービスレスポンスのボディに追加されることが可能であり、次いで該サービスレスポンスをスキャナ128へ送信することが可能である。該サービスレスポンスのヘッダは、リクエストされたトレースのrequest_id値を含み、該サービスレスポンスのボディは、JSONオブジェクトとして規定することが可能である。
・サービスリクエスト−サーバ情報
オブザーバ126は、サーバ120に関する情報をスキャナ128に伝えるために使用されるサービス(本書では「サーバ情報サービス」と称す)を提供するよう構成することが可能である。サーバ情報を取り出すために、スキャナ128は、サーバ情報のリクエストを示すよう構成されたヘッダフィールド名(「サーバ」など)を含むサーバ情報サービスリクエストをオブザーバ126に対して発行することが可能である。該サーバ情報サービスリクエストを受信すると、オブザーバ126は、AUT124をバイパスして、リクエストされたサーバ情報をスキャナ128へ返すことが可能である。
・サービスリクエスト−アプリケーション情報
オブザーバ126は、AUT124に関する情報をスキャナ128に伝えるために使用されるサービス(本書では「アプリケーション情報サービス」と称す)を提供するよう構成することが可能である。アプリケーション情報を取り出すために、スキャナ128は、アプリケーション情報のリクエストを示すよう構成されたフィールド名(「アプリケーション」など)を含むアプリケーション情報サービスリクエストをオブザーバ126に対して発行することが可能である。該アプリケーション情報サービスリクエストを受信すると、オブザーバ126は、AUT124をバイパスして、リクエストされたアプリケーション情報をスキャナ128へ返すことが可能である。
・サービスリクエスト−アタックサーフェス
オブザーバ126は、単純なウェブクローラによって検出されない可能性のあるアタックサーフェスのコンポーネントを識別するために使用されるサービス(本書では「アタックサーフェスサービス」と称す)を提供するよう構成することが可能である。アタックサーフェス情報を取り出すために、スキャナ128は、アタックサーフェス情報のリクエストを示すよう構成されたヘッダフィールド名(「アタックサーフェス」など)を含むアタックサーフェスサービスリクエストを発行することが可能である。該アタックサーフェスサービスリクエストを受信すると、オブザーバ126は、AUT124をバイパスして、リクエストされたアタックサーフェス情報をスキャナ128へ返すことが可能である。該アタックサーフェス情報は、オブザーバ126により生成されるサービスレスポンスのボディで返すことが可能であり、例えばJSONオブジェクトとして規定することが可能である。送信するために利用可能なアタックサーフェス情報が存在しない場合には、サービスレスポンスのボディを空にすることが可能である。
・エラー処理
場合によっては、スキャナ128は、オブザーバ126によって遂行できないサービスリクエストを発行することが可能である。例えば、スキャナ128は、オブザーバ126によって認識されないサービスリクエスト又はオブザーバ126によって認識されないヘッダフィールド値内のサービスリクエスト(未知のリクエストIDを有するトレースリクエストなど)を発行することが可能である。オブザーバ126は、遂行できないサービスリクエストに遭遇した場合に、サービスレスポンス又はアプリケーションレスポンスのヘッダでスキャナ128にエラーを返すことが可能である。例えば、オブザーバ126は、以下のように規定したサービスレスポンスを発行することが可能である。
ヘッダフィールド値<error_text_string>は、遭遇したエラーの概略的な記述を提供する適当なテキストストリングとすることが可能である。該エラーを記述するテキストストリングは、ユーザが見ることができるエラーログにスキャナ128によって格納することが可能である。更に、オブザーバ126がエラーログを維持することが可能であり、この場合、各エラーログエントリは、問題の一層詳細な説明を含む。オブザーバ126により維持される該エラーログは、オブザーバ126の動作中に遭遇したあらゆるエラーを記録することが可能である。
1.検査対象となるアプリケーション(AUT)をホストするサーバと、
該AUTにより実行された命令を監視するよう構成されたオブザーバと、
該AUT及び該オブザーバに共通の通信チャネルを介して通信可能な状態で接続されたコンピューティング装置であって、プロセッサとコンピュータ読み取り可能命令を格納するための記憶装置とを備えている、コンピューティング装置と
を備えたシステムであって、前記コンピュータ読み取り可能命令が、
前記AUTの潜在的な脆弱性を露呈させるよう構成されたアプリケーションリクエストを該AUTへ送信し、
該AUTのプログラミングに従って該AUTからアプリケーションレスポンスを受信し、
前記オブザーバへサービスリクエストを送信し、
前記アプリケーションリクエストに起因して前記AUTにより実行された命令に対応する情報、該AUTに関する情報、又は該AUTをホストするサーバに関する情報を含むサービスレスポンスを前記オブザーバから受信する、
という各ステップを前記プロセッサに実行させるよう構成されている、システム。
2.前記オブザーバが、前記アプリケーションリクエストの結果として前記AUTにより実行された命令を識別するトレースを生成し、該トレースを前記サービスレスポンスのボディで前記コンピューティング装置へ送信するよう構成されている、前項1に記載のシステム。
3.前記オブザーバが、前記アプリケーションレスポンスにカスタムヘッダを追加することにより少なくとも部分的に前記コンピューティング装置と通信するよう構成されている、前項1に記載のシステム。
4.前記記憶装置が、前記オブザーバからトレース情報を受信するよう前記プロセッサに指示するよう構成されたコンピュータ読み取り可能命令を含み、該トレース情報が、複数の脆弱性トレースノードを含み、その各脆弱性トレースノードが、前記オブザーバにより検出された脆弱性に対応するコード場所を含む、前項1に記載のシステム。
5.前記記憶装置が、同一のコード場所を含む脆弱性トレースノードに基づく複数の脆弱性トレースノードのグループ化の実行を前記プロセッサに指示するよう構成されたコンピュータ読み取り可能命令を含む、前項4に記載のシステム。
6.前記オブザーバが、AUTを監視して該AUTの実行時に動的に生成される新しいURL(Uniform Resource Locator)を識別し及びアプリケーションレスポンスのヘッダでアップデートフィールドを返すよう構成されており、該アップデートフィールドが、該AUTのアタックサーフェスが変化したことを前記コンピューティング装置に通知するよう構成されている、前項1に記載のシステム。
7.前記オブザーバが、
前記コンピューティング装置からリクエストを受信して該リクエストのヘッダを解析し、
該ヘッダの解析に基づいて該リクエストをアプリケーションリクエスト又はサービスリクエストとして識別し、
該アプリケーションリクエストを前記AUTへ渡し、
該サービスリクエストを該AUTへ渡すことなく該サービスリクエストを処理する、
という各ステップを実行するよう構成されている、前項1に記載のシステム。
8.検査対象となるアプリケーション(AUT)の潜在的な脆弱性を露呈させるよう構成されたアプリケーションリクエストを該AUTへ送信し、
該AUTのプログラミングに従って該AUTからアプリケーションレスポンスを受信し、
該AUTにより実行される命令を監視するオブザーバへサービスリクエストを送信し、
前記アプリケーションリクエストに起因して該AUTにより実行された命令に対応する情報、該AUTに関する情報、又は該AUTをホストするサーバに関する情報を含むサービスレスポンスを前記オブザーバから受信する、
という各ステップからなり、前記アプリケーションリクエスト、前記アプリケーションレスポンス、前記サービスリクエスト、及び前記サービスレスポンスが、同一のネットワークチャネルを介して通信される、方法。
9.前記AUTにより生成されたファイル不発見エラーを示すために前記オブザーバにより前記アプリケーションレスポンスに追加されたファイル不発見ヘッダを該アプリケーションレスポンスで受信するステップを含む、前項8に記載の方法。
10.前記サービスリクエストがトレースサービスリクエストであり、前記オブザーバから受信したサービスレスポンスのボディでスタックトレースを受信するステップを含む、前項8に記載の方法。
11.前記オブザーバにより検出された脆弱性を識別する脆弱性トレースノードを前記サービスレスポンスのボディで受信するステップを含む、前項8に記載の方法。
12.前記サービスリクエストがアタックサーフェスサービスリクエストであり、前記AUTのアタックサーフェスに関する情報を前記サービスレスポンスのボディで受信し、該アタックサーフェスが、該AUTにより実行時に生成される静的URL及び動的URLからなる、前項8に記載の方法。
13.検査対象となるアプリケーション(AUT)の潜在的な脆弱性を露呈させるよう構成されたアプリケーションリクエストを該AUTへ送信し、
該AUTのプログラミングに従って該AUTからアプリケーションレスポンスを受信し、
該AUTにより実行される命令を監視するオブザーバへサービスリクエストを送信し、
前記アプリケーションリクエストに起因して該AUTにより実行された命令に対応する情報、該AUTに関する情報、又は該AUTをホストするサーバに関する情報を含むサービスレスポンスを前記オブザーバから受信する、
という各ステップの実行をプロセッサに指示するよう構成されたコードを含む、持続性コンピュータ読み取り可能媒体であって、
前記アプリケーションリクエスト、前記アプリケーションレスポンス、前記サービスリクエスト、及び前記サービスレスポンスが同一のネットワークチャネルを介して通信される、持続性コンピュータ読み取り可能媒体。
14.前記アプリケーションリクエストを一意に識別するリクエストIDを該アプリケーションリクエストのヘッダに追加するステップの実行を前記プロセッサに指示するよう構成されたコードを含み、前記オブザーバから受信した前記サービスレスポンスが該リクエストIDを含む、前項13に記載の持続性コンピュータ読み取り可能媒体。
15.前記サービスレスポンスが、前記アプリケーションリクエストの結果として前記AUTにより実行されたデータベースクエリに対応する情報を含むデータベーストレースノードを含む、前項13に記載の持続性コンピュータ読み取り可能媒体。
Claims (15)
- 検査対象となるアプリケーション(AUT)をホストするサーバと、
該AUTにより実行された命令を監視するよう構成されたオブザーバと、
該AUT及び該オブザーバに共通の通信チャネルを介して通信可能な状態で接続されたコンピューティング装置であって、プロセッサとコンピュータ読み取り可能命令を格納するための記憶装置とを備えている、コンピューティング装置と
を備えたシステムであって、
前記コンピュータ読み取り可能命令が、
前記AUTの潜在的な脆弱性を露呈させるよう構成されたアプリケーションリクエストを該AUTへ送信し、
該AUTのプログラミングに従って該AUTからアプリケーションレスポンスを受信し、
前記オブザーバへサービスリクエストを送信し、
前記アプリケーションリクエストに起因して前記AUTにより実行された命令に対応する情報、該AUTに関する情報、又は該AUTをホストするサーバに関する情報を含むサービスレスポンスを前記オブザーバから受信する、
という各ステップを前記プロセッサに実行させるよう構成されており、
前記オブザーバが、
前記コンピューティング装置からリクエストを受信して該リクエストのヘッダを解析し、
該ヘッダの解析に基づいて該リクエストをアプリケーションリクエスト又はサービスリクエストとして識別し、
該アプリケーションリクエストを前記AUTへ渡し、
該サービスリクエストを該AUTへ渡すことなく該サービスリクエストを処理する、
という各ステップを実行するよう構成されている、システム。 - 前記オブザーバが、前記アプリケーションリクエストの結果として前記AUTにより実行された命令を識別するトレースを生成し、該トレースを前記サービスレスポンスのボディで前記コンピューティング装置へ送信するよう構成されている、請求項1に記載のシステム。
- 前記オブザーバが、前記アプリケーションレスポンスにカスタムヘッダを追加することにより少なくとも部分的に前記コンピューティング装置と通信するよう構成されている、請求項1又は請求項2に記載のシステム。
- 前記記憶装置が、前記オブザーバからトレース情報を受信するよう前記プロセッサに指示するよう構成されたコンピュータ読み取り可能命令を含み、該トレース情報が、複数のスタックトレースを含み、その各スタックトレースが、前記オブザーバにより検出された脆弱性に対応するコード場所を含む、請求項1ないし請求項3の何れか一項に記載のシステム。
- 前記記憶装置が、同一のコード場所を含むスタックトレースに基づく複数のスタックトレースのグループ化の実行を前記プロセッサに指示するよう構成されたコンピュータ読み取り可能命令を含む、請求項4に記載のシステム。
- 前記オブザーバが、AUTを監視して該AUTの実行時に動的に生成される新しいURL(Uniform Resource Locator)を識別し及びアプリケーションレスポンスのヘッダでアップデートフィールドを返すよう構成されており、該アップデートフィールドが、該AUTのアタックサーフェスが変化したことを前記コンピューティング装置に通知するよう構成されている、請求項1ないし請求項5の何れか一項に記載のシステム。
- コンピューティング装置により、検査対象となるアプリケーション(AUT)の潜在的な脆弱性を露呈させるよう構成されたアプリケーションリクエストを該AUTへ送信し、
該コンピューティング装置により、該AUTのプログラミングに従って該AUTからアプリケーションレスポンスを受信し、
該コンピューティング装置により、該AUTにより実行される命令を監視するオブザーバへサービスリクエストを送信し、
該コンピューティング装置により、前記アプリケーションリクエストに起因して該AUTにより実行された命令に対応する情報、該AUTに関する情報、又は該AUTをホストするサーバに関する情報を含むサービスレスポンスを前記オブザーバから受信する、
という各ステップからなり、
前記アプリケーションリクエスト、前記アプリケーションレスポンス、前記サービスリクエスト、及び前記サービスレスポンスが、同一のネットワークチャネルを介して通信され、
前記オブザーバが、
前記コンピューティング装置からリクエストを受信して該リクエストのヘッダを解析し、
該ヘッダの解析に基づいて該リクエストをアプリケーションリクエスト又はサービスリクエストとして識別し、
該アプリケーションリクエストを前記AUTへ渡し、
該サービスリクエストを該AUTへ渡すことなく該サービスリクエストを処理する、
という各ステップを実行するよう構成されている、方法。 - 前記AUTにより生成されたファイル不発見エラーを示すために前記オブザーバにより前記アプリケーションレスポンスに追加されたファイル不発見ヘッダを該アプリケーションレスポンスで受信するステップを含む、請求項7に記載の方法。
- 前記サービスリクエストがトレースサービスリクエストであり、前記オブザーバから受信したサービスレスポンスのボディでスタックトレースを受信するステップを含む、請求項7又は請求項8に記載の方法。
- 前記オブザーバにより検出された脆弱性を識別するスタックトレースを前記サービスレスポンスのボディで受信するステップを含む、請求項7又は請求項8に記載の方法。
- 前記サービスリクエストがアタックサーフェスサービスリクエストであり、前記AUTのアタックサーフェスに関する情報を前記サービスレスポンスのボディで受信し、該アタックサーフェスが、該AUTにより実行時に生成される静的URL及び動的URLからなる、請求項7又は請求項8に記載の方法。
- 検査対象となるアプリケーション(AUT)の潜在的な脆弱性を露呈させるよう構成されたアプリケーションリクエストを該AUTへ送信し、
該AUTのプログラミングに従って該AUTからアプリケーションレスポンスを受信し、
該AUTにより実行される命令を監視するオブザーバへサービスリクエストを送信し、
前記アプリケーションリクエストに起因して該AUTにより実行された命令に対応する情報、該AUTに関する情報、又は該AUTをホストするサーバに関する情報を含むサービスレスポンスを前記オブザーバから受信する、
という各ステップの実行をコンピューティング装置のプロセッサに指示するよう構成されたコードを含む、持続性コンピュータ読み取り可能媒体であって、
前記アプリケーションリクエスト、前記アプリケーションレスポンス、前記サービスリクエスト、及び前記サービスレスポンスが同一のネットワークチャネルを介して通信され、
前記オブザーバが、
前記コンピューティング装置からリクエストを受信して該リクエストのヘッダを解析し、
該ヘッダの解析に基づいて該リクエストをアプリケーションリクエスト又はサービスリクエストとして識別し、
該アプリケーションリクエストを前記AUTへ渡し、
該サービスリクエストを該AUTへ渡すことなく該サービスリクエストを処理する、
という各ステップを実行するよう構成されている、持続性コンピュータ読み取り可能媒体。 - 前記アプリケーションリクエストを一意に識別するリクエストIDを該アプリケーションリクエストのヘッダに追加するステップの実行を前記プロセッサに指示するよう構成されたコードを含み、前記オブザーバから受信した前記サービスレスポンスが該リクエストIDを含む、請求項12に記載の持続性コンピュータ読み取り可能媒体。
- 前記サービスレスポンスが、前記アプリケーションリクエストの結果として前記AUTにより実行されたデータベースクエリに対応する情報を含む、請求項12又は請求項13に記載の持続性コンピュータ読み取り可能媒体。
- 前記サービスリクエストがアタックサーフェスサービスリクエストであり、前記AUTのアタックサーフェスに関する情報が前記サービスレスポンスのボディに含まれ、該アタックサーフェスが、該AUTにより実行時に生成される静的URL及び動的URLからなる、請求項12ないし請求項14の何れか一項に記載の持続性コンピュータ読み取り可能媒体。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2011/038609 WO2012166120A1 (en) | 2011-05-31 | 2011-05-31 | Application security testing |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015166360A Division JP5978368B2 (ja) | 2015-08-26 | 2015-08-26 | アプリケーションのセキュリティ検査 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014517968A JP2014517968A (ja) | 2014-07-24 |
JP5801953B2 true JP5801953B2 (ja) | 2015-10-28 |
Family
ID=47259662
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014511332A Active JP5801953B2 (ja) | 2011-05-31 | 2011-05-31 | アプリケーションのセキュリティ検査 |
Country Status (7)
Country | Link |
---|---|
US (1) | US9215247B2 (ja) |
EP (1) | EP2715599B1 (ja) |
JP (1) | JP5801953B2 (ja) |
KR (1) | KR101745758B1 (ja) |
CN (1) | CN103562923B (ja) |
BR (1) | BR112013030660A2 (ja) |
WO (1) | WO2012166120A1 (ja) |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9747187B2 (en) | 2010-10-27 | 2017-08-29 | International Business Machines Corporation | Simulating black box test results using information from white box testing |
US10701097B2 (en) * | 2011-12-20 | 2020-06-30 | Micro Focus Llc | Application security testing |
EP2877926A4 (en) * | 2012-07-26 | 2016-01-27 | Hewlett Packard Development Co | SAFETY TESTING OF AN APPLICATION |
WO2014171950A1 (en) * | 2013-04-19 | 2014-10-23 | Hewlett-Packard Development Company, L.P. | Unused parameters of application under test |
EP3039897B1 (en) * | 2013-08-29 | 2021-09-22 | Nokia Technologies Oy | Adaptive security indicator for wireless devices |
US9195570B2 (en) | 2013-09-27 | 2015-11-24 | International Business Machines Corporation | Progressive black-box testing of computer software applications |
US9363284B2 (en) * | 2013-12-11 | 2016-06-07 | International Business Machines Corporation | Testing web applications for security vulnerabilities with metarequests |
WO2015116138A1 (en) * | 2014-01-31 | 2015-08-06 | Hewlett-Packard Development Company | Application test using attack suggestions |
US10423793B2 (en) | 2014-06-19 | 2019-09-24 | Entit Software Llc | Install runtime agent for security test |
US10650148B2 (en) | 2014-09-04 | 2020-05-12 | Micro Focus Llc | Determine protective measure for data that meets criteria |
US10515220B2 (en) * | 2014-09-25 | 2019-12-24 | Micro Focus Llc | Determine whether an appropriate defensive response was made by an application under test |
EP3202090A4 (en) | 2014-09-29 | 2018-06-13 | Hewlett-Packard Enterprise Development LP | Detection of email-related vulnerabilities |
CN107211011A (zh) * | 2014-11-25 | 2017-09-26 | 恩西洛有限公司 | 用于恶意代码检测的系统及方法 |
CN104506522B (zh) * | 2014-12-19 | 2017-12-26 | 北京神州绿盟信息安全科技股份有限公司 | 漏洞扫描方法及装置 |
US9350750B1 (en) * | 2015-04-03 | 2016-05-24 | Area 1 Security, Inc. | Distribution of security rules among sensor computers |
US9817676B2 (en) * | 2015-06-23 | 2017-11-14 | Mcafee, Inc. | Cognitive protection of critical industrial solutions using IoT sensor fusion |
CN106656924A (zh) * | 2015-10-30 | 2017-05-10 | 北京神州泰岳软件股份有限公司 | 一种设备安全漏洞的处理方法和装置 |
US11449638B2 (en) | 2016-03-18 | 2022-09-20 | Micro Focus Llc | Assisting a scanning session |
CN106446289B (zh) * | 2016-11-11 | 2019-10-01 | 无锡雅座在线科技股份有限公司 | 基于Pinpoint的信息查询方法和装置 |
CN107194258B (zh) * | 2017-04-06 | 2019-10-01 | 珠海格力电器股份有限公司 | 监测代码漏洞的方法、装置及电子设备、存储介质 |
US10616263B1 (en) * | 2017-09-13 | 2020-04-07 | Wells Fargo Bank, N.A. | Systems and methods of web application security control governance |
US10977161B2 (en) * | 2018-05-30 | 2021-04-13 | Microsoft Technology Licensing, Llc | Automatic intelligent cloud service testing tool |
US10387659B1 (en) | 2018-10-31 | 2019-08-20 | Capital One Services, Llc | Methods and systems for de-duplication of findings |
KR102231722B1 (ko) * | 2019-03-28 | 2021-03-25 | 네이버클라우드 주식회사 | 취약점 중복판단방법 및 이를 이용하는 진단장치 |
US11087333B2 (en) * | 2019-07-30 | 2021-08-10 | Salesforce.Com, Inc. | Facilitating session-based read/write of context variables to share information across multiple microservices |
CA3190145A1 (en) | 2020-08-27 | 2022-03-03 | Satya V. Gupta | Automated application vulnerability and risk assessment |
KR102558388B1 (ko) | 2021-03-18 | 2023-07-24 | 주식회사 대양 | 건물 지붕에 태양광 패널을 고정하는 구조물 |
Family Cites Families (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6311278B1 (en) * | 1998-09-09 | 2001-10-30 | Sanctum Ltd. | Method and system for extracting application protocol characteristics |
WO2001065330A2 (en) * | 2000-03-03 | 2001-09-07 | Sanctum Ltd. | System for determining web application vulnerabilities |
US6996845B1 (en) | 2000-11-28 | 2006-02-07 | S.P.I. Dynamics Incorporated | Internet security analysis system and process |
US6826716B2 (en) | 2001-09-26 | 2004-11-30 | International Business Machines Corporation | Test programs for enterprise web applications |
MXPA04006473A (es) * | 2001-12-31 | 2004-10-04 | Citadel Security Software Inc | Sistema de resolucion automatizado para vulnerabilidad de computadora. |
US7765597B2 (en) | 2004-02-11 | 2010-07-27 | Hewlett-Packard Development Company, L.P. | Integrated crawling and auditing of web applications and web content |
US8566945B2 (en) * | 2004-02-11 | 2013-10-22 | Hewlett-Packard Development Company, L.P. | System and method for testing web applications with recursive discovery and analysis |
US20050273860A1 (en) * | 2004-06-04 | 2005-12-08 | Brian Chess | Apparatus and method for developing, testing and monitoring secure software |
US20050273859A1 (en) * | 2004-06-04 | 2005-12-08 | Brian Chess | Apparatus and method for testing secure software |
US7207065B2 (en) * | 2004-06-04 | 2007-04-17 | Fortify Software, Inc. | Apparatus and method for developing secure software |
US7975306B2 (en) * | 2004-06-04 | 2011-07-05 | Hewlett-Packard Development Company, L.P. | Apparatus and method for monitoring secure software |
US8281401B2 (en) * | 2005-01-25 | 2012-10-02 | Whitehat Security, Inc. | System for detecting vulnerabilities in web applications using client-side application interfaces |
US20070061885A1 (en) | 2005-09-09 | 2007-03-15 | Hammes Peter C | System and method for managing security testing |
US20070101196A1 (en) * | 2005-11-01 | 2007-05-03 | Rogers William A | Functional testing and verification of software application |
US20070156644A1 (en) * | 2006-01-05 | 2007-07-05 | Microsoft Corporation | SQL injection detector |
US7818788B2 (en) | 2006-02-14 | 2010-10-19 | Microsoft Corporation | Web application security frame |
JP2007241906A (ja) | 2006-03-11 | 2007-09-20 | Hitachi Software Eng Co Ltd | Webアプリケーション脆弱性動的検査方法およびシステム |
US8789187B1 (en) * | 2006-09-28 | 2014-07-22 | Whitehat Security, Inc. | Pattern tracking and capturing human insight in a web application security scanner |
US8087088B1 (en) | 2006-09-28 | 2011-12-27 | Whitehat Security, Inc. | Using fuzzy classification models to perform matching operations in a web application security scanner |
US8656495B2 (en) * | 2006-11-17 | 2014-02-18 | Hewlett-Packard Development Company, L.P. | Web application assessment based on intelligent generation of attack strings |
US9069967B2 (en) | 2007-02-16 | 2015-06-30 | Veracode, Inc. | Assessment and analysis of software security flaws |
EP2132675B1 (en) | 2007-03-06 | 2019-09-11 | Help/Systems, LLC | System and method for providing application penetration testing |
JP4193196B1 (ja) | 2007-05-30 | 2008-12-10 | 株式会社ファイブドライブ | Webサービス提供システム検査装置及びWebサービス提供システム検査プログラム |
US8631116B2 (en) | 2007-11-28 | 2014-01-14 | Ccip Corp. | System and method for active business configured website monitoring |
US8601586B1 (en) * | 2008-03-24 | 2013-12-03 | Google Inc. | Method and system for detecting web application vulnerabilities |
US20090282480A1 (en) * | 2008-05-08 | 2009-11-12 | Edward Lee | Apparatus and Method for Monitoring Program Invariants to Identify Security Anomalies |
JP2010033543A (ja) * | 2008-06-24 | 2010-02-12 | Smg Kk | ソフトウエア動作監視システム、そのクライアントコンピュータおよびサーバコンピュータ、並びに、そのプログラム |
US20090327943A1 (en) | 2008-06-26 | 2009-12-31 | Microsoft Corporation | Identifying application program threats through structural analysis |
US8141158B2 (en) | 2008-12-31 | 2012-03-20 | International Business Machines Corporation | Measuring coverage of application inputs for advanced web application security testing |
US8347393B2 (en) | 2009-01-09 | 2013-01-01 | Hewlett-Packard Development Company, L.P. | Method and system for detecting a state of a web application using a signature |
JP2010267266A (ja) * | 2009-05-18 | 2010-11-25 | Nst:Kk | 試験支援装置および試験支援方法 |
US8627479B2 (en) * | 2010-03-01 | 2014-01-07 | Emc Corporation | System and method for network security including detection of attacks through partner websites |
-
2011
- 2011-05-31 CN CN201180071281.4A patent/CN103562923B/zh active Active
- 2011-05-31 EP EP11866677.5A patent/EP2715599B1/en active Active
- 2011-05-31 JP JP2014511332A patent/JP5801953B2/ja active Active
- 2011-05-31 KR KR1020137031661A patent/KR101745758B1/ko active IP Right Grant
- 2011-05-31 WO PCT/US2011/038609 patent/WO2012166120A1/en active Application Filing
- 2011-05-31 BR BR112013030660A patent/BR112013030660A2/pt not_active Application Discontinuation
- 2011-05-31 US US14/116,000 patent/US9215247B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
BR112013030660A2 (pt) | 2016-12-06 |
EP2715599A4 (en) | 2015-03-04 |
US20140082739A1 (en) | 2014-03-20 |
US9215247B2 (en) | 2015-12-15 |
CN103562923B (zh) | 2016-09-07 |
EP2715599B1 (en) | 2019-07-03 |
KR101745758B1 (ko) | 2017-06-09 |
CN103562923A (zh) | 2014-02-05 |
JP2014517968A (ja) | 2014-07-24 |
EP2715599A1 (en) | 2014-04-09 |
KR20140043081A (ko) | 2014-04-08 |
WO2012166120A1 (en) | 2012-12-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5801953B2 (ja) | アプリケーションのセキュリティ検査 | |
US9501650B2 (en) | Application security testing | |
US11722514B1 (en) | Dynamic vulnerability correlation | |
US9043924B2 (en) | Method and system of runtime analysis | |
TWI575397B (zh) | 利用運行期代理器及動態安全分析之應用程式逐點保護技術 | |
US20130160130A1 (en) | Application security testing | |
US9846781B2 (en) | Unused parameters of application under test | |
US9201769B2 (en) | Progressive black-box testing of computer software applications | |
TWI574173B (zh) | 決定受測應用程式安全活動之技術 | |
US10705949B2 (en) | Evaluation of library test suites using mutation testing | |
US9953169B2 (en) | Modify execution of application under test so user is power user | |
Kim et al. | {FuzzOrigin}: Detecting {UXSS} vulnerabilities in browsers through origin fuzzing | |
US10242199B2 (en) | Application test using attack suggestions | |
JP5978368B2 (ja) | アプリケーションのセキュリティ検査 | |
US9661014B2 (en) | Leveraging persistent identities in website testing | |
CA3204750A1 (en) | Web attack simulator | |
Dens et al. | Large-scale drive-by download detection: visit n. process. analyse. report. | |
KOLÁČEK | AUTOMATED WEB APPLICATION VULNERABILITY DETECTION |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20141112 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20141125 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20150225 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20150325 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150420 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20150728 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150827 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5801953 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R360 | Written notification for declining of transfer of rights |
Free format text: JAPANESE INTERMEDIATE CODE: R360 |
|
R360 | Written notification for declining of transfer of rights |
Free format text: JAPANESE INTERMEDIATE CODE: R360 |
|
R371 | Transfer withdrawn |
Free format text: JAPANESE INTERMEDIATE CODE: R371 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R360 | Written notification for declining of transfer of rights |
Free format text: JAPANESE INTERMEDIATE CODE: R360 |
|
R360 | Written notification for declining of transfer of rights |
Free format text: JAPANESE INTERMEDIATE CODE: R360 |
|
R371 | Transfer withdrawn |
Free format text: JAPANESE INTERMEDIATE CODE: R371 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: R3D02 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |