JP2005038428A - 脆弱性のあるファイルの自動的な検出およびパッチ - Google Patents

脆弱性のあるファイルの自動的な検出およびパッチ Download PDF

Info

Publication number
JP2005038428A
JP2005038428A JP2004207744A JP2004207744A JP2005038428A JP 2005038428 A JP2005038428 A JP 2005038428A JP 2004207744 A JP2004207744 A JP 2004207744A JP 2004207744 A JP2004207744 A JP 2004207744A JP 2005038428 A JP2005038428 A JP 2005038428A
Authority
JP
Japan
Prior art keywords
binary
file
security
computer
security patch
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.)
Granted
Application number
JP2004207744A
Other languages
English (en)
Other versions
JP4652736B2 (ja
JP2005038428A5 (ja
Inventor
Oleg Ivanov
イワノフ オレグ
Sergei Ivanov
イワノフ セルゲイ
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.)
Microsoft Corp
Original Assignee
Microsoft 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 Microsoft Corp filed Critical Microsoft Corp
Publication of JP2005038428A publication Critical patent/JP2005038428A/ja
Publication of JP2005038428A5 publication Critical patent/JP2005038428A5/ja
Application granted granted Critical
Publication of JP4652736B2 publication Critical patent/JP4652736B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/658Incremental updates; Differential updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Electrotherapy Devices (AREA)
  • Television Systems (AREA)
  • Indexing, Searching, Synchronizing, And The Amount Of Synchronization Travel Of Record Carriers (AREA)

Abstract

【課題】 バイナリファイル中のセキュリティの脆弱性のパッチを可能にするシステムおよび方法を提供すること。
【解決手段】 脆弱性のあるバイナリファイルの検出とパッチは、自動的、確実な、回帰をしない、制限のない規模のネットワークにわたり包括的に行われる。これらの利点は、例えば、インターネット上に広く展開された現在のウィルス対抗基盤を活用することを含む様々な方法で実現することができる。脆弱性のあるバイナリファイル(例えば、オペレーティングシステム、アプリケーションプログラムなどにおいて)の確実な発見は、発見されたセキュリティの脆弱性に関連付けられたバイナリ署名の使用を通じて達成される。従来のサービスパックとセキュリティパッチの相違により、バイナリファイル中のセキュリティの脆弱性に対する、回帰をしない修正を生成することができる。
【選択図】 図1

Description

本開示は、一般的には、ファイルのパッチに関し、より詳細には、分散した異種のコンピューティング環境において脆弱性のあるバイナリプログラムファイルのセキュリティパッチを提供する、自動的、包括的、確実な、および回帰をしない(regression-free)方法に関する。
ソフトウェア開発は、継続的なプロセスであり、これにより、公衆に最初に発売されたソフトウェア製品を、ソフトウェア開発者/ベンダからの改訂を通じて継続的に更新することができる。ソフトウェアの改訂は、典型的には、ユーザのコンピュータにインストールするためにベンダからダウンロードされる、またはベンダから注文される、いわゆる「サービスパック」としてソフトウェアベンダから分配される。サービスパックは、典型的には、製品が最初に発売されて以降、または前回のサービスパックの発売以降に、プログラムコードに発見された問題(すなわち「バグ」)を修復するプログラムの修正(例えば、オペレーティングシステム、アプリケーションプログラムなどの)を含む。
プログラムバグの修正を含む他に、サービスパックは、プログラムファイルに発見された脆弱性を修復するために開発されたセキュリティパッチも含むことができる。ソフトウェア製品の発売後に発見されたプログラムの脆弱性は、ハッカーあるいはウィルスによる攻撃という重大なセキュリティ上の脅威を、世界規模で呈する恐れがある。従って、脆弱性が発見されると、脆弱性のあるソフトウェアを有するコンピュータにセキュリティバッチを迅速かつ広範に配布し、インストールすることが最重要事項となる。理論的には、そのような迅速で広範なセキュリティパッチの配布を実現するためにサービスパックを使用することは、効果的である。例えば、ソフトウェアベンダが脆弱性を発見し、セキュリティパッチを開発する場合は、パッチを、ベンダのウェブサイトの最新のサービスパックに掲載して、ユーザが直ちにダウンロードし、インストールできるようにすることができる。このパッチをインストールすれば、発見された脆弱性を利用しようとする大半のハッカーとウィルスを妨げることができる。しかし、システム管理者とその他のソフトウェア製品ユーザは、現在、セキュリティパッチにアクセスし、インストールすることに関して、いくつかの欠点および/または問題に直面している。これら問題は、典型的には、パッチを開発したベンダが意図するよりも、パッチの配布が大幅に低下する結果となる。その結果、世界中の多くのコンピュータの脆弱性は、パッチで修復されないままになり、このようなコンピュータが大きな危険性にさらされる。
セキュリティパッチにアクセスし、インストールすることに伴う問題点の1つは、コンピュータが既知の脆弱性を有するソフトウェアを実行しているかどうかを検出する現在の方法は、そのコンピュータがアクティブに使用され、およびそのコンピュータの関与を必要とする。例えば、現在利用できる方法は、コンピュータ上の特定バージョンのソフトウェア製品を(例えば、セキュリティパッチを用いて)、更新する必要があるかどうかを判定することができる。しかし、この判定には、コンピュータでアクティブに実行されているソフトウェア製品のみが含まれる。コンピュータでアクティブに実行されていない補助的なオペレーティングシステムおよびアプリケーションは考慮されず、従って、認識されず、修復されないままになるセキュリティ上の脆弱性を有する可能性がある。コンピュータでアクティブに実行されている製品について、ユーザは、利用可能な更新のリストを調べ、インストールする更新を選択することができる。更新の中には、既知のセキュリティ上の脆弱性からコンピュータを保護するために設計された極めて重要な更新もある。各種の更新は、ユーザがコンピュータを再起動しなければインストールが完了しない。加えて、ユーザが更新をアクティブに選択し、インストールしなければならない。こうした理由およびその他の理由のため、セキュリティパッチにアクセスし、インストールするための現在の方法は、効果的であるとは言えない。
セキュリティパッチにアクセスし、インストールする際の別の問題点は、セキュリティパッチがコンピュータで必要であるか否かを知ることである。時には、ユーザが、自身のコンピュータが脆弱なソフトウェアを実行していることを知ることが難しい場合がある。さらに、コンピュータが既知の脆弱性を持つソフトウェアを実行しているどうかを検出する現在の方法は、脆弱性があることが知られているソフトウェア製品の特定の構成を検出できない場合がある。例えば、一部のソフトウェア製品の共用バージョンは、他の製品の一部として配布される場合がある。従って、ある製品の共用バージョンは、その製品の完全バージョンと同じ脆弱性を含む可能性があるにも関わらず、共用バージョンは、セキュリティパッチによる更新を必要としない製品として認識されない場合がある。従って、セキュリティ上の脆弱性があることが分かっているソフトウェア製品の共用バージョンは、しばしば修正されないままになる。
セキュリティパッチにアクセスし、インストールすることに伴う他の問題は、このようなパッチを配信する従来の「サービスパック」方法に関する。サービスパックをダウンロードし、インストールすることは、時間を要し、多くのシステム管理者が単にそれを行う時間を持たない手動で行われるプロセスである。従って、管理者がセキュリティパッチをインストールする意思があるとき、セキュリティパッチの発売から、所与のシステムにインストールされるまで、数週間、数ヶ月または数年かかる。従って、セキュリティ上の脆弱性を通じた攻撃の危険性は、このようなシステムにおいて、ソフトウェアベンダがセキュリティパッチを発行してから長時間が経過するまで緩和されない可能性がある。
さらに、システム管理者は、しばしば、関連するセキュリティの危険性を理解していても、セキュリティパッチを含むサービスパックをダウンロードおよびインストールしないことを選択することがある。この理由は、サービスパックをインストールすること自体が、システムの振る舞いに望まない変化を導入しうるシステム回帰の危険性を伴うためである。管理者はしばしば、システムが要求通り機能するようにシステムをデバッグすることに多大な時間と労力を注ぐ。しかし、先に述べたように、サービスパックは、以前のバージョンのソフトウェア製品の進化の結果であり、製品のコードベースに対する最新の更新を含む(すなわち、変更の範囲は、セキュリティパッチだけに限定されない)。サービスパック中の最近のコード更新は、意図しない新たな振る舞いをシステムに導入することに加えて、システムに予期しない振る舞いを行わせる未知のバグをシステムに導入する可能性があり、バグは、システム管理者にとって重大な問題を起こす可能性がある。従って、管理者が回帰の危険を望まないために、システムは、しばしば脆弱性のあるプログラムファイルを修復するための重要なセキュリティパッチで更新されないことがある。
このため、自動的、包括的、確実な、および回帰をしない方法で、プログラムファイルのセキュリティの脆弱性のパッチを実施する方法が必要とされる。
自動的、包括的、確実な、および回帰をしないプログラムファイルのセキュリティパッチを記載する。
一実施によれば、脆弱性のバイナリ署名とセキュリティパッチとを受信する。脆弱性のあるバイナリファイルを、脆弱性のバイナリ署名に基づいてコンピュータ上で識別する。コンピュータの脆弱性のあるバイナリファイルを、セキュリティパッチで更新する。
別の実施によれば、バイナリファイル中のセキュリティ上の脆弱性を識別するバイナリ署名を受信する。セキュリティの脆弱性を修正するように構成されたセキュリティパッチも受信する。バイナリ署名とセキュリティパッチを、複数のサーバに配布する。
別の実施によれば、バイナリ署名をサーバから受信し、バイナリ署名を使用してバイナリファイルを検索する。バイナリファイル中にバイナリ署名が見つかった場合には、セキュリティパッチの要求をサーバに送信する。次に、バイナリファイルをセキュリティパッチで更新する。
図面中では同様の構成要素および機能は同じ参照符号を使用して参照する。
(概要)
以下の説明は、バイナリファイル中のセキュリティの脆弱性のパッチを可能にするシステムおよび方法を対象とする。脆弱性のあるバイナリファイルの検出とパッチは、自動的、確実な、回帰をしない、制限のない規模のネットワークにわたり包括的に行われる。これらの利点は、例えば、インターネット上に広く展開されている現在のウィルス対抗基盤を活用することを含む様々な方法で実現することができる。従来のサービスパックとのセキュリティパッチの相違により、バイナリファイル中のセキュリティの脆弱性に対する、回帰をしない修正を生成する能力を提供する。
脆弱性のあるバイナリファイル(例えば、オペレーティングシステム、アプリケーションプログラムなどにおいて)の確実な発見は、セキュリティの脆弱性に関連付けられたバイナリ署名の使用を通じて達成される。バイナリファイル中のセキュリティの脆弱性に関連付けられたバイナリ署名は、このようなセキュリティの脆弱性を修正するために開発されたセキュリティパッチとともに、中央の配布サーバにアップロードされる。配布サーバは、インターネットなど各種のネットワークを通じて広範にバイナリ署名とセキュリティパッチを配布するように構成される。中央の配布サーバを使用して(例えば、インターネットを通じて)ネットワークサーバを更新することにより、制限のない規模の包括的で自動的なパッチの適用が提供される。このような更新を受け取るネットワークサーバは、下位ネットワーク内のクライアントコンピュータをスキャンして、バイナリ署名に従って脆弱性のあるファイルを見つけ、セキュリティの脆弱性があるファイルを有することが判明したコンピュータを、脆弱性のあるファイルを修正する対応するセキュリティパッチを使用して更新する。ネットワークサーバは、クライアントコンピュータと通信して、バイナリ署名とセキュリティパッチをクライアントコンピュータに転送して、スキャンと更新をコンピュータ自体で行うこともできる。複数の入り組んだレベルの下位ネットワークが存在することもできる。
(例示的環境)
図1に、バイナリファイル中のセキュリティの脆弱性の自動的な検出とパッチを実施するのに適した例示的ネットワーク環境100を示す。例示的ネットワーク環境100において、中央の配布サーバ102は、ネットワーク106(a)を介して複数のスキャン/パッチサーバ104に結合される。スキャン/パッチサーバ104は、典型的には、ネットワーク106(b)を通じて複数のクライアントコンピュータ108(1)〜108(n)に結合される。ネットワーク106は、様々な従来のネットワークプロトコル(公衆プロトコルおよび/または独自プロトコルを含む)を使用する、様々な従来のネットワークトポロジおよび種類(光ネットワーク、有線および/または無線ネットワークを含む)を表すものとする。ネットワーク106は、例えば、インターネットと、1または複数のローカルエリアネットワーク(LAN)および/またはワイドエリアネットワーク(WAN)の少なくとも一部分を含むことができる。ネットワーク106(a)および106(b)は、インターネットなど同一のネットワークであっても、インターネットと社内LANなど互いと分離したネットワークであってもよい。
配布サーバ102およびスキャン/パッチサーバ104は、典型的には、標準的なウェブサーバとして実装され、それぞれ、デスクトップPC、ノート型または携帯型コンピュータ、ワークステーション、メインフレームコンピュータ、インターネット機器、それらの組合せなどを含む各種の従来型のコンピューティング装置とすることができる。サーバ102および104の1または複数は、同じ種類の装置であっても、または異なる種類の装置であってもよい。配布サーバ102およびスキャン/パッチサーバ104を実施する例示的コンピューティング環境については、図7を参照して以下により詳細に説明する。
クライアントコンピュータ108は、サーバ104と典型的なクライアント/サーバ関係で機能し、複数のクライアント108は、要求を受け付けるサーバ104に対して要求を行う。クライアントコンピュータ108は、デスクトップPC、ノート型または携帯型コンピュータ、ワークステーション、メインフレームコンピュータ、ゲーム機、ハンドヘルドPC、携帯電話または他の無線通信機器、携帯情報端末(PDA)、これらの組合せなどを含む、様々な従来のコンピューティング装置とすることができる。クライアントコンピュータ108の1または複数は、同じ種類の装置であっても、あるいは異なる種類の装置であってもよい。クライアントコンピュータ108を実施するための例示的コンピューティング環境については、図7を参照して以下により詳細に説明する。
一般に、クライアントコンピュータ108の脆弱性のあるバイナリファイルの自動的で包括的な検出とパッチは、脆弱性のあるバイナリファイルを識別するバイナリ署名と、脆弱性のあるファイルを修復するように構成されたセキュリティパッチとを含む、配布サーバ102を通じて行われる更新を通じて達成される。以下の例示的実施形態との関係で以下により詳細に述べるように、バイナリ署名とセキュリティパッチは、スキャン/パッチサーバ104に配布され、スキャン/パッチサーバ104は、クライアントコンピュータ108に脆弱性のあるバイナリファイルがあるかをアクティブにスキャンして更新するか、または、クライアントコンピュータ108が脆弱性のあるバイナリファイルのスキャンとパッチを行えるように、クライアントコンピュータ108にバイナリ署名とセキュリティパッチをプッシュする。
(例示的実施形態)
図2に、バイナリファイル中のセキュリティの脆弱性の自動的な検出とパッチを実施するのに適した配布サーバ102、スキャン/パッチサーバ104、およびクライアントコンピュータ108の例示的実施形態を示す。配布サーバ102は、配布モジュール200と、バイナリ署名およびセキュリティパッチを受け取り、保持するデータベース202とを含む。データベース202を、例えば、携帯型の記憶媒体(図示しないが、図7を参照)を通じて、または、サーバ102に結合され、バイナリ署名およびセキュリティパッチをデータベース202にアップロードするように構成されたコンピュータ装置(図示せず)を通じるなど、様々な方法によりバイナリ署名およびセキュリティパッチで更新することができる。
データベース202が更新される可能性がある典型的なシナリオは、ソフトウェア製品の開発者によって開始されるソフトウェア製品(例えば、オペレーティングシステム、アプリケーションプログラムなど)の調査から開始する。例えば、開発者は、セキュリティのコンサルタント会社を雇って、新しく発売されたソフトウェア製品中のセキュリティの脆弱性を見つけることを試みることができる。セキュリティの脆弱性が、ハッキングあるいはその他の手段を通じてソフトウェア製品中に発見された場合には、製品中の脆弱性のある関数の正確なビットパターンを識別することができる。ビットパターンは、ソフトウェア製品の1コンポーネントである、バイナリファイル中の脆弱性のある部分のバイナリ署名に相当する。
セキュリティ上の脆弱性が発見され、分析されると、その脆弱性を除去する修正を開発することができる。このような修正は、セキュリティパッチと呼ばれ、バイナリの実行ファイルにコンパイルされる改訂後のコードモジュールに相当する。セキュリティパッチを、セキュリティ上の脆弱性があるソフトウェアを実行しているとバイナリ署名を通じて識別されたコンピュータにインストールすることができる。セキュリティパッチをインストールすると、セキュリティ上の脆弱性が修正される。配布サーバ102は、ソフトウェア製品ベンダおよびその他が、脆弱性のあるバイナリファイルを修正するように設計されたセキュリティパッチとともに、脆弱性のあるバイナリファイルのバイナリ署名を、データベース202に配布のためにアップロードすることができる。
配布モジュール200は、データベース202からネットワーク106を介して様々なスキャン/パッチサーバ104にバイナリ署名とセキュリティパッチを配布するように構成される。配布モジュール200は、典型的には、データベース202が追加的な署名およびパッチで更新されると、データベース202のバイナリ署名とセキュリティパッチを配布するように自動的に機能する。自動的な配布は、例えば、配布モジュール200からスキャン/パッチサーバ104への通信を通じて、更新されたバイナリ署名とセキュリティパッチが入手できる状態であることを通知し、バイナリ署名およびセキュリティパッチの送信を求める要求を待機する、または、更新されたバイナリ署名とセキュリティパッチを、更新を受け付けるように構成されたスキャン/パッチサーバ104に自動的に転送することを含む様々な方法で達成することができる。
図2の実施形態では、スキャン/パッチサーバ104は、スキャン/パッチモジュール204と、バイナリ署名およびセキュリティパッチを受け取り、保持するデータベース206とを含む。データベース206は、典型的には、スキャン/パッチモジュール204と配布サーバ102の配布モジュール200との通信を通じてバイナリ署名およびセキュリティパッチで自動的に更新される。バイナリ署名およびセキュリティパッチでデータベース206を更新するのに加えて、スキャン/パッチモジュール204は、クライアントコンピュータ108にアクセスし、バイナリ署名のためにバイナリファイル208をスキャンするように構成される。バイナリファイル208のスキャンは、クライアントコンピュータ108上に存在する、あるいはクライアントコンピュータ108がアクセスできる任意形態の媒体に存在するバイナリファイル中のバイナリ署名を探索することを含むことができる。バイナリファイル208は、典型的には、オペレーティングシステムやアプリケーションプログラムファイルなどのコンパイル済みのコンピュータ/プロセッサ読取り可能コードを含む。ただし、バイナリファイル208は、クライアントコンピュータ108のコンピュータ/プロセッサ読取り可能命令、データ構造、プログラムモジュール、および他のデータを含む任意形態のバイナリ情報であってよいことに留意されたい。
図7の例示的コンピュータ環境を参照する以下の説明で述べるように、クライアントコンピュータ108上の媒体は、揮発性および不揮発性の媒体、ならびに取り外し可能および取り外し不能の媒体など、クライアントコンピュータ108によるアクセスが可能な任意の利用可能媒体を含むことができる。このようなコンピュータ/プロセッサ読取り可能媒体は、ランダムアクセスメモリ(RAM)などの揮発性メモリ、および/または読み取り専用メモリ(ROM)などの不揮発性メモリを含むことができる。コンピュータ/プロセッサ読取り可能媒体は、例えば、取り外し不能、不揮発性の磁気媒体の読み書きを行うハードディスクドライブ、取り外し可能、不揮発性の磁気ディスク(例えば、「フロッピー(登録商標)ディスク」)の読み書きを行う磁気ディスクドライブ、CD−ROM、DVD−ROM、またはその他の光学媒体などの取り外し可能、不揮発性の光ディスクの読み書きを行う光ディスクドライブ、その他の磁気記憶装置、フラッシュメモリカード、電気的に消去可能なプログラム可能読み取り専用メモリ(EEPROM)、ネットワーク接続ストレージなど、他の取り外し可能/取り外し不能、揮発性/不揮発性のコンピュータ記憶媒体も含むことができる。クライアントコンピュータ108のコンピュータ/プロセッサ読取り可能命令、データ構造、プログラムモジュール、およびその他のデータを含む任意形態のバイナリファイル208の揮発性および不揮発性の記憶を提供する、このようなコンピュータ/プロセッサ読取り可能媒体はすべて、スキャン/パッチモジュール204を介したスキャン/パッチサーバ104によるスキャンのためにアクセスすることができる。
従って、スキャン/パッチモジュール204は、クライアントコンピュータ108のバイナリファイル208を検索して、セキュリティ上の脆弱性を識別するバイナリ署名がクライアントコンピュータ108に置かれたバイナリ情報中にあるかどうかを判定する。バイナリファイル208にバイナリ署名のビットパターンが見つかった場合、スキャン/パッチモジュール204は、対応するセキュリティパッチをクライアントコンピュータ108にインストールすることにより、バイナリファイル208中のセキュリティ上の脆弱性を修正するように動作する。クライアントコンピュータ108にセキュリティパッチをインストールすることにより、セキュリティ上の脆弱性を含むバイナリファイルまたはバイナリファイルの一部分が上書きされるか、その他の形で除去される。
図3に、バイナリファイル中のセキュリティの脆弱性のパッチを実施するのに適した配布サーバ102、スキャン/パッチサーバ104、およびクライアントコンピュータ108の別の例示的実施形態を示す。概して、図3の実施形態では、サーバ104からクライアントコンピュータ108にバイナリ署名およびセキュリティパッチがプッシュされる、すなわち再配布され、セキュリティに脆弱性のあるファイルを求めるスキャンと脆弱性のあるファイルのパッチとは、スキャン/パッチサーバ104ではなくクライアントコンピュータ108によって行われる。
図3の実施形態では、配布サーバ102は、図2の実施形態に関して上述した方法と同様に構成される。従って、データベース202を、バイナリファイル中のセキュリティ上の脆弱性を識別する新たに発見されたバイナリ署名を含むように更新することができる。データベース202を、このようなセキュリティ上の脆弱性を修正するために開発された対応するセキュリティパッチで更新することもできる。
図3のスキャン/パッチサーバ102は、図2に関して上述した方法と幾分似た方法で構成される。従って、図3のスキャン/パッチサーバ102は、バイナリ署名とセキュリティパッチを受け取り、保持するデータベース206を含む。データベース206は、典型的には、スキャン/パッチサーバ104と配布サーバ102間の通信を通じて自動的に新しいバイナリ署名とセキュリティパッチで更新される。ただし、スキャン/パッチサーバ104と配布サーバ102間の通信は、図2の実施形態に関して上述したようにスキャン/パッチモジュール204ではなく再配布モジュール300を通じて行われる。
再配布モジュール300は、バイナリ署名とセキュリティパッチでデータベース206を更新するのに加えて、クライアントコンピュータ108のスキャン/パッチモジュール302と通信し、バイナリ署名をクライアントコンピュータ108に転送するように構成される。スキャン/パッチモジュール302は、バイナリ署名を受け取り、バイナリファイル208をスキャンして、クライアントコンピュータ108に配置されたバイナリ情報にそのバイナリ署名が存在するかどうかを判定するように構成される。従って、図3のスキャン/パッチモジュール302は、図2を参照して上述したスキャン/パッチモジュール204と同様に機能する。
バイナリ署名のビットパターンがクライアントコンピュータ108のバイナリファイル208に見つかった場合には、スキャン/パッチモジュール302は、サーバ102の再配布モジュール300に要求を送信する。この要求は、バイナリ署名に一致するセキュリティパッチを再配布モジュール300からクライアントコンピュータ108に送信させる。再配布モジュール300は、該当するセキュリティパッチをクライアントコンピュータ108に送信することにより要求に応答する。スキャン/パッチモジュール302は、セキュリティパッチを受け取り、セキュリティパッチをクライアントコンピュータ108にインストールすることによりバイナリファイル208中のセキュリティ上の脆弱性を修正するように動作する。図2の実施形態と同様に、クライアントコンピュータ108にセキュリティパッチをインストールすることにより、発見されたセキュリティ上の脆弱性を含むバイナリファイル、またはバイナリファイルの一部分が上書きされるか、その他の形で除去される。
(例示的方法)
次に、バイナリファイル中のセキュリティの脆弱性の自動的な検出およびパッチを実施する例示的方法について、図4〜6の流れ図を参照して説明する。この方法は、図1〜3に関して説明した上記の例示的実施形態に概ね当てはまる。ここに説明する方法の要素は、例えばASICのハードウェアロジックブロック、またはプロセッサ読取り可能媒体上に定義されたプロセッサ読取り可能命令の実行によるなど、任意の適切な手段によって実行することができる。
本発明で使用する「プロセッサ読取り可能媒体」とは、プロセッサによる使用または実行のために、命令を保持、記憶、通信、伝播、あるいは移送することができる任意の手段である。プロセッサ読取り可能媒体は、これらに限定しないが、電子、磁気、光学、電磁気、赤外線、または半導体によるシステム、装置、デバイス、または伝播媒体などである。プロセッサ読取り可能媒体のより具体的な例には、特に、1または複数の電線を有する電気接続(電気)、携帯型のコンピュータディスケット(磁気)、ランダムアクセスメモリ(RAM)(磁気)、読み取り専用メモリ(ROM)(磁気)、消去可能なプログラム可能読み取り専用メモリ(EPROM、あるいはフラッシュメモリ)、光ファイバ(光学)、書き換え型コンパクトディスク(CD−RW)(光学)、および携帯型コンパクトディスク読み取り専用メモリ(CD−ROM)(光学)が含まれる。
図4に、バイナリファイル中のセキュリティの脆弱性の自動的な検出およびパッチを実施する例示的方法400を示す。バイナリファイルは、典型的には、サーバコンピュータによってサービスされるクライアントコンピュータに配置または記憶されるが、サーバコンピュータ自体、あるいはサーバコンピュータからアクセス可能な他のコンピューティング装置に配置してもよい。方法400のブロック402で、バイナリ署名を受信する。バイナリ署名は、実行可能なアプリケーションプログラム、クライアントコンピュータで実行中のオペレーティングシステムなど特定のバイナリファイル中のセキュリティ上の脆弱性に関連付けられたビットパターンである。バイナリ署名は、中央の配布サーバ102から下位サーバ104により受信される。
ブロック404において、セキュリティパッチを受信する。セキュリティパッチは、典型的には、特定のバイナリファイルのセキュリティの脆弱性の修正として開発されたコンパイル済みの実行可能コードである。セキュリティパッチも、中央の配布サーバ102から下位サーバ104により受信される。ブロック406において、バイナリ署名に基づいて、脆弱性のあるバイナリファイルを識別する。脆弱性のあるバイナリファイルの識別は、典型的には、クライアントコンピュータ108などのコンピュータの各種媒体に記憶されたバイナリ情報をスキャンし、バイナリ署名中のパターンを媒体で見つかったバイナリ情報と比較することによって達成される。この識別は、例えば、サーバ104がクライアントコンピュータにあるすべてのバイナリ情報をスキャンし、比較するなど、様々な方法で行うことができる。脆弱性のあるバイナリファイルの識別は、サーバ104からクライアントコンピュータにバイナリ署名をプッシュさせることによって、クライアントコンピュータがスキャンと比較を行えるように達成される。
方法400のブロック408において、セキュリティパッチを使用して脆弱性のあるバイナリファイルを更新する。この更新は、例えば、サーバ104がセキュリティパッチをクライアントコンピュータ108にインストールすることを含む様々な方法で達成することができる。クライアントコンピュータ108がスキャンを行い、脆弱性のあるバイナリファイルを識別した場合には、クライアントコンピュータ108は、サーバ104からコンピュータ108にセキュリティパッチを送信するように要求することができ、この場合はコンピュータ108がセキュリティパッチをインストールして脆弱性のあるバイナリファイルを修正することができる。
図5に、バイナリファイル中のセキュリティの脆弱性の自動的な検出とパッチを実施する別の例示的方法500を示す。方法500は、概して、セキュリティ上の脆弱性に対応するバイナリ署名と、セキュリティ上の脆弱性を修正するために開発されたセキュリティパッチの配布について説明する。方法500のブロック502において、バイナリファイル中のセキュリティの脆弱性を識別するバイナリ署名を受信する。バイナリ署名は、典型的には、インターネットなどのネットワーク上にある多数のコンピュータに広く配布されている可能性のあるソフトウェア製品のバイナリファイル中にある脆弱性を識別する、新たに発見されたビットパターンとして配布サーバ102にアップロードされる。アップロードは、典型的には、配布サーバ102に結合されたコンピュータから、または配布サーバ102に挿入された携帯型記憶媒体から行われる。ブロック504において、セキュリティの脆弱性を修正するように構成されたセキュリティパッチは、バイナリ署名と同じように配布サーバ102によって受信される。
ブロック506において、バイナリ署名およびセキュリティパッチを、配布サーバ102から複数の下位サーバ104に配布する。この配布は自動的に行うことができ、様々な方法で実現することができる。例えば、配布サーバ102は、アップロードされたバイナリ署名とセキュリティパッチを受け取ると、更新されたバイナリ署名とセキュリティパッチを受信するように構成されたすべての下位サーバ104に、ネットワークを介してバイナリ署名とセキュリティパッチを自動的に送信することができる。配布サーバ102は、通知をサーバ104に送信して、セキュリティ上の脆弱性が発見されたことと、脆弱性を修正するセキュリティパッチを入手できることを通知することもできる。次に、下位サーバ104は、そのセキュリティの脆弱性を識別するバイナリ署名とセキュリティパッチを送信するように配布サーバ102に要求することができる。要求を受信すると、配布サーバ102は、バイナリ署名とセキュリティパッチを要求元のサーバ102に転送することができる。
図6に、バイナリファイル中のセキュリティの脆弱性の自動的な検出とパッチを実施する別の例示的方法600を示す。方法600のブロック602において、クライアントコンピュータ108は、サーバ104からバイナリ署名を受信する。このバイナリ署名は、クライアントコンピュータ108に存在する可能性があるバイナリファイル中のセキュリティ上の脆弱性に関連付けられている。ブロック604において、クライアントコンピュータ108は、現在コンピュータ108が入手できるすべてのバイナリ情報をスキャンし、バイナリ署名中のパターンをそれらのバイナリ情報と比較する。クライアントコンピュータ108によってスキャンされるバイナリ情報は、典型的には、コンピュータ/プロセッサ読取り可能命令および/または実行可能命令、データ構造、プログラムモジュール、およびクライアントコンピュータ108にとって有用なその他のデータの形態であり、各種タイプの揮発性および不揮発性両方の記憶媒体に存在することができる。
ブロック606において、クライアントコンピュータ108がバイナリ署名を含むバイナリファイルを見つけた場合には、クライアントコンピュータ108は、サーバ104に要求を送信してセキュリティパッチを転送させる。ブロック608において、クライアントコンピュータ108は、セキュリティパッチを受け取り、ブロック610において、クライアントコンピュータ108は、バイナリ署名中のパターンに一致するバイナリ情報を含むバイナリファイル中のセキュリティ上の脆弱性を修正するためにセキュリティパッチをインストールする。
流れ図と、それら流れ図のブロックに関連する文章により1または複数の方法を説明したが、このブロックは必ずしも説明した順序で行う必要はなく、これに代わる順序で同様の利点が得られることを理解されたい。さらに、これらの方法は排他的ではなく、単独で、または互いと組み合わせて行うことができる。
(例示的コンピュータ)
図7に、図1〜3を参照して上述した配布サーバ102、スキャン/パッチサーバ104、およびクライアントコンピュータ108を実施するのに適した例示的コンピューティング環境を示す。図7には特定の1つの構成を示すが、配布サーバ102、スキャン/パッチサーバ104、およびクライアントコンピュータ108は、この他のコンピューティング構成としても実施することができる。
コンピューティング環境700は、コンピュータ702の形態の汎用コンピューティングシステムを含む。コンピュータ702の構成要素は、これらに限定しないが、1または複数のプロセッサまたは処理装置704、システムメモリ706、およびプロセッサ704を含む各種のシステム構成要素をシステムメモリ706に結合するシステムバス708を含むことができる。
システムバス708は、各種のバスアーキテクチャの任意のものを使用したメモリバスまたはメモリコントローラ、ペリフェラルバス、アクセラレーテッドグラフィックポート、プロセッサバスまたはローカルバスを含む数種のバス構造の1または複数を表す。システムバス708の一例は、メザニンバスとも称するPCI(Peripheral Component Interconnects)バスである。
コンピュータ702は、典型的には、各種のコンピュータ読取り可能媒体を含む。そのような媒体は、コンピュータ702によるアクセスが可能な任意の利用可能媒体でよく、揮発性および不揮発性、取り外し可能および取り外し不能の媒体が含まれる。システムメモリ706は、ランダムアクセスメモリ(RAM)710などの揮発性メモリ、および/または読み取り専用メモリ(ROM)712などの不揮発性メモリの形態のコンピュータ読取り可能媒体を含む。起動時などにコンピュータ702内の要素間の情報転送を助ける基本ルーチンを含んだ基本入出力システム(BIOS)714は、ROM712に記憶される。RAM710は典型的には、処理装置704から即座にアクセスできる、および/または処理装置704によって現在操作されているデータおよび/またはプログラムモジュールを保持する。
コンピュータ720は、この他の取り外し可能/取り外し不能、揮発性/不揮発性のコンピュータ記憶媒体も含むことができる。例として、図7には、取り外し不能、不揮発性の磁気媒体(図示せず)の読み書きを行うハードディスクドライブ716、取り外し可能、不揮発性の磁気ディスク720(例えば「フロッピー(登録商標)ディスク」)の読み書きを行う磁気ディスクドライブ718、CD−ROM、DVD−ROM、あるいは他の光学媒体などの取り外し可能、不揮発性の光ディスク724の読み書きを行う光ディスクドライブ722を示す。ハードディスクドライブ716、磁気ディスクドライブ718、および光ディスクドライブ722はそれぞれ、1または複数のデータ媒体インタフェース726によってシステムバス708に接続される。あるいは、ハードディスクドライブ716、磁気ディスクドライブ718、および光ディスクドライブ722は、SCSIインタフェース(図示せず)でシステムバス708に接続することもできる。
これらのディスクドライブとそれに関連付けられたコンピュータ読取り可能媒体は、コンピュータ702のコンピュータ読取り可能命令、データ構造、プログラムモジュール、およびその他のデータの不揮発性の記憶を提供する。この例ではハードディスク716、取り外し可能磁気ディスク720、および取り外し可能光ディスク724を例として挙げるが、磁気カセットまたは他の磁気記憶装置、フラッシュメモリカード、CD−ROM、デジタル多用途ディスク(DVD)または他の光学ストレージ、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、電子的に消去可能なプログラム可能読み取り専用メモリ(EEPROM)など、コンピュータによるアクセスが可能なデータを記憶することができる他の種類のコンピュータ読取り可能媒体を利用して例示的コンピューティングシステムおよび環境を実施することもできることを理解されたい。
ハードディスク716、磁気ディスク720、光ディスク724、ROM712、および/またはRAM710には複数のプログラムモジュールを記憶することができ、これには例としてオペレーティングシステム726、1または複数のアプリケーションプログラム728、他のプログラムモジュール730、およびプログラムデータ732が含まれる。このようなオペレーティングシステム726、1または複数のアプリケーションプログラム728、他のプログラムモジュール730、およびプログラムデータ732(またはこれらの何らかの組合せ)は、それぞれ、ユーザのネットワークアクセス情報をキャッシュする方式の実施形態を含むことができる。
コンピュータ702は、通信媒体として識別される各種のコンピュータ/プロセッサ読取り可能媒体を含むことができる。通信媒体は典型的には、コンピュータ読取り可能命令、データ構造、プログラムモジュール、または他のデータを、搬送波などの変調データ信号またはその他のトランスポート機構として実施し、任意の情報伝達媒体を含む。用語「変調データ信号」とは、信号中に情報を符号化するような形でその特徴の1または複数を設定または変化させた信号を意味する。例として、これらに限定しないが、通信媒体には、有線ネットワークや直接配線接続などの有線媒体と、音響、RF、赤外線、およびその他の無線媒体などの無線媒体が含まれる。上記の媒体の組合せもコンピュータ読取り可能媒体の範囲に含まれる。
ユーザは、キーボード734およびポインティングデバイス736(「マウス」など)などの入力装置を介してコンピュータシステム702にコマンドと情報を入力することができる。この他の入力装置738(具体的には図示せず)としては、マイクロフォン、ジョイスティック、ゲームパッド、衛星受信アンテナ、シリアルポート、スキャナなどが可能である。これらおよびその他の入力装置は、システムバス708に結合された入出力インタフェース740を介して処理装置704に接続されるが、パラレルポート、ゲームポート、あるいはユニバーサルシリアルバス(USB)など他のインタフェースおよびバス構造で接続してもよい。
モニタ742あるいは他のタイプの表示装置も、ビデオアダプタ744などのインタフェースを介してシステムバス708に接続することができる。モニタ742に加えて、他の出力周辺装置は、スピーカ(図示せず)およびプリンタ746などのコンポーネントを含むことができ、それらは入出力インタフェース740を介してコンピュータ702に接続することができる。
コンピュータ702は、リモートコンピューティング装置748などの1または複数のリモートコンピュータとの論理接続を使用するネットワーク環境で動作することができる。例として、リモートコンピューティング装置748は、パーソナルコンピュータ、携帯型コンピュータ、サーバ、ルータ、ネットワークコンピュータ、ピアデバイス、またはその他の一般的なネットワークノードである。リモートコンピューティング装置748は、コンピュータシステム702との関係で本明細書に記載する要素および機能の多くまたはすべてを含むことができる携帯型コンピュータとして図示する。
図では、コンピュータ702とリモートコンピュータ748間の論理接続は、ローカルエリアネットワーク(LAN)750および一般的なワイドエリアネットワーク(WAN)752としている。このようなネットワーキング環境は、オフィス、企業内のコンピュータネットワーク、イントラネット、およびインターネットなどに一般的に見られる。LANネットワーキング環境で実施される場合、コンピュータ702は、ネットワークインタフェースあるいはアダプタ754を介してローカルネットワーク750に接続される。WANネットワーキング環境で実施される場合、コンピュータ702は典型的には、ワイドネットワーク752を通じて通信を確立するためのモデム756または他の手段を含む。モデム756は、コンピュータ702の内部にあっても外部にあってもよく、入出力インタフェース740または他の適切な機構を介してシステムバス708に接続することができる。図のネットワーク接続は例示的なものであり、コンピュータ702と748間に通信リンクを確立する他の手段を用いることができることは理解されよう。
コンピューティング環境700で例示するようなネットワーク環境では、コンピュータ702との関連で図示するプログラムモジュール、またはその一部は、遠隔のメモリ記憶装置に記憶することができる。例として、リモートアプリケーションプログラム758がリモートコンピュータ748のメモリ装置に存在する。例示のために、アプリケーションプログラムおよびオペレーティングシステムなどの他の実行可能プログラムコンポーネントは、ここでは別個のブロックとして示すが、これらのプログラムおよびコンポーネントは、様々な時にコンピュータシステム702の異なる記憶コンポーネントに存在し、コンピュータのデータプロセッサによって実行されることが認識される。
(結論)
本発明について構造的特徴および/または方法論的動作に固有の術語で説明したが、添付の特許請求の範囲に定義される本発明は必ずしもここに記載する特定の機能または動作に限定されないことを理解されたい。これら特定の特徴および動作は、特許権を請求する本発明を実施する例示的形態として開示される。
バイナリファイル中のセキュリティの脆弱性の自動的な検出とパッチを実施するのに適した例示的ネットワーク環境の図である。 バイナリファイル中のセキュリティの脆弱性の自動的な検出とパッチを実施するのに適した配布サーバ、スキャン/パッチサーバ、およびクライアントコンピュータの例示的実施形態の図である。 バイナリファイル中のセキュリティの脆弱性の自動的な検出とパッチを実施するのに適した配布サーバ、スキャン/パッチサーバ、およびクライアントコンピュータの別の例示的実施形態の図である。 バイナリファイル中のセキュリティの脆弱性の自動的な検出およびパッチを実施する例示的方法のブロック図である。 バイナリファイル中のセキュリティの脆弱性の自動的な検出およびパッチを実施する例示的方法のブロック図である。 バイナリファイル中のセキュリティの脆弱性の自動的な検出およびパッチを実施する例示的方法のブロック図である。 配布サーバ、スキャン/パッチサーバ、およびクライアントコンピュータを実施するのに適した例示的コンピューティング環境の図である。
符号の説明
100 例示的ネットワーク環境
102 配布サーバ
104 スキャン/パッチサーバ
106 ネットワーク
108 クライアント

Claims (33)

  1. プロセッサ読取り可能媒体であって、
    バイナリ署名を受信し、
    セキュリティパッチを受信し、
    前記バイナリ署名に基づいてコンピュータ上の脆弱性のあるバイナリファイルを識別し、および、
    前記セキュリティパッチで前記コンピュータ上の前記脆弱性のあるバイナリファイルを更新するように構成されたプロセッサ実行可能命令を備えることを特徴とするプロセッサ読取り可能媒体。
  2. コンピュータ上の脆弱性のあるバイナリファイルを識別することは、前記バイナリ署名のビットパターンを前記コンピュータに位置するバイナリファイルと比較することを含み、前記ビットパターンは、セキュリティの脆弱性に関連付けられていることを特徴とする請求項1に記載のプロセッサ読取り可能媒体。
  3. 前記コンピュータ上の前記脆弱性のあるバイナリファイルを更新することは、前記コンピュータに前記セキュリティパッチをインストールすることを含むことを特徴とする請求項1に記載のプロセッサ読取り可能媒体。
  4. コンピュータ上の脆弱性のあるバイナリファイルを識別することは、前記バイナリ署名を前記コンピュータに送信することを含むことを特徴とする請求項1に記載のプロセッサ読取り可能媒体。
  5. 前記コンピュータ上の前記脆弱性のあるバイナリファイルを更新することは、
    前記セキュリティパッチの送信を求める前記コンピュータからの要求を受信すること、および、
    前記セキュリティパッチを前記コンピュータに送信すること
    を含むことを特徴とする請求項4に記載のプロセッサ読取り可能媒体。
  6. 前記コンピュータはクライアントコンピュータであり、前記受信は、脆弱性のあるファイルを識別するバイナリ署名と、前記脆弱性のあるファイルを修正するように構成されたセキュリティパッチとを前記コンピュータに配布するように構成された配布サーバから、前記バイナリ署名と前記セキュリティパッチを受信することを含むことを特徴とする請求項1に記載のプロセッサ読取り可能媒体。
  7. 請求項1に記載のプロセッサ読取り可能媒体を備えることを特徴とするサーバ。
  8. プロセッサ読取り可能媒体であって、
    バイナリファイル中のセキュリティの脆弱性を識別するバイナリ署名を受信し、
    前記バイナリファイル中の前記セキュリティの脆弱性を修正するように構成されたセキュリティパッチを受信し、および、
    前記バイナリ署名および前記セキュリティパッチを複数のサーバに配布するように構成されたプロセッサ実行可能命令を備えることを特徴とするプロセッサ読取り可能媒体。
  9. 前記配布は、
    前記セキュリティの脆弱性と利用可能なパッチとに関する通知を前記複数のサーバそれぞれに送信すること、
    前記バイナリ署名および前記セキュリティパッチの送信を求める要求を受信すること、および、
    前記要求に応答して前記バイナリ署名および前記セキュリティパッチを送信すること
    を含むことを特徴とする請求項8に記載のプロセッサ読取り可能媒体。
  10. 請求項8に記載のプロセッサ読取り可能媒体を備えることを特徴とする配布サーバ。
  11. プロセッサ読取り可能媒体であって、
    サーバからバイナリ署名を受信し、
    バイナリファイル中で前記バイナリ署名を検索し、
    前記バイナリ署名を含むバイナリファイルが見つかった場合は、セキュリティパッチを求める要求を前記サーバに送信し、
    前記サーバから前記セキュリティパッチを受信し、および、
    前記セキュリティパッチで前記バイナリファイルを更新するように構成されたプロセッサ実行可能命令を備えることを特徴とするプロセッサ読取り可能媒体。
  12. 請求項11に記載のプロセッサ読取り可能媒体を備えることを特徴とするクライアントコンピュータ。
  13. バイナリ署名を受信すること、
    前記バイナリ署名に基づいて脆弱性のあるファイルを探すこと、
    脆弱性のあるファイルが見つかった場合には、セキュリティパッチを要求すること、および、
    前記セキュリティパッチで前記脆弱性のあるファイルを修正すること
    を備えることを特徴とする方法。
  14. 前記要求することは、前記セキュリティパッチに対する要求をサーバに送信することを含み、前記方法は、前記要求に応答して前記サーバから前記セキュリティパッチを受信することをさらに備えることを特徴とする請求項13に記載の方法。
  15. 前記受信することは、前記サーバから前記バイナリ署名を受信することを含むことを特徴とする請求項14に記載の方法。
  16. 前記修正することは、前記セキュリティパッチをコンピュータにインストールすることを含むことを特徴とする請求項13に記載の方法。
  17. 前記ファイルを探すことは、前記バイナリ署名をコンピュータの記憶媒体にあるバイナリ情報と比較することを含むことを特徴とする請求項13に記載の方法。
  18. 前記バイナリ情報は、
    オペレーティングシステム、
    アプリケーションプログラムファイル、および、
    データファイル
    からなるグループから選択されることを特徴とする請求項17に記載の方法。
  19. 前記記憶媒体は、
    ハードディスク、
    磁気フロッピー(登録商標)ディスク、
    光ディスク、
    フラッシュメモリカード、
    電気的に消去可能なプログラム可能読み取り専用メモリ、および、
    ネットワーク接続ストレージ
    からなるグループから選択されることを特徴とする請求項17に記載の方法。
  20. 配布サーバからバイナリ署名およびセキュリティパッチを受信すること、
    前記バイナリ署名に関連付けられた脆弱性のあるファイルをクライアントコンピュータで探すこと、および
    脆弱性のあるファイルが見つかった場合は、前記セキュリティパッチで前記脆弱性のあるファイルを修正すること
    を備えることを特徴とする方法。
  21. 前記検索することは、前記バイナリ署名を前記クライアントコンピュータに転送することを含み、前記クライアントコンピュータは、前記バイナリ署名に関連付けられた脆弱性のあるファイルを探すように構成されることを特徴とする請求項20に記載の方法。
  22. 前記修正することは、
    脆弱性のあるファイルを発見した前記クライアントコンピュータから、前記セキュリティパッチの転送を求める要求を受信すること、および、
    前記要求に応答して前記セキュリティパッチを前記クライアントコンピュータに転送すること
    を含むことを特徴とする請求項21に記載の方法。
  23. バイナリ署名を受信する手段と、
    前記バイナリ署名に基づいて脆弱性のあるファイルを探す手段と、
    脆弱性のあるファイルが見つかった場合はセキュリティパッチを要求する手段と、
    前記セキュリティパッチで前記脆弱性のあるファイルを修正する手段と
    を備えることを特徴とするコンピュータ。
  24. 配布サーバからバイナリ署名とセキュリティパッチを受信する手段と、
    前記バイナリ署名に関連付けられた脆弱性のあるファイルを求めてクライアントコンピュータをスキャンする手段と、
    脆弱性のあるファイルが見つかった場合は、前記セキュリティパッチで前記脆弱性のあるファイルを修正する手段と
    を備えることを特徴とするサーバ。
  25. バイナリ情報と、
    バイナリ署名を受信し、前記バイナリ署名を求めて前記バイナリ情報をスキャンするように構成されたスキャンモジュールと、
    前記バイナリ情報に前記バイナリ署名が見つかった場合は、セキュリティパッチを要求し、前記セキュリティパッチをインストールするように構成されたパッチモジュールと
    を備えることを特徴とするコンピュータ。
  26. 前記バイナリ情報を保持するように構成された記憶媒体をさらに備えることを特徴とする請求項25に記載のコンピュータ。
  27. 前記バイナリ情報は、
    オペレーティングシステム、
    アプリケーションプログラムファイル、および、
    データファイル
    からなるグループから選択されることを特徴とする請求項25に記載のコンピュータ。
  28. バイナリファイルと、
    バイナリ署名と、
    前記バイナリ署名をサーバから受信し、前記バイナリ署名を求めて前記バイナリファイルをスキャンするように構成されたセキュリティパッチモジュールと
    を備えることを特徴とするコンピュータ。
  29. 前記バイナリ署名を含むバイナリファイルと、
    セキュリティパッチとをさらに備え、
    前記セキュリティパッチは、前記バイナリファイル中に前記バイナリ署名を見つけると、前記サーバに前記セキュリティパッチを要求し、前記セキュリティパッチを前記バイナリファイルに適用するように構成されることを特徴とする請求項28に記載のコンピュータ。
  30. データベースと、
    バイナリ署名とセキュリティパッチを受信し、前記バイナリ署名と前記セキュリティパッチを前記データベースに記憶し、前記バイナリ署名と前記セキュリティパッチを複数のサーバに配布するように構成された配布モジュールと
    を備えることを特徴とする配布サーバ。
  31. 前記配布モジュールは、前記バイナリ署名と前記セキュリティパッチを求める要求をサーバから受信し、前記要求に応答して前記バイナリ署名と前記セキュリティパッチを前記サーバに配布するように構成されることを特徴とする請求項30に記載の配布サーバ。
  32. バイナリファイル中のセキュリティ上の脆弱性に関連付けられたバイナリ署名と、
    前記バイナリファイル中の前記セキュリティ上の脆弱性を修正するように構成されたセキュリティパッチと、
    前記バイナリ署名を求めてクライアントコンピュータ上のバイナリファイルをスキャンし、前記バイナリ署名が見つかった場合は前記セキュリティパッチで前記バイナリファイルを更新するように構成されたスキャンモジュールと
    を備えることを特徴とするサーバ。
  33. データベースと、
    配布サーバから前記バイナリ署名と前記セキュリティパッチを受信し、前記バイナリ署名と前記セキュリティパッチを前記データベースに記憶するようにさらに構成された前記スキャンモジュールと
    をさらに備えることを特徴とする請求項32に記載のサーバ。
JP2004207744A 2003-07-16 2004-07-14 脆弱性のあるファイルの自動的な検出およびパッチ Expired - Fee Related JP4652736B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/621,148 US7424706B2 (en) 2003-07-16 2003-07-16 Automatic detection and patching of vulnerable files

Publications (3)

Publication Number Publication Date
JP2005038428A true JP2005038428A (ja) 2005-02-10
JP2005038428A5 JP2005038428A5 (ja) 2007-08-30
JP4652736B2 JP4652736B2 (ja) 2011-03-16

Family

ID=33552851

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004207744A Expired - Fee Related JP4652736B2 (ja) 2003-07-16 2004-07-14 脆弱性のあるファイルの自動的な検出およびパッチ

Country Status (18)

Country Link
US (1) US7424706B2 (ja)
EP (1) EP1505499A1 (ja)
JP (1) JP4652736B2 (ja)
KR (1) KR101231410B1 (ja)
CN (1) CN1577272B (ja)
AU (1) AU2004202974B2 (ja)
BR (1) BRPI0402767A (ja)
CA (1) CA2471998A1 (ja)
CO (1) CO5600216A1 (ja)
IL (1) IL162642A (ja)
MX (1) MXPA04006784A (ja)
MY (1) MY150114A (ja)
NO (1) NO337222B1 (ja)
NZ (1) NZ533661A (ja)
RU (1) RU2358313C2 (ja)
SG (1) SG139545A1 (ja)
TW (1) TWI354887B (ja)
ZA (1) ZA200405076B (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006228206A (ja) * 2005-02-17 2006-08-31 Microsoft Corp 識別された脆弱性を遮蔽するためのシステムおよび方法
JP4875075B2 (ja) * 2005-06-30 2012-02-15 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド セキュアパッチシステム
CN101551773B (zh) * 2009-03-12 2012-04-25 南京大学 符号错误和赋值截断的二进制漏洞检测定位装置
JP2016167262A (ja) * 2015-03-05 2016-09-15 富士通株式会社 脆弱性分析のための自律型推論システム
JP2017531236A (ja) * 2014-08-13 2017-10-19 インカ・エントワークス・インコーポレイテッドInka Entworks, Inc. クラウドベースのアプリケーションセキュリティサービスの提供方法及びシステム
JP2020205043A (ja) * 2019-05-29 2020-12-24 エフ.ホフマン−ラ ロシュ アーゲーF. Hoffmann−La Roche Aktiengesellschaft サイバーセキュリティ用インターフェース・プロキシ・デバイス
JP2021108189A (ja) * 2020-05-14 2021-07-29 ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッドBeijing Baidu Netcom Science Technology Co., Ltd. 脆弱性特徴の取得方法、装置及び電子機器
JP2022535785A (ja) * 2019-06-12 2022-08-10 エヌイーシー ラボラトリーズ ヨーロッパ ゲーエムベーハー ブロックチェーンネットワークにおけるスマートコントラクトをサポートするための方法及びコントラクト書き換えフレームワークシステム

Families Citing this family (85)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9118708B2 (en) 2003-07-01 2015-08-25 Securityprofiling, Llc Multi-path remediation
US20070113272A2 (en) 2003-07-01 2007-05-17 Securityprofiling, Inc. Real-time vulnerability monitoring
US9100431B2 (en) 2003-07-01 2015-08-04 Securityprofiling, Llc Computer program product and apparatus for multi-path remediation
US9350752B2 (en) 2003-07-01 2016-05-24 Securityprofiling, Llc Anti-vulnerability system, method, and computer program product
US9118709B2 (en) 2003-07-01 2015-08-25 Securityprofiling, Llc Anti-vulnerability system, method, and computer program product
US8266699B2 (en) * 2003-07-01 2012-09-11 SecurityProfiling Inc. Multiple-path remediation
US9118711B2 (en) 2003-07-01 2015-08-25 Securityprofiling, Llc Anti-vulnerability system, method, and computer program product
US9118710B2 (en) 2003-07-01 2015-08-25 Securityprofiling, Llc System, method, and computer program product for reporting an occurrence in different manners
US8984644B2 (en) 2003-07-01 2015-03-17 Securityprofiling, Llc Anti-vulnerability system, method, and computer program product
US7424706B2 (en) 2003-07-16 2008-09-09 Microsoft Corporation Automatic detection and patching of vulnerable files
US7386883B2 (en) * 2003-07-22 2008-06-10 International Business Machines Corporation Systems, methods and computer program products for administration of computer security threat countermeasures to a computer system
US20050097199A1 (en) 2003-10-10 2005-05-05 Keith Woodard Method and system for scanning network devices
US8990366B2 (en) * 2003-12-23 2015-03-24 Intel Corporation Method and apparatus for remote modification of system configuration
US20050223292A1 (en) * 2004-02-17 2005-10-06 Lee Chee S Single instruction type based hardware patch controller
US8051483B2 (en) 2004-03-12 2011-11-01 Fortinet, Inc. Systems and methods for updating content detection devices and systems
US7774848B2 (en) * 2004-07-23 2010-08-10 Fortinet, Inc. Mapping remediation to plurality of vulnerabilities
US8171555B2 (en) 2004-07-23 2012-05-01 Fortinet, Inc. Determining technology-appropriate remediation for vulnerability
US7665119B2 (en) 2004-09-03 2010-02-16 Secure Elements, Inc. Policy-based selection of remediation
US7761920B2 (en) * 2004-09-03 2010-07-20 Fortinet, Inc. Data structure for policy-based remediation selection
US7703137B2 (en) * 2004-09-03 2010-04-20 Fortinet, Inc. Centralized data transformation
US7672948B2 (en) * 2004-09-03 2010-03-02 Fortinet, Inc. Centralized data transformation
US7707586B2 (en) * 2004-09-08 2010-04-27 Intel Corporation Operating system independent agent
US7343599B2 (en) * 2005-01-03 2008-03-11 Blue Lane Technologies Inc. Network-based patching machine
JP4770306B2 (ja) * 2005-07-12 2011-09-14 日本電気株式会社 端末セキュリティチェックサービス提供方法及びそのシステム
US20070028291A1 (en) * 2005-07-29 2007-02-01 Bit 9, Inc. Parametric content control in a network security system
US8272058B2 (en) * 2005-07-29 2012-09-18 Bit 9, Inc. Centralized timed analysis in a network security system
US8984636B2 (en) * 2005-07-29 2015-03-17 Bit9, Inc. Content extractor and analysis system
US7895651B2 (en) * 2005-07-29 2011-02-22 Bit 9, Inc. Content tracking in a network security system
US8132164B1 (en) * 2005-08-01 2012-03-06 Mcafee, Inc. System, method and computer program product for virtual patching
US8245216B2 (en) * 2005-10-11 2012-08-14 Oracle International Corporation Patch management system
US8484725B1 (en) * 2005-10-26 2013-07-09 Mcafee, Inc. System, method and computer program product for utilizing a threat scanner for performing non-threat-related processing
US7784034B1 (en) 2005-12-21 2010-08-24 Mcafee, Inc. System, method and computer program product for hooking a COM interface
US8739288B2 (en) * 2007-07-31 2014-05-27 Hewlett-Packard Development Company, L.P. Automatic detection of vulnerability exploits
US8347277B2 (en) * 2007-08-17 2013-01-01 International Business Machines Corporation Verifying that binary object file has been generated from source files
US8181173B2 (en) * 2007-10-12 2012-05-15 International Business Machines Corporation Determining priority for installing a patch into multiple patch recipients of a network
US20090144828A1 (en) * 2007-12-04 2009-06-04 Microsoft Corporation Rapid signatures for protecting vulnerable browser configurations
US8689203B2 (en) * 2008-02-19 2014-04-01 Microsoft Corporation Software update techniques based on ascertained identities
US8990360B2 (en) * 2008-02-22 2015-03-24 Sonos, Inc. System, method, and computer program for remotely managing a digital device
US20090248397A1 (en) * 2008-03-25 2009-10-01 Microsoft Corporation Service Initiation Techniques
US20100007489A1 (en) * 2008-07-10 2010-01-14 Janardan Misra Adaptive learning for enterprise threat managment
US20100153942A1 (en) * 2008-12-12 2010-06-17 Lazar Borissov Method and a system for delivering latest hotfixes with a support package stack
KR101052734B1 (ko) * 2009-02-03 2011-07-29 주식회사 안철수연구소 응용 프로그램 패치 장치 및 방법
CN101526984B (zh) * 2009-03-16 2012-05-30 腾讯科技(北京)有限公司 一种修复漏洞的方法及装置
RU2422877C1 (ru) * 2009-11-16 2011-06-27 Виталий Евгеньевич Пилкин Способ обозначения инфицированных электронных файлов
US8484753B2 (en) 2009-12-02 2013-07-09 Mcafee, Inc. Hooking nonexported functions by the offset of the function
EP2362314A1 (en) * 2010-02-18 2011-08-31 Thomson Licensing Method and apparatus for verifying the integrity of software code during execution and apparatus for generating such software code
US9268945B2 (en) 2010-03-19 2016-02-23 Contrast Security, Llc Detection of vulnerabilities in computer systems
US8458798B2 (en) * 2010-03-19 2013-06-04 Aspect Security Inc. Detection of vulnerabilities in computer systems
US8479188B2 (en) 2010-07-08 2013-07-02 Microsoft Corporation Binary code change vulnerability prioritization
EP2413257B1 (en) 2010-07-26 2017-04-26 Sony DADC Austria AG Method for replacing an illegitimate copy of a software program with legitimate copy and corresponding system
US8726388B2 (en) * 2011-05-16 2014-05-13 F-Secure Corporation Look ahead malware scanning
US8931102B2 (en) * 2011-06-01 2015-01-06 International Business Machines Corporation Testing web applications for file upload vulnerabilities
US20130104119A1 (en) * 2011-10-24 2013-04-25 Brian Matsuo Streaming packetized binary patching system and method
SG11201402290VA (en) * 2011-11-15 2014-07-30 Japan Science & Tech Agency Program analysis/verification service provision system, control method for same, control program, control program for directing computer to function, program analysis/verification device, program analysis/verification tool management device
JPWO2013111532A1 (ja) * 2012-01-25 2015-05-11 日本電気株式会社 管理システム、管理方法およびプログラム
CN103049701A (zh) * 2012-11-30 2013-04-17 南京翰海源信息技术有限公司 基于内存搜索的shellcode的检测系统及方法
US8997082B1 (en) * 2013-07-16 2015-03-31 Amazon Technologies, Inc. Differential patch of content
RU2568295C2 (ru) * 2013-08-07 2015-11-20 Закрытое акционерное общество "Лаборатория Касперского" Система и способ временной защиты операционной системы программно-аппаратных устройств от приложений, содержащих уязвимости
US9317695B2 (en) * 2013-09-25 2016-04-19 Veracode, Inc. System and method for automated remedying of security vulnerabilities
US9241355B2 (en) 2013-09-30 2016-01-19 Sonos, Inc. Media system access via cellular network
US10296884B2 (en) 2013-09-30 2019-05-21 Sonos, Inc. Personalized media playback at a discovered point-of-sale display
US8954583B1 (en) 2014-01-20 2015-02-10 Shape Security, Inc. Intercepting and supervising calls to transformed operations and objects
US9075990B1 (en) * 2014-07-01 2015-07-07 Shape Security, Inc. Reliable selection of security countermeasures
US9602543B2 (en) 2014-09-09 2017-03-21 Shape Security, Inc. Client/server polymorphism using polymorphic hooks
US9749349B1 (en) 2016-09-23 2017-08-29 OPSWAT, Inc. Computer security vulnerability assessment
US11522901B2 (en) 2016-09-23 2022-12-06 OPSWAT, Inc. Computer security vulnerability assessment
TWI622894B (zh) 2016-12-13 2018-05-01 宏碁股份有限公司 電子裝置及偵測惡意檔案的方法
GB2563618B (en) * 2017-06-20 2020-09-16 Arm Ip Ltd Electronic system vulnerability assessment
US10540496B2 (en) 2017-09-29 2020-01-21 International Business Machines Corporation Dynamic re-composition of patch groups using stream clustering
KR102424357B1 (ko) 2017-10-24 2022-07-25 삼성전자주식회사 부채널 공격으로부터 정보를 보호하는 방법 및 디바이스
US20190138293A1 (en) * 2017-11-09 2019-05-09 Venuetize LLC Pattern recognition platform
KR101955356B1 (ko) 2017-12-08 2019-03-07 한국인터넷진흥원 취약 함수 사용에 의한 취약점을 보완하기 위한 바이너리 패치 장치 및 그 방법
US10984110B2 (en) 2018-03-20 2021-04-20 ReFirm Labs, Inc. Evaluation of security of firmware
US10943015B2 (en) * 2018-03-22 2021-03-09 ReFirm Labs, Inc. Continuous monitoring for detecting firmware threats
US11860758B2 (en) 2018-05-07 2024-01-02 Google Llc System for adjusting application performance based on platform level benchmarking
US10846080B2 (en) 2018-09-06 2020-11-24 International Business Machines Corporation Cooperative updating of software
KR101995285B1 (ko) * 2018-10-31 2019-07-02 한국인터넷진흥원 취약점이 존재하는 바이너리 패치 방법 및 그 장치
CN109828772B (zh) * 2019-02-19 2022-03-11 百度在线网络技术(北京)有限公司 热更新方法、操作系统、终端设备和存储介质
KR102070010B1 (ko) 2019-02-28 2020-01-29 한국인터넷진흥원 취약 함수 사용에 의한 취약점을 보완하기 위한 바이너리 패치 장치 및 그 방법
US11100233B2 (en) 2019-06-26 2021-08-24 International Business Machines Corporation Optimizing operating system vulnerability analysis
CN113836536A (zh) * 2020-06-08 2021-12-24 网神信息技术(北京)股份有限公司 配置漏洞补丁包的方法、服务器、终端设备及介质
US11777984B1 (en) * 2020-09-04 2023-10-03 Wells Fargo Bank, N.A. Automatic threat detection and remediation
US11556330B2 (en) 2020-11-24 2023-01-17 Kyndryl, Inc. Analysis and implementation of security updates
CN113852602B (zh) * 2021-08-11 2023-12-08 奇安信科技集团股份有限公司 文件重建方法、装置,传输设备,电子设备及介质
US20230315438A1 (en) * 2022-03-30 2023-10-05 Kyndryl, Inc. Contextually cognitive edge server manager

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002041147A1 (en) * 2000-11-17 2002-05-23 Biftone Corporation System and method for updating and distributing information

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5231668A (en) * 1991-07-26 1993-07-27 The United States Of America, As Represented By The Secretary Of Commerce Digital signature algorithm
US5675711A (en) 1994-05-13 1997-10-07 International Business Machines Corporation Adaptive statistical regression and classification of data strings, with application to the generic detection of computer viruses
US5930504A (en) * 1996-07-22 1999-07-27 Intel Corporation Dynamic nonvolatile memory update in a computer system
US6016546A (en) 1997-07-10 2000-01-18 International Business Machines Corporation Efficient detection of computer viruses and other data traits
GB2333864B (en) * 1998-01-28 2003-05-07 Ibm Distribution of software updates via a computer network
AU3781399A (en) 1998-04-30 1999-11-16 Bindview Development Corporation Computer security
US6425126B1 (en) 1999-05-19 2002-07-23 International Business Machines Corporation Apparatus and method for synchronizing software between computers
US6493871B1 (en) 1999-09-16 2002-12-10 Microsoft Corporation Method and system for downloading updates for software installation
US6842861B1 (en) * 2000-03-24 2005-01-11 Networks Associates Technology, Inc. Method and system for detecting viruses on handheld computers
KR20030035142A (ko) * 2001-10-30 2003-05-09 주식회사 이글루시큐리티 통합보안관리 서비스 방법
GB2381721B (en) 2001-10-31 2005-02-23 Hewlett Packard Co System and method of defining unauthorized intrusions on a computer system
JP2005532606A (ja) 2001-12-31 2005-10-27 シタデル セキュリティ ソフトウェア インコーポレイテッド コンピュータの脆弱性を解決する自動化されたシステム
US7424706B2 (en) 2003-07-16 2008-09-09 Microsoft Corporation Automatic detection and patching of vulnerable files

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002041147A1 (en) * 2000-11-17 2002-05-23 Biftone Corporation System and method for updating and distributing information

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006228206A (ja) * 2005-02-17 2006-08-31 Microsoft Corp 識別された脆弱性を遮蔽するためのシステムおよび方法
JP4875075B2 (ja) * 2005-06-30 2012-02-15 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド セキュアパッチシステム
CN101551773B (zh) * 2009-03-12 2012-04-25 南京大学 符号错误和赋值截断的二进制漏洞检测定位装置
JP2017531236A (ja) * 2014-08-13 2017-10-19 インカ・エントワークス・インコーポレイテッドInka Entworks, Inc. クラウドベースのアプリケーションセキュリティサービスの提供方法及びシステム
JP2016167262A (ja) * 2015-03-05 2016-09-15 富士通株式会社 脆弱性分析のための自律型推論システム
JP2020205043A (ja) * 2019-05-29 2020-12-24 エフ.ホフマン−ラ ロシュ アーゲーF. Hoffmann−La Roche Aktiengesellschaft サイバーセキュリティ用インターフェース・プロキシ・デバイス
JP7009554B2 (ja) 2019-05-29 2022-01-25 エフ.ホフマン-ラ ロシュ アーゲー サイバーセキュリティ用インターフェース・プロキシ・デバイス
JP7496376B2 (ja) 2019-05-29 2024-06-06 エフ. ホフマン-ラ ロシュ アーゲー サイバーセキュリティ用インターフェース・プロキシ・デバイス
JP2022535785A (ja) * 2019-06-12 2022-08-10 エヌイーシー ラボラトリーズ ヨーロッパ ゲーエムベーハー ブロックチェーンネットワークにおけるスマートコントラクトをサポートするための方法及びコントラクト書き換えフレームワークシステム
JP2021108189A (ja) * 2020-05-14 2021-07-29 ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッドBeijing Baidu Netcom Science Technology Co., Ltd. 脆弱性特徴の取得方法、装置及び電子機器
JP7231664B2 (ja) 2020-05-14 2023-03-01 阿波▲羅▼智▲聯▼(北京)科技有限公司 脆弱性特徴の取得方法、装置及び電子機器

Also Published As

Publication number Publication date
US7424706B2 (en) 2008-09-09
IL162642A (en) 2010-12-30
NO20042970L (no) 2005-01-17
US20050015760A1 (en) 2005-01-20
CN1577272A (zh) 2005-02-09
EP1505499A1 (en) 2005-02-09
MXPA04006784A (es) 2005-03-23
RU2004118827A (ru) 2006-01-10
MY150114A (en) 2013-11-29
JP4652736B2 (ja) 2011-03-16
ZA200405076B (en) 2005-06-03
TWI354887B (en) 2011-12-21
NZ533661A (en) 2005-05-27
NO337222B1 (no) 2016-02-15
CN1577272B (zh) 2011-01-12
RU2358313C2 (ru) 2009-06-10
TW200508849A (en) 2005-03-01
KR101231410B1 (ko) 2013-02-07
AU2004202974A1 (en) 2005-02-03
SG139545A1 (en) 2008-02-29
IL162642A0 (en) 2005-11-20
BRPI0402767A (pt) 2005-03-08
KR20050009198A (ko) 2005-01-24
AU2004202974B2 (en) 2009-12-03
CA2471998A1 (en) 2005-01-16
CO5600216A1 (es) 2006-01-31

Similar Documents

Publication Publication Date Title
JP4652736B2 (ja) 脆弱性のあるファイルの自動的な検出およびパッチ
US8037290B1 (en) Preboot security data update
US8505069B1 (en) System and method for updating authorized software
EP2156356B1 (en) Trusted operating environment for malware detection
JP4936294B2 (ja) マルウェアに対処する方法及び装置
US8250569B1 (en) Systems and methods for selectively blocking application installation
JP5058450B2 (ja) 効率的なパッチ当て
US8640119B2 (en) Determining compatibility of a software package update using a version identifier
US8561180B1 (en) Systems and methods for aiding in the elimination of false-positive malware detections within enterprises
US20070289019A1 (en) Methodology, system and computer readable medium for detecting and managing malware threats
JP2005327276A (ja) 効率的なパッチ当て
US8898778B2 (en) System, method, and computer program product for identifying vulnerabilities associated with data loaded in memory
KR20060083850A (ko) 부분적인 이미지 해시들을 이용하여 실행가능한 파일무결성을 검증하기 위한 시스템 및 방법
JP2005327274A (ja) 効率的なパッチ当て
KR20080082623A (ko) 애플리케이션의 메타데이터 구동 배치
US20110107300A1 (en) Systems and methods for utilizing a history of changes associated with software packages and configuration management to manage multiple computing systems
US20110131564A1 (en) Systems and methods for generating a version identifier for a computing system based on software packages installed on the computing system
US8656494B2 (en) System and method for optimization of antivirus processing of disk files
US9690944B2 (en) System and method updating disk encryption software and performing pre-boot compatibility verification
US7437721B2 (en) Isolating software deployment over a network from external malicious intrusion
EP2754079B1 (en) Malware risk scanner
US20080222043A1 (en) System and method for trans-vendor license registration and recovery
US20110131566A1 (en) Systems and methods for managing a network of computer system using a version identifier generated based on software packages installed on the computing systems
JP2011186823A (ja) ウイルスチェックシステム、ウイルスチェック装置、及び、プログラム
WO2020261438A1 (ja) 実行制御システム、実行制御方法、及びプログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070713

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070713

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100820

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101116

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101216

R150 Certificate of patent or registration of utility model

Ref document number: 4652736

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131224

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees