JP5572763B2 - ウェブサイトスキャン装置及びその方法 - Google Patents

ウェブサイトスキャン装置及びその方法 Download PDF

Info

Publication number
JP5572763B2
JP5572763B2 JP2013527447A JP2013527447A JP5572763B2 JP 5572763 B2 JP5572763 B2 JP 5572763B2 JP 2013527447 A JP2013527447 A JP 2013527447A JP 2013527447 A JP2013527447 A JP 2013527447A JP 5572763 B2 JP5572763 B2 JP 5572763B2
Authority
JP
Japan
Prior art keywords
web application
link
rule
website
specific
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
Application number
JP2013527447A
Other languages
English (en)
Other versions
JP2013537986A (ja
Inventor
周大
王▲曉▼明
▲呂▼明
▲蒋▼輝
▲劉▼光旭
盧小▲海▼
李▲納▼
盧梁
▲曽菁菁▼
Original Assignee
北京神州▲緑▼盟信息安全科技股▲分▼有限公司
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 北京神州▲緑▼盟信息安全科技股▲分▼有限公司 filed Critical 北京神州▲緑▼盟信息安全科技股▲分▼有限公司
Publication of JP2013537986A publication Critical patent/JP2013537986A/ja
Application granted granted Critical
Publication of JP5572763B2 publication Critical patent/JP5572763B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1433Vulnerability analysis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1483Countermeasures against malicious traffic service impersonation, e.g. phishing, pharming or web spoofing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Transfer Between Computers (AREA)

Description

本発明は、コンピュータネットワークセキュリティの分野に関し、特に、ウェブサイトが脆弱性を有するか否かを確認するために当該ウェブサイトをリモートスキャンするウェブサイトスキャン装置及びウェブサイトスキャン方法に関する。
あるウェブサイトについて、CGI脆弱性、SQLインジェクション脆弱性、クロスサイトスクリプティング脆弱性などの各種の脆弱性を有するか否かを判定するためには、当該ウェブサイトに対して外部から、すなわち遠隔から、脆弱性スキャンを実行して、上記のような脆弱性を有するか否か確認する必要がある。
今日、インターネット上の多数のウェブサイトは、いくつかの既知ウェブアプリケーションに基づいて構築されている。例えば、ウェブサイトのフォーラムシステムは、Discuz!、phpwind、Dvbbsなどの既知ウェブアプリケーションに基づいて構築すればよい。そして、ウェブサイトのブログシステムは、WordPressなどのウェブアプリケーションに基づいて構築すればよい。これら既知ウェブアプリケーションが、いくつかの既知のCGI脆弱性を含んでいたことは、既に知られている。例えば、Discuz!フォーラムは、バイパスグローバル変数防御脆弱性、Discuz!フォーラムのmanyou plug-inに含まれていたSQLインジェクション脆弱性、WordPressに含まれていたバイパスパスワード保護脆弱性などを含んでいた。既知ウェブアプリケーションのアプリケーション範囲は非常に広いため、これらのウェブアプリケーションに関する脆弱性検討の範囲も非常に広くなるが、これらの既知ウェブアプリケーションの脆弱性については、手遅れにならないうちに修正方法が示される。従って、これらの既知ウェブアプリケーションは徐々に、比較的成熟した製品となってきた。ネットワークに公開された脆弱性以外の脆弱性が存在する可能性は非常に低くなっている。
従来のウェブサイト脆弱性のスキャン方法では、順番にウェブサイト上の全てのページを横断し、各ページについてクローラプログラムをコールし、ページコンテンツを取得して分析を行い、そうして、複数のページに対して包括的な脆弱性スキャンを実行している。
従来のウェブサイト脆弱性のスキャン方法を、既知ウェブアプリケーションに基づいて構成されたウェブサイトのスキャンに用いる場合、スキャンによって脆弱性が発見される可能性は比較的低い。その一方で、多くの時間と帯域幅とが消費され、更に、スキャンプログラムの問題から誤って脆弱性ありと判定される事態すら生じ、そうなれば徒に顧客に不安を感じさせることになる。
以上のことから、既知のウェブアプリケーションがウェブサイトによって使用されている点を考慮して、不要な脆弱性スキャン処理を減らし、それによって、スキャン時間及び占有ネットワーク帯域幅を節約することで、ウェブサイトスキャンの効率を高める、という新しいウェブサイトスキャン装置及びウェブサイトスキャン方法が求められている。
本発明は、上記の課題に鑑みて提案されるものであり、上記課題を克服又は少なくとも部分的に解決する、ウェブサイトスキャンシステム及びウェブサイトスキャン方法を提供する。
本発明の1つの態様として、ウェブサイトスキャン装置であって、ウェブサイト内のリンクが当該ウェブサイト内の特定のウェブアプリケーションに属している場合、当該リンクに対して脆弱性スキャンが実行されないようにするため、当該ウェブサイトが採用している既知ウェブアプリケーションの特定リストに基づいて、前記リンクが当該ウェブサイト内の前記特定のウェブアプリケーションに属しているか否かを判定するポリシー分析手段と、特定のウェブアプリケーションに属していないリンクを前記ポリシー分析手段から受け取り、受け取った前記リンクが指すリンクコンテンツを取得するクローラ手段と、前記リンク及び前記リンクコンテンツに基づいて、前記リンクが既知ウェブアプリケーションに属しているか否かを判定し、前記リンクが前記既知ウェブアプリケーションに属している場合に、前記既知ウェブアプリケーションを、前記ウェブサイトにおける前記特定のウェブアプリケーションと判定するウェブアプリケーション特定手段と、前記ウェブアプリケーション特定手段によって既知ウェブアプリケーションに属していないと判定されたリンクを受け取り、受け取った前記リンクに対して脆弱性フルスキャンを実行するフルスキャン手段と、前記ウェブアプリケーション特定手段による判定が行われた特定のウェブアプリケーションを受け取り、前記特定のウェブアプリケーションの既知の脆弱性に基づいて、前記ウェブサイトに対して脆弱性検出を実行して、前記特定のウェブアプリケーションの前記既知の脆弱性が修正済みか否かを判定する既知ウェブアプリケーション脆弱性検出手段と、を備えることウェブサイトスキャン装置を提供する。
また、オプションとして、本発明によるウェブサイトスキャン装置における前記ウェブアプリケーション特定手段は、前記既知ウェブアプリケーションの特徴に基づいて規則セットを生成する規則生成部と、前記リンク及び前記リンクコンテンツを取得し、取得した前記リンク及び前記リンクコンテンツの特徴を抽出し、抽出した前記リンク及び前記リンクコンテンツの前記特徴に基づいて、前記規則セットに含まれる複数の前記規則の一つがマッチしているか否か判定し、マッチした前記規則に対応する既知ウェブアプリケーションを、前記リンクが属する前記既知ウェブアプリケーションであるとして決定する規則マッチングエンジンとを含む。加えて、既知ウェブアプリケーションの特徴は、特定のページ及び当該特定のページにおける特定のマーク、特定のページ及び当該特定のページの全てのコンテンツ、HTTPレスポンスフィールド、及び、特定のリンクのうちの1以上から成る。
また、本発明の別の態様として、ポリシー分析手段、クローラ手段、ウェブアプリケーション特定手段、既知ウェブアプリケーション脆弱性検出手段及びフルスキャン手段を備えるウェブサイトスキャン装置により用いられるウェブサイトスキャン方法であって、前記ポリシー分析手段によって、ウェブサイトが採用している既知ウェブアプリケーションの特定リストに基づいて、当該ウェブサイト内のリンクが当該ウェブサイト内の特定のウェブアプリケーションに属しているか否かを判定するステップと、前記フルスキャン手段によって、前記リンクが前記特定のウェブアプリケーションに属している場合、前記リンクの脆弱性スキャンを実行せず、前記クローラ手段によって、前記リンクが前記特定のウェブアプリケーションに属していない場合、特定のウェブアプリケーションに属していないリンクを受け取り、受け取った前記リンクが指すリンクコンテンツを取得するステップと、前記ウェブアプリケーション特定手段によって、前記リンク及び前記リンクコンテンツに基づき、前記リンクが既知ウェブアプリケーションに属しているか否かを判定するステップと、前記ウェブアプリケーション特定手段によって、前記リンクが既知ウェブアプリケーションに属している場合には、当該既知ウェブアプリケーションを前記ウェブサイトにおける特定のウェブアプリケーションと決定し、前記既知ウェブアプリケーション脆弱性検出手段によって、特定のウェブアプリケーションの既知の脆弱性に応じて、前記ウェブサイトに対して脆弱性検出を実行して、前記特定のウェブアプリケーションの前記既知の脆弱性が修正済みか否かを判定するステップと、前記フルスキャン手段によって、前記リンクが既知ウェブアプリケーションに属していない場合に、前記リンクに脆弱性フルスキャンを実行するステップと、を含むウェブサイトスキャン方法を提供する。
本発明によるウェブサイトスキャン装置及びウェブサイトスキャン方法を利用した場合、対象ウェブサイトが採用している既知ウェブアプリケーションが特定される際には、特定された既知ウェブアプリケーションの対応ディレクトリの下にあるページの全てをスキャンする必要はなく、既知ウェブアプリケーションに関して公開済みの脆弱性のチェックのみ行えばよいため、スキャン効率は大幅に向上する。更に、特定された既知ウェブアプリケーションについては、対応ディレクトリのファイル構造が直接取得され、クローラ部によるページコンテンツのクロールを実行しなくともよいため、ページクロールのために占有される帯域幅及び時間は小さくなるであろう。
加えて、本発明によるウェブサイトスキャン装置及びウェブサイトスキャン方法は、既知ウェブアプリケーションで新たに発見された脆弱性と脆弱性修正方法とを適時にアップデートする。そのため、本発明によるウェブサイトスキャン装置及びウェブサイトスキャン装置を用いてウェブサイトが利用している既知ウェブアプリケーションを特定する際に、ウェブサイトの脆弱性は手遅れになることなく発見され、脆弱性修正のための提案も示されるであろう。
また、特定された既知ウェブアプリケーションの対応ディレクトリの下にあるファイルに対しては、フルスキャンはそれ以上行われない。これにより、スキャンスキームの欠陥及びウェブ環境の複雑さが原因となって、これらディレクトリ下のファイルに各種脆弱性が存在すると誤認識される、という事態の発生を減らすことができる。
上記以外の各種効果及び利点については、当業者であれば、好適な実施の形態に関する以下の詳細な記述を読むことで明らかになるであろう。図面は好適な実施の形態の例示のみを目的としており、本発明を限定するものと見なすべきではない。全ての図面を通じて、類似の参照記号は類似の構成要素を示すのに用いられている。
本発明の実施の形態によるウェブサイトスキャン装置100を概略的に示すブロック図である。 ウェブサイトスキャン装置100におけるウェブアプリケーション特定部140を概略的に示すブロック図である。 ウェブアプリケーションDiscuz!に関する特徴的な例を概略的に示す図である。 本発明の実施の形態によるウェブスキャン方法400を概略的に示すフローチャートである。 ウェブスキャン方法400におけるウェブアプリケーション特定方法を概略的に示すフローチャートである。 本発明による方法を実行するためサーバを概略的に示すブロック図である。 本発明による方法を実現するプログラムコードを保持又は搬送するための記憶部を示す概略図である。
以下、図面及び特定の実施の形態と関連付けながら、本発明について更に説明する。
図1は、本発明の実施の形態によるウェブサイトスキャン装置100を概略的に示すブロック図である。図1に示すように、ウェブサイトスキャン装置100は、ポリシー分析部110、クローラ部120、ウェブアプリケーション特定部140、フルスキャン部170、そして、既知ウェブアプリケーション脆弱性検出部160から成る。
ポリシー分析部110は、対象ウェブサイトにおける処理対象リンクを受け取り、対象ウェブサイトが採用している既知ウェブアプリケーションの特定リストに基づいて、当該処理対象リンクが、ある既知ウェブアプリケーションに属しているか否か判定する。対象ウェブサイトへのスキャン実行プロセスにおいて、対象ウェブサイトが採用している既知ウェブアプリケーションが特定される(その数は不定であり、既知ウェブアプリケーションが全く採用されていない場合もありうる)。そして、オプションとして、こうした既知ウェブアプリケーションは、特定ウェブアプリケーション格納部180に保存される場合もある。既知ウェブアプリケーションは、各々が固有のファイルディレクトリ構造を有している。こうしたディレクトリ構造をウェブアプリケーションに関連付けて保存してもよい。処理対象リンクのアドレスを対象ウェブサイトが採用している既知ウェブアプリケーションのファイルディレクトリ構造と比較することで、処理対象リンクが、ある既知ウェブアプリケーションに属しているか否か判定することができる。一例として、「http://www.example.com/a/」というディレクトリ構造を有する特定のウェブアプリケーションについて考えると、処理対象リンクのアドレスが「http://www.example/a/b.php」であれば、前記ウェブアプリケーションのディレクトリ構造の下にあるため、この処理対象リンクは当該特定のウェブアプリケーションに属していると判定される。
対象ウェブサイトが特定の既知ウェブアプリケーションを全く持たない場合、あるいは、処理対象リンクが特定の既知ウェブアプリケーションに属しているとは判定されなかった場合、ポリシー分析部110は、当該処理対象リンクをクローラ部120に送って次の処理を行わせる。あるいは、ポリシー分析部110は、当該処理対象リンクの処理を終了し、次の処理対象リンクを取得して、これを処理する。
クローラ部120は、特定のウェブアプリケーションに属していないリンクをポリシー分析部110から受け取り、当該リンクに対応するネットワークコンテンツを取得する。クローラ部120は、ネットワーククローラなどの手法を用いて、当該リンクに対応するネットワークコンテンツを取得すればよい。当然のことながら、リンクに対応するネットワークコンテンツを取得する手法は全て、本発明の保護範囲に含まれる。クローラ部120は、更に、取得したネットワークコンテンツを分析し、そこに更に含まれるリンクを抽出すると、これら抽出したリンクを、次のステップにおける処理対象リンクとして、ネットワークリンク格納部130に格納する。ネットワークリンク格納部130は、処理対象リンクのリストを格納し、ポリシー分析部110は、ネットワークリンク格納部130から、処理のためのリストに含まれる1つの処理対象リンクを取得し、処理することにしてもよい。
加えて、クローラ部120は更に、取得したネットワークコンテンツに関連する別ネットワークコンテンツを取得する場合もある。具体的には、ネットワークコンテンツ、例えば、ネットワークリンクに対応するウェブページは更に、外部jsコード、css−フォーマットファイルなどを参照する場合があり、こうしたjsコード、css−フォーマットファイルなどのコンテンツが、当該ウェブページに関連する別ネットワークコンテンツとされる。このような、関連する別コンテンツもまた、あるリンクが既知ウェブアプリケーションに属しているか否かを判定する際に用いられる場合がある。よって、クローラ部120は、こうしたコンテンツを、処理対象リンクに対応するネットワークコンテンツの関連コンテンツとして取得することにすればよい。
クローラ部120は、処理対象リンク及び当該リンクのネットワークコンテンツをウェブアプリケーション特定部140へ送る(オプションとして、ネットワークコンテンツに関連するコンテンツまで含まれる場合がある)。そうして、ウェブアプリケーション特定部140は、対象ウェブサイトが、ある既知アプリケーションを採用しているか否かを判定する(オプションとして、既知ウェブアプリケーションの特徴が保存された既知ウェブアプリケーション特徴格納部150を参照する場合もある)。対象ウェブサイトが、ある既知アプリケーションを採用している場合には、当該既知ウェブアプリケーションに関する情報が既知ウェブアプリケーション脆弱性検出部に送られ、更なる処理が行われる。採用していない場合には、リンク及びそのネットワークコンテンツがフルスキャン部170に送られ、脆弱性に関するフルスキャンが実行される。更に、ウェブアプリケーション特定部140は、特定された既知ウェブアプリケーション及びその関連情報(例えばURLなど)を、特定ウェブアプリケーション格納部180に格納する。ポリシー分析部110は、これによって、リンクが特定の既知ウェブアプリケーションに属しているか否かを判定することができる。以下、ウェブアプリケーション特定部140の特定の実施の形態について、図2を参照しながら詳細に説明する。しかしながら、本発明がこの特定の実施の形態に限定されないことを理解すべきである。リンク及びそのコンテンツに従ってリンクが属するウェブアプリケーションを判定するウェブアプリケーション特定装置は全て、本発明の保護範囲に含まれる。
留意すべき点として、ウェブアプリケーション特定部140が処理対象リンク及びそのコンテンツに従って既知ウェブアプリケーションの特定を行うプロセスでは、クローラ部120との間で情報交換を行って、別のリンク及びそのコンテンツを取得する必要が生じるかもしれない。
フルスキャン部170は、ウェブアプリケーション特定部140から処理対象リンク、更にオプションとして、対応するネットワークコンテンツを受け取り、当該リンク及びそれに対応するネットワークコンテンツに脆弱性フルスキャンを実行する。スキャン対象は、例えば、クロスサイトスクリプト攻撃脆弱性(XSS)、SQLインジェクション脆弱性、CGI脆弱性などである。フルスキャン部170が採用する脆弱性スキャン技術は、本技術分野に属し、本発明の保護範囲を越えないものであれば、いかなるものでもよい。
既知ウェブアプリケーション脆弱性検出部160は、ウェブアプリケーション特定部140から特定の既知ウェブアプリケーションを受け取り、特定の既知ウェブアプリケーションの既知脆弱性に応じて、対象ウェブサイトの既知ウェブアプリケーションに対して脆弱性スキャンを行うことで、対象ウェブサイトの既知ウェブアプリケーションに関して、当該既知脆弱性が修正済みか否かを判定する。オプションとして、既知ウェブアプリケーションの既知脆弱性を、既知ウェブアプリケーションの特徴に関連付けて、既知ウェブアプリケーション特徴格納部150に保存する場合もある。
留意すべき点として、ここまでに本発明の既知ウェブアプリケーションについて述べた部分では、そのバージョンに言及していなかったが、実際問題として、既知ウェブアプリケーションは複数のバージョンを有するのが一般的であり、各々のバージョンは特定の特徴と異なる既知脆弱性とを有する。よって、上述の既知ウェブアプリケーションにバージョン情報を付加し、バージョンの異なるウェブアプリケーションを別のウェブアプリケーションと見なす場合もありうる。そうした場合、バージョン番号は、ウェブアプリケーション特徴、ウェブアプリケーション脆弱性などと関連付けられて、既知ウェブアプリケーション特徴格納部150に保存される。
図2は、本発明の実施の形態によるウェブサイトスキャン装置100におけるウェブアプリケーション特定部140を概略的に示す図である。図2に示すように、ウェブアプリケーション特定部140は、規則生成部141、規則マッチングエンジン143、そして結果出力部145を有する。
規則生成部141は、既知ウェブアプリケーションの特徴に応じて規則セット147を生成する。本発明の実施の形態によれば、既知ウェブアプリケーションの特徴は、既知ウェブアプリケーション特徴格納部150に保存されていてもよい。規則生成部141は、既知ウェブアプリケーション特徴格納部150から様々な既知ウェブアプリケーションの特徴を取得し、それによって規則セット147を生成してもよい。本発明の実施の形態では、既知ウェブアプリケーションは以下の特徴のうちの少なくとも1つを有していてもよい:
1.あるページ及び当該ページにおけるマーク。多くのウェブアプリケーションは、いくつかの特定のページに特定のマークを埋め込む。例えば、フォーラムウェブアプリケーションである「Discuz!」におけるページ「index.php」には以下の特定の文字列が含まれる:
<meta name = "author" content = "Discuz! Team and Comsenz UI Team"/>
2.あるページ及び当該ページの全てのコンテンツ。多くの既知ウェブアプリケーションは、いくつかの定例のファイル、例えば、拡張子が「.css」、「.js」、「.ini」などのものを含み、従って、これらのファイルのコンテンツ全体をウェブアプリケーションの識別マークとして利用すればよい。本発明の実施の形態では、ウェブアプリケーションを判定は、これら定例のファイルのコンテンツ全体のMD5値に従って行えばよい。例えば、既知ウェブアプリケーション「joomla」のバージョン1.5.15における定例のファイル「/language/en-GB/en-GB.ini」のMD5値は、「449d7bb356fcefa1343d72d203297438」である。
3.HTTPレスポンスフィールド。いくつかの既知ウェブアプリケーションのレスポンスヘッドは排他的であり(例えば、「set-cookie」のレスポンスフィールドの値)、従って、当該排他的なレスポンスフィールドをウェブアプリケーション特定の手段として用いてもよい。
4.特定のリンク。いくつかの既知ウェブアプリケーションには必ず特定のネットワークリンク(URL)が存在する。従って、こうした特定のリンクの存在によって、特定のウェブアプリケーションを特定すればよい。
5.「robots.txt.」。ウェブサイトが用いるウェブアプリケーションに関する情報のいくつかはウェブサイトのファイル「robots.txt」で設定可能である。従って、ウェブアプリケーションに関する情報のいくつかは、当該ファイルの内容から取得すればよい。
本発明の実施の形態では、既知ウェブアプリケーションの特徴は、既知ウェブアプリケーション特徴格納部150に、XMLフォーマットで格納すればよい。図3は、ウェブアプリケーション「phpnuke」向けのXMLファイルを示す。XMLファイルから、具体的には、ウェブアプリケーション「phpnuke」には3つの副規則があることが分かる。
第1の副規則は以下の通りである。すなわち、特定のコンテンツが特定のネットワークページ「index.php」に存在する(<meta name = "generator" content = "(PHP-Nuke.*|.*http://phpnuke.org)">、及び、<META NAME = "RATING" CONTENT = "GENERAL">とマッチする特定のコンテンツ)。そして、留意すべき点として、その中の"(PHP-Nuke.*|.*http://phpnuke.org)"は、本技術分野で一般的に用いられる正規表現で書かれた特定コンテンツマッチング項目であって、当業者は、当該項目とマッチする特定コンテンツを、この正規表現の特徴に基づいて見つけ出せばよい。
第2の副規則は、特定のコンテンツが特定のネットワークページ「user.php」に存在することである(すなわち、<meta name = "generator" content = "(PHP-Nuke.*|.*http://phpnuke.org)">とマッチする特定のコンテンツ)。同様に、この副規則も正規表現を用いている。
第3の副規則は、あるページ「themes/Freezebeta/style/style.css」と当該ページのコンテンツ全体とが存在し、当該ページのコンテンツ全体のMD5値が「415acd896960884ada364d508e7c8ae9」であるということである。
加えて、ウェブアプリケーションのバージョンも、特定のネットワークページ「index.php.」における「<META NAME = "GENERATOR" CONTENT = "PHP-Nuke[ ]*(?P<version>\d+\.\d+).*">"」によって判定される。
留意すべき点として、ウェブアプリケーションの特徴について、いくつかの特定の例を上に挙げたが、既知ウェブアプリケーションの特徴はこれらに限定されない。ウェブアプリケーションの特徴については、当業者であれば、本発明から着想を得て、上記以外の特徴も容易に思いつくであろう。
本発明の実施の形態では、各ウェブアプリケーションが1以上のウェブアプリケーション特徴を有し、規則セット147は、対応する構造を有する。すなわち、規則セット147は、各々がウェブアプリケーションの1つに対応する規則1481、1482、…148nから成り、各々の規則1481、1482、…148nは1以上の副規則1491、1492、…149mを有する。副規則の各々は、ウェブアプリケーションのウェブアプリケーション特徴の1つに対応する。
規則マッチングエンジン143は、処理対象リンクと当該リンクに対応するネットワークコンテンツとを取得し、処理対象リンク及び当該リンクのコンテンツの特徴を抽出し、その後、規則セット147を参照して、処理対象リンク及び当該リンクのコンテンツの抽出した特徴が、規則セット内の、ある規則とマッチするか否かを判定する。ある規則の中の全ての副規則にマッチしている場合は、その規則にマッチしていると見なされ、リンクは規則に対応するウェブアプリケーションに属していると判定される。すなわち、対象ウェブサイトにウェブアプリケーションが存在すると判定される。反対に、処理対象リンクが規則セット147の中のいずれの規則ともマッチしないと判定された場合、当該処理対象リンクは、既知ウェブアプリケーションのいずれにも属していないと見なされる。その後、マッチングの結果が結果出力部145から出力される。
留意すべき点は、上述したように、既知ウェブアプリケーションは複数の副規則を有してもよいし、個々の副規則は別々のリンク(すなわち、ウェブページ)を伴うこととしてもよい、ということである。よって、規則マッチングエンジン143が、抽出された処理対象リンク及び当該リンクのコンテンツの特徴が規則セットの中の、ある規則とマッチするか否かを判定する際、クローラ部120は、そのリンクを取得する。そして、クローラ部120が取得したリンクに対して、規則マッチングエンジン143が副規則とのマッチングを行う際には、ある規則内の全ての副規則全体に対して処理対象リンクがマッチする場合に、当該処理対象リンクは当該規則に対応する既知ウェブアプリケーションに属する、と見なされる。
例えば、図3を参照すると、「phpnuke」の規則が規則マッチングエンジン143内に存在し、しかも、クローラ部120がリンク「index.php」及びそのコンテンツを取得する場合、規則マッチングエンジン143は、「index.php」が前記第1の副規則とマッチするか否か判定する。「index.php」に、<meta name = "generator" content = "(PHP-Nuke.*|.*http://phpnuke.org)">、及び、<META NAME = "RATING" CONTENT = "GENERAL">などの特定のコンテンツが存在すれば、その場合は、前記第1の副規則に正しくマッチすることになる。クローラ部120が、リンク「user.php」及びそのコンテンツを取得すると、規則マッチングエンジン143は、「user.php」及びそのコンテンツが第2の副規則とマッチするか否か判定する。「user.php」に<meta name = "generator" content = (PHP-Nuke.*|.*http://phpnuke.org)">などの特定のコンテンツが存在すれば、その場合、第2の副規則に正しくマッチすることになる。クローラ部120がリンク「themes/Freezebeta/style/style.css」を取得する場合、規則マッチングエンジン143は、それが第3の副規則とマッチするか否か判定する。MD5値が「415acd896960884ada364d508e7c8ae9」であれば、第3の副規則に正しくマッチすることになる。当然のことながら、マッチしない副規則が1つでもあれば、規則マッチングエンジン143は、処理対象リンクは既知ウェブアプリケーションに属していないと判定する。
オプションとして、処理対象リンクが既知ウェブアプリケーションに属しているか否かの判定の後、規則マッチングエンジン143は、特定の既知ウェブアプリケーションと、当該既知ウェブアプリケーションの対象ウェブサイト上のディレクトリ位置(処理対象リンク及び既知ウェブアプリケーションのディレクトリ構造によって決定されるもの)とを特定ウェブアプリケーション格納部180に保存する。保存しておけば、後でポリシー分析部110が、特定の既知ウェブアプリケーションにリンクが属するか否かの判定を行う際に利用できる。
本発明によるウェブサイトスキャン装置100の効率は、以下の手順を取ることで大幅に向上する。すなわち、対象ウェブサイトのファイル(すなわちリンク)のスキャン実行に先だって、当該ファイルが既知ウェブアプリケーションに属しているか否かを判定し、既知ウェブアプリケーションに属していないファイルのみにフルスキャンを行う。一方、ウェブサイトが採用している既知ウェブアプリケーションに対しては、既知ウェブアプリケーションに関して現在知られている脆弱性に基づくチェックのみ行って、フルチェックは行わない。従って、フルスキャンの回数は減ることになる。
図4は、本発明の実施の形態によるウェブスキャン方法400のフローチャートであり、当該方法は、上述したように、ウェブサイトスキャン装置100において実行される。図4に示すように、ウェブスキャン方法400は、処理対象リンクが取得されるステップS410から始まる。オプションとして、処理対象リンクを予めネットワークリンク格納部130内の処理対象リンクリストに格納しておき、処理にあたって当該処理対象リンクリストから処理対象リンクを取得することにしてもよい。次に、ステップS420において、対象ウェブサイトが採用している既知ウェブアプリケーションのリストに基づき、処理対象リンクが、ある既知ウェブアプリケーションに属しているか否かの判定が行われる。上述したように、ある既知ウェブアプリケーションに処理対象リンクが属しているか否かの判定は、処理対象リンクのアドレスと、対象ウェブサイトが採用している既知ウェブアプリケーションのファイルディレクトリ構造との比較によって行われる。処理対象リンクが、ある既知ウェブアプリケーションに属している場合、処理対象リンクは、これ以上処理されることはなく、ステップS430に進んで、処理対象リンクリストに処理対象リンクがまだ残っているか否かの判定が行われる。対象ウェブサイトが採用している既知ウェブアプリケーションに処理対象リンクが属していない場合は、ステップS450に進む。ステップS420の処理は、ウェブサイトスキャン装置100のポリシー分析部110で実行される。
ステップS450において、クローラ部は、処理対象リンクに対応するネットワークコンテンツを取得し、取得したネットワークコンテンツの分析を実行して、そこに含まれる更に別のリンクを抽出する。そして、抽出したリンクを、次のステップで処理対象リンクとして、処理対象リンクリストに追加する。更に、上述したように、ステップS450では、取得されたネットワークコンテンツに関連する更に別のネットワークコンテンツも取得される場合もある。
次に、ステップS460では、既知ウェブアプリケーションの特徴が参照され、処理対象リンクと当該リンクのネットワークコンテンツとが分析される(オプションとして、当該ネットワークコンテンツと関連するコンテンツが含まれる場合もある)。それによって、処理対象リンクが既知ウェブアプリケーションに属しているか否か、すなわち、当該既知ウェブアプリケーションが対象ウェブサイトに存在するか否かの判定が行われる。ステップS460における処理については、後で図5を参照しながら更に詳しく説明する。処理対象リンクが既知ウェブアプリケーションのいずれにも属していなければ、その場合は、ステップS470で、処理対象リンクとそのネットワークコンテンツとに対して脆弱性フルスキャンが実行される。ステップS460において、処理対象リンクが既知ウェブアプリケーションに属している、すなわち、既知ウェブアプリケーションが対象ウェブサイトに存在すると判定されれば、その場合は、特定の既知ウェブアプリケーションとその関連情報(例えば、URLなど)とがステップS480において格納される。格納された既知ウェブアプリケーション及びその関連情報は後で、対象ウェブサイトが採用している既知ウェブアプリケーションに処理対象リンクが属しているか否かを判定する際に使用される。
留意すべき点として、ステップS460において、処理対象リンクを分析して既知ウェブアプリケーションが対象ウェブサイトに存在するか否かを判定する際には、対象ウェブサイトに既知ウェブアプリケーションが存在するか否かを正確に判定するために、クローラ部は、更にいくつかのリンクとそのコンテンツとを取得する必要がある。
次に、ステップS490では、特定既知ウェブアプリケーションの既知の脆弱性に基づいて、対象ウェブサイトの既知ウェブアプリケーションに対する脆弱性スキャンが実行され、それによって、当該既知の脆弱性について対象ウェブサイトの既知ウェブアプリケーションは修正済みか否かの判定が行われる。
次に、ステップS430で、処理対象リンクが更に存在すると判定された場合には、ステップS440において、別の処理対象リンクが処理対象リンクリストから取得される。そして、方法はステップS420に戻って処理を繰り返す。ステップS430において処理対象リンクがないと判定された場合、方法400は終了する。
図5は、特にステップS460の処理を示すフローチャートである。すなわち、本発明の実施の形態によるウェブスキャン方法400において、リンクが既知ウェブアプリケーションに属しているか否かを判定する方法を示している。図5に示すように、当該方法は、ステップS510から開始される。ステップS510では、規則セットが初期化されるが、それはつまり、規則セットが既知ウェブアプリケーションの特徴に基づいて生成されるということである(本発明の実施の形態では、これら既知ウェブアプリケーションの特徴は、あるフォーマット(例:XMLファイル形式)で予め既知ウェブアプリケーション特徴格納部150に格納されている)。規則セットは、上述したフォーマットを有する。オプションとして、図5に示すプロセスの実行前に、規則セットの初期化を終わらせておくこともできる。そうすれば、リンクの判定を行うたびに初期化処理を行う必要はなくなる。
次に、ステップS520において、規則セットの中の最初の規則が、現在の規則として取得される。そしてステップS530では、現在の規則の中から、処理対象リンク及びそのコンテンツに関連する最初の副規則が、現在の副規則として取得される。ステップS540では、処理対象リンクとそれに関連するネットワークコンテンツとが、現在の副規則にマッチするか否かの判定が行われる。既知のネットワークの特徴に関する特定のコンテンツ並びにその規則及び副規則については、これより前に、図2を参照しながら行った説明のなかで既に示しているので、ここでは詳しい説明は行わない。
ステップS540においてマッチせずと判定された場合、ステップS550において、規則セットの中に、マッチングが実行されていない規則がまだ残っているか否かの判定が行われる。ステップS550において、マッチングが実行されていない規則が残っていないと判定されると、その場合には、ステップS560において、処理対象リンクは既知ウェブアプリケーションには属していないとの結果が出力され、本方法は終了する。反対に、ステップS550において、マッチングが実行されていない規則が残っていると判定されると、その場合には、ステップS570において、規則セットにおける次の規則が現在の規則として取得され、方法はステップS530に戻って更に処理を行う。
ステップS540において、処理対象リンク及びそれに関連するネットワークコンテンツが現在の副規則とマッチすると判定された場合、ステップS580において、現在の規則の中に、更に別の副規則があるか否かの判定が行われる。ステップS580において、マッチングの実行されていない副規則が存在すると判定されると、その場合には、ステップS590において、次の副規則が現在の副規則として取得される。そして、方法はステップS540に戻って、当該副規則にマッチングを実行する。留意すべき点は、上述したように、既知ウェブアプリケーションは複数の副規則を有していてもよいし、個々の副規則は異なるリンクを伴っていてもよい、ということである。従って、ステップS590で取得される次の副規則は、更に別のリンクを含んでいてもよく、ステップS590は、当該別のリンクに基づいて、現在の副規則及びそのコンテンツに関連したリンクを取得するステップを含むこととしてもよい。
反対に、ステップS580において、現在の規則の中の全ての副規則が、処理対象リンク及びその関連コンテンツとマッチすると判定されると、その場合には、処理対象リンクが現在の規則に対応する既知ウェブアプリケーションに属していると判定され、当該既知ウェブアプリケーションがステップS595において出力される。オプションとして、対象ウェブサイト上の既知ウェブアプリケーションの位置(例:対象ウェブサイトのルートディレクトリに対するファイル位置)は、ステップS595において更に出力され、後で上記ステップS420において、対象ウェブサイトが採用している既知ウェブアプリケーションに処理対象リンクが属しているか否かの判定を行う際に利用することにしてもよい。
留意すべき点として、本発明のウェブサイトスキャン装置100の個々の構成要素については、内部の構成要素が実現する機能に応じて論理的に分割されているが、本発明は、これに限定されるものではなく、個々の構成要素を必要に応じて更に分割したり組み合わせたりしてもよい。例えば、複数の構成要素を組み合わせて1つの構成要素としてもよいし、複数の構成要素は更に複数の副構成要素に分割してもよい。
本発明の個々の構成要素の実施の形態は、ハードウェアで、又は1以上のプロセッサ上で実行されるソフトウェアモジュールで、又は、これらの組合せで実現すればよい。当業者には理解されるであろうが、実際問題として、本発明の実施の形態によるウェブサイトスキャン装置における構成要素の一部又は全ての機能の一部又は全ては、マイクロプロセッサ又はデジタル信号プロセッサ(DSP)を用いて実現すればよい。本発明は、また、本文に記述した方法の一部又は全体を実行する装置又は装置プログラム(例えば、コンピュータプログラム又はコンピュータプログラム製品)の形で実現することもできる。本発明を実現するプログラムは、コンピュータ読取可能な媒体に保存される場合もあれば、1以上の信号の形とされる場合もある。こうした信号は、インターネットウェブサイトからのダウンロードによって取得される場合もあれば、キャリヤ信号で提供される場合もあり、それ以外の何らかの形で提供される場合もある。
図6は、本発明によるウェブスキャン方法を実行するサーバ、例えば、アプリケーションサーバの一例を示す。サーバは従来通りの構成であり、プロセッサ610と、コンピュータ読取り可能媒体又はコンピュータプログラム製品の形を取るメモリ620とから成る。メモリ620は、フラッシュメモリ、EEPROM(Electrically Erasable Programmable Read-Only Memory)、EPROM、ハードディスク、またはROMといった電子メモリとすればよい。メモリ620は、上述した方法のいずれかの方法ステップを実行するプログラムコード631のためのメモリ空間630を有する。例えば、プログラムコード用のメモリ空間630は、それぞれが上記の方法におけるいずれかのステップを実行する複数の個別のプログラムコード631を含む。これらのプログラムコードは、1以上のコンピュータプログラム製品から読み出される、又は、これに書き込まれることとすればよい。これらのコンピュータプログラム製品は、ハードディスク、コンパクトディスク(CD)、メモリーカード、フロッピディスクなどのプログラムコードキャリアから成る。図7を参照して説明すると、こうしたコンピュータプログラム製品は通常、可搬型又は据付型(stationary)の記憶ユニットである。記憶ユニットは、図6のサーバにおけるメモリ620と類似の形で配置された、記憶セグメント、記憶空間などを有するものとすればよい。プログラムコードは、例えば、適当な形で圧縮してあってもよい。一般に、記憶ユニットには、コンピュータ読取可能なコード631´、すなわち、プロセッサ610などで読取可能なコードが入っており、これらのコードをサーバで走らせると、これらのコードがサーバに、上述した方法の個々のステップを実行させる。
留意すべき点として、上記の実施の形態は本発明の例を示すものであって、本発明を限定するものではなく、当業者であれば、添付の特許請求の範囲から逸脱することなしに上記以外の実施の形態を設計できるはずである。特許請求の範囲において、括弧で閉じられた参照記号は、特許請求の範囲を限定するものと解釈されるべきではない。「成る(comprise)」という語は、特許請求の範囲に挙げられていない構成要素又はステップの存在を除外するものではない。構成要素に先行する冠詞の「a」又は「an」は、当該構成要素が複数存在する構成を排除するものではない。本発明は、異なる複数の構成要素から成るハードウェア、及び、適切にプログラムされたコンピュータを用いて実現される。複数の手段を列挙した1つの請求項では、いくつかの手段は、単一のハードウェアアイテムで実体化される場合もある。「第1」、「第2」、「第3」などの語を用いる場合、これらは順番を示すものではない。こうした語は、名称を分ける目的で用いられていると解釈すべきである。

Claims (18)

  1. ウェブサイトスキャン装置であって、
    ウェブサイト内のリンクが当該ウェブサイト内の特定のウェブアプリケーションに属している場合、当該リンクに対して脆弱性スキャンが実行されないようにするため、当該ウェブサイトが採用している既知ウェブアプリケーションの特定リストに基づいて、前記リンクが当該ウェブサイト内の前記特定のウェブアプリケーションに属しているか否かを判定するポリシー分析手段と、
    特定のウェブアプリケーションに属していないリンクを前記ポリシー分析手段から受け取り、受け取った前記リンクが指すリンクコンテンツを取得するクローラ手段と、
    前記リンク及び前記リンクコンテンツに基づいて、前記リンクが既知ウェブアプリケーションに属しているか否かを判定し、前記リンクが前記既知ウェブアプリケーションに属している場合に、前記既知ウェブアプリケーションを、前記ウェブサイトにおける前記特定のウェブアプリケーションと判定するウェブアプリケーション特定手段と、
    前記ウェブアプリケーション特定手段によって既知ウェブアプリケーションに属していないと判定されたリンクを受け取り、受け取った前記リンクに対して脆弱性フルスキャンを実行するフルスキャン手段と、
    前記ウェブアプリケーション特定手段による判定が行われた特定のウェブアプリケーションを受け取り、前記特定のウェブアプリケーションの既知の脆弱性に基づいて、前記ウェブサイトに対して脆弱性検出を実行して、前記特定のウェブアプリケーションの前記既知の脆弱性が修正済みか否かを判定する既知ウェブアプリケーション脆弱性検出手段と
    を備えることを特徴とするウェブサイトスキャン装置。
  2. 前記ウェブサイトスキャン装置は、さらに、前記ウェブサイト内の1以上のリンクを格納しているウェブサイトリンク格納手段を備え、
    前記クローラ手段は、さらに、取得された前記リンクコンテンツを分析して、当該リンクコンテンツに含まれる1以上のリンクを抽出し、抽出した1以上の前記リンクを前記ウェブサイトリンク格納手段に格納し、
    前記ポリシー分析手段は、前記ウェブサイトリンク格納手段内の各リンクに対して判定を行う
    ことを特徴とする請求項1に記載のウェブサイトスキャン装置。
  3. 前記ウェブサイトスキャン装置は、さらに、前記ウェブサイト内の1以上の特定のウェブアプリケーションを格納している特定ウェブアプリケーション格納手段を備える
    ことを特徴とする請求項1に記載のウェブサイトスキャン装置。
  4. 前記ウェブサイトスキャン装置は、さらに、既知ウェブアプリケーションの特徴と、当該既知ウェブアプリケーションに関する1以上の脆弱性とを格納している既知ウェブアプリケーション特徴格納手段を備える
    ことを特徴とする請求項1に記載のウェブサイトスキャン装置。
  5. 前記ウェブアプリケーション特定手段は、
    前記既知ウェブアプリケーションの特徴に基づいて規則セットを生成する規則生成部と、
    前記リンク及び前記リンクコンテンツを取得し、取得した前記リンク及び前記リンクコンテンツの特徴を抽出し、抽出した前記リンク及び前記リンクコンテンツの前記特徴に基づいて、前記規則セットに含まれる複数の前記規則の一つがマッチしているか否か判定し、マッチした前記規則に対応する既知ウェブアプリケーションを、前記リンクが属する前記既知ウェブアプリケーションであるとして決定する規則マッチングエンジンと
    を含むことを特徴とする請求項1乃至4のいずれか1項に記載のウェブサイトスキャン装置。
  6. 前記規則セットに含まれる規則は、それぞれ、既知ウェブアプリケーションに対応しており、各規則は、1以上の副規則を含み、各副規則は、対応する前記既知ウェブアプリケーションの一つの特徴に対応しており、
    ある規則に含まれる副規則の全てがマッチした場合にのみ、当該規則はマッチしていると判定される
    ことを特徴とする請求項5に記載のウェブサイトスキャン装置。
  7. 各規則に含まれる副規則は、一つのリンクと関連しており、
    前記規則マッチングエンジンが、前記リンク及び前記リンクコンテンツの特徴がある規則の一つの副規則にマッチしていると判定したとき、前記クローラ手段によって、当該規則の他の副規則と関連する別のリンク及び当該別のリンクのコンテンツが取得され、
    当該別のリンク及び当該別のリンクのコンテンツが前記規則に含まれる他の副規則とマッチするときにだけ、当該規則はマッチしていると判定される
    ことを特徴とする請求項6に記載のウェブサイトスキャン装置。
  8. 既知ウェブアプリケーションの前記特徴は、
    特定のページ及び当該特定のページにおける特定のマーク、
    特定のページ及び当該特定のページの全てのコンテンツ、
    HTTPレスポンスフィールド、及び、
    特定のリンク
    のうちの1以上から成る
    ことを特徴とする請求項5に記載のウェブサイトスキャン装置。
  9. 前記ウェブアプリケーション特定手段によって特定された特定のウェブアプリケーションは、さらに、当該特定のウェブアプリケーションのバージョンを含み、前記既知ウェブアプリケーション特徴格納手段は、さらに、既知ウェブアプリケーションの前記バージョンと関連づけて、前記既知ウェブアプリケーションの前記特徴と1以上の既知の脆弱性とを格納する
    ことを特徴とする請求項4に記載のウェブサイトスキャン装置。
  10. ポリシー分析手段、クローラ手段、ウェブアプリケーション特定手段、既知ウェブアプリケーション脆弱性検出手段及びフルスキャン手段を備えるウェブサイトスキャン装置により用いられるウェブサイトスキャン方法であって、
    前記ポリシー分析手段によって、ウェブサイトが採用している既知ウェブアプリケーションの特定リストに基づいて、当該ウェブサイト内のリンクが当該ウェブサイト内の特定のウェブアプリケーションに属しているか否かを判定するステップと、
    前記フルスキャン手段によって、前記リンクが前記特定のウェブアプリケーションに属している場合、前記リンクの脆弱性スキャンを実行せず、前記クローラ手段によって、前記リンクが前記特定のウェブアプリケーションに属していない場合、特定のウェブアプリケーションに属していないリンクを受け取り、受け取った前記リンクが指すリンクコンテンツを取得するステップと、
    前記ウェブアプリケーション特定手段によって、前記リンク及び前記リンクコンテンツに基づき、前記リンクが既知ウェブアプリケーションに属しているか否かを判定するステップと、
    前記ウェブアプリケーション特定手段によって、前記リンクが既知ウェブアプリケーションに属している場合には、当該既知ウェブアプリケーションを前記ウェブサイトにおける特定のウェブアプリケーションと決定し、前記既知ウェブアプリケーション脆弱性検出手段によって、特定のウェブアプリケーションの既知の脆弱性に応じて、前記ウェブサイトに対して脆弱性検出を実行して、前記特定のウェブアプリケーションの前記既知の脆弱性が修正済みか否かを判定するステップと、
    前記フルスキャン手段によって、前記リンクが既知ウェブアプリケーションに属していない場合に、前記リンクに脆弱性フルスキャンを実行するステップと
    を含むことを特徴とするウェブサイトスキャン方法。
  11. 前記ウェブサイトスキャン方法は、さらに、
    前記クローラ手段により、前記ウェブサイトにおける1以上のリンクを取得するステップを含み、
    前記ポリシー分析手段により、前記1以上のリンクに含まれる各リンクについて、判定が行われる
    ことを特徴とする請求項10に記載のウェブサイトスキャン方法。
  12. 前記リンクが既知ウェブアプリケーションに属しているか否か判定する前記ステップは、
    1以上の既知ウェブアプリケーションにおいて、各既知ウェブアプリケーションの特徴に基づいて規則セットを生成するサブステップと、
    前記リンク及び前記リンクコンテンツの特徴を抽出し、抽出した前記リンク及び前記リンクコンテンツの前記特徴が、前記規則セットに含まれる複数の前記規則の一つにマッチしているか否か判定するサブステップと、
    マッチする場合、マッチした前記規則に対応する既知ウェブアプリケーションを、前記リンクが属する前記既知ウェブアプリケーションとして、決定するサブステップと
    を含むことを特徴とする請求項10又は11に記載のウェブサイトスキャン方法。
  13. 前記規則セットの各規則は、各既知ウェブアプリケーションに対応し、各規則は、1以上の副規則を含み、各副規則は、対応する前記既知ウェブアプリケーションの一つの特徴に対応し、
    ある規則に含まれる副規則の全てがマッチした場合にのみ、前記リンク及び前記リンクコンテンツの前記特徴は、前記規則にマッチしていると判定される
    ことを特徴とする請求項12に記載のウェブサイトスキャン方法。
  14. 前記リンク及び前記リンクコンテンツの前記特徴が前記規則セットに含まれる複数の前記規則の一つとマッチするか否か判定するステップは、さらに、
    一つの規則に含まれる1以上の副規則が前記リンク及び前記リンクコンテンツの前記特徴にマッチし、かつ、当該規則が更に、別のリンクと関連する副規則を含むと判定された場合に、
    当該別のリンクとそのコンテンツとを取得するサブステップと、
    当該別のリンクとそのコンテンツとが前記規則の別の副規則とマッチするか否か判定するサブステップと
    を含むことを特徴とする請求項13に記載のウェブサイトスキャン方法。
  15. 前記既知ウェブアプリケーションの前記特徴は、
    特定のページ及び当該特定のページにおける特定のマーク、
    特定のページ及び当該特定のページの全てのコンテンツ、
    HTTPレスポンスフィールド、及び、
    特定のリンク
    のうちの1以上から成る
    を特徴とする請求項12に記載のウェブサイトスキャン方法。
  16. 前記特定のウェブアプリケーションは、さらに、当該特定のウェブアプリケーションのバージョンを含み、前記既知ウェブアプリケーションの前記特徴と1以上の既知の脆弱性とは、前記既知ウェブアプリケーションの前記バージョンと関連付けられている
    ことを特徴とする請求項10乃至15のいずれか1項に記載のウェブサイトスキャン方法。
  17. コンピュータ読み取り可能なコードから成り、サーバ上で実行されることによって、請求項10乃至16のいずれか1項に記載のウェブサイトスキャン方法をサーバに実行させるコンピュータプログラム。
  18. 請求項17に記載のコンピュータプログラムを格納しているコンピュータ読み取り可能な媒体。
JP2013527447A 2010-09-09 2011-09-08 ウェブサイトスキャン装置及びその方法 Active JP5572763B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201010278838.9A CN102404281B (zh) 2010-09-09 2010-09-09 一种网站扫描设备和方法
CN201010278838.9 2010-09-09
PCT/CN2011/001526 WO2012031460A1 (zh) 2010-09-09 2011-09-08 一种网站扫描设备和方法

Publications (2)

Publication Number Publication Date
JP2013537986A JP2013537986A (ja) 2013-10-07
JP5572763B2 true JP5572763B2 (ja) 2014-08-13

Family

ID=45810091

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013527447A Active JP5572763B2 (ja) 2010-09-09 2011-09-08 ウェブサイトスキャン装置及びその方法

Country Status (4)

Country Link
US (1) US10491618B2 (ja)
JP (1) JP5572763B2 (ja)
CN (1) CN102404281B (ja)
WO (1) WO2012031460A1 (ja)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102710642A (zh) * 2012-06-01 2012-10-03 北京神州绿盟信息安全科技股份有限公司 系统漏洞扫描方法及设备
US8949995B2 (en) * 2012-09-18 2015-02-03 International Business Machines Corporation Certifying server side web applications against security vulnerabilities
CN103077348B (zh) * 2012-12-28 2016-03-02 华为技术有限公司 一种Web站点漏洞扫描方法和装置
CN103902913B (zh) * 2012-12-28 2018-08-10 百度在线网络技术(北京)有限公司 一种用于对web应用进行安全处理的方法与设备
CN103065095A (zh) * 2013-01-29 2013-04-24 四川大学 一种基于指纹识别技术的web漏洞扫描方法和漏洞扫描器
CN103685237B (zh) * 2013-11-22 2018-12-18 北京奇安信科技有限公司 提高网站漏洞扫描速度的方法及装置
CN103685258B (zh) * 2013-12-06 2018-09-04 北京奇安信科技有限公司 一种快速扫描网站漏洞的方法和装置
CN103699845B (zh) * 2013-12-25 2017-05-17 北京神州绿盟信息安全科技股份有限公司 显示扫描进度的方法及装置
US10498757B2 (en) * 2014-09-11 2019-12-03 Samuel Geoffrey Pickles Telecommunications defence system
US9923916B1 (en) * 2015-06-17 2018-03-20 Amazon Technologies, Inc. Adaptive web application vulnerability scanner
CN107045507B (zh) * 2016-02-05 2020-08-21 北京国双科技有限公司 网页爬取方法及装置
CN107483464B (zh) * 2017-08-21 2020-10-16 北京知道未来信息技术有限公司 一种基于服务间交互来提高Web漏洞扫描器URL检出率的方法
CN108063759B (zh) * 2017-12-05 2022-08-16 西安交大捷普网络科技有限公司 Web漏洞扫描方法
US11055209B2 (en) * 2017-12-21 2021-07-06 Google Llc Application analysis with flexible post-processing
CN108154034B (zh) * 2017-12-21 2020-04-07 北京知道创宇信息技术股份有限公司 基于WordPress的漏洞分析方法及装置
GB2575006A (en) * 2018-04-04 2020-01-01 Cyberscanner Ltd Website vulnerability detection
CN109167757B (zh) * 2018-07-27 2021-05-11 平安科技(深圳)有限公司 一种web应用的漏洞检测方法、终端及计算机可读介质
CN110572399B (zh) * 2019-09-10 2022-05-20 阿波罗智联(北京)科技有限公司 漏洞检测处理方法、装置、设备及存储介质
CN112395523A (zh) * 2020-11-16 2021-02-23 杭州安恒信息技术股份有限公司 一种网站安全性分析方法、系统、设备及计算机介质
CN112906005A (zh) * 2021-02-02 2021-06-04 浙江大华技术股份有限公司 Web漏洞扫描方法、装置、系统、电子装置和存储介质

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2283341A (en) 1993-10-29 1995-05-03 Sophos Plc Central virus checker for computer network.
US7475427B2 (en) * 2003-12-12 2009-01-06 International Business Machines Corporation Apparatus, methods and computer programs for identifying or managing vulnerabilities within a data processing network
US7765597B2 (en) * 2004-02-11 2010-07-27 Hewlett-Packard Development Company, L.P. Integrated crawling and auditing of web applications and web content
CN1808093A (zh) 2006-01-28 2006-07-26 重庆大学 基于磁流变技术的汽车悬架系统整车阻尼匹配试验方法及系统
CN1870493A (zh) * 2006-06-15 2006-11-29 北京华景中天信息技术有限公司 网站安全漏洞扫描方法
CN1866817A (zh) * 2006-06-15 2006-11-22 北京华景中天信息技术有限公司 网站安全风险评估方法和系统
US8020206B2 (en) * 2006-07-10 2011-09-13 Websense, Inc. System and method of analyzing web content
US8615800B2 (en) * 2006-07-10 2013-12-24 Websense, Inc. System and method for analyzing web content
US8656495B2 (en) * 2006-11-17 2014-02-18 Hewlett-Packard Development Company, L.P. Web application assessment based on intelligent generation of attack strings
US8631497B1 (en) * 2007-02-01 2014-01-14 Mcafee, Inc. Systems and methods for automating blind detection of computational vulnerabilities
ES2393577T3 (es) * 2008-04-02 2012-12-26 Nokia Siemens Networks Oy Seguridad para un acceso no 3GPP a un sistema de paquetes evolucionado
JP2009258057A (ja) * 2008-04-21 2009-11-05 Hamamatsu Photonics Kk 放射線像変換パネル
JP5070124B2 (ja) 2008-05-16 2012-11-07 ヤフー株式会社 フィルタリング装置、およびフィルタリング方法
US9152789B2 (en) * 2008-05-28 2015-10-06 Zscaler, Inc. Systems and methods for dynamic cloud-based malware behavior analysis
US8136029B2 (en) * 2008-07-25 2012-03-13 Hewlett-Packard Development Company, L.P. Method and system for characterising a web site by sampling
US8347386B2 (en) * 2008-10-21 2013-01-01 Lookout, Inc. System and method for server-coupled malware prevention
AU2010234958A1 (en) * 2009-03-31 2011-10-13 Coach Wei System and method for access management and security protection for network accessible computer services
CA2700030C (en) 2009-04-16 2019-11-05 Accenture Global Services Gmbh Touchpoint customization system
US8555391B1 (en) * 2009-04-25 2013-10-08 Dasient, Inc. Adaptive scanning
US8516590B1 (en) * 2009-04-25 2013-08-20 Dasient, Inc. Malicious advertisement detection and remediation
US20110219446A1 (en) * 2010-03-05 2011-09-08 Jeffrey Ichnowski Input parameter filtering for web application security
CN101808093B (zh) * 2010-03-15 2013-08-07 北京安天电子设备有限公司 一种对web安全进行自动化检测的系统和方法
US8819637B2 (en) * 2010-06-03 2014-08-26 International Business Machines Corporation Fixing security vulnerability in a source code
US9251282B2 (en) * 2010-06-21 2016-02-02 Rapid7 LLC Systems and methods for determining compliance of references in a website
US20120017274A1 (en) * 2010-07-15 2012-01-19 Mcafee, Inc. Web scanning site map annotation

Also Published As

Publication number Publication date
US20130227640A1 (en) 2013-08-29
CN102404281A (zh) 2012-04-04
CN102404281B (zh) 2014-08-13
US10491618B2 (en) 2019-11-26
JP2013537986A (ja) 2013-10-07
WO2012031460A1 (zh) 2012-03-15

Similar Documents

Publication Publication Date Title
JP5572763B2 (ja) ウェブサイトスキャン装置及びその方法
US9614862B2 (en) System and method for webpage analysis
US9300682B2 (en) Composite analysis of executable content across enterprise network
US10165001B2 (en) Method and device for processing computer viruses
WO2016201819A1 (zh) 检测恶意文件的方法和装置
CN109768992B (zh) 网页恶意扫描处理方法及装置、终端设备、可读存储介质
US20140237593A1 (en) Method, device and system for detecting security of download link
US11212297B2 (en) Access classification device, access classification method, and recording medium
US20090287641A1 (en) Method and system for crawling the world wide web
WO2013139215A1 (zh) 病毒apk的识别方法及装置
JP5752642B2 (ja) 監視装置および監視方法
CN107463844B (zh) Web木马检测方法及系统
US10462168B2 (en) Access classifying device, access classifying method, and access classifying program
CN108351941B (zh) 分析装置、分析方法、以及计算机可读存储介质
JP2009230663A (ja) ウェブページの異常検知装置、プログラム、および記録媒体
JP5656266B2 (ja) ブラックリスト抽出装置、抽出方法および抽出プログラム
Tang et al. Using a bioinformatics approach to generate accurate exploit-based signatures for polymorphic worms
JPWO2018143097A1 (ja) 判定装置、判定方法、および、判定プログラム
EP3091465B1 (en) Monitoring device, monitoring method, and monitoring program
JP6623128B2 (ja) ログ分析システム、ログ分析方法及びログ分析装置
RU2583712C2 (ru) Система и способ обнаружения вредоносных файлов определенного типа
JP2015132942A (ja) 接続先情報判定装置、接続先情報判定方法、及びプログラム
CN109033831A (zh) 一种病毒检测方法、装置、电子设备及存储介质
RU101224U1 (ru) Система выявления и минимизации риска ложных срабатываний
CN105468966B (zh) 企业级终端文件扫描方法及装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140311

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140528

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140630

R150 Certificate of patent or registration of utility model

Ref document number: 5572763

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250