JP2008520051A - ソフトウェアを計測するための方法及びシステム - Google Patents

ソフトウェアを計測するための方法及びシステム Download PDF

Info

Publication number
JP2008520051A
JP2008520051A JP2007541358A JP2007541358A JP2008520051A JP 2008520051 A JP2008520051 A JP 2008520051A JP 2007541358 A JP2007541358 A JP 2007541358A JP 2007541358 A JP2007541358 A JP 2007541358A JP 2008520051 A JP2008520051 A JP 2008520051A
Authority
JP
Japan
Prior art keywords
computer
configuration file
agent
new process
list
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
JP2007541358A
Other languages
English (en)
Other versions
JP4696125B2 (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 JP2008520051A publication Critical patent/JP2008520051A/ja
Application granted granted Critical
Publication of JP4696125B2 publication Critical patent/JP4696125B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/105Arrangements for software license management or administration, e.g. for managing licenses at corporate level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • 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
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2135Metering

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Technology Law (AREA)
  • Multimedia (AREA)
  • Debugging And Monitoring (AREA)
  • Storage Device Security (AREA)
  • Stored Programmes (AREA)

Abstract

ソフトウェア使用のリアルタイムレポートを提供するための方法及びシステムは、ローカルコンピュータ上で実行されるエージェントを具備する。前記エージェントは、前記コンピュータ上で実行開始した新規プロセスを特定するとともに、前記新規プロセスと制限一覧表とを照合する。もし、新規プロセスが前記制限一覧表上に存在するならば、前記エージェントは自動的に、前記プロセスの実行可能ファイル名に関連付けられた1つ又は複数の制限アクションを実行する。前記制限一覧表は、前記ローカルコンピュータ上に格納される設定ファイル内に具備される。権限を有する管理者は、実行可能ファイル名及びDLL名を前記制限一覧表に追加、又は前記制限一覧表から削除することによって、並びに、前記実行可能ファイル名及びDLL名に関連付けられた制限アクションを追加又は削除することによって、前記マスタ設定ファイルを編集しても良い。

Description

本発明は、大規模グローバルコンピュータネットワークを管理するための方法及びシステムに関する。より具体的には、本発明は、コンピュータネットワーク内部において使用されるソフトウェアを監視するとともに、前記コンピュータネットワークのソフトウェア使用ポリシーを強制するための方法及びシステムに関する。
本願は、先に2004年11月10日に出願された米国仮出願特許第60/626,985号の利益を主張するとともに、前記仮出願は引用により本願に組み込まれる。
大規模であり、地理的に分散しているコンピュータネットワークを有する会社は、会社全体でのソフトウェアの同時使用をカバーするのに充分なライセンスのみを購入することによって、ソフトウェアベンダーに支払うライセンス料を軽減することが可能である。ライセンス契約を遵守するために、会社は、組織全体に亘ってソフトウェア使用の監視を可能としなければならない。例えば、ワシントン州レッドモンド市にあるマイクロソフト株式会社が提供するSMS2003(登録商標)製品などの、サードパーティ製の監視プログラムにより、ネットワークのコンピュータ上で実行されるソフトウェアのインスタンス数を監視することによって、会社がライセンス契約を遵守することが可能となる。
しかしながら、SMS2003製品は、サイト指向であり、そのために地理的に分散するネットワークに亘った監視が困難である。さらに、現行のソフトウェア監視パッケージは、使用を監視するのみであって、ライセンスポリシーを強制することができない。従って、地理的に分散したコンピュータネットワークに亘るソフトウェア使用を監視するとともに、ソフトウェアポリシーを強制することが可能である方法及びシステムに対する需要は引き続き存在する。
ソフトウェア使用のリアルタイムレポートを提供する方法及びシステムは、ローカルコンピュータ上で実行されるエージェントを具備している。前記エージェントは、前記コンピュータ上で実行開始された新規プロセスを特定するとともに、前記新規プロセスと制限一覧表とを照合する。もし、新規プロセスが前記制限一覧表に存在するならば、前記エージェントは自動的に、前記プロセスの実行可能ファイル名に関連付けられた1つまたは複数の制限アクション(restriction action)を実行する。前記制限一覧表は、ローカルコンピュータ上に格納されている設定ファイル内に具備されている。
ローカルコンピュータ用のマスタ設定ファイルは、サーバ上に格納されるとともに、前記設定ファイルが古くなった時に、前記設定ファイルを置換する。権限のある管理者は、実行可能ファイル(executable)名及びDLL名を、制限一覧表に追加又は前記制限一覧表から削除することによってマスタ設定ファイルを編集しても良いし、かつ前記制限一覧表上の、実行可能ファイル名及びDLL名に関連付けられた制限アクションを追加又は削除することによって、マスタ設定ファイルを編集しても良い。
本発明の一実施形態は、コンピュータ上の監視ソフトウェア利用方法を対象とする。前記方法は、コンピュータ上でエージェントプログラムを実行する段階と、前記コンピュータ上で実行される新規プロセスを特定する段階と、前記新規プロセスと前記コンピュータ上の設定ファイル内に格納された制限一覧表とを比較する段階と、もし前記プロセスが前記一覧表上に存在するならば、前記新規プロセスに対して制限アクションを実行する段階とを具備する。
本発明の他の実施形態は、サーバと通信するコンピュータと、前記コンピュータ上に格納されている設定ファイルと、前記コンピュータ上で実行されるエージェントプログラムとを具備し、前記設定ファイルは制限一覧表を具備し、前記制限一覧表内の各エントリーは、実行可能ファイル名と制限アクションとを具備し、前記エージェントは、前記コンピュータ上で実行される新規プロセスを特定するとともに、前記新規プロセスが前記制限一覧表上にある実行可能ファイル名と一致した時に、制限アクションを実行するように構成されていることを特徴とするシステムを対象とする。
本発明を、添付図面と関連付けながら、好ましい実施形態と代替の実施形態とを参照しながら本明細書で説明する。
ここでの説明は、本発明の好ましい一実施形態を説明するに過ぎないものと解するべきである。当業者は、例えば、説明される実施形態は、計測ソフトウェアの新しいシステム及び方法の、単に簡単化された一実施例に過ぎないことを認識する。前記簡単化された一実施例は、本発明が具備する、より一般的なシステム及び方法を実施可能とするために、詳細に亘り説明を要する事柄の全てである。
図1は、1つもしくは複数の地理的に区分されたサイトを有する会社によって使用される代表的なコンピュータネットワークを図示している。イントラネット110は、特定の地理サイトにあるコンピュータを接続するために使用され得る。第2イントラネット160は、第1イントラネット110と同じサイトにあるコンピュータと接続するのに使用しても良く、第2地理サイトにあるコンピュータに接続するのに使用しても良い。
ファイアウォール120は、前記イントラネットの1つが危険にさらされた時に、イントラネット110及び160を、互いに隔離するとともに保護するために使用され得る。内部ファイアウォール120は、高価値の会社内資産を保護するとともに、内部又は外部の攻撃に対する多層防御(defense−in−depth)を提供する。他の実施形態においては、イントラネット110は、例えば、インターネットのような外部ネットワークを介して、イントラネット160と接続され得る。好ましい実施形態では、全ての外部ネットワークへの接続は、ファイアウォール越しに行われる。
図1において、コンピュータ130と170とを、会社の従業員が、会社の様々な仕事を遂行するために使用しても良い。各コンピュータには、ユーザが使用する時にライセンスが要求されるソフトウェアがロードされても良い。好ましい実施形態においては、各コンピュータは、例えばハードディスクのような、前記コンピュータの不揮発性メモリ内にエージェントプログラムを格納している。前記コンピュータの動作中に前記エージェントプログラムが実行されるように、前記コンピュータが起動する間に、前記エージェントプログラムが自動的にロードされるように構成されている。
前記コンピュータのユーザがプログラムを実行開始した時に、前記エージェントプログラムは、新規プログラムと前記エージェントの設定ファイルに格納された1つまたは複数の制限プログラム一覧表とを照合する。もし、前記新規プログラムが前記制限プログラム一覧表上に存在するならば、前記エージェントは、前記制限プログラム一覧表に対応する制限アクションを実行する。
好ましい実施形態では、前記制限プログラム一覧表は、前記エージェントプログラムによって読み込まれる設定ファイル内に格納されている。前記設定ファイルは、前記コンピュータ上にローカルに格納されても良いし、中央サーバ180上に格納されても良い。中央サーバ180は、好ましくは、社内ネットワーク内の各コンピュータ用のマスタ設定ファイルを格納するとともに、前記マスタ設定ファイルを運用及び管理するための中央位置を提供する。
権限を有する運用者又は管理者は、運用者/管理者用コンピュータ185を介してファイルを編集することによって、マスタ設定ファイルを更新しても良い。運用者/管理者は、仕事上の職務又はワークグループに従いグループ分けされた、1つ又は複数のコンピュータに対し、マスタ設定ファイルを割り振っても良い。
好ましい実施形態において、前記エージェントプログラムは、そのコンピュータ上に格納されている設定ファイルのチェックサムを計算するとともに、前記チェックサムを中央サーバに送信する。前記サーバは、前記コンピュータからチェックサムを受信するとともに、前記チェックサムと、前記サーバ内に格納されている前記コンピュータ用のマスタ設定ファイルのチェックサムとを比較する。
もし、チェックサムが一致しなければ、前記コンピュータ内の前記設定ファイルは無効であるとともに、前記サーバは、前記ローカルコンピュータに対し、設定ファイルとして使用するためのマスタ設定ファイルをプッシュする。前記マスタ設定ファイルは、通常、各エージェントが最新の情報を使用できるように、運用者/管理者によって行われた最新の更新を含んでいる。上記の、設定ファイルのチェックサムを送信し、かつ比較することにより、ネットワーク上の通信量が低減される。なぜなら、前記マスタ設定ファイルは、ローカル設定ファイルが古くなった場合にのみネットワークを介して送信されるからである。
各設定ファイルは、実行可能モジュール名の一覧を具備する、1つ又は複数の一覧表を具備している。もし、エージェントが、ローカルコンピュータ上において実行される新規プロセスであって、前記制限一覧表内のモジュール名の1つと一致するものを発見したならば、前記エージェントは、当該制限一覧表に対応する制限アクションを実行する。例えば、前記設定ファイルは、もし前記プロセスがKILL一覧表上に存在したら、前記エージェントは前記プロセスを強制終了(terminate)するといった、KILLという名前の制限一覧表を具備しても良い。同様に、前記設定ファイルは、IGNORE一覧表上に存在するプロセスの、前記ローカルコンピュータ上での実行継続を前記エージェントが許可するといった、IGNOREという名前の制限一覧表を具備しても良い。
制限一覧表及び関連付けられた制限アクションの他の実施例は、網羅的ではないが、MAIL一覧表上に存在するプロセスが実行開始した時に、前記エージェントが当事者に対してメッセージをメールするMAIL一覧表や、NOTIFY一覧表上に存在するプロセスが実行開始した時に、前記エージェントが設定可能なメッセージを表示するNOTIFY一覧表や、REPORT一覧表上に存在するプロセスの実行開始をレポートするREPORT一覧表や、DISABLENET一覧表上に存在するプロセスが実行開始した時に、前記エージェントが前記ローカルコンピュータをネットワークから切断するDISABLENET一覧表などである。前記ローカルコンピュータは、前記ローカルコンピュータのネットワークカードからTCP/IPスタックをアンリンクすることによって、前記ネットワークから切断されても良い。
前記エージェントは、所望の制限アクションに対応する各制限一覧表に、単にモジュール名を含めるだけで、複数の制限アクションを実行するように管理しても良い。各設定ファイルに対し、運用者/管理者は、実行可能ファイル又はDLLを、設定ファイル内の一つ又は複数の制限一覧表に追加しても良く、又は前記一覧表から削除しても良い。好ましい実施形態において、各制限アクションは、前記エージェント内部にプリコンパイルされた機能であっても良い。
他の実施形態においては、前記設定ファイルは、単一の制限一覧表を具備してもよい。前記単一の制限一覧表の各エントリーは、実行可能ファイル及び/又はDLL名と、もし新規プロセスが前記制限一覧表上にある名前と一致したならば前記エージェントが実行する、一つ又は複数の制限アクションとを具備する。各実行可能ファイル又はDLL名が、各名前に関連付けられた異なる制限アクションを具備してもよく、それによって、プロセスが前記制限一覧表上で発見された時に、前記エージェントによって実行される自動化されたアクションのカスタマイズの幅を、より広げることが可能である。
制限一覧表及びそれらに関連付けられた制限アクションの使用により、よりカスタマイズの幅を広げるとともに、粒度を細かくすることが可能となるとともに、一方で、前記エージェントによって生成されるネットワーク通信量を低減することが可能となる。前記エージェントによって生成されるネットワーク通信量の大きさは、数万ものコンピュータを有する大規模会社内ネットワークにおいて、重大な問題となりうる。制限一覧表を使用することにより、管理者が関心のあるそれらのイベントのみにエージェントのレポートを制限することにより、ネットワーク通信量が低減される。
ローカルコンピュータが起動する度に、前記ローカルコンピュータに設定ファイルを送信する代わりに、前記ローカルコンピュータ上の設定ファイルが古くなった時にのみ設定ファイルを送信することにより、ネットワーク通信量はさらに低減される。送信される設定ファイル及び前記中央サーバに送信される全てのレポートのサイズを低減するために、例えば、ハフマン符号化又はDAWG(Directed Acyclic Word Graph)などの圧縮/暗号化方法を使用しても良い。
好ましい実施形態においては、エージェントによるレポートは、リアルタイムに行われる。それにより、中央レポジトリは、会社内で実行されているソフトウェアの即時かつ最新の情報を有することが可能となる。現在のソフトウェア使用情報を提供する他に、リアルタイムレポートにより、多階層の(in−depth)セキュリティ解析、パフォーマンス解析、障害解析、及びその他ネットワークサポート機能も容易になる。
一方、通常、リアルタイムレポートは、会社内コンピュータからのレポートが収集されるとともに格納される中央レポジトリの、完全24/7可用性を提供するための、例えば、負荷分散、フェールオーバー、及び近接分散(proximity distribution)などの、他のネットワークサービスに依存している。それに加え、リアルタイムレポートは、会社のネットワークセキュリティ管理のコンテキスト内部で動作しなければならない。
例えば、サードパーティ製のパッケージには、ネットワークドライブマッピングの方法を使用して、ローカルコンピュータをサーバに接続するものもある。しかしながら、ネットワークドライブマッピングは、内部ファイアウォール越しの操作と実質的に互換性がない。同様に、サードパーティ製のパッケージの中には、特定のポート上でTCP/IP経由でサーバに接続するものもある。しかしながら、特定ポート上のTCP/IP接続は、通常ファイアウォールの特別な設定を必要とし、それにより、ファイアウォール越しの、意図しないかつ検知されないセキュリティホールを開けてしまうこともある。
好ましい実施形態においては、ローカルコンピュータと中央サーバとの間の双方向通信は、標準的な80番ポート上でHTTPプロトコルを介して確立される。HTTP/80番ポートの使用により、セキュリティなどの会社内ネットワークの他の構成に及ぼす混乱が最小化され、一方でHTTP/80番ポートを使用する先進的なWEBサービスが活用される。通信用に80番ポートを使用することの利点は、ほとんどのファイアウォールが、この通信路を許可するように設定されるとともに、前記ファイアウォールの複雑な解析又はカスタム設定を必要としないことである。
さらに、負荷分散、冗長化、フェールオーバー、及び近接分散などの、通常、このプロトコル/ポートの組み合わせ上の攻撃に対して特に堅牢であるWEBサービスは、本発明の実施形態で利用可能となる。
図2は、本発明の実施形態における、エージェントの動作を図示したフローチャートである。好ましい実施形態においては、前記エージェントは、ローカルコンピュータの起動の間に段階205から実行開始し、かつユーザがシステムにログインしていない時にも実行可能であるように、ネーティブWindows(登録商標)サービスとして設定される。
図2に関しては、Windows(登録商標)サービスを説明しているが、当業者は、本明細書で説明される方法及びシステムは、以下に説明されるWindows(登録商標)サービスによって、Windows(登録商標)プラットフォームに限定されるものではなく、本発明の範囲内で、例えば、Linux(登録商標)やSolaris(登録商標)などの非Windows(登録商標)プラットフォームに関しても適用可能であるとともに、本発明の範囲内であると解するべきである。
段階210において、前記エージェントは、前記オペレーティングシステムから停止シグナルを受信したかどうかチェックする。もし停止シグナルが受信されていれば、前記エージェントは、段階215において、終了する(exit)とともに、前記エージェントプログラムを強制終了する。
もし、停止シグナルが受信されていなければ、前記エージェントは、段階220において、前記ローカルコンピュータ用の最新の設定ファイルをロードする。段階220において、前記エージェントプログラムは、前記ローカルコンピュータに格納されている設定ファイルのチェックサムを計算するとともに、中央サーバに前記チェックサムを送信する。
前記サーバは、前記ローカルコンピュータからチェックサムを受信するとともに、前記チェックサムと前記サーバ内に格納されている対応する設定ファイルのチェックサムとを比較する。もし、前記チェックサムが一致しなければ、前記サーバは、前記サーバ内に格納されている前記対応する設定ファイルを、前記ローカルコンピュータにプッシュする。前記対応する設定ファイルは、通常、運用者/管理者によって行われた最新の更新を具備しており、従って、各エージェントは、最新の情報を使用可能である。設定ファイルのチェックサムを送信し比較することにより、ネットワーク通信量が低減される。なぜなら、前記設定ファイルは、ローカル設定ファイルが古くなった時にのみネットワーク越しに送信されるからである。
段階230において、前記エージェントは、オペレーティングシステムから、前記ローカルコンピュータ上で実行中の全実行中プロセスの一覧表を回収する。前記エージェントは、実行中プロセスの一覧表を維持し、定期的に実行中プロセスの新規一覧表を回収し、かつ2つの一覧表を比較する。もし、新規プロセスが前記新規一覧表上に出現しなければ、前記エージェントは、前記オペレーティングシステムから、実行中プロセスの新規一覧表を回収するまで、所定期間待機する。
もし、新規プロセスが前記新規一覧表に出現したら、前記エージェントは、段階240において前記新規プロセスを評価する。新規プロセスの評価には、新規プロセスを特定する段階と、前記プロセス及び1つ又は複数の制限一覧表を照合する段階と、前記プロセスが制限一覧表上に存在する時に、一覧表に関連付けられた制限アクションを実行する段階とを具備する。前記エージェントはまた、前記プロセスによってスポーン(SPAWN)された全てのモジュールを評価するとともに、前記制限一覧表と前記モジュールとを比較しても良い。前記エージェントはまた、各プロセスとそれに関連付けられたモジュールとに関して、前記設定ファイル内で指定された追加情報を収集しても良い。
段階250において、前記エージェントは、レポートを中央レポジトリに送信しても良い。各レポートは、好ましくは、単一の実行可能ファイルと、例えばDLLなどのそれに関連するモジュールとをカバーする。各レポートは、前記プロセスの評価が完了した時に、送信されるとともに、前記ローカルコンピュータ上で実行されるプロセスの実質的にリアルタイムのレポートを提供する。
前記レポートは、例えば、ワシントン州レッドモンド市のマイクロソフト株式会社提供のSystem Management Server(SMS)などの、既存のサーバ管理インフラを使用して、SMSサーバにレポートを送信しても良い。代わりに、前記エージェントは、ネットワークのWEBサービスを使用して、XMLフォーマットのレポートを、中央ストレージのSQLデータベースレポジトリに送信しても良い。
中央レポジトリへのレポート後に、前記エージェントは段階210に戻り、オペレーティングシステムから停止シグナルを受信するまで、ループ210−220−230−240−250を繰り返す。
図3は、図2に示された実施形態において、新規プロセスを評価する方法を図示するフローチャートである。前記エージェントは、段階305に入り、かつ段階310において、前記オペレーティングシステムから前記プロセスの実行可能ファイル名を回収する。前記実行可能ファイル名は、段階320において、KILL一覧表上の名前一覧と比較される。前記KILL一覧表は、権限が与えられていない、又は禁止されているソフトウェア、又は既知の有害アプリケーションを含んでいても良い。もし、前記プロセスが前記KILL一覧表上で発見されたら、前記エージェントは、段階375において終了する前に、段階330において、前記プロセスを強制終了する。
もし、前記プロセスが前記KILL一覧表上に存在しなければ、前記エージェントは段階340に進み、前記エージェントは前記オペレーティングシステムからモジュール情報を回収する。モジュール情報は、例えば、プロセスID、開始時刻、ユーザ、バージョンなどの、基本的な情報を具備している。段階350において、前記エージェントは、前記プロセスから参照されているダイナミックリンクライブラリ(DLL)を照合する。段階360において、前記エージェントは、段階340及び350において回収したモジュール及びDLL情報を収集することにより、レポート対象プロセスを追加する。
図4は、図3に示された実施形態における、前記プロセスに関連付けられた1つ又は複数のDLLの評価方法を図示している。
前記エージェントは、段階405において、前記方法を開始する。そして、前記プロセスに関連付けられた各DLLに関する情報を収集するループを開始する。段階410において、前記プロセスに関連付けられた各DLLから情報が収集されたかどうかを判定する。もし、全てのDLLが評価されたならば、前記エージェントは段階415において終了する。前記プロセスによって参照される各DLLに対して、前記エージェントは、段階420において、オペレーティングシステムより前記DLLの名前を回収することによって前記DLLを特定する。
段階430において、前記エージェントは、先ず前記設定ファイルでDLLチェックオプションが設定されているかどうかを判定することによって前記DLLを評価する。もし、DLLチェックオプションが設定されていなければ、前記エージェントは、前記プロセスによって参照されるDLLをチェックせず、かつ前記エージェントは段階415で終了する。もしDLLチェックオプションが設定されていれば、前記エージェントは、前記プロセスがそのモジュールをロードできるように所定期間待機する。
前記エージェントは、次いで、前記DLLと前記制限一覧表とを照合するとともに、もし前記DLLが前記制限一覧表に存在するならば、対応する制限アクションを実行する。本発明の一実施形態においては、プロセス又はモジュールがローカルコンピュータ上で実行開始する時に実行される、特定の名前に関連付けられた1つ又は複数の制限アクションとともに、プロセス実行可能ファイル名及びDLL名の両方を具備する単一の制限一覧表を、前記設定ファイルが具備している。
例えば、もし、段階420において回収されたモジュール名が“XTUPDATE.DLL”であるとともに、前記制限一覧表に“XTUPDATE.DLL” ra= “KILL_REPORT”のようなエントリーが含まれるならば、前記エージェントは、前記制限アクション又は前記値“KILL_REPORT”に対応する1つ又は複数の制限アクション、この実施例では、DLLを強制終了するとともに、前記強制終了を中央レポジトリにレポートする制限アクション、を実行する。
前記エージェントはまた、前記DLLと前記設定ファイル内の無視一覧表とを照合する。もし前記DLL名が前記無視一覧表に存在するならば、前記エージェントは、前記DLLに関するさらなる情報を収集することなく、前記プロセスによって参照される次のDLLに進む。もし、前記DLLが前記無視一覧表に存在しないのであれば、前記エージェントは、段階440において、例えば、DLLパス、ファイルバージョン、製品名、マシン名、開始日時及び開始時刻などの、前記設定ファイル内で指定されている前記DLLに関する情報を回収する。DLL情報が収集された後、前記エージェントは段階410に進むとともに、前記プロセスによって参照される全てのDLLが評価されるまで、ループ410−420−430−440を継続する。
本発明の実施形態は、コンピュータ構成要素と、当業者に明らかであるコンピュータにより実行される段階とを具備する。簡潔を旨とするために、コンピュータシステムの部分として本発明の全ての段階又は構成要素を説明しない。
しかしながら、当業者は、各段階又は構成要素が、対応するコンピュータシステム又はソフトウェア構成要素を有することを認識する。そのようなコンピュータシステム及び/又はソフトウェア構成要素は、従って、その対応する段階又は構成要素(即ち、それらの機能)を書き下すことにより実施可能となるとともに、本発明の範囲内である。
このように、少なくとも本発明の例示的な実施形態について説明してきたが、本発明の範囲内において、当業者又は当業者に類する者は、様々な変形例、及び改善例を容易に想到可能である。従って、上述の説明は、実施例を利用して行われたに過ぎず、限定を意図したものではない。本発明は、本願特許請求の範囲による定義及びその均等物によってのみ限定される。
図1は、本発明の一実施形態における、代表的なコンピュータネットワークを図示する図面である。 図2は、本発明の一実施形態における、エージェントの動作を図示するフローチャートである。 図3は、図2において示された実施形態における、新規プロセスを評価する方法を図示するフローチャートである。 図4は、図3において示された実施形態における、DLLを評価する方法を図示するフローチャートである。
符号の説明
110 イントラネット
120 ファイアウォール
130 コンピュータ
160 イントラネット
170 コンピュータ
180 中央サーバ
185 運用者/管理者用コンピュータ

Claims (20)

  1. コンピュータ上のソフトウェア使用を監視する方法であって、
    前記コンピュータ上でエージェントプログラムを実行する段階と、
    前記コンピュータ上で実行される新規プロセスを特定する段階と、
    前記新規プロセスと前記コンピュータ上の設定ファイル内に格納されている制限一覧表とを比較する段階と、
    もし前記新規プロセスが前記制限一覧表上に存在するならば、前記新規プロセスに対して制限アクションを実行する段階とを具備することを特徴とする方法。
  2. 前記制限アクションは、KILL,NOTIFY,REPORT,MAIL及びDISABLENETからなるグループから選択されることを特徴とする請求項1に記載の方法。
  3. 選択された前記制限アクションがKILLである時に、前記新規プロセスを停止する段階をさらに具備することを特徴とする請求項2に記載の方法。
  4. 選択された前記制限アクションがDISABLENETである時に、前記コンピュータをネットワークから切断する段階をさらに具備することを特徴とする請求項2に記載の方法。
  5. 選択された前記制限アクションがMAILである時に、Eメールメッセージを送信する段階をさらに具備することを特徴とする請求項2に記載の方法。
  6. 前記設定ファイルと前記コンピュータのマスタ設定ファイルとを比較する段階と、
    もし前記設定ファイルが前記マスタ設定ファイルと異なれば、前記設定ファイルを前記マスタ設定ファイルで置換する段階とをさらに具備し、
    前記マスタ設定ファイルは前記コンピュータと通信可能なサーバ上に格納されていることを特徴とする請求項1に記載の方法。
  7. 前記比較する段階は、
    前記設定ファイルのチェックサムを計算する段階と、
    前記チェックサムを前記サーバに送信する段階と、
    もし送信された前記チェックサムが前記マスタ設定ファイルのチェックサムと等しくなければ、前記サーバから前記マスタ設定ファイルのコピーを受信する段階とをさらに具備することを特徴とする請求項6に記載の方法。
  8. 前記コンピュータと前記サーバとの間の通信は、HTTPプロトコル経由で80番ポート上にて行われることを特徴とする請求項6に記載の方法。
  9. 前記新規プロセスと前記設定ファイル内に格納されている無視一覧表とを比較する段階を具備し、もし前記新規プロセスが前記無視一覧表に存在するならば、前記エージェントは前記新規プロセスを無視することを特徴とする請求項1に記載の方法。
  10. 前記制限アクションを実行した後に前記コンピュータと通信可能である中央レポジトリにレポートを送信して、それによって前記中央レポジトリに対しリアルタイムにコンピュータ使用情報を提供することを特徴とする請求項2に記載の方法。
  11. 前記レポートはプロセスIDを具備することを特徴とする請求項10に記載の方法。
  12. 前記レポートは開始時刻を具備することを特徴とする請求項10に記載の方法。
  13. 前記レポートは実行可能ファイル名を具備することを特徴とする請求項10に記載の方法。
  14. サーバと通信可能なコンピュータと、
    前記コンピュータ上に格納される設定ファイルと、
    前記コンピュータ上で実行されるエージェントプログラムとを具備し、
    前記設定ファイルは制限一覧表を具備し、前記制限一覧表内の各エントリーは実行可能ファイル名と制限アクションとを具備し、
    前記エージェントは前記コンピュータ上で実行される新規プロセスを特定するとともに、前記新規プロセスが前記制限一覧表上の実行可能ファイル名と一致した時に、前記制限アクションを実行するように構成されていることを特徴とするシステム。
  15. マスタ設定ファイルが前記サーバ上に格納され、前記サーバは、前記コンピュータ上に格納された前記設定ファイルが無効である時に、前記マスタ設定ファイルを前記コンピュータにプッシュするように構成されていることを特徴とする請求項14に記載のシステム。
  16. 前記設定ファイルは無視一覧表を具備し、前記エージェントは前記無視一覧表上のプロセスを無視するように構成されていることを特徴とする請求項14に記載のシステム。
  17. 前記エージェントが前記新規プロセスを強制終了するKILLアクションを前記制限アクションが具備することを特徴とする請求項14に記載のシステム。
  18. 前記エージェントが前記コンピュータと前記サーバとの間のネットワークによる通信から前記コンピュータを切断するDISABLENETアクションを前記制限アクションが具備することを特徴とする請求項14に記載のシステム。
  19. 前記新規プロセスが実行開始した時に、前記エージェントが関係者にEメールメッセージを送信するMAILアクションを前記制限アクションが具備することを特徴とする請求項14に記載のシステム。
  20. 中央レポジトリをさらに具備し、前記中央レポジトリは、前記コンピュータと通信可能であるとともに、前記コンピュータからレポートを受信するように構成され、前記レポートは前記新規プロセスに関する情報を具備することを特徴とする請求項14に記載のシステム。
JP2007541358A 2004-11-10 2005-11-10 ソフトウェアを計測するための方法及びシステム Expired - Fee Related JP4696125B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US62698504P 2004-11-10 2004-11-10
US60/626,985 2004-11-10
PCT/US2005/040953 WO2006053228A2 (en) 2004-11-10 2005-11-10 Methods and system for metering software

Publications (2)

Publication Number Publication Date
JP2008520051A true JP2008520051A (ja) 2008-06-12
JP4696125B2 JP4696125B2 (ja) 2011-06-08

Family

ID=36337262

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007541358A Expired - Fee Related JP4696125B2 (ja) 2004-11-10 2005-11-10 ソフトウェアを計測するための方法及びシステム

Country Status (4)

Country Link
US (1) US7979898B2 (ja)
EP (1) EP1834233A4 (ja)
JP (1) JP4696125B2 (ja)
WO (1) WO2006053228A2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011514604A (ja) * 2008-03-20 2011-05-06 インターナショナル・ビジネス・マシーンズ・コーポレーション アプリケーション仮想化環境においてソフトウェアのインストールおよび使用を検出する方法およびシステム
JP2011527034A (ja) * 2008-06-19 2011-10-20 ヒューモーションカンパニーリミテッド オブジェクト属性アクセスエンジンによるリアルタイム有害サイト遮断方法

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7925635B1 (en) * 2004-04-23 2011-04-12 Bmc Software, Inc. System and method for collecting statistics related to software usage
WO2008074527A1 (en) * 2006-12-21 2008-06-26 International Business Machines Corporation Method, system and computer program for identifying interpreted programs through class loading sequences
US8336097B2 (en) * 2007-10-12 2012-12-18 Electronics And Telecommunications Research Institute Apparatus and method for monitoring and protecting system resources from web browser
US8539050B2 (en) * 2008-04-28 2013-09-17 Applied Olap, Inc. Method for distributing update modules for computer software over a network
US20090328030A1 (en) * 2008-06-27 2009-12-31 Microsoft Corporation Installing a management agent with a virtual machine
US20100125830A1 (en) * 2008-11-20 2010-05-20 Lockheed Martin Corporation Method of Assuring Execution for Safety Computer Code
JP5293151B2 (ja) * 2008-12-19 2013-09-18 富士ゼロックス株式会社 コンテンツ保護装置及びコンテンツ保護プログラム
US8776027B2 (en) * 2009-03-06 2014-07-08 Microsoft Corporation Extracting and collecting platform use data
US8205118B2 (en) * 2009-07-23 2012-06-19 International Business Machines Corporation Software component self-scrubbing
US8914498B2 (en) * 2012-02-09 2014-12-16 International Business Machines Corporation Calculating a checksum with inactive networking components in a computing system
US20140149440A1 (en) * 2012-11-27 2014-05-29 Dst Technologies, Inc. User Generated Context Sensitive Information Presentation
US10333801B2 (en) * 2013-03-14 2019-06-25 Amazon Technologies, Inc. Inventory service for distributed infrastructure
US9929995B2 (en) * 2014-05-21 2018-03-27 Go Daddy Operating Company, LLC Third party messaging system for monitoring and managing domain names and websites
US8997249B1 (en) 2014-06-18 2015-03-31 Storagecraft Technology Corporation Software activation and revalidation
US10255064B2 (en) 2016-06-24 2019-04-09 Vmware, Inc. Upgrade analysis of a computer system
US10467002B2 (en) * 2016-06-24 2019-11-05 Vmware, Inc. Validating interoperability of installed components of a computer system
US10379844B2 (en) * 2017-03-29 2019-08-13 Ca, Inc. Validating user interface templates for software probe configuration
US20190163461A1 (en) * 2017-11-29 2019-05-30 Nutanix, Inc. Upgrade managers for differential upgrade of distributed computing systems

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6098098A (en) * 1997-11-14 2000-08-01 Enhanced Messaging Systems, Inc. System for managing the configuration of multiple computer devices
WO2003036476A2 (en) * 2001-10-26 2003-05-01 Preventon Technologies Limited Control of processes in a processing system
JP2004280831A (ja) * 2003-03-14 2004-10-07 Websense Inc アプリケーションファイルの監視・制御システム及び監視・制御方法
JP2004302953A (ja) * 2003-03-31 2004-10-28 Seiko Epson Corp 端末装置およびクライアントサーバシステム

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5155847A (en) * 1988-08-03 1992-10-13 Minicom Data Corporation Method and apparatus for updating software at remote locations
JPH08263438A (ja) * 1994-11-23 1996-10-11 Xerox Corp ディジタルワークの配給及び使用制御システム並びにディジタルワークへのアクセス制御方法
US5790664A (en) 1996-02-26 1998-08-04 Network Engineering Software, Inc. Automated system for management of licensed software
US5745679A (en) * 1996-03-06 1998-04-28 Micron Technology, Inc. Method and device for file transfer by cascade release
US6662205B1 (en) 1996-10-01 2003-12-09 International Business Machines Corporation Scaleable and extensible system management architecture with dataless endpoints
US5867714A (en) * 1996-10-31 1999-02-02 Ncr Corporation System and method for distributing configuration-dependent software revisions to a computer system
JP3409983B2 (ja) * 1996-11-29 2003-05-26 富士通株式会社 通信システム
US6021438A (en) * 1997-06-18 2000-02-01 Wyatt River Software, Inc. License management system using daemons and aliasing
US6266773B1 (en) 1998-12-31 2001-07-24 Intel. Corp. Computer security system
US7412605B2 (en) * 2000-08-28 2008-08-12 Contentguard Holdings, Inc. Method and apparatus for variable encryption of data
US20040003266A1 (en) 2000-09-22 2004-01-01 Patchlink Corporation Non-invasive automatic offsite patch fingerprinting and updating system and method
US7774838B2 (en) * 2001-02-14 2010-08-10 Tricerat, Inc. Thorough operation restriction
US6782350B1 (en) 2001-04-27 2004-08-24 Blazent, Inc. Method and apparatus for managing resources
US7120429B2 (en) * 2001-08-13 2006-10-10 Qualcomm Inc. System and method for licensing applications on wireless devices over a wireless network
WO2003038570A2 (en) * 2001-10-30 2003-05-08 International Business Machines Corporation A computer-implemented method and system for controlling use of digitally encoded products
US20030149756A1 (en) * 2002-02-06 2003-08-07 David Grieve Configuration management method and system
US7257584B2 (en) * 2002-03-18 2007-08-14 Surgient, Inc. Server file management
US7565495B2 (en) 2002-04-03 2009-07-21 Symantec Corporation Using disassociated images for computer and storage resource management
US20040006586A1 (en) * 2002-04-23 2004-01-08 Secure Resolutions, Inc. Distributed server software distribution
US7356836B2 (en) * 2002-06-28 2008-04-08 Microsoft Corporation User controls for a computer
JP4399704B2 (ja) * 2003-03-27 2010-01-20 ソニー株式会社 情報処理装置および方法、プログラム、並びに記録媒体
CA2523283A1 (en) 2003-04-24 2004-11-11 Secureinfo Corporation Automated electronic software distribution and management method and system
JP4391949B2 (ja) * 2003-05-14 2009-12-24 富士通株式会社 ソフト利用管理システム、ソフト利用管理方法およびソフト利用管理プログラム
EP1542115A1 (en) * 2003-10-20 2005-06-15 Matsushita Electric Industrial Co., Ltd. Prevention of unwanted process operations
EP1533695B1 (en) * 2003-11-19 2013-08-07 TELEFONAKTIEBOLAGET LM ERICSSON (publ) Updating data in a mobile terminal
US20050114176A1 (en) 2003-11-26 2005-05-26 Dominick Mark B. Method and system for automated debriefing of service activity
US20050183143A1 (en) * 2004-02-13 2005-08-18 Anderholm Eric J. Methods and systems for monitoring user, application or device activity
US20060045244A1 (en) * 2004-08-24 2006-03-02 Darren New Method and apparatus for receipt printing and information display in a personal identification number delivery system
US20060080656A1 (en) 2004-10-12 2006-04-13 Microsoft Corporation Methods and instructions for patch management

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6098098A (en) * 1997-11-14 2000-08-01 Enhanced Messaging Systems, Inc. System for managing the configuration of multiple computer devices
WO2003036476A2 (en) * 2001-10-26 2003-05-01 Preventon Technologies Limited Control of processes in a processing system
JP2004280831A (ja) * 2003-03-14 2004-10-07 Websense Inc アプリケーションファイルの監視・制御システム及び監視・制御方法
JP2004302953A (ja) * 2003-03-31 2004-10-28 Seiko Epson Corp 端末装置およびクライアントサーバシステム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011514604A (ja) * 2008-03-20 2011-05-06 インターナショナル・ビジネス・マシーンズ・コーポレーション アプリケーション仮想化環境においてソフトウェアのインストールおよび使用を検出する方法およびシステム
JP2011527034A (ja) * 2008-06-19 2011-10-20 ヒューモーションカンパニーリミテッド オブジェクト属性アクセスエンジンによるリアルタイム有害サイト遮断方法

Also Published As

Publication number Publication date
JP4696125B2 (ja) 2011-06-08
WO2006053228A3 (en) 2007-10-18
US7979898B2 (en) 2011-07-12
US20060107256A1 (en) 2006-05-18
WO2006053228A2 (en) 2006-05-18
EP1834233A2 (en) 2007-09-19
EP1834233A4 (en) 2009-04-22

Similar Documents

Publication Publication Date Title
JP4696125B2 (ja) ソフトウェアを計測するための方法及びシステム
US11310262B1 (en) Real-time vulnerability monitoring
US20080051076A1 (en) System And Method For Mobile Device Application Management
US10326765B2 (en) System, method, and software for providing access control enforcement capabilities in cloud computing systems
EP1523152B1 (en) Connector gateway
US7178144B2 (en) Software distribution via stages
US10255102B2 (en) Transaction control arrangement for device management system
CA2777647C (en) Mobile provisioning tool system
US7689676B2 (en) Model-based policy application
CA2468644C (en) Method and apparatus for managing components in an it system
US7681179B2 (en) System and method providing single application image
US7757268B2 (en) Policy based service management
US8745223B2 (en) System and method of distributed license management
US20110145810A1 (en) Method in a network of the delivery of files
US20080301231A1 (en) Method and System for Maintaining and Distributing Wireless Applications
US20020131404A1 (en) Method and system for maintaining and distributing wireless applications
US20080250473A1 (en) Method, system and computer program for configuring firewalls
CN109977644B (zh) 一种Android平台下分级权限管理方法
CN109992298B (zh) 审批平台扩充方法、装置、审批平台及可读存储介质
KR100615620B1 (ko) 정책 관리를 통한 휴대 단말의 디지털 컨텐츠 다운로드제어 방법 및 당해 시스템
US7188343B2 (en) Distributable multi-daemon configuration for multi-system management
CN116028077A (zh) 基于移动终端的应用安装方法、生态服务系统、电子设备
US20060041652A1 (en) Network management with scalable trap definitions
CN106936643A (zh) 一种设备联动方法以及终端设备
Bullen et al. Co-Authors webMethods HP

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20100827

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100907

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20101207

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20101214

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110107

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

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

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

Free format text: PAYMENT UNTIL: 20140304

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

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

LAPS Cancellation because of no payment of annual fees