JP2004512612A - ウィルスの交換からパーベイシブ・デバイスおよびサーバを保護するための方法およびシステム - Google Patents
ウィルスの交換からパーベイシブ・デバイスおよびサーバを保護するための方法およびシステム Download PDFInfo
- Publication number
- JP2004512612A JP2004512612A JP2002538245A JP2002538245A JP2004512612A JP 2004512612 A JP2004512612 A JP 2004512612A JP 2002538245 A JP2002538245 A JP 2002538245A JP 2002538245 A JP2002538245 A JP 2002538245A JP 2004512612 A JP2004512612 A JP 2004512612A
- Authority
- JP
- Japan
- Prior art keywords
- content
- data processing
- processing system
- merged
- virus
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- 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
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/562—Static detection
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Virology (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
【課題】ウィルスの交換を防止するための方法および装置を提供すること。
【解決手段】あるデバイスの既存の内容を第1の位置に維持する。そのデバイスに関連する新しい内容を第2の位置に配置するが、その新しい内容は既存の内容に対する更新である。既存の内容と新しい内容を第3の位置で結合してマージされた内容を形成する。新しい内容の転送を実行する前に、マージされた内容についてウィルスの有無のチェックを実行する。
【選択図】図2
【解決手段】あるデバイスの既存の内容を第1の位置に維持する。そのデバイスに関連する新しい内容を第2の位置に配置するが、その新しい内容は既存の内容に対する更新である。既存の内容と新しい内容を第3の位置で結合してマージされた内容を形成する。新しい内容の転送を実行する前に、マージされた内容についてウィルスの有無のチェックを実行する。
【選択図】図2
Description
【0001】
【発明の属する技術分野】
本発明は、一般に、改良されたデータ処理システムに関し、特に、ソフトウェアに対する無許可の変更を防止するための方法および装置に関する。より詳細には、本発明は、データ処理システムをウィルスから保護するための方法および装置を提供する。
【0002】
【従来の技術】
コンピュータ分野は一般に、コンピュータ「ウィルス」、「ワーム」、または「トロイの木馬」として知られるプログラムが導入されることに悩まされてきた。このようなプログラムは、悪意で導入される場合が多く、記憶データにもその他のソフトウェアにも重大な損害を与える場合が多い。コンピュータ・ファイルの完全性に対して増大するこの脅威を阻止するのを助けるために、多くのソフトウェア解決策が考案されている。このような解決策の中には、特定の既知のウィルスを捜して1つのファイルまたは1組のファイルをスキャンする一般的なウィルス・スキャナ・プログラムがある。このウィルス検出方法は、既知のウィルスに対して特に有効である。
【0003】
コンピュータ・ウィルスは、自己複製し、従ってあるコンピュータ・ファイルから他のコンピュータ・ファイルに、あるコンピュータ・ボリュームから他のコンピュータ・ボリュームに、最終的にはあるマシンから他のマシンに広がることができるという特定の特性を有する。ウィルスは、意図的に悪意のあることを実行するように設計されていない場合もあるが、ウィルスと見なすには、自己複製の能力を備えていなければならない。これにより、コンピュータ・ウィルスは「トロイの木馬」などのプログラムとは区別される。
【0004】
ウィルスはいくつかの方法で広がる可能性がある。たとえば、ウィルスは、あるコンピュータ上の何らかのプログラム内にすでに存在するコードに自己を追加し、その後、新たに追加されたウィルス・コードが実行されるように既存のコードを変更することによって広がることができる。これにより、ウィルスは、さらに他のプログラムで再度実行され、自己複製することができるようになる。
【0005】
エンタープライズ・サーバの使用とともに、新しいクラスのパーベイシブ・デバイスがインターネットに接続されていることにより、ウィルスがこのようなパーベイシブ・デバイスにも感染するよう設計される可能性がある。このようなパーベイシブ・デバイスとしては、パーム・パイロット(パーム・コンピューティング社から入手可能)などの携帯情報端末(PDA)、アナログおよびディジタル・セルラーホン、所与の冷蔵庫などのネットワーク接続の家電品、自動車用コンピュータ、データ通信と音声通信を併用するスクリーンホン、対話式テレビジョン・プログラミング、ウェブ・アクセス、パーソナル通信をサポートするウェブ使用可能テレビを含む。パーベイシブ・デバイスの数がPCおよびラップトップ・コンピュータの現在の数を上回ることが予想されるので、パーベイシブ・デバイスがウィルスによって感染すると、より壊滅的な損害をもたらし、ウィルス駆除がより困難になるだろう。このようなパーベイシブ・デバイスの接続スタイルがそれぞれ異なるため、ウィルスの交換からパーベイシブ・デバイスを保護することは新たな難題を課すことになる。たとえば、多くのパーベイシブ・デバイスは、断続的にコンピュータ・ネットワークに接続されるだけである。さらに、これらのコンピュータは、サーバとデータ更新を交換すること(同期と呼ばれるプロセス)によって動作し、デバイス上のデータ・ストアとサーバ(同期サーバ)上のデータ・ストアが一貫した状態に保持されることを保証する。パーベイシブ・デバイスは通常、プロセッサおよびメモリ資源が限られているので、このようなデバイスを保護する作業はより複雑なものになる。その結果、このようなデバイスは、常にスキャン中のマシン上の相当なプロセッサおよびメモリ資源を必要とする高度なウィルス・スキャン矯正プログラムを実行することができない。
【0006】
【発明が解決しようとする課題】
したがって、ウィルスの交換からパーベイシブ・デバイスおよびサーバを保護するための改良された方法および装置を有することは有利となろう。
【0007】
【課題を解決するための手段】
本発明は、データ処理システムにおいてウィルスの交換を防止するための方法を提供する。あるデバイスの既存の内容を第1の位置に維持する。そのデバイスの新しい内容を第2の位置に配置するが、その新しい情報は既存のデータに対する更新である。既存の内容と新しいデータを第3の位置で結合してマージされた内容を形成する。新しい内容の転送を実行する前に、マージされたデータについてウィルスの有無のチェックを実行する。
【0008】
本発明に特有と思われる新規の特徴は特許請求の範囲に示されている。しかし、本発明自体ならびにその好ましい使用形態、その他の目的および利点については、添付図面に関連して以下に示す例示的な実施形態の詳細な説明を参照することによって、最も良く理解されるだろう。
【0009】
【発明の実施の形態】
ここで添付図面を参照すると、図1は本発明を実施可能な分散データ処理システムの絵画表現を示している。分散データ処理システム100は、本発明を実施可能な複数コンピュータのネットワークである。分散データ処理システム100は、分散データ処理システム100内で互いに接続された様々なデバイスおよびコンピュータ間の通信リンクを提供するために使用する媒体であるネットワーク102を含む。ネットワーク102は、ワイヤまたは光ファイバ・ケーブルなどの永久接続または電話接続によりなされる一時的接続を含むことができる。
【0010】
図示の例のサーバ104は、記憶装置106とともにネットワーク102に接続されている。さらに、クライアント108、110、112もネットワーク102に接続されている。これらのクライアント108、110、112は、たとえば、パーソナル・コンピュータまたはネットワーク・コンピュータにすることができる。本出願では、ネットワーク・コンピュータとは、あるネットワークに結合され、そのネットワークに結合された他のコンピュータからプログラムまたは他のアプリケーションを受信する任意のコンピュータである。上記の例のクライアント114および116は、ワイヤレス通信リンクを使用して通信するパーベイシブ・デバイスである。クライアント114および116は、たとえば、PDAまたはその他のハンドヘルド・コンピューティング・デバイスにすることができる。このようなクライアントはワイヤレス・リンクを使用してネットワーク102と通信するが、電話回線またはイーサネット(R)などの物理接続を使用することもできる。
【0011】
図示の例のサーバ104は、ブート・ファイル、オペレーティング・システム画像、アプリケーションなどのデータをクライアント108〜116に提供する。クライアント108〜116はサーバ104に対するクライアントである。分散データ処理システム100は、図示していない追加のサーバ、クライアント、その他のデバイスを含むことができる。図示の例の分散データ処理システム100は、インターネットならびに互いに通信するためにTCP/IPプロトコル一式を使用するネットワークとゲートウェイの世界的な集合を表すネットワーク102である。インターネットの中心には、大ノードまたはホスト・コンピュータ間の高速データ通信回線からなるバックボーンがあり、データおよびメッセージを経路指定する何千もの商用、政府、教育、その他のコンピュータ・システムから構成される。当然のことながら、分散データ処理システム100は、たとえば、イントラネット、ローカル・エリア・ネットワーク(LAN)、または広域ネットワーク(WAN)など、数通りのタイプのネットワークとしても実施可能である。このようなネットワークは、上記の例のワイヤレス通信リンク用のメカニズムも含む。図1は、本発明の構造上の制限を意図するものではなく、一例として示すものである。
【0012】
図2を参照すると、本発明の好ましい実施形態により、図1のサーバ104などのサーバとして実施可能なデータ処理システムのブロック図が示されている。本発明のプロセスは、上記の例のデータ処理システム200などのサーバ内で実施される。データ処理システム200は、システム・バス206に接続された複数のプロセッサ202および204を含む、対称型マルチプロセッサ(SMP)システムにすることができる。別法として、単一プロセッサ・システムを使用することもできる。また、システム・バス206には、ローカル・メモリ209へのインタフェースとなるメモリ・コントローラ/キャッシュ208も接続されている。I/Oバス・ブリッジ210は、システム・バス206に接続され、I/Oバス212へのインタフェースとなる。メモリ・コントローラ/キャッシュ208とI/Oバス・ブリッジ210は、図示のように統合することができる。
【0013】
I/Oバス212に接続された周辺装置相互接続(PCI)バス・ブリッジ214はPCIローカル・バス216へのインタフェースとなる。PCIバス216にはいくつかのモデムを接続することができる。典型的なPCIバスの実施例では、4つのPCI拡張スロットまたはアドイン・コネクタをサポートすることになる。図1のネットワーク・コンピュータ108〜112への通信リンクは、アドイン・ボードによりPCIローカル・バス216に接続されたモデム218およびネットワーク・アダプタ220によって提供することができる。
【0014】
追加のPCIバス・ブリッジ222および224は、追加のPCIバス226および228のインタフェースとなり、それにより追加のモデムまたはネットワーク・アダプタをサポートすることができる。このようにして、データ処理システム200は複数のネットワーク・コンピュータへの接続を可能にする。I/Oバス212には、図示の通り、直接または間接的にメモリマップ形グラフィック・アダプタ230およびハード・ディスク232も接続することができる。
【0015】
図2に示すハードウェアが変化可能であることを当業者なら理解するであろう。たとえば、図示のハードウェアに追加してまたはその代わりとして、光ディスク・ドライブなどの他の周辺装置も使用することができる。図示の例は、本発明に関する構造上の制限を暗示するためのものではない。
【0016】
図2に示すデータ処理システムは、たとえば、本出願人の製品であり、拡張対話式エグゼクティブ(AIX)オペレーティング・システムを実行するIBM RISC/システム6000というシステムにすることができる。
【0017】
次に図3に移行すると、本発明の好ましい実施形態によるクライアントのブロック図が示されている。この例のデータ処理システム300は、図1のクライアント108またはクライアント116などのクライアントの一例である。データ処理システム300は、処理装置304と、記憶装置306と、入出力(I/O)装置308と、通信装置310とを相互接続し、これらの間の通信を可能にするバス302を含む。処理装置304は、1つまたは複数のプロセッサを含むことができ、記憶装置306内に位置する命令を実行する。記憶装置306は、様々な機能を実行するための命令ならびにデータを含み、クライアントのタイプに応じて様々な形を取ることができる。たとえば、記憶装置306は、ランダム・アクセス・メモリ(RAM)、読取専用メモリ(ROM)、不揮発性RAM(NVRAM)、またはハード・ディスク・ドライブにすることができる。I/O装置308は、データ処理システム300との対話を可能にし、通常、表示装置ならびにキーボード、タッチパッド、マウス、タッチ・スクリーンなどの入力装置を含む。通信装置310は、他のシステムとのデータの交換を可能にするものである。通信装置310は、たとえば、ワイヤレス・モデムまたはネットワーク・アダプタなど、様々な形を取ることができる。
【0018】
本発明は、ウィルスの交換からクライアントおよびサーバを保護するための方法、装置、およびコンピュータ実施命令を提供する。本発明では、パーベイシブ・デバイスなどの多くのクライアントが同期によりサーバと通信するものと認識している。このタイプの通信では、結果的に、クライアントのためにデータまたはソフトウェアに対する増分更新がサーバ上に記憶されることになる。このような状況では、1つのウィルスに2つ以上の部分が含まれ、その個々の部分が無害であることはあり得ることである。しかし、すべての部分を寄せ集めると、その集合体がウィルスになる。上記のような潜在的ウィルスは、増分更新によりサーバおよびその他のクライアントに伝搬される可能性がある。本発明のメカニズムは、ウィルスを持ち込んで広めるというこのようなタイプの脅威を解消するものである。このメカニズムは、通信の主要手段としてサーバを使用するクライアントにとって特に有用である。クライアントのためのデータまたはソフトウェアに対する更新または追加は、ウィルスの有無についてこのデータの和集合をテストするまで、クライアントに送信されず、クライアント用の既存データとともにサーバに記憶されることもない。
【0019】
次に図4に移行すると、本発明の好ましい実施形態によりクライアントとサーバとの間のウィルスの広がりを防止する際に使用する構成要素を示すブロック図が示されている。この例のサーバ400は、クライアント402への通信を可能にし、クライアント402にデータを提供する。クライアント402はデバイス・データ404を含むが、これはクライアント402のユーザが行う更新またはサーバ400から受信した更新により変化する可能性がある。サーバ400はデバイス・データ・キャッシュ406を含み、これはクライアント402または他のソースから受信した変更により定期的に更新可能なデータを含む。このデバイス・データ・キャッシュ406は、データに加え、ソフトウェアまたはプログラムも含むことができる。このソフトウェアまたはデータあるいはその両方は、このクライアント用の「内容」とも呼ばれる。
【0020】
サーバ400は、サンドボックス408と合併エリア410も含む。この2つの構成要素は、上記の例のサーバ400内の1つまたは複数の記憶装置内に位置する。たとえば、RAMなどのメモリを使用するか、またはハード・ディスク・ドライブなどの記憶装置を使用して、これらの構成要素を実現することができる。サンドボックス408は、クライアント402に送信中かまたはクライアント402から受信中の更新用の保持エリアである。更新がクライアント402に転送されるかまたはサンドボックス408からデバイス・データ・キャッシュ406内に配置される前に、内容の和集合または合併が作られ、それが合併エリア410内に配置される。マージされる内容は、デバイス・データ・キャッシュ406内の内容と、サンドボックス408内に位置する更新である。マージされた内容をスキャンまたは分析し、結合またはマージされた内容にウィルスが存在するかどうかを判定する。合併エリア410は、ウィルスが存在するかどうかの判定以外の目的でそのエリア内の内容のいずれかを実行または使用することができるエリアではなく、単に保持エリアになるように設計または構成されている。
【0021】
ウィルスが存在しない場合は、データ・フローに応じて、マージされた内容がデバイス・データ・キャッシュ406に記憶されるかまたは更新がクライアント402に送信される。これに対して、ウィルスが見つかった場合は、サーバ400上の更新をデバイス・データ・キャッシュ406に記憶する前または更新をクライアント402に送信する前に、ウィルスを除去することができる。このようにして、その内容がその宛先に到達する前に、感染したデータを検出してウィルス駆除するかまたはそのデータを除去することができる。さらに、クライアントから直接受信したウィルスは同期の時点でウィルス駆除し、ウィルスがさらに広がるのを防止することができる。
【0022】
次に図5に移行すると、本発明の好ましい実施形態によりクライアントから更新を受信するために使用するプロセスの流れ図が示されている。図5に示すプロセスは、図2のデータ処理システム200などのサーバで実施することができる。このような更新は通常、クライアントとサーバとの同期プロセスの結果として発生する。
【0023】
このプロセスは、クライアントがサーバとの同期を最後に実行して以来クライアント側のデバイス・データに対して行われた更新のリストとともに同期要求を受信することから開始する(ステップ500)。このような更新を図4のサンドボックス408などのサンドボックス内に配置する(ステップ502)。このサンドボックスは、クライアントの代わりにサーバ上に記憶されたデバイス・データ・キャッシュに対して更新を適用すべきかどうかが判定されるまでその更新を保持するために使用する。ウィルスの有無についてデバイス・データ・キャッシュの現在の内容と更新との和集合の分析ができるまで、その更新はクライアント用のデバイス・データ・キャッシュに適用されない。次に、更新とデバイス・データ・キャッシュの現在の内容とをマージして、一時的位置に配置する(ステップ504)。この位置は、たとえば、図4の合併エリア410である。次に、ウィルスの有無についてマージされた内容をスキャンまたは分析する(ステップ506)。このウィルス・スキャン・プロセスは、当業者にとって周知の様々なプロセスを使用して実施することができる。このスキャンは、現在実行中の同期の対象となるタイプのクライアントで発生する恐れがあるウィルスを検出しようとするものである。このスキャンは任意選択で、他のタイプのパーベイシブ・コンピューティング・デバイスで発生する恐れがあるウィルスについてもサーチすることができる。また、このスキャンは任意選択で、サーバ・コンピュータ自体で発生する恐れがあるウィルスについてもサーチすることができる。
【0024】
次に、ウィルスが存在するかどうかについて判定を行う(ステップ508)。ウィルスが存在しない場合は、サンドボックス内の更新をデバイス・データ・キャッシュに適用し(ステップ510)、その後、プロセスが終了する。
【0025】
もう一度ステップ508を参照すると、ウィルスが存在する場合は、従来技術で周知の技法を使用して、ウィルスを除去しようと試みる(ステップ512)。その後、依然としてウィルスが存在するかどうかについて判定を行う(ステップ514)。ウィルスがもはや存在しない場合は、上記のようにプロセスはステップ510に移行する。そうではない場合は、サーバの記憶域からマージされた内容を削除し、エラー・メッセージを発生し(ステップ516)、その後、プロセスが終了する。当然のことながら、エラー・メッセージを発生する代わりに他のアクションを行うこともできる。たとえば、ウィルスを含む更新を自動的に削除するか、あるいは、更新を削除すべきかまたは先へ進んで更新とクライアントの内容をマージするべきかに関する入力を要求するメッセージをクライアントに送信することもできる。さらに、この事象をログ・ファイルに記録するか、または直ちにシステム管理者に通知することもできる。その後の分析のためにウィルスに関する診断情報(ウィルス自体を含む)を記憶することもできる。
【0026】
次に図6を参照すると、本発明の好ましい実施形態によりクライアントに更新を送信するために使用するプロセスの流れ図が示されている。このプロセスも、図2のデータ処理システム200などのサーバで実施される。
【0027】
このプロセスは、クライアント用の1つまたは複数の更新を識別することから開始する(ステップ600)。このような更新は、クライアントの代わりにサーバに記憶されたデバイス・データ・キャッシュに対してサーバ側のアプリケーションが行おうとする1組の変更を表すが、サーバ側のアプリケーションによって直接提供される場合もある。このクライアント用の更新をサンドボックス内に配置する(ステップ602)。更新は、サンドボックス内に配置されるが、デバイス・データ・キャッシュとマージされることも、クライアントに送達されることもない。このステップは、2つ以上の部分を寄せ集めたときに活動状態になる潜在的ウィルスの問題を回避するのを支援する。次に、更新とデバイス・データ・キャッシュの現在の内容とをマージして、一時的位置に配置する(ステップ604)。ウィルスの有無についてマージされた内容をスキャンする(ステップ606)。このウィルス・スキャン・プロセスは、当業者にとって周知のものである。このスキャンは、現在実行中の同期の対象となるタイプのクライアントで発生する恐れがあるウィルスを検出しようとするものである。このスキャンは任意選択で、他のタイプのパーベイシブ・コンピューティング・デバイスで発生する恐れがあるウィルスについてもサーチすることができる。また、このスキャンは任意選択で、サーバ・コンピュータ自体で発生する恐れがあるウィルスについてもサーチすることができる。
【0028】
次に、ウィルスが存在するかどうかについて判定を行う(ステップ608)。ウィルスが存在しない場合は、更新をクライアントに送信し(ステップ610)、サーバに記憶されたデバイス・データ・キャッシュに更新を適用し(ステップ612)、その後、プロセスが終了する。
【0029】
これに対して、ステップ608でウィルスが存在する場合は、ウィルスを除去するかまたは更新に対してウィルス駆除しようと試みる(ステップ614)。依然としてウィルスが存在するかどうかについてもう一度判定を行う(ステップ616)。ウィルスがもはや存在しない場合は、上記のようにプロセスはステップ610に移行する。そうではない場合は、エラー・メッセージを発生し(ステップ618)、その後、プロセスが終了する。前記のように、エラー・メッセージを発生する代わりに他のアクションを行うこともできる。たとえば、ウィルスを含む更新を自動的に削除するか、あるいは、更新を削除すべきかまたは先へ進んで更新とクライアントの内容をマージするべきかに関する入力を要求するメッセージをクライアントに送信することもできる。さらに、この事象をログ・ファイルに記録するか、または直ちにシステム管理者に通知することもできる。その後の分析のためにウィルスに関する診断情報(ウィルス自体を含む)を記憶することもできる。
【0030】
したがって、本発明は、ウィルスの交換からクライアントおよびサーバを保護するための改良された方法および装置を提供する。本発明のメカニズムは、ウィルスの有無についてクライアントの内容と更新との和集合をスキャンまたは分析できるまで更新とその内容との結合を回避することにより、ウィルスが交換される可能性を低減する。このメカニズムは、サーバと通信する際に同期プロセスを使用するデバイスについて、ウィルスの広がりを防止するために特に有用である。また、このメカニズムは、受信したウィルスが他のクライアントに広がるのも防止する。受信したウィルスは、本発明のメカニズムを使用して同期の時点で除去またはウィルス駆除され、ウィルスがさらに広がるのを防止する。
【0031】
完全に機能するデータ処理システムに関連して本発明を説明してきたが、本発明のプロセスは複数命令からなるコンピュータ可読媒体の形および様々な形態で配布可能であり、その配布を実行するために実際に使用する特定のタイプの信号運搬媒体にかかわらず本発明は等しく適用されることを当業者なら理解するであろうことに留意するのは重要である。コンピュータ可読媒体の例としては、フロッピー(R)・ディスク、ハード・ディスク・ドライブ、RAM、CD−ROMなどの記録可能タイプの媒体と、ディジタルおよびアナログ通信リンクなどの伝送タイプの媒体を含む。
【0032】
本発明の説明は、例示および説明のために提示したものであり、網羅するものまたは開示した形態の本発明に限定されるものではない。当業者には多くの修正形態および変形形態が明らかになろう。たとえば、例示した実施例は内容の同期を対象とするが、本発明のメカニズムは同期以外の他のタイプの更新にも適用することができる。このような代替実施形態のサーバは、たとえばクライアント上で実行されるブラウザからのウェブ要求の結果として、プログラムおよび命令をクライアントに送達することができる。この場合、クライアントに送達する前に、プログラムまたは命令を合併エリア内に配置して、ウィルスの有無についてスキャンすることができる。また、本発明のメカニズムは、サーバ以外の場所で実施することもできる。たとえば、このようなプロセスは、一部をサーバ上で、一部をゲートウェイ上で実施することができる。デバイス・データ・キャッシュがサーバ上に位置し、サンドボックスおよび合併エリアがゲートウェイ内に位置する場合もある。実際のマージおよびスキャン・プロセスはゲートウェイ内で実施することができる。上記の実施形態は、本発明の原理および実用例を最も良く説明し、企図された特定の用途に適した様々な修正形態とともに様々な実施形態について当業者が本発明を理解できるようにするために、選択し説明したものである。
【図面の簡単な説明】
【図1】
本発明を実施可能な分散データ処理システムの絵画表現である。
【図2】
本発明の好ましい実施形態により、図1のサーバ104などのサーバとして実施可能なデータ処理システムのブロック図である。
【図3】
本発明の好ましい実施形態によるクライアントのブロック図である。
【図4】
本発明の好ましい実施形態によりクライアントとサーバとの間のウィルスの広がりを防止する際に使用する構成要素を示すブロック図である。
【図5】
本発明の好ましい実施形態によりクライアントから更新を受信するために使用するプロセスの流れ図である。
【図6】
本発明の好ましい実施形態によりクライアントに更新を送信するために使用するプロセスの流れ図である。
【発明の属する技術分野】
本発明は、一般に、改良されたデータ処理システムに関し、特に、ソフトウェアに対する無許可の変更を防止するための方法および装置に関する。より詳細には、本発明は、データ処理システムをウィルスから保護するための方法および装置を提供する。
【0002】
【従来の技術】
コンピュータ分野は一般に、コンピュータ「ウィルス」、「ワーム」、または「トロイの木馬」として知られるプログラムが導入されることに悩まされてきた。このようなプログラムは、悪意で導入される場合が多く、記憶データにもその他のソフトウェアにも重大な損害を与える場合が多い。コンピュータ・ファイルの完全性に対して増大するこの脅威を阻止するのを助けるために、多くのソフトウェア解決策が考案されている。このような解決策の中には、特定の既知のウィルスを捜して1つのファイルまたは1組のファイルをスキャンする一般的なウィルス・スキャナ・プログラムがある。このウィルス検出方法は、既知のウィルスに対して特に有効である。
【0003】
コンピュータ・ウィルスは、自己複製し、従ってあるコンピュータ・ファイルから他のコンピュータ・ファイルに、あるコンピュータ・ボリュームから他のコンピュータ・ボリュームに、最終的にはあるマシンから他のマシンに広がることができるという特定の特性を有する。ウィルスは、意図的に悪意のあることを実行するように設計されていない場合もあるが、ウィルスと見なすには、自己複製の能力を備えていなければならない。これにより、コンピュータ・ウィルスは「トロイの木馬」などのプログラムとは区別される。
【0004】
ウィルスはいくつかの方法で広がる可能性がある。たとえば、ウィルスは、あるコンピュータ上の何らかのプログラム内にすでに存在するコードに自己を追加し、その後、新たに追加されたウィルス・コードが実行されるように既存のコードを変更することによって広がることができる。これにより、ウィルスは、さらに他のプログラムで再度実行され、自己複製することができるようになる。
【0005】
エンタープライズ・サーバの使用とともに、新しいクラスのパーベイシブ・デバイスがインターネットに接続されていることにより、ウィルスがこのようなパーベイシブ・デバイスにも感染するよう設計される可能性がある。このようなパーベイシブ・デバイスとしては、パーム・パイロット(パーム・コンピューティング社から入手可能)などの携帯情報端末(PDA)、アナログおよびディジタル・セルラーホン、所与の冷蔵庫などのネットワーク接続の家電品、自動車用コンピュータ、データ通信と音声通信を併用するスクリーンホン、対話式テレビジョン・プログラミング、ウェブ・アクセス、パーソナル通信をサポートするウェブ使用可能テレビを含む。パーベイシブ・デバイスの数がPCおよびラップトップ・コンピュータの現在の数を上回ることが予想されるので、パーベイシブ・デバイスがウィルスによって感染すると、より壊滅的な損害をもたらし、ウィルス駆除がより困難になるだろう。このようなパーベイシブ・デバイスの接続スタイルがそれぞれ異なるため、ウィルスの交換からパーベイシブ・デバイスを保護することは新たな難題を課すことになる。たとえば、多くのパーベイシブ・デバイスは、断続的にコンピュータ・ネットワークに接続されるだけである。さらに、これらのコンピュータは、サーバとデータ更新を交換すること(同期と呼ばれるプロセス)によって動作し、デバイス上のデータ・ストアとサーバ(同期サーバ)上のデータ・ストアが一貫した状態に保持されることを保証する。パーベイシブ・デバイスは通常、プロセッサおよびメモリ資源が限られているので、このようなデバイスを保護する作業はより複雑なものになる。その結果、このようなデバイスは、常にスキャン中のマシン上の相当なプロセッサおよびメモリ資源を必要とする高度なウィルス・スキャン矯正プログラムを実行することができない。
【0006】
【発明が解決しようとする課題】
したがって、ウィルスの交換からパーベイシブ・デバイスおよびサーバを保護するための改良された方法および装置を有することは有利となろう。
【0007】
【課題を解決するための手段】
本発明は、データ処理システムにおいてウィルスの交換を防止するための方法を提供する。あるデバイスの既存の内容を第1の位置に維持する。そのデバイスの新しい内容を第2の位置に配置するが、その新しい情報は既存のデータに対する更新である。既存の内容と新しいデータを第3の位置で結合してマージされた内容を形成する。新しい内容の転送を実行する前に、マージされたデータについてウィルスの有無のチェックを実行する。
【0008】
本発明に特有と思われる新規の特徴は特許請求の範囲に示されている。しかし、本発明自体ならびにその好ましい使用形態、その他の目的および利点については、添付図面に関連して以下に示す例示的な実施形態の詳細な説明を参照することによって、最も良く理解されるだろう。
【0009】
【発明の実施の形態】
ここで添付図面を参照すると、図1は本発明を実施可能な分散データ処理システムの絵画表現を示している。分散データ処理システム100は、本発明を実施可能な複数コンピュータのネットワークである。分散データ処理システム100は、分散データ処理システム100内で互いに接続された様々なデバイスおよびコンピュータ間の通信リンクを提供するために使用する媒体であるネットワーク102を含む。ネットワーク102は、ワイヤまたは光ファイバ・ケーブルなどの永久接続または電話接続によりなされる一時的接続を含むことができる。
【0010】
図示の例のサーバ104は、記憶装置106とともにネットワーク102に接続されている。さらに、クライアント108、110、112もネットワーク102に接続されている。これらのクライアント108、110、112は、たとえば、パーソナル・コンピュータまたはネットワーク・コンピュータにすることができる。本出願では、ネットワーク・コンピュータとは、あるネットワークに結合され、そのネットワークに結合された他のコンピュータからプログラムまたは他のアプリケーションを受信する任意のコンピュータである。上記の例のクライアント114および116は、ワイヤレス通信リンクを使用して通信するパーベイシブ・デバイスである。クライアント114および116は、たとえば、PDAまたはその他のハンドヘルド・コンピューティング・デバイスにすることができる。このようなクライアントはワイヤレス・リンクを使用してネットワーク102と通信するが、電話回線またはイーサネット(R)などの物理接続を使用することもできる。
【0011】
図示の例のサーバ104は、ブート・ファイル、オペレーティング・システム画像、アプリケーションなどのデータをクライアント108〜116に提供する。クライアント108〜116はサーバ104に対するクライアントである。分散データ処理システム100は、図示していない追加のサーバ、クライアント、その他のデバイスを含むことができる。図示の例の分散データ処理システム100は、インターネットならびに互いに通信するためにTCP/IPプロトコル一式を使用するネットワークとゲートウェイの世界的な集合を表すネットワーク102である。インターネットの中心には、大ノードまたはホスト・コンピュータ間の高速データ通信回線からなるバックボーンがあり、データおよびメッセージを経路指定する何千もの商用、政府、教育、その他のコンピュータ・システムから構成される。当然のことながら、分散データ処理システム100は、たとえば、イントラネット、ローカル・エリア・ネットワーク(LAN)、または広域ネットワーク(WAN)など、数通りのタイプのネットワークとしても実施可能である。このようなネットワークは、上記の例のワイヤレス通信リンク用のメカニズムも含む。図1は、本発明の構造上の制限を意図するものではなく、一例として示すものである。
【0012】
図2を参照すると、本発明の好ましい実施形態により、図1のサーバ104などのサーバとして実施可能なデータ処理システムのブロック図が示されている。本発明のプロセスは、上記の例のデータ処理システム200などのサーバ内で実施される。データ処理システム200は、システム・バス206に接続された複数のプロセッサ202および204を含む、対称型マルチプロセッサ(SMP)システムにすることができる。別法として、単一プロセッサ・システムを使用することもできる。また、システム・バス206には、ローカル・メモリ209へのインタフェースとなるメモリ・コントローラ/キャッシュ208も接続されている。I/Oバス・ブリッジ210は、システム・バス206に接続され、I/Oバス212へのインタフェースとなる。メモリ・コントローラ/キャッシュ208とI/Oバス・ブリッジ210は、図示のように統合することができる。
【0013】
I/Oバス212に接続された周辺装置相互接続(PCI)バス・ブリッジ214はPCIローカル・バス216へのインタフェースとなる。PCIバス216にはいくつかのモデムを接続することができる。典型的なPCIバスの実施例では、4つのPCI拡張スロットまたはアドイン・コネクタをサポートすることになる。図1のネットワーク・コンピュータ108〜112への通信リンクは、アドイン・ボードによりPCIローカル・バス216に接続されたモデム218およびネットワーク・アダプタ220によって提供することができる。
【0014】
追加のPCIバス・ブリッジ222および224は、追加のPCIバス226および228のインタフェースとなり、それにより追加のモデムまたはネットワーク・アダプタをサポートすることができる。このようにして、データ処理システム200は複数のネットワーク・コンピュータへの接続を可能にする。I/Oバス212には、図示の通り、直接または間接的にメモリマップ形グラフィック・アダプタ230およびハード・ディスク232も接続することができる。
【0015】
図2に示すハードウェアが変化可能であることを当業者なら理解するであろう。たとえば、図示のハードウェアに追加してまたはその代わりとして、光ディスク・ドライブなどの他の周辺装置も使用することができる。図示の例は、本発明に関する構造上の制限を暗示するためのものではない。
【0016】
図2に示すデータ処理システムは、たとえば、本出願人の製品であり、拡張対話式エグゼクティブ(AIX)オペレーティング・システムを実行するIBM RISC/システム6000というシステムにすることができる。
【0017】
次に図3に移行すると、本発明の好ましい実施形態によるクライアントのブロック図が示されている。この例のデータ処理システム300は、図1のクライアント108またはクライアント116などのクライアントの一例である。データ処理システム300は、処理装置304と、記憶装置306と、入出力(I/O)装置308と、通信装置310とを相互接続し、これらの間の通信を可能にするバス302を含む。処理装置304は、1つまたは複数のプロセッサを含むことができ、記憶装置306内に位置する命令を実行する。記憶装置306は、様々な機能を実行するための命令ならびにデータを含み、クライアントのタイプに応じて様々な形を取ることができる。たとえば、記憶装置306は、ランダム・アクセス・メモリ(RAM)、読取専用メモリ(ROM)、不揮発性RAM(NVRAM)、またはハード・ディスク・ドライブにすることができる。I/O装置308は、データ処理システム300との対話を可能にし、通常、表示装置ならびにキーボード、タッチパッド、マウス、タッチ・スクリーンなどの入力装置を含む。通信装置310は、他のシステムとのデータの交換を可能にするものである。通信装置310は、たとえば、ワイヤレス・モデムまたはネットワーク・アダプタなど、様々な形を取ることができる。
【0018】
本発明は、ウィルスの交換からクライアントおよびサーバを保護するための方法、装置、およびコンピュータ実施命令を提供する。本発明では、パーベイシブ・デバイスなどの多くのクライアントが同期によりサーバと通信するものと認識している。このタイプの通信では、結果的に、クライアントのためにデータまたはソフトウェアに対する増分更新がサーバ上に記憶されることになる。このような状況では、1つのウィルスに2つ以上の部分が含まれ、その個々の部分が無害であることはあり得ることである。しかし、すべての部分を寄せ集めると、その集合体がウィルスになる。上記のような潜在的ウィルスは、増分更新によりサーバおよびその他のクライアントに伝搬される可能性がある。本発明のメカニズムは、ウィルスを持ち込んで広めるというこのようなタイプの脅威を解消するものである。このメカニズムは、通信の主要手段としてサーバを使用するクライアントにとって特に有用である。クライアントのためのデータまたはソフトウェアに対する更新または追加は、ウィルスの有無についてこのデータの和集合をテストするまで、クライアントに送信されず、クライアント用の既存データとともにサーバに記憶されることもない。
【0019】
次に図4に移行すると、本発明の好ましい実施形態によりクライアントとサーバとの間のウィルスの広がりを防止する際に使用する構成要素を示すブロック図が示されている。この例のサーバ400は、クライアント402への通信を可能にし、クライアント402にデータを提供する。クライアント402はデバイス・データ404を含むが、これはクライアント402のユーザが行う更新またはサーバ400から受信した更新により変化する可能性がある。サーバ400はデバイス・データ・キャッシュ406を含み、これはクライアント402または他のソースから受信した変更により定期的に更新可能なデータを含む。このデバイス・データ・キャッシュ406は、データに加え、ソフトウェアまたはプログラムも含むことができる。このソフトウェアまたはデータあるいはその両方は、このクライアント用の「内容」とも呼ばれる。
【0020】
サーバ400は、サンドボックス408と合併エリア410も含む。この2つの構成要素は、上記の例のサーバ400内の1つまたは複数の記憶装置内に位置する。たとえば、RAMなどのメモリを使用するか、またはハード・ディスク・ドライブなどの記憶装置を使用して、これらの構成要素を実現することができる。サンドボックス408は、クライアント402に送信中かまたはクライアント402から受信中の更新用の保持エリアである。更新がクライアント402に転送されるかまたはサンドボックス408からデバイス・データ・キャッシュ406内に配置される前に、内容の和集合または合併が作られ、それが合併エリア410内に配置される。マージされる内容は、デバイス・データ・キャッシュ406内の内容と、サンドボックス408内に位置する更新である。マージされた内容をスキャンまたは分析し、結合またはマージされた内容にウィルスが存在するかどうかを判定する。合併エリア410は、ウィルスが存在するかどうかの判定以外の目的でそのエリア内の内容のいずれかを実行または使用することができるエリアではなく、単に保持エリアになるように設計または構成されている。
【0021】
ウィルスが存在しない場合は、データ・フローに応じて、マージされた内容がデバイス・データ・キャッシュ406に記憶されるかまたは更新がクライアント402に送信される。これに対して、ウィルスが見つかった場合は、サーバ400上の更新をデバイス・データ・キャッシュ406に記憶する前または更新をクライアント402に送信する前に、ウィルスを除去することができる。このようにして、その内容がその宛先に到達する前に、感染したデータを検出してウィルス駆除するかまたはそのデータを除去することができる。さらに、クライアントから直接受信したウィルスは同期の時点でウィルス駆除し、ウィルスがさらに広がるのを防止することができる。
【0022】
次に図5に移行すると、本発明の好ましい実施形態によりクライアントから更新を受信するために使用するプロセスの流れ図が示されている。図5に示すプロセスは、図2のデータ処理システム200などのサーバで実施することができる。このような更新は通常、クライアントとサーバとの同期プロセスの結果として発生する。
【0023】
このプロセスは、クライアントがサーバとの同期を最後に実行して以来クライアント側のデバイス・データに対して行われた更新のリストとともに同期要求を受信することから開始する(ステップ500)。このような更新を図4のサンドボックス408などのサンドボックス内に配置する(ステップ502)。このサンドボックスは、クライアントの代わりにサーバ上に記憶されたデバイス・データ・キャッシュに対して更新を適用すべきかどうかが判定されるまでその更新を保持するために使用する。ウィルスの有無についてデバイス・データ・キャッシュの現在の内容と更新との和集合の分析ができるまで、その更新はクライアント用のデバイス・データ・キャッシュに適用されない。次に、更新とデバイス・データ・キャッシュの現在の内容とをマージして、一時的位置に配置する(ステップ504)。この位置は、たとえば、図4の合併エリア410である。次に、ウィルスの有無についてマージされた内容をスキャンまたは分析する(ステップ506)。このウィルス・スキャン・プロセスは、当業者にとって周知の様々なプロセスを使用して実施することができる。このスキャンは、現在実行中の同期の対象となるタイプのクライアントで発生する恐れがあるウィルスを検出しようとするものである。このスキャンは任意選択で、他のタイプのパーベイシブ・コンピューティング・デバイスで発生する恐れがあるウィルスについてもサーチすることができる。また、このスキャンは任意選択で、サーバ・コンピュータ自体で発生する恐れがあるウィルスについてもサーチすることができる。
【0024】
次に、ウィルスが存在するかどうかについて判定を行う(ステップ508)。ウィルスが存在しない場合は、サンドボックス内の更新をデバイス・データ・キャッシュに適用し(ステップ510)、その後、プロセスが終了する。
【0025】
もう一度ステップ508を参照すると、ウィルスが存在する場合は、従来技術で周知の技法を使用して、ウィルスを除去しようと試みる(ステップ512)。その後、依然としてウィルスが存在するかどうかについて判定を行う(ステップ514)。ウィルスがもはや存在しない場合は、上記のようにプロセスはステップ510に移行する。そうではない場合は、サーバの記憶域からマージされた内容を削除し、エラー・メッセージを発生し(ステップ516)、その後、プロセスが終了する。当然のことながら、エラー・メッセージを発生する代わりに他のアクションを行うこともできる。たとえば、ウィルスを含む更新を自動的に削除するか、あるいは、更新を削除すべきかまたは先へ進んで更新とクライアントの内容をマージするべきかに関する入力を要求するメッセージをクライアントに送信することもできる。さらに、この事象をログ・ファイルに記録するか、または直ちにシステム管理者に通知することもできる。その後の分析のためにウィルスに関する診断情報(ウィルス自体を含む)を記憶することもできる。
【0026】
次に図6を参照すると、本発明の好ましい実施形態によりクライアントに更新を送信するために使用するプロセスの流れ図が示されている。このプロセスも、図2のデータ処理システム200などのサーバで実施される。
【0027】
このプロセスは、クライアント用の1つまたは複数の更新を識別することから開始する(ステップ600)。このような更新は、クライアントの代わりにサーバに記憶されたデバイス・データ・キャッシュに対してサーバ側のアプリケーションが行おうとする1組の変更を表すが、サーバ側のアプリケーションによって直接提供される場合もある。このクライアント用の更新をサンドボックス内に配置する(ステップ602)。更新は、サンドボックス内に配置されるが、デバイス・データ・キャッシュとマージされることも、クライアントに送達されることもない。このステップは、2つ以上の部分を寄せ集めたときに活動状態になる潜在的ウィルスの問題を回避するのを支援する。次に、更新とデバイス・データ・キャッシュの現在の内容とをマージして、一時的位置に配置する(ステップ604)。ウィルスの有無についてマージされた内容をスキャンする(ステップ606)。このウィルス・スキャン・プロセスは、当業者にとって周知のものである。このスキャンは、現在実行中の同期の対象となるタイプのクライアントで発生する恐れがあるウィルスを検出しようとするものである。このスキャンは任意選択で、他のタイプのパーベイシブ・コンピューティング・デバイスで発生する恐れがあるウィルスについてもサーチすることができる。また、このスキャンは任意選択で、サーバ・コンピュータ自体で発生する恐れがあるウィルスについてもサーチすることができる。
【0028】
次に、ウィルスが存在するかどうかについて判定を行う(ステップ608)。ウィルスが存在しない場合は、更新をクライアントに送信し(ステップ610)、サーバに記憶されたデバイス・データ・キャッシュに更新を適用し(ステップ612)、その後、プロセスが終了する。
【0029】
これに対して、ステップ608でウィルスが存在する場合は、ウィルスを除去するかまたは更新に対してウィルス駆除しようと試みる(ステップ614)。依然としてウィルスが存在するかどうかについてもう一度判定を行う(ステップ616)。ウィルスがもはや存在しない場合は、上記のようにプロセスはステップ610に移行する。そうではない場合は、エラー・メッセージを発生し(ステップ618)、その後、プロセスが終了する。前記のように、エラー・メッセージを発生する代わりに他のアクションを行うこともできる。たとえば、ウィルスを含む更新を自動的に削除するか、あるいは、更新を削除すべきかまたは先へ進んで更新とクライアントの内容をマージするべきかに関する入力を要求するメッセージをクライアントに送信することもできる。さらに、この事象をログ・ファイルに記録するか、または直ちにシステム管理者に通知することもできる。その後の分析のためにウィルスに関する診断情報(ウィルス自体を含む)を記憶することもできる。
【0030】
したがって、本発明は、ウィルスの交換からクライアントおよびサーバを保護するための改良された方法および装置を提供する。本発明のメカニズムは、ウィルスの有無についてクライアントの内容と更新との和集合をスキャンまたは分析できるまで更新とその内容との結合を回避することにより、ウィルスが交換される可能性を低減する。このメカニズムは、サーバと通信する際に同期プロセスを使用するデバイスについて、ウィルスの広がりを防止するために特に有用である。また、このメカニズムは、受信したウィルスが他のクライアントに広がるのも防止する。受信したウィルスは、本発明のメカニズムを使用して同期の時点で除去またはウィルス駆除され、ウィルスがさらに広がるのを防止する。
【0031】
完全に機能するデータ処理システムに関連して本発明を説明してきたが、本発明のプロセスは複数命令からなるコンピュータ可読媒体の形および様々な形態で配布可能であり、その配布を実行するために実際に使用する特定のタイプの信号運搬媒体にかかわらず本発明は等しく適用されることを当業者なら理解するであろうことに留意するのは重要である。コンピュータ可読媒体の例としては、フロッピー(R)・ディスク、ハード・ディスク・ドライブ、RAM、CD−ROMなどの記録可能タイプの媒体と、ディジタルおよびアナログ通信リンクなどの伝送タイプの媒体を含む。
【0032】
本発明の説明は、例示および説明のために提示したものであり、網羅するものまたは開示した形態の本発明に限定されるものではない。当業者には多くの修正形態および変形形態が明らかになろう。たとえば、例示した実施例は内容の同期を対象とするが、本発明のメカニズムは同期以外の他のタイプの更新にも適用することができる。このような代替実施形態のサーバは、たとえばクライアント上で実行されるブラウザからのウェブ要求の結果として、プログラムおよび命令をクライアントに送達することができる。この場合、クライアントに送達する前に、プログラムまたは命令を合併エリア内に配置して、ウィルスの有無についてスキャンすることができる。また、本発明のメカニズムは、サーバ以外の場所で実施することもできる。たとえば、このようなプロセスは、一部をサーバ上で、一部をゲートウェイ上で実施することができる。デバイス・データ・キャッシュがサーバ上に位置し、サンドボックスおよび合併エリアがゲートウェイ内に位置する場合もある。実際のマージおよびスキャン・プロセスはゲートウェイ内で実施することができる。上記の実施形態は、本発明の原理および実用例を最も良く説明し、企図された特定の用途に適した様々な修正形態とともに様々な実施形態について当業者が本発明を理解できるようにするために、選択し説明したものである。
【図面の簡単な説明】
【図1】
本発明を実施可能な分散データ処理システムの絵画表現である。
【図2】
本発明の好ましい実施形態により、図1のサーバ104などのサーバとして実施可能なデータ処理システムのブロック図である。
【図3】
本発明の好ましい実施形態によるクライアントのブロック図である。
【図4】
本発明の好ましい実施形態によりクライアントとサーバとの間のウィルスの広がりを防止する際に使用する構成要素を示すブロック図である。
【図5】
本発明の好ましい実施形態によりクライアントから更新を受信するために使用するプロセスの流れ図である。
【図6】
本発明の好ましい実施形態によりクライアントに更新を送信するために使用するプロセスの流れ図である。
Claims (31)
- データ処理システムにおいてウィルスの交換を防止するための方法であって、
あるデバイスの既存の内容を第1の位置に維持するステップと、
前記デバイスに関連する新しい内容を第2の位置に配置するステップであって、前記新しい情報が前記既存の内容に対する更新であるステップと、
前記既存のデータと前記新しい内容を第3の位置で結合してマージされた内容を形成するステップと、
前記新しい内容の転送を実行する前に、前記マージされた内容についてウィルスの有無のチェックを実行するステップとを含む方法。 - 前記マージされた内容にウィルスが存在しない場合に、前記マージされた内容を前記デバイスに送信するステップをさらに含む、請求項1に記載の方法。
- 前記マージされた内容にウィルスが存在しない場合に、前記マージされた内容を前記既存の内容として記憶するステップをさらに含む、請求項1に記載の方法。
- 前記デバイスがワイヤレス・デバイスである、請求項1に記載の方法。
- 前記デバイスが、携帯情報端末、ラップトップ・コンピュータ、無線電話、パーソナル・コンピュータのうちの1つである、請求項1に記載の方法。
- 前記第1の位置が前記データ処理システム内のハード・ディスク・ドライブである、請求項1に記載の方法。
- 前記第1の位置が、前記データ処理システムにとってリモートの記憶システム内のハード・ディスク・ドライブである、請求項1に記載の方法。
- 前記第3の位置が前記データ処理システム内のランダム・アクセス・メモリである、請求項1に記載の方法。
- 前記配置ステップ、維持ステップ、および実行ステップが、前記データ処理システムと前記デバイスとの同期プロセスに応答して開始される、請求項1に記載の方法。
- データ処理システムにおいてウィルスの伝送を防止するための方法であって、
あるデバイスを同期させるための要求を受信するステップと、
前記デバイスに関連する新しい内容を識別するステップと、
前記新しい内容と既存の内容を結合してマージされた内容を形成するステップと、
前記デバイスを同期させる前に、ウィルスの有無について前記マージされた内容をチェックするステップとを含む方法。 - 前記新しい内容が前記デバイスから受信した内容である、請求項10に記載の方法。
- 前記新しい内容が前記デバイスに送信すべき内容である、請求項10に記載の方法。
- バス・システムと、
前記バス・システムに接続されたメモリであって、1組の命令を含むメモリと、
前記バス・システムに接続された処理装置であって、あるデバイスの既存の内容を第1の位置に維持し、前記デバイスに関連する新しい内容を第2の位置に配置し、前記新しい情報が前記既存の内容に対する更新であり、前記既存の内容と前記新しい内容を第3の位置で結合してマージされた内容を形成し、前記マージされた内容についてウィルスの有無のチェックを実行するために、前記1組の命令を実行する処理装置とを含む、データ処理システム。 - 前記バス・システムが、1次バスと、2次バスとを含む、請求項13に記載のデータ処理システム。
- 前記バス・システムが単一バスを含む、請求項13に記載のデータ処理システム。
- 前記処理装置が複数のプロセッサを含む、請求項13に記載のデータ処理システム。
- 前記処理装置が単一プロセッサを含む、請求項13に記載のデータ処理システム。
- ウィルスの交換を防止するためのデータ処理システムであって、
あるデバイスの既存の内容を第1の位置に維持するための維持手段と、
前記デバイスに関連する新しい内容を第2の位置に配置するための配置手段であって、前記新しい情報が前記既存の内容に対する更新である配置手段と、
前記既存の内容と前記新しい内容を第3の位置で結合してマージされた内容を形成するための結合手段と、
前記新しい内容の転送を実行する前に、前記マージされた内容についてウィルスの有無のチェックを実行するための実行手段とを含む、データ処理システム。 - 前記マージされた内容にウィルスが存在しない場合に前記マージされた内容を前記デバイスに送信するための送信手段をさらに含む、請求項18に記載のデータ処理システム。
- 前記マージされた内容にウィルスが存在しない場合に前記マージされた内容を前記既存の内容として記憶するための記憶手段をさらに含む、請求項18に記載のデータ処理システム。
- 前記デバイスがワイヤレス・デバイスである、請求項18に記載のデータ処理システム。
- 前記デバイスが、携帯情報端末、ラップトップ・コンピュータ、無線電話、パーソナル・コンピュータのうちの1つである、請求項18に記載のデータ処理システム。
- 前記第1の位置が前記データ処理システム内のハード・ディスク・ドライブである、請求項18に記載のデータ処理システム。
- 前記第1の位置が、前記データ処理システムにとってリモートの記憶システム内のハード・ディスク・ドライブである、請求項18に記載のデータ処理システム。
- 前記第3の位置が前記データ処理システム内のランダム・アクセス・メモリである、請求項18に記載のデータ処理システム。
- 前記配置ステップと、維持ステップと、実行ステップが、前記データ処理システムと前記デバイスとの同期プロセスに応答して開始される、請求項18に記載のデータ処理システム。
- ウィルスの伝送を防止するためのデータ処理システムであって、
あるデバイスを同期させるための要求を受信するための受信手段と、
前記デバイスに関連する新しい内容を識別するための識別手段と、
前記新しい内容と既存の内容を結合してマージされた内容を形成するための結合手段と、
前記デバイスを同期させる前に、ウィルスの有無について前記マージされた内容をチェックするためのチェック手段とを含む、データ処理システム。 - 前記新しい内容が前記デバイスから受信した内容である、請求項27に記載のデータ処理システム。
- 前記新しい内容が前記デバイスに送信すべき内容である、請求項27に記載のデータ処理システム。
- ウィルスの交換を防止するためにデータ処理システム内で使用するためのコンピュータ可読媒体内のコンピュータ・プログラム製品であって、
あるデバイスの既存の内容を第1の位置に維持するための第1の命令と、
前記デバイスに関連する新しい内容を第2の位置に配置するための第2の命令であって、前記新しい情報が前記既存の内容に対する更新である第2の命令と、
前記既存の内容と前記新しい内容を第3の位置で結合してマージされた内容を形成するための第3の命令と、
前記新しい内容の転送を実行する前に、前記マージされた内容についてウィルスの有無のチェックを実行するための第4の命令とを含む、コンピュータ・プログラム製品。 - ウィルスの伝送を防止するためにデータ処理システム内で使用するためのコンピュータ可読媒体内のコンピュータ・プログラム製品あって、
あるデバイスを同期させるための要求を受信するための第1の命令と、
前記デバイスに関連する新しい内容を識別するための第2の命令と、
前記新しい内容と既存の内容を結合してマージされた内容を形成するための第3の命令と、
前記デバイスを同期させる前に、ウィルスの有無について前記マージされた内容をチェックするための第4の命令とを含む、コンピュータ・プログラム製品。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/692,988 US7086090B1 (en) | 2000-10-20 | 2000-10-20 | Method and system for protecting pervasive devices and servers from exchanging viruses |
PCT/EP2001/011544 WO2002035325A2 (en) | 2000-10-20 | 2001-10-06 | Method and system for preventing the spread of computer viruses |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004512612A true JP2004512612A (ja) | 2004-04-22 |
Family
ID=24782862
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002538245A Pending JP2004512612A (ja) | 2000-10-20 | 2001-10-06 | ウィルスの交換からパーベイシブ・デバイスおよびサーバを保護するための方法およびシステム |
Country Status (4)
Country | Link |
---|---|
US (1) | US7086090B1 (ja) |
JP (1) | JP2004512612A (ja) |
AU (1) | AU2002221657A1 (ja) |
WO (1) | WO2002035325A2 (ja) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050132205A1 (en) * | 2003-12-12 | 2005-06-16 | International Business Machines Corporation | Apparatus, methods and computer programs for identifying matching resources within a data processing network |
US7519726B2 (en) * | 2003-12-12 | 2009-04-14 | International Business Machines Corporation | Methods, apparatus and computer programs for enhanced access to resources within a network |
US7908653B2 (en) * | 2004-06-29 | 2011-03-15 | Intel Corporation | Method of improving computer security through sandboxing |
US20070240222A1 (en) * | 2006-04-06 | 2007-10-11 | George Tuvell | System and Method for Managing Malware Protection on Mobile Devices |
US8056134B1 (en) * | 2006-09-10 | 2011-11-08 | Ogilvie John W | Malware detection and identification via malware spoofing |
US8756683B2 (en) * | 2006-12-13 | 2014-06-17 | Microsoft Corporation | Distributed malicious software protection in file sharing environments |
US8856782B2 (en) | 2007-03-01 | 2014-10-07 | George Mason Research Foundation, Inc. | On-demand disposable virtual work system |
US9098698B2 (en) * | 2008-09-12 | 2015-08-04 | George Mason Research Foundation, Inc. | Methods and apparatus for application isolation |
US8839422B2 (en) | 2009-06-30 | 2014-09-16 | George Mason Research Foundation, Inc. | Virtual browsing environment |
US9202049B1 (en) | 2010-06-21 | 2015-12-01 | Pulse Secure, Llc | Detecting malware on mobile devices |
US9134996B2 (en) * | 2011-04-28 | 2015-09-15 | F-Secure Corporation | Updating anti-virus software |
WO2013082437A1 (en) | 2011-12-02 | 2013-06-06 | Invincia, Inc. | Methods and apparatus for control and detection of malicious content using a sandbox environment |
US8726338B2 (en) | 2012-02-02 | 2014-05-13 | Juniper Networks, Inc. | Dynamic threat protection in mobile networks |
EP2672414A1 (en) * | 2012-06-08 | 2013-12-11 | Sodge IT GmbH | Method for transferring configuration data to controller devices, a system and a computer program product |
US9378370B2 (en) * | 2013-06-17 | 2016-06-28 | Microsoft Technology Licensing, Llc | Scanning files for inappropriate content during synchronization |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB8915875D0 (en) | 1989-07-11 | 1989-08-31 | Intelligence Quotient United K | A method of operating a data processing system |
US5649095A (en) | 1992-03-30 | 1997-07-15 | Cozza; Paul D. | Method and apparatus for detecting computer viruses through the use of a scan information cache |
WO1995033237A1 (en) | 1994-06-01 | 1995-12-07 | Quantum Leap Innovations Inc. | Computer virus trap |
JP4162099B2 (ja) * | 1995-06-02 | 2008-10-08 | 富士通株式会社 | ウィルス感染に対処する機能を持つ装置及びその記憶装置 |
US5854916A (en) | 1995-09-28 | 1998-12-29 | Symantec Corporation | State-based cache for antivirus software |
GB9605338D0 (en) | 1996-03-13 | 1996-05-15 | Arendee Ltd | Improvements in or relating to computer systems |
US6151643A (en) * | 1996-06-07 | 2000-11-21 | Networks Associates, Inc. | Automatic updating of diverse software products on multiple client computer systems by downloading scanning application to client computer and generating software list on client computer |
US5832208A (en) | 1996-09-05 | 1998-11-03 | Cheyenne Software International Sales Corp. | Anti-virus agent for use with databases and mail servers |
US6154844A (en) * | 1996-11-08 | 2000-11-28 | Finjan Software, Ltd. | System and method for attaching a downloadable security profile to a downloadable |
US7058822B2 (en) * | 2000-03-30 | 2006-06-06 | Finjan Software, Ltd. | Malicious mobile code runtime monitoring system and methods |
US6167520A (en) * | 1996-11-08 | 2000-12-26 | Finjan Software, Inc. | System and method for protecting a client during runtime from hostile downloadables |
US5892904A (en) * | 1996-12-06 | 1999-04-06 | Microsoft Corporation | Code certification for network transmission |
US5960170A (en) | 1997-03-18 | 1999-09-28 | Trend Micro, Inc. | Event triggered iterative virus detection |
US5974549A (en) * | 1997-03-27 | 1999-10-26 | Soliton Ltd. | Security monitor |
US5948104A (en) * | 1997-05-23 | 1999-09-07 | Neuromedical Systems, Inc. | System and method for automated anti-viral file update |
US5919257A (en) | 1997-08-08 | 1999-07-06 | Novell, Inc. | Networked workstation intrusion detection system |
US6275938B1 (en) * | 1997-08-28 | 2001-08-14 | Microsoft Corporation | Security enhancement for untrusted executable code |
US6202207B1 (en) * | 1998-01-28 | 2001-03-13 | International Business Machines Corporation | Method and a mechanism for synchronized updating of interoperating software |
US5987610A (en) | 1998-02-12 | 1999-11-16 | Ameritech Corporation | Computer virus screening methods and systems |
US6067618A (en) * | 1998-03-26 | 2000-05-23 | Innova Patent Trust | Multiple operating system and disparate user mass storage resource separation for a computer system |
US6327584B1 (en) * | 1999-07-30 | 2001-12-04 | Hewlett-Packard Company | Apparatus and method for using version control to dynamically update files while the files are available for access |
-
2000
- 2000-10-20 US US09/692,988 patent/US7086090B1/en not_active Expired - Lifetime
-
2001
- 2001-10-06 AU AU2002221657A patent/AU2002221657A1/en not_active Abandoned
- 2001-10-06 JP JP2002538245A patent/JP2004512612A/ja active Pending
- 2001-10-06 WO PCT/EP2001/011544 patent/WO2002035325A2/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2002035325A2 (en) | 2002-05-02 |
AU2002221657A1 (en) | 2002-05-06 |
US7086090B1 (en) | 2006-08-01 |
WO2002035325A3 (en) | 2003-08-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4778950B2 (ja) | コンピュータ・ネットワーク用のウイルス検出・除去装置 | |
US7996902B1 (en) | System and method for certifying that data received over a computer network has been checked for viruses | |
US8255926B2 (en) | Virus notification based on social groups | |
US9781142B2 (en) | Scanning files for inappropriate content during synchronization | |
US7203959B2 (en) | Stream scanning through network proxy servers | |
JP3962373B2 (ja) | ピアツーピア式の電子コンテンツの広範囲の配布の方法および装置 | |
US8161292B2 (en) | Software virus detection methods, apparatus and articles of manufacture | |
JP2004512612A (ja) | ウィルスの交換からパーベイシブ・デバイスおよびサーバを保護するための方法およびシステム | |
JP4828193B2 (ja) | 文書へのアンチウイルスマニフェストのスタンピング | |
GB2353372A (en) | Remote computer virus scanning | |
US10686808B2 (en) | Notification for reassembly-free file scanning | |
US8091134B2 (en) | System and method for autonomic peer-to-peer virus inoculation | |
US20050257263A1 (en) | Andromeda strain hacker analysis system and method | |
US8572732B2 (en) | System, method, and computer program product for enabling communication between security systems | |
US20130247191A1 (en) | System, method, and computer program product for performing a remedial action with respect to a first device utilizing a second device | |
US20060155671A1 (en) | Virtual protection service | |
JP7468652B2 (ja) | 分散システム、通信端末、機能復旧方法、及びプログラム | |
EP1798916A1 (en) | System and method for regulating an extensibility point's access to a message | |
KR100829258B1 (ko) | 웜 바이러스의 전파 경로 추출 방법 | |
JP2010266912A (ja) | サーバ装置、フォーム処理方法、プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060801 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20070109 |