JP6086968B2 - 悪意のあるソフトウェアに対するローカル保護をするシステム及び方法 - Google Patents

悪意のあるソフトウェアに対するローカル保護をするシステム及び方法 Download PDF

Info

Publication number
JP6086968B2
JP6086968B2 JP2015227446A JP2015227446A JP6086968B2 JP 6086968 B2 JP6086968 B2 JP 6086968B2 JP 2015227446 A JP2015227446 A JP 2015227446A JP 2015227446 A JP2015227446 A JP 2015227446A JP 6086968 B2 JP6086968 B2 JP 6086968B2
Authority
JP
Japan
Prior art keywords
software
software program
network access
network
untrusted
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2015227446A
Other languages
English (en)
Other versions
JP2016053979A (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 JP2016053979A publication Critical patent/JP2016053979A/ja
Application granted granted Critical
Publication of JP6086968B2 publication Critical patent/JP6086968B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/145Countermeasures against malicious traffic the attack involving the propagation of malware through the network, e.g. viruses, trojans or worms
    • 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/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • 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/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/54Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by adding security routines or objects to 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/55Detecting local intrusion or implementing counter-measures
    • G06F21/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • 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/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/604Tools and structures for managing or administering access control 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/60Protecting data
    • G06F21/606Protecting data by securing the transmission between two devices or processes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • 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/2101Auditing as a secondary aspect
    • 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/2115Third party
    • 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/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices

Description

関連出願情報
本願は、2010年7月28日に出願され「悪意のあるソフトウェアに対するネットワーク・レベル保護をするシステム及び方法(SYSTEM AND METHOD FOR NETWORK LEVEL PROTECTION AGAINST MALICIOUS SOFTWARE)」と題し、発明者がリシ・バールガーバ(Rishi Bhargava)らである同時係属米国特許出願番号12/844,964号(代理人整理番号04796.1053)と関連する。この出願の開示は、本明細書の一部とみなされ、参照によりその全体が本明細書に組み込まれる。
本開示は、一般にネットワーク・セキュリティの分野に関し、より詳細には悪意のあるソフトウェアに対するローカル保護に関する。
ネットワーク・セキュリティの分野は、今日の社会でますます重要になってきている。インターネットは、世界中の様々なコンピュータネットワークの相互接続を可能にした。しかしながら、安定したコンピュータ及びシステムを有効に保護し維持する機能は、部品メーカー、システム設計者及びネットワークオペレータにとって大きな課題となる。この課題は、悪意のあるオペレータによって開発される進化し続ける数々の戦略により更に複雑になる。最近の特別な懸念は、種々様々の悪意のある目的に使用されることがあるボットネットである。悪意のあるソフトウェア・プログラム・ファイル(例えば、ボット)が、一旦ホストコンピュータに感染すると、悪意のあるオペレータが、「指令制御サーバ」からコマンドを出してボットを制御することがある。ボットは、例えば、ホストコンピュータからのスパム又は悪意のある電子メールの送信、ホストコンピュータと関連付けられた企業又は個人からの機密情報の窃盗、他のホストコンピュータへのボットネットの伝播、及び/又は分散型サービス妨害攻撃の支援などのいくつもの悪意のある操作を実行するように指示されることがある。更に、悪意のあるオペレータは、指令制御サーバを介して他の悪意のあるオペレータにボットネットを販売し、その他アクセスを与えることがあり、それにより、ホストコンピュータの搾取が拡大する。
したがって、ボットネットは、悪意のあるオペレータが他のコンピュータにアクセスし、それらのコンピュータを多数の悪意のある目的のために操作する強力な方法を提供する。セキュリティ専門家は、悪意のあるオペレータがコンピュータを搾取することを可能にするような戦略を根絶する革新的ツールを開発する必要がある。
1つの例示的実施態様における方法は、計算装置上のネットワーク・アクセス試行を遮断し、ネットワーク・アクセス試行と関連付けられたソフトウェア・プログラム・ファイルを決定することを含む。この方法は、また、第1の基準を評価してネットワーク・アクセス試行が許可されるかどうかを判定し、許可されない場合にネットワーク・アクセス試行を阻止することを含む。最終的に、第1の基準は、ソフトウェア・プログラム・ファイルの信頼性状態を含む。特定の実施形態では、信頼性状態は、ソフトウェア・プログラム・ファイルが、信頼できるソフトウェア・プログラム・ファイルを識別するホワイトリストに含まれる場合に信頼できると定義され、ソフトウェア・プログラム・ファイルが、ホワイトリストに含まれない場合に信頼できないと定義される。より特定の実施形態では、ネットワーク・アクセス試行は、ソフトウェア・プログラム・ファイルが非信頼状態を有する場合に阻止される。別のより特定の実施形態では、方法は、更に、1つ又は複数のホワイトリストを検索して、ソフトウェア・プログラム・ファイルが、ホワイトリストのうちの1つの中で識別されているかどうか判定することを含む。他のより特定の実施形態では、方法は、第2の基準を評価して、第2の基準が、第1の基準を覆すかを判定することを含み、第2の基準は、ソフトウェア・プログラム・ファイルのネットワーク・アクセス・ポリシーを含む。更に別の実施形態では、ソフトウェア・プログラム・ファイルの信頼性状態が信頼されないとして定義された場合にイベントがログ記録されてもよく、そのようなログ記録は、ネットワーク・アクセス試行を阻止する代わりに行われてもよく、ネットワーク・アクセス試行を阻止することに加えて行われてもよい。
本開示及び本開示の特徴及び利点をより完全に理解するために、添付図面と関連して行われる以下の説明が参照され、図面では、類似の参照番号は類似の部品を表す。
本開示により、悪意のあるソフトウェアに対するローカル保護をするシステム及び方法の様々な実施形態を実現することができる代表的なネットワーク環境を表す図である。 本開示の実施形態によりシステムの構成要素が実現されることがあるサーバの一実施形態のブロック図である。 本開示の実施形態によりシステムの構成要素が実現されることがある例示的な計算装置の概略図である。 本開示の実施形態によるシステムと関連付けられた一連の例示的ステップを示す単純化されたフローチャートである。 本開示の実施形態によるシステムと関連付けられた信頼判定フローの一連の例示的ステップを示す単純化されたフローチャートである。 本開示の実施形態によるシステムと関連付けられた信頼判定フローの別の実施形態の一連の例示的ステップを示す単純化されたフローチャートである。 図3の計算装置の実施形態と関連付けられた一連の例示的ステップを示す単純化されたフローチャートである。 本開示の実施形態によりシステムの構成要素が実現されることがある別の例示的な計算装置の単純化された概略図である。 図8の計算装置の実施形態と関連付けられた一連の例示的ステップを示す単純化されたフローチャートである。 本開示の他の実施形態によりシステムの構成要素が実現されることがある別の例示的計算装置の単純化された概略図である。 図10の計算装置の実施形態と関連付けられた一連の例示的ステップを示す単純化されたフローチャートである。 本開示によるシステムの信頼判定フローの別の実施形態と関連付けられた一連の例示的ステップを示す単純化されたフローチャートである。
図1は、悪意のあるソフトウェアに対するローカル保護をするシステムの1つの実施形態を実現することができる代表的なネットワーク環境100を表す図である。ネットワーク環境100は、中央サーバ130と、実行可能ソフトウェア122a、122b及び122cをそれぞれ備えたホスト120a、120b及び120cとを有するローカル・ネットワーク110を含んでもよい。ローカル・ネットワーク110は、例えばインターネット150などの広域ネットワークを含む他のネットワークへの電子接続を備えてもよい。インターネット150は、多くの他のネットワーク、計算装置及びウェブサービスへのアクセスを提供する。例えば、グローバルサーバ160は、悪意のあるコードがないと評価及び判定されたソフトウェア・プログラム・ファイルを示すグローバル・ホワイトリストを含むデータベース165を提供する。更に、ボットネット・オペレータ175などの悪意のあるユーザは、指令制御サーバ170のほかにインターネット150へのアクセスを有してもよく、指令制御サーバ170は、ボットネット・オペレータ175によって操作されて、ローカル・ネットワーク110などのネットワークを汚染することを試みる悪意のあるソフトウェア(例えば、ボット)を送信しその後制御してもよい。悪意のあるソフトウェアに対するローカル保護をするシステムの1つの代表的な実施形態では、ローカル保護構成要素124a、124b及び124cは、それぞれ各ホスト120a、120b及び120c内に組み込まれてもよく、また中央保護構成要素135が、中央サーバ130内に組み込まれてもよい。中央サーバ130は、また、ログ・イベント・データベース131、中央非信頼ソフトウェア・インベントリ132、及び内部ホワイトリスト133へのアクセスを有してもよい。
例示的実施形態では、ホスト120上のローカル保護構成要素124と、中央サーバ130内の中央保護構成要素135が協力して、悪意のあるソフトウェアからローカル保護するシステムを提供してもよい。一実施形態では、ホスト120a、120b及び120cの実行可能ソフトウェア122a、122b、122c内の各ソフトウェア・プログラム・ファイルがそれぞれ、1つ又は複数の信頼評価技術(例えば、ホワイトリスト比較、プログラム・ファイル変更比較、ブラックリスト比較など)を使用して評価されて、信頼性状態(即ち、信頼できるか信頼できないか)が判定される。中央非信頼ソフトウェア・インベントリ132は、信頼できないと分類された各プログラム・ファイルを識別するエントリを含むことができ、このインベントリは、対応するホスト120a、120b及び120c上にローカルに記憶されてもよい。他の実施形態では、信頼性状態を決定する実行可能ソフトウェア122a、122b及び122cのソフトウェア・プログラム・ファイルの評価は、各ネットワーク・アクセス試行と関連付けられたプログラム・ファイルに対して実時間で行なわれる。本明細書で使用されるようなネットワーク・アクセス試行は、ホスト上の任意のインバウンド又はアウトバウンド・ネットワーク・アクセス試行(例えば、接続要求の受け入れ、接続要求の作成、ネットワークから電子データの受信、ネットワークへの電子データの送信)を含む。ホスト120a、120b又は120cのうちの1つの上のソフトウェア・プロセスが、ネットワーク・アクセス試行と関連付けられたとき、ネットワーク・アクセスは、ソフトウェア・プロセスと関連付けられたどれかのプログラム・ファイルの信頼性状態が信頼できないと判定された場合に阻止されることがある。例示的な実施形態では、信頼性状態は、非信頼ソフトウェア・インベントリのうちの1つを使用して判定されてもよく、1つ又は複数の信頼評価技術を実時間で使用して判定されてもよい。非信頼プログラム・ファイルと関連付けられたソフトウェア・プロセスの阻止規則を定義するためにポリシー(例えば、ネットワーク・アドレスの指定されたサブネットへのアクセスだけを許可する、全てのインバウンド及びアウトバウンド・ネットワーク・アクセス試行を阻止する、インバウンド又はアウトバウンド・ネットワーク・アクセス試行だけを阻止する、全てのローカル・ネットワーク・アクセス試行を阻止する、インターネットトラフィックだけを許可する、など)が使用されてもよい。報告のために、非信頼プログラム・ファイルと関連付けられたソフトウェア・プロセスによる任意のネットワーク・アクセス試行がログ記録され、集計されてもよい。
悪意のあるソフトウェアに対するローカル保護をするシステムの技術を示すために、所定のネットワーク内で行われるアクティビティを理解することが重要である。以下の基本的な情報は、本開示が適切に説明される基礎とみなすことができる。そのような情報は、単に説明のために提供され、したがって、本開示とその可能な用途の広い範囲を限定するようには決して解釈されるべきではない。更に、この開示の広い範囲は、例えば、実行可能ファイル、ライブラリ・モジュール、オブジェクト・ファイル、他の実行可能モジュール、スクリプト・ファイル、インタープリタ・ファイルなど、コンピュータ上で理解され処理することができる命令を含む任意のソフトウェア・ファイルも包含する「プログラム・ファイル」、「ソフトウェア・プログラム・ファイル」及び「実行可能ソフトウェア」を指すものであることを理解されよう。
組織内又は個人によって使用される典型的なネットワーク環境は、例えばインターネットを使用して他のネットワークと電子的に通信して、インターネットに接続されたサーバ上にホストされたウェブページにアクセスし、電子メール(即ち、email)メッセージを送信あるいは受信し、又はインターネットに接続されたエンドユーザあるいはサーバとファイルを交換する能力を含む。悪意のあるユーザは、インターネットを使用してマルウェアを拡散し、秘密情報へのアクセスを得るための新しい戦略を開発し続けている。
コンピュータセキュリティに対する大きな脅威となる戦略は、多くの場合ボットネットを含む。ボットネットは、ある種の悪意のあるソフトウェア(即ち、ボット)がホストコンピュータに置かれて指令制御サーバと通信するクライアントサーバアーキテクチャを使用する。指令制御サーバは、悪意のあるユーザ(例えば、ボットネット・オペレータ)によって制御されてもよい。ボットは、特定の悪意のあるアクティビティを実行するコマンドを指令制御サーバから受け取り、それに応じてそのようなコマンドを実行してもよい。ボットは、任意の結果又は窃盗情報を指令制御サーバに返信してもよい。ボットは、悪意のあるアクティビティを行なうコマンドを受信する他に、典型的には、組織のネットワーク内で拡散し、又は他のネットワークを介して他の組織又は個人に拡散することができる1つ又は複数の伝搬ベクトルを含む。一般的な伝搬ベクトルは、ローカル・ネットワーク内のホスト上の既知の脆弱性を利用して、悪意のあるプログラムが添付され、又は電子メール内に悪意のあるリンクを提供する悪意のある電子メールを送信することを含む。ボットは、例えば、自動ダウンロード、ウィルス、ワーム、トロイの木馬などによりホストコンピュータに感染してもよい。
ボットネットは、様々な攻撃を使用してボットネット・オペレータがコンピュータシステムを危険にさらす強力な方法を提供する。ボットが一旦ホストコンピュータを感染すると、指令制御サーバは、ボットにコマンドを出して様々なタイプの攻撃を行なうことができる。一般に、ボットネットは、大量の電子メールを送信し分散型サービス妨害攻撃を行なうように使用されてきた。しかしながら、最近になって、ボットネットは、企業と個人に標的を絞った攻撃を行なって、知的財産や財務データなどの機密データや他の保護必要情報を得るために使用されようになった。
既存のファイアウォール及びネットワーク侵入防止技術は、一般に、ボットネットを認識しくい止めるには不十分である。ボットは、多くの場合、指令制御サーバと通信を開始し、通常のウェブブラウザトラフィックを偽装するように設計される。ボットは、ボットがウェブサーバに正常なアウトバウンド・ネットワーク接続を行っているかのように見えるようにする指令制御プロトコルによって巧妙に作成されることがある。例えば、ボットは、ウェブサーバと通信するために通常使用されるポートを使用することがある。したがって、そのようなボットは、ウェブトラフィックのより詳しいパケット検査を行なわない既存の技術では検出されないことがある。更に、ボットが発見された後、ボットネット・オペレータは、存在し続けるボットによるネットワーク・アクセス試行が、正常なウェブトラフィックを偽装する別の方法を単に見つけるだけでよい。最近になって、ボットネット・オペレータは、例えばセキュア・ソケット・レイヤー(SSL)などの暗号化プロトコルを使用し、それにより悪意のあるネットワーク・アクセス試行を暗号化するボットを巧妙に作成した。そのような暗号化されたトラフィックは、暗号化セッションに関与するエンドポイントだけがデータを復号できるよう、ハイパーテキスト転送プロトコルセキュア(HTTPS)ポートを使用することがある。したがって、既存のファイアウォールや他のネットワーク侵入防止技術は、ウェブ・トラフィックの如何なる有効な検査も実行できない。その結果、ボットは、ネットワーク内のホストコンピュータを汚染し続ける。
無許可のプログラム・ファイルがホストコンピュータ上で実行されるのを防ぐことに焦点を当てた他のソフトウェアセキュリティ技術は、企業又は他の組織的実体のエンドユーザ又は従業員に対して望ましくない副作用を有することがある。ネットワーク又は情報技術(IT)管理者は、望ましく信頼できるネットワーク資源から従業員がソフトウェアや他の電子データを取得できるようにするために、企業実体の全ての側面と関連した広範なポリシーを巧妙に作成する責任を負っていることがある。広範なポリシーが適切でないと、従業員は、そのようなソフトウェアや他のデータが企業活動に正当かつ必要な場合でも、特に許可されていないネットワーク資源からのソフトウェアや他の電子データのダウンロードを妨げられることがある。更に、そのようなシステムは、無許可のソフトウェアがホストコンピュータ上に見つかった場合に、ホストコンピュータアクティビティが延期されてネットワーク管理者の介入が保留されるという大きな制限がある。企業の場合、このタイプのシステムは、正当かつ必要な企業活動を妨げることあり、その結果、労働者の稼働不能時間、収益損失、著しい情報技術(IT)オーバヘッドなどが生じることがある。
図1に概略的に示されたような悪意のあるソフトウェアに対するローカル保護をするシステム及び方法は、感染したネットワークからのボットネットの伝搬及び悪意のあるアクティビティを減少させることができ、同時にITオーバヘッドをあまり必要とせずに、感染したネットワーク内で正当なアクティビティが継続することを可能にする。1つの例示的実施態様によれば、ネットワーク内の各ホスト上のどのソフトウェア・プログラム・ファイルが危険(即ち、信頼できない)かを予め判定するシステムが提供される。一例では、この判定は、ホスト上に常駐する未知又は変更されたプログラム・ファイルを検出することにより行われる。ネットワーク・アクセス試行(即ち、インバウンド又はアウトバウンド)が、ネットワーク内のホストのうちの1つで行われるときは、ネットワーク・アクセス試行と関連付けられたプロセスが評価されてその対応プログラム・ファイル又はファイルが決定され、そのプログラム・ファイル又はファイルが評価されてその信頼性状態(即ち、信頼できるか信頼できないか)が判定される。各プログラム・ファイルが信頼できる場合は、そのプロセスと関連付けられたネットワーク・アクセス試行が、許可されることがある。しかしながら、プログラム・ファイルのどれかが信頼できない場合は、プロセスと関連付けられたネットワーク・アクセス試行が阻止され、それにより、可能性のあるボットの伝搬と悪意のあるアクティビティは防止されることがある。1つの例示的実施形態では、ネットワーク・アクセスは、ポリシー構成に基づいて、サブネットの定義された組に対して及び/又はその組から選択的に許可されることがある。したがって、ボットが指令制御サーバからのコマンドに応答し伝搬する能力が、大幅に縮小され、同時に必要な企業活動の中断又は妨害が最小になる。その結果、図1に実現されたようなシステムは、感染ホストがあるネットワーク、及び感染ホストがアクセスを試みる他のネットワークに対してよりよい保護を提供する。
図1のインフラストラクチャに移ると、ローカル・ネットワーク110は、コンピュータシステムを保護するシステムを実現することができる例示的なアーキテクチャを表す。ローカル・ネットワーク110は、1つ又は複数のローカル・エリア・ネットワーク(LAN)、他の適切なネットワーク、又はこれらの任意の組み合わせ含む様々な形態で構成されてもよい。インターネット150は、ローカル・ネットワーク110が適切に接続されることがある広域ネットワーク(WAN)を表す。一実施形態では、ローカル・ネットワーク110は、インターネットサービスプロバイダ(ISP)によって、又は専用帯域幅を有するインターネットサーバを介して、インターネット150に動作的に結合されてもよい。ローカル・ネットワーク110とインターネット150間の接続は、例えばデジタル加入者線(DSL)、電話線、T1線、T3線、ワイヤレス、衛星、光ファイバ、ケーブル、イーサネット(登録商標)など、又はこれらの任意の組み合わせのような任意の適切な媒体も含んでもよい。更に、ゲートウェイ、スイッチ、ルータなどを使用して、ホスト120と中央サーバ130とインターネット150との間の電子通信を容易にしてもよい。ISP又はインターネット・サーバは、ホスト120が伝送制御プロトコル/インターネットプロトコル(TCP/IP)を使用してインターネット上の他のノードと通信できるように構成されてもよく、メールサーバ(図示せず)は、ホスト120が簡易メール転送プロトコル(SMTP)を使用して電子メールメッセージを送受信できるようにしてもよい。
1つの例示的実施形態では、ローカル・ネットワーク110は、組織(例えば、企業、学校、政府実体、家族など)と関連付けられた従業員又は他の個人によって操作されるエンドユーザ・コンピュータを表わすホスト120a、120b及び120cを有する組織のネットワーク環境を表わす。エンドユーザ・コンピュータは、デスクトップ、ラップトップ、可搬型又は携帯型計算装置(例えば、携帯情報端末(PDA)又は携帯電話)などの計算装置、又はローカル・ネットワーク110へのネットワーク・アクセスと関連付けられたソフトウェア・プロセスを実行することができる他の計算装置を含んでもよい。ローカル・ネットワーク110内のホスト120a、120b及び120c、中央サーバ130、並びに任意の追加の構成要素の間の接続は、例えば、ケーブル、イーサネット(登録商標)、ワイヤレス(例えば、WiFi、3G、4Gなど)、ATM、光ファイバなどの任意の適切な媒体を含んでもよい。本明細書に示され述べられたネットワーク構成及び相互接続が、単に説明のためのものであることに注意されたい。図1は、例として意図され、本開示におけるアーキテクチャの限定を意味するように解釈されるべきではない。
図1に示された例示的実施形態では、指令制御サーバ170とボットネット・オペレータ175が、インターネット150に動作的に結合される。一例では、指令制御サーバ170は、分散型ボットにコマンドを出すようにボットネット・オペレータ175によって制御又は使用されるウェブサーバでよい。別の例では、指令制御サーバ170は、大企業、教育機関あるいは政府機関のサイトに悪意を持ってインストールされ隠されていてもよい。ボットネット・オペレータ175は、例えば、インターネット150を介して指令制御サーバ170にリモートでアクセスして、ホスト120a、120b又は120cなどの感染ホストコンピュータ上の分散型ボットを制御する命令を出してもよい。多数のボットネット・オペレータと、何百万台ものボットを制御する指令制御サーバが、インターネット150に動作的に接続されてもよい。一例では、ボットが、ホスト120a、120b又は120cのうちの1つに感染すると、ボットネット・オペレータ175は、指令制御サーバ170を介してコマンドを出して、ボットをローカル・ネットワーク110及び/又はの他のネットワークの全体に伝搬させ始める。更に、ボットネット・オペレータ175は、感染ホスト120a、120b又は120cから、スパム電子メール、秘密情報の盗難、分散型サービス妨害攻撃などの悪意のあるアクティビティをボットが試みる命令を出すことがある。
図1は、また、インターネット150に接続されたグローバルサーバ160を示す。多数のサーバがインターネット150に接続されてもよいが、グローバルサーバ160は、リスクが評価されたソフトウェア・プログラム・ファイルに関係する情報を含む1つ又は複数のデータベースを提供するサービスを提供する。例えば、信頼できない(例えば、ウィルス、ワームなどの悪意のあるコードを含む)と評価及び判定されたソフトウェア・プログラム・ファイルが、いわゆる「ブラックリスト」に含まれてもよい。信頼できる(例えば、汚染されていない、悪意のあるコードを含まないなど)と評価及び判定されたソフトウェア・プログラム・ファイルが、いわゆる「ホワイトリスト」に含まれてもよい。ホワイトリストとブラックリストは、別々に実施されてもよいが、各ソフトウェア・プログラム・ファイルが、ホワイトリストファイル又はブラックリストファイルとして識別されるデータベース内で結合されてもよい。
ホワイトリスト及びブラックリストは、各プログラム・ファイルの固有チェックサムが記憶されたチェックサムを使用して実施されてもよく、このチェックサムは、評価されるプログラム・ファイルの計算済みチェックサムと容易に比較することができる。チェックサムは、ソフトウェア・プログラム・ファイルにアルゴリズムを適用することによって導出された数値又はハッシュサム(例えば、番号数字の固定文字列)でよい。アルゴリズムが、第1のソフトウェア・プログラム・ファイルと同一の第2のソフトウェア・プログラム・ファイルに適用された場合は、チェックサムが合致しなければならない。しかしながら、第2のソフトウェア・プログラム・ファイルが異なる場合(例えば、第2のソフトウェア・プログラム・ファイルが、何らかの方法で変更された場合、第1のソフトウェア・プログラム・ファイルの異なるバージョンである場合、全く異なるタイプのソフトウェアである場合など)は、チェックサムは合致しない可能性が極めて高い。
図1のグローバル・ホワイトリスト165などのデータベースは、独立した第三者によって提供されてもよく、消費者が入手可能な信頼できるソフトウェア・プログラム・ファイルの総合リストを提供するように定期的に更新されてもよい。同様に、ブラックリスト(図示せず)は、独立した第三者によって提供されてもよく、信頼できない悪意のあるソフトウェア・プログラム・ファイルの総合リストを提供するように定期的に更新されてもよい。グローバル・ホワイトリスト及びブラックリストは、ローカル・ネットワーク110の外部にあってもよく、インターネット150などの他のネットワークを介して、又はローカル・ネットワーク110とグローバル・ホワイトリスト165との間の電子通信を可能にする任意の他の適切な接続を介してアクセス可能でよい。そのようなグローバル・ホワイトリスト及びブラックリストの例には、カリフォルニア州サンタクララのMcAfee社によって提供されるArtemisデータベースと、オレゴン州ポートランドのSignaCert社によって提供されるSignaCert(登録商標)データベースが含まれる。
図1は、また、ローカル・ネットワーク110内に示された内部ホワイトリスト133を含む。内部ホワイトリスト133は、また、リスクが評価されたソフトウェア・プログラム・ファイルに関係する情報を含んでもよく、チェックサムを使用してそのようなソフトウェア・プログラム・ファイルを識別してもよい。内部ホワイトリスト133内で識別されるソフトウェア・プログラム・ファイルは、1つ又は複数のグローバル・ホワイトリストからのソフトウェア・プログラム・ファイルを包含してもよく、かつ/又は選択されたソフトウェア・プログラム・ファイルを提供するようにカスタマイズされてもよい。詳細には、組織内部で開発されたが必ずしも一般大衆が入手できるとは限らないソフトウェア・プログラム・ファイルが、内部ホワイトリスト133内で識別されてもよい。更に、信頼できないと評価及び判定された特定のソフトウェア・プログラム・ファイルを識別するために、内部ブラックリストが提供されてもよい。
図1に示された例示的実施形態では、ホスト120a、120b及び120cの実行可能ソフトウェア122a、122b及び122cは、本明細書で前に述べたように、任意の実行可能ファイル、ライブラリ・モジュール、オブジェクト・ファイル、他の実行可能モジュール、スクリプト・ファイル、インタープリタ・ファイルなどを含むことがある複数のソフトウェア・プログラム・ファイルをそれぞれ有してもよい。ホスト120a、120b及び120cのうちの1つにボットが感染した場合、ボットは、それぞれのホストの実行可能ソフトウェア122a、122b又は122c内のプログラム・ファイルとして記憶される可能性がある。ローカル保護構成要素124a、124b及び124cは、それぞれのホスト120a、120b及び120c上のインバウンドとアウトバウンド両方のネットワーク・アクセス試行を遮断することがある。ネットワーク・アクセス試行と関連付けられた任意のプログラム・ファイルが、非信頼状態を有する場合、ネットワーク・アクセスは、他の基準(例えば、ポリシー、既定条件など)に基づいて阻止されるか選択的に許可されてもよい。しかしながら、プログラム・ファイルが信頼状態を有する場合は、ネットワーク・アクセスは許可されることがある。
幾つかの実施形態では、中央サーバ130の中央保護構成要素135は、実行可能ソフトウェア122a、122b及び122cの各プログラム・ファイルを評価し、各プログラム・ファイルを信頼できるか信頼できないか分類する。プログラム・ファイルは、内部ホワイトリスト133、グローバル・ホワイトリスト165、内部あるいは外部ブラックリスト、又はこれらの任意の組み合わせと比較されてもよい。評価されたプログラム・ファイルが、信頼できないと分類された場合、非信頼プログラム・ファイルを識別するエントリが、中央非信頼ソフトウェア・インベントリ132に加えられることがある。中央サーバ130は、また、ローカル・ネットワーク110内の任意のホスト120a、120b及び120c上のネットワーク・アクセス試行に関係する情報を含むログ・イベント・データベース131を維持してもよい。ログ・イベント・データベース131、中央非信頼ソフトウェア・インベントリ132及び内部ホワイトリスト133は、中央サーバ130にアクセス可能な任意のネットワーク及び装置内に提供されてもよい。
図2に移ると、図2は、中央サーバ200及び関連したメモリ構成要素231、232及び233の概略図を示す。これは、図1に示された中央サーバ130及び関連したメモリ構成要素131、132及び133の詳細な例である。システムの1つの例示的実施形態では、中央サーバ200の中央保護構成要素は、管理保護モジュール220、ポリシー・モジュール230、ポリシー・データベース235、及びソフトウェア信頼判定モジュール240を含んでもよい。1つの例示的実施形態では、ソフトウェア信頼判定モジュール240から信頼プログラム・ファイルキャッシュエントリを受け取るための中央信頼キャッシュ245を含んでもよい。しかしながら、他の実施形態では、中央サーバ200が、非信頼プログラム・ファイルエントリを記憶するための中央非信頼ソフトウェア・インベントリ232を収容するメモリ構成要素を含むか又はそのメモリ構成要素へのアクセスを有してもよい。中央サーバ200は、また、プロセッサ280やメモリ要素290などの適切なハードウェア要素に加えて、ログ・イベント・データベース231や内部ホワイトリスト233などのメモリ構成要素を含むか又はそれらのメモリ構成要素へのアクセスを有してもよい。許可された人が、例えば管理保護モジュール220を介してシステムを展開し、構成し、維持するために、中央サーバ200が、管理コンソール210に適切に接続されてもよい。
中央信頼キャッシュ245を使用する実施形態では、キャッシュは、グローバル及び/又は内部ホワイトリストを検索する際に見つかったプログラム・ファイルなど、以前に信頼状態を有すると判定されたプログラム・ファイルを識別するエントリ(例えば、チェックサム)を一時的に記憶するためのメモリのブロックとしてハードウェア内に実現されてもよい。中央信頼キャッシュ245は、以前に信頼性状態が評価されたプログラム・ファイルを示すデータに対する迅速かつ透明なアクセスを提供することができる。これにより、要求されたプログラム・ファイルが、中央信頼キャッシュ245内に見つかった場合は、グローバル及び/又は内部ホワイトリストの検索、又は任意の他の信頼評価が行なわれなくてもよいことがある。更に、中央信頼キャッシュ245を使用する実施形態は、中央非信頼ソフトウェア・インベントリ232を維持しなくてもよい。
図3に移ると、図3は、悪意のあるソフトウェアに対するローカル保護をするシステムが実現することができる、計算装置又はホスト300の一実施形態の概略図と中央サーバ200のブロック図とを示す。ホスト300は、図1のホスト120のより詳細な例である。ホスト300は、例えば、プログラム・ファイル1〜nを含む1組の実行可能ソフトウェア340を含む。ホスト300内のローカル・ネットワーク保護構成要素は、ローカル保護モジュール310、ソフトウェア管理モジュール320、ローカル非信頼ソフトウェア・インベントリ330、及びソフトウェア・プログラム・インベントリ・フィード335を含んでもよい。ソフトウェア管理モジュール320、ローカル非信頼ソフトウェア・インベントリ330、及びソフトウェア・プログラム・インベントリ・フィード335は、ホスト300のユーザ空間内に常駐してもよい。また、ホスト300のユーザ空間内には、実行可能ソフトウェア340のプログラム・ファイルの1つ又は複数に対応する例示的な実行ソフトウェア・プロセス345が示されている。参照し易くするため、実行可能ソフトウェア340は、ホスト300上のユーザ空間内に示されるが、ホスト300上のディスクドライブなどのメモリ要素に記憶されてもよい。
ホスト300は、また、ネットワーク・インタフェース・カード(NIC)装置370、プロセッサ380、メモリ要素390などのハードウェア構成要素を含んでもよい。ローカル保護モジュール310、及び伝送制御プロトコル/インターネットプロトコル(TCP/IP)350や他のプロトコル360などの伝送プロトコルは、ホスト300のカーネル空間内に常駐してもよく、NIC装置370とインタフェースするネットワーク・ドライバ・インタフェース仕様(NDIS)ドライバ・スタックの一部として実現されてもよい。オペレーティング・システム・カーネルは、ソフトウェア・プロセスを実行可能ソフトウェア340のその対応プログラム・ファイルにマッピングするプロセス・トラフィック・マッピング要素365を提供する。
ソフトウェア管理モジュール320と中央サーバ200との間には、ポリシー更新フロー322、非信頼ソフトウェア更新フロー324及びイベント・フロー326を含むデータ・フローが示される。ソフトウェア管理モジュール320とローカル保護モジュール310との間には、ポリシー更新フロー312、制御フロー318及びイベント・フロー316を含むデータ及び制御フローも示される。最後に、ソフトウェア・プログラム・インベントリ・フィード335が、中央サーバ200へのデータ・フロー337と共に示される。
図2と図3には、メモリ管理ユニット(MMU)、付加的対称型マルチプロセッシング(SMP)要素、物理メモリ、イーサネット(登録商標)、周辺構成要素相互接続(PCI)バス及び対応ブリッジ、小型コンピュータシステム・インタフェース(SCSI)/Integrated Drive Electronics(IDE)要素などの形でプロセッサ280及び380に適切に結合されてもよい追加のハードウェアが示されていない。更に、ネットワーク・アクセスを可能にするため、適切なモデム及び/又は追加のネットワーク・アダプタを含んでもよい。中央サーバ200とホスト300は、意図された機能を適切に実行するのに必要な任意の追加のハードウェア及びソフトウェアを含んでもよい。更に、中央サーバ200及びホスト300内に、その中のハードウェア構成要素の動作を適切に管理するため、任意の適切なオペレーティング・システムが構成されてもよい。ハードウェア構成は異なってもよく、示された例がアーキテクチャの限定を意味するものではないことを理解されよう。
実行可能ソフトウェア340の信頼判定及びログ記録アクティビティは、例示的な実施形態では、少なくとも部分的に、中央サーバ200の管理保護モジュール220とソフトウェア信頼判定モジュール240によって、またホスト300のソフトウェア・プログラム・インベントリ・フィード335、ソフトウェア管理モジュール320及びローカル保護モジュール310によって提供されてもよい。信頼判定及びログ記録アクティビティと関係した情報は、適切に描写されるか、特定の場所(例えば、ローカル非信頼ソフトウェア・インベントリ330、ログ・イベント・データベース231など)に送信されるか、単純に記憶又はアーカイブされるか(例えば、中央非信頼ソフトウェア・インベントリ232など)、かつ/又は任意の適切な形式で適切に表示されてもよい(例えば、管理コンソール210など)。1つ又は複数のそのような信頼判定及びログ記録アクティビティと関係したセキュリティ技術には、ePolicy Orchestratorソフトウェア、Application Controlソフトウェア、及び/又はChange Controlソフトウェア(全てカリフォルニア州サンタクララのMcAfee社によって製造された)、又は任意の他の類似ソフトウェアなどの要素を含むことができる。したがって、本明細書で使用されるような用語「管理保護モジュール」、「ソフトウェア信頼判定モジュール」、「ソフトウェア・プログラム・インベントリ・フィード」、「ソフトウェア管理モジュール」及び「ローカル保護モジュール」の広い範囲には、任意のそのような構成要素が含まれることがある。ログ・イベント・データベース231、中央非信頼ソフトウェア・インベントリ232、内部ホワイトリスト233、及びローカル非信頼ソフトウェア・インベントリ330は、電子データの信頼判定及びログ記録と関連した情報(例えば、プログラム・ファイルの信頼判定、ソフトウェア・プロセスのネットワーク・アクセス試行など)を含むことがあり、これらの要素は、中央サーバ200及びホスト300のモジュール及び構成要素と容易に協力し、連係し、その他相互作用することができる。
ネットワーク・アクセス試行の遮断及び阻止アクティビティは、例示的な実施形態では、少なくとも部分的に、ホスト300のローカル保護モジュール310とソフトウェア管理モジュール320、及び中央サーバ200の管理保護モジュール220とポリシー・モジュール230内で提供されてもよい。遮断及び阻止アクティビティと関連した情報は、特定の場所(例えば、中央サーバ200、ログ・イベント・データベース231、ローカル保護モジュール310など)にプッシュされ、単にローカルに記憶又はアーカイブされ、かつ/又は任意の適切な形式で適切に表示されてもよい(例えば、管理コンソール210などにより)。1つ又は複数のそのような遮断及び/又は阻止アクティビティと関連したセキュリティ技術は、McAfee(登録商標)ePolicy Orchestratorソフトウェアや他の類似のソフトウェアなどの要素を含んでもよい。したがって、本明細書で使用されるような用語「ローカル保護モジュール」、「ソフトウェア管理モジュール」、「管理保護モジュール」及び「ポリシー・モジュール」の広い範囲内に、任意のそのような構成要素が含まれることがある。ローカル非信頼ソフトウェア・インベントリ330、中央非信頼ソフトウェア・インベントリ232、及びポリシー・データベース235は、ネットワーク・アクセス試行の遮断及び阻止と関連した情報(例えば、プログラム・ファイルの信頼判定、ポリシー構成など)を含んでもよく、これらの要素は、中央サーバ200及びホスト300のモジュール及び構成要素により容易にアクセスされ、その他相互作用することができる。
図4〜図7は、悪意のあるソフトウェアからローカル保護するシステムの実施形態と関連付けられた例示的ステップのフローチャートを含む。参照し易くするため、図4から図7は、ここでは、図1のネットワーク環境100内の特定の構成要素、並びにサーバ200、ホスト300、及びその関連した構成要素、要素、モジュールに関して記述されるが、本明細書に示され記載されたシステムと方法を実現するために、様々な他の装置、構成要素、要素、モジュールなどが使用されてもよい。
図4と図5はそれぞれ、中央非信頼ソフトウェア・インベントリ232及び/又はローカル非信頼ソフトウェア・インベントリ330を作成し維持する列挙フロー400と信頼判定フロー500を示す。フロー400は、少なくとも部分的に中央サーバ200のソフトウェア信頼判定モジュール240内で行われてもよい。最初にステップ410で、ホスト300上の実行可能ソフトウェアのインベントリが取得される。例示的な実施形態では、このソフトウェア・インベントリは、ホスト300のソフトウェア・インベントリ・フィード335から受け取ってもよい。ソフトウェア・インベントリ・フィードは、ホスト300上の実行可能ソフトウェア340のプログラム・ファイルを全て列挙し、列挙したプログラム・ファイル(即ち、ソフトウェア・インベントリ)をデータ・フロー337によって中央サーバ200にプッシュしてもよい。他の実施形態では、実行可能ソフトウェア340の新しい及び変更されたプログラム・ファイルだけが中央サーバ200に列挙されプッシュされる。そのような列挙は、例えば、Policy AuditorソフトウェアやApplication Controlソフトウェアなどの既存のセキュリティ技術によって達成することができる。これらのソフトウェアは両方とも、カリフォルニア州サンタクララのMcAfee社によって製造されたものである。
ステップ410でプログラム・ファイルが列挙された後、ソフトウェア・インベントリで識別されたプログラム・ファイルがそれぞれ評価され、信頼性状態が判定され、信頼できる(即ち、ネットワーク・アクセスが許可されることがある)か信頼できない(即ち、ネットワーク・アクセスが阻止されるか選択的に許可されることがある)かに分類される。ステップ410の後、フローはステップ420に進んでもよく、最初のプログラム・ファイルが、ソフトウェア・インベントリから取り出される。次に、フローは、ステップ430に進み、プログラム・ファイルが、評価され、信頼できるか信頼できないかに分類される。これについては、図5と図6に関連して本明細書で更に示され述べられる。ステップ430でプログラム・ファイルが信頼できるか信頼できないかに分類された後、フローは、ステップ440に進み、現在評価されているプログラム・ファイルが、中央サーバ200がホスト300から受け取ったソフトウェア・インベントリ内の最後のプログラム・ファイルかどうかの判定がされる。現在のプログラム・ファイルが、ソフトウェア・インベントリ内の最後のプログラム・ファイルでない場合は、ステップ450でソフトウェア・インベントリから次のプログラム・ファイルが取り出されることがあり、フローは、ステップ430にループして戻って次のプログラムの評価と信頼分類を開始する。しかしながら、ステップ440で、現在のプログラム・ファイルが、ソフトウェア・インベントリ内の最後のプログラム・ファイルの場合、フローはステップ460に進む。
ステップ460で、新しく分類された信頼できないプログラム・ファイルがホスト300にプッシュされ、ローカル非信頼ソフトウェア・インベントリ330を更新することがある。プッシュは、非信頼ソフトウェア更新フロー324により、中央サーバ200のソフトウェア信頼判定モジュール240から、ホスト300のソフトウェア管理モジュール320に行われることがある。例示的実施形態では、中央サーバ200のソフトウェア信頼判定モジュール240は、ホスト300上の完全なソフトウェア・インベントリのソフトウェア・プログラム・インベントリ・フィード335又はホスト300上の新しいか変更されたプログラム・ファイルのソフトウェア・インベントリから、一定のフィード又はほぼ一定のフィードを受け取ることができ、その結果、中央非信頼ソフトウェア・インベントリ232及び/又はローカル非信頼ソフトウェア・インベントリ330は、実質的に実時間で最新になる。他の実施形態では、ソフトウェア信頼判定モジュール240は、列挙されたソフトウェア・インベントリを定期的な間隔(例えば、毎日、1時間毎、30分毎など)で受け取ってもよい。
図5に移ると、図5は、図4のステップ430に対応する信頼判定フロー500のより詳細なフローを示す。これは、中央サーバ200にプッシュされたソフトウェア・インベントリ内の各プログラム・ファイルについて実行される。フローは、ステップ510で始まってもよく、現在のプログラム・ファイルが評価されて、それが、図1に示されたグローバル・ホワイトリスト165などの少なくとも1つのグローバル・ホワイトリスト上、及び/又はローカル・ネットワーク110外の他のホワイトリスト上で識別されたかどうかが判定される。本明細書で前に述べたように、プログラム・ファイルを識別するために、ホワイトリスト内でチェックサムが使用されてもよい。ステップ510でプログラム・ファイルがグローバル又は他の外部ホワイトリストのいずれかに見つかった場合は、プログラム・ファイルの信頼性状態が、信頼できると定義され、その結果、フローが終了し、中央非信頼ソフトウェア・インベントリ232を更新しないことにより、プログラム・ファイルは、信頼できるとして分類される。しかしながら、ステップ510で、プログラム・ファイルが、グローバル又は他の外部ホワイトリスト上に見つからなかった場合は、フローはステップ520に進み、内部ホワイトリスト233などの1つ又は複数の内部ホワイトリストが検索されてもよい。組織は、複数のホワイトリスト(例えば、組織全体のホワイトリスト、企業レベルのホワイトリストなど)を使用してもよい。プログラム・ファイルが、内部ホワイトリストのどれかに見つかった場合、プログラム・ファイルの信頼性状態が、信頼できるとして定義され、その結果、フローは終了し、中央非信頼ソフトウェア・インベントリ232は更新されない。
しかしながら、ステップ510又は520で、プログラム・ファイルが内部又は外部ホワイトリストのどれにも見つからなかった場合、プログラム・ファイルは、非信頼状態を有する。次に、フローは、ステップ530に進んでもよく、プログラム・ファイルが評価されて、そのプログラム・ファイルが、プログラム・ファイルを非信頼状態から信頼状態に昇格させることができる任意の既定条件を満たすかどうかが判断されることがある。そのような既定条件には、例えば、管理者が所有するソフトウェア、ファイルアクセス制御、ファイル属性(例えば、作成時刻、修正時刻など)などのヒューリスティックな検討事項が含まれてもよい。一例では、管理者が所有する非信頼プログラム・ファイルは、信頼状態に昇格されることがあり、その結果、フローは終了し、プログラム・ファイルは、中央非信頼ソフトウェア・インベントリ232を更新しないことによって信頼できると分類される。しかしながら、ステップ530で、プログラム・ファイルが既定条件を満たさない場合は、非信頼状態が持続し、プログラム・ファイルは、最後のステップ540で、プログラム・ファイルを識別する中央非信頼ソフトウェア・インベントリ232を更新することによって、信頼できないとして分類されてもよい。
信頼判定フロー500は、また、ホワイトリストに加えてブラックリストを評価する追加の論理(図示せず)を含んでもよい。ブラックリストは、悪意のあることが分かっているソフトウェア・プログラム・ファイルを識別する。ブラックリストは、McAfee社によって提供されるArtemis及びAnti−Virusデータベース、並びにローカル・ネットワーク内にローカルに維持されたブラックリストを含む多数のソースによって提供されてもよい。この実施形態では、プログラム・ファイルが、内部又は外部ブラックリストのどれかに見つかった場合、プログラム・ファイルは、プログラム・ファイルを識別する中央非信頼ソフトウェア・インベントリ232を更新することにより、信頼できないと分類される。非信頼プログラム・ファイル情報は、ホスト300にプッシュされてローカル非信頼ソフトウェア・インベントリ330が更新されてもよい。
図6に移ると、図6は、図4のステップ430に対応する信頼判定フロー600の代替の実施形態を示す。これは、ソフトウェア・インベントリ内の各プログラム・ファイルについて実行されてもよい。フローは、ステップ620で始まり、現在のプログラム・ファイルが評価されて、変化したかどうかが判定される。プログラム・ファイルの現在の状態が、前の状態から変化していない場合は、プログラム・ファイルの信頼性状態は、信頼できるとして定義され、フローが終了して、中央非信頼ソフトウェア・インベントリ232が、プログラム・ファイルを識別するように更新されない。しかしながら、プログラム・ファイルの現在の状態が前の状態から変化した場合は、プログラム・ファイルは、非信頼状態を有する。既存の変更追跡製品(例えば、McAfee(登録商標)Change Controlソフトウェア、McAfee(登録商標)Application Controlソフトウェア、McAfee(登録商標)ePolicy Orchestratorソフトウェア、McAfee(登録商標)Policy Auditorソフトウェア、オレゴン州ポートランドのTripwire社によって製造されたTripwire(登録商標)ソフトウェアなど)を使用して、プログラム・ファイルの変更データを調べて変更が起きたかどうかを判定してもよい。一例では、変更レコードは、中央サーバ200で集中的に総計されてもよく、McAfee(登録商標)ePOソフトウェアが、プログラム・ファイルが変化したかどうかを判定してもよい。
図6において、ステップ620で、プログラム・ファイルが非信頼状態を有すると判定された場合、フローはステップ630に進んでもよく、プログラム・ファイルが評価されて、図5のステップ530に関連して本明細書で前に述べたように、プログラム・ファイルをその非信頼状態から信頼状態に昇格させることができる既定条件が存在するかどうかが判断されてもよい。1つ又は複数の既定条件によって、プログラム・ファイルが信頼状態に昇格する場合は、フローは終了し、中央非信頼ソフトウェア・インベントリ232が更新されない。しかしながら、既定条件がプログラム・ファイルに当てはまらない場合は、非信頼状態が持続し、プログラム・ファイルは、ステップ640で、プログラム・ファイルを識別する中央非信頼ソフトウェア・インベントリ232を更新することによって、信頼できないとして分類されてもよい。
別の実施形態では、図5又は図6の信頼判定フローは、以前に信頼できないと分類されたプログラム・ファイルを信頼できると定義するための追加の論理(図示せず)を含んでもよい。プログラム・ファイルが、図5と図6の信頼判定フロー500又は600のそれぞれから信頼できると定義された場合、プログラム・ファイルの信頼状態が以前に判定された非信頼状態から変化したものであるかどうかを判定する追加論理が、提供されてもよい。そのような場合、中央非信頼ソフトウェア・インベントリ232は、プログラム・ファイルエントリの状態が信頼できないから信頼できるに変更された場合に、そのプログラム・ファイルエントリを除去するか適切にマークするように更新されてもよい。更に、任意のそのような更新をホスト300にプッシュして、ローカル非信頼ソフトウェア・インベントリ330を更新してもよい。この実施形態により、以前に信頼できないと分類されたプログラム・ファイル(例えば、内部ホワイトリスト内で更新されておらず、グローバル/外部ホワイトリストに知られていない新しい内部プログラム・ファイルなど)を、新しいプログラム・ファイルを識別するために内部ホワイトリスト又は外部ホワイトリストの一方が更新された後で、信頼できると再分類することができる。
プログラム・ファイルを列挙し、信頼性状態を判定し、それらのプログラム・ファイルを分類する代替の実施態様は、容易に明らかになる。本明細書で前に示され述べられた幾つかの実施形態は、ホスト300などのネットワーク内の各ホスト上で実行可能ソフトウェアのインベントリを列挙し、ソフトウェア・インベントリを中央サーバ200にプッシュし、インベントリ内の各プログラム・ファイルと関連付けられた信頼性状態を判定し、それに応じて中央非信頼ソフトウェア・インベントリ232を更新し、次に非信頼ソフトウェア・インベントリ更新を適切なホストにプッシュしてローカル非信頼ソフトウェア・インベントリ330内にローカルに維持されることに言及している。しかしながら、代替の実施形態では、ソフトウェア・プログラム・ファイルの信頼判定及び分類が各ホストによってローカルに行なわれてもよく、得られた情報が別の場所(例えば、中央非信頼ソフトウェア・インベントリ232など)にプッシュされ、かつ/又はローカル(例えば、ローカル非信頼ソフトウェア・インベントリ330など)に維持されてもよい。
ソフトウェア・プログラム・ファイルの信頼性状態をローカルに判定し、次にプログラム・ファイルを適切に分類することは、ホワイトリスト評価、ブラックリスト評価、状態変更評価、又は任意の他の適切な信頼評価技術によって行なわれてもよい。そのような実施形態では、実行可能ソフトウェアのインベントリは、例えば、McAfee(登録商標)ソフトウェア(例えば、Policy Auditor、Application Control、又はChange Control)によって列挙されてもよい。図5に示されたようなホワイトリスト評価を行なうとき、ホストは、ローカル・ネットワーク上の内部ホワイトリスト及び/又はインターネットなどの別のネットワークを介してアクセス可能な外部ホワイトリストにアクセスしてもよい。図6に示されたように、プログラム・ファイル状態変更評価は、プログラム・ファイルの現在と以前の変化状態を評価することによってローカルに行なわれてもよい。例えば、McAfee(登録商標)Change Controlソフトウェアは、一連の変更レコードがホスト上にローカルに維持されることを可能にし、この変更レコードを評価して、特定のホスト上のプログラム・ファイルのどれかが変化したかどうかを判定することができる。更に、この開示の広い範囲により、例えば、ソフトウェア・プログラム・ファイルのホワイトリスト評価と状態変更評価の両方を実行すること、及び/又はソフトウェア・プログラム・ファイルのブラックリスト評価を実行することを含む多数の他の技術を使用して、ソフトウェア・プログラム・ファイルを信頼できると分類すべきかどうかを判定することができる。
1つ又は複数の非信頼ソフトウェア・インベントリは、この開示による様々な形態で適切に構成されてもよい。例えば、非信頼ソフトウェア・インベントリは、個別のホストのなか(例えば、非信頼ソフトウェア・インベントリ330)だけ、別の場所のなか(例えば、中央非信頼ソフトウェア・インベントリ232)だけ、又はこれらの何らかの組み合わせの中に常駐してもよい。一実施形態では、ローカル非信頼ソフトウェア・インベントリ330は、ホスト300上に見つかった非信頼プログラム・ファイルを識別するエントリを含んでもよいが、中央非信頼ソフトウェア・インベントリ232は、ネットワーク内の複数のホスト上に見つかった非信頼プログラム・ファイルへのエントリを含んでもよい。中央非信頼ソフトウェア・インベントリ232の1つの代表的な実施形態は、ホスト名に対応する1つの列と、非信頼プログラム・ファイルのプログラムパスに対応する別の列とを有するデータベース表形式を含む。ローカル非信頼ソフトウェア・インベントリ330は、類似の形式を有してもよく、例えば、プログラム・ファイル・パスエントリだけを含むように単純化されてもよい。
図4から図6に関連して示し述べた列挙、信頼判定及び分類の実施形態は、ソフトウェア・インベントリを中央サーバ200に常にフィードすることによって、又はバッチ処理を所定の時間間隔で使用することによって実施されてもよい。バッチ処理の実施形態では、バッチ処理間の時間ウィンドウにより、非信頼ソフトウェア・インベントリ330にまだ追加されていないボットが、ネットワークにアクセスして伝搬し、かつ/又は悪意のあるアクティビティを実行することができることがある。しかしながら、幾つかの企業では、この手法は、所定の時間間隔が重要でないか又は代替の手法が正当で必要な企業活動を妨げることがあるので、望ましい場合がある。しかしながら、別の実施形態は、これらの時間ウィンドウを閉じ、同時にバッチ処理を使用して非信頼ソフトウェア・インベントリ330を更新することで実現されてもよい。
この代替の実施形態では、非信頼ソフトウェア・インベントリではなく、信頼ソフトウェア・インベントリが作成され維持されてもよい。ネットワーク・アクセス試行と関連付けられたプログラム・ファイルを評価して、各プログラム・ファイルが、信頼ソフトウェア・インベントリ上に識別されるかどうかを判定してもよい。プログラム・ファイルが全て、信頼ソフトウェア・インベントリで識別されている場合は、ネットワーク・アクセスは許可されてもよい。しかしながら、プログラム・ファイルのどれも信頼ソフトウェア・インベントリで識別されない場合は、本明細書で更に述べるように、ネットワーク・アクセスは、阻止されるか選択的に許可されることがある。信頼ソフトウェア・インベントリは、集中的かつ/又はローカルに維持されてもよく、一実施形態では、ローカル信頼ソフトウェア・インベントリは、対応するホスト上の信頼プログラム・ファイルのみ、ネットワーク内のホストからの全ての信頼プログラム・ファイル、及び/又はネットワーク管理者又は他の権限あるユーザによって判定された他の信頼プログラム・ファイルを含むように構成されてもよい。
図7に移ると、単純化されたフローチャートは、ホスト300上の実行ソフトウェア・プロセス345などのホスト上のソフトウェア・プロセスと関連付けられたネットワーク・アクセス試行(即ち、インバウンド又はアウトバウンド)の遮断、阻止、及びログ記録アクティビティの保護フロー700を示す。一例では、保護フロー700は、少なくとも部分的にホスト300のローカル保護モジュール310として実現されてもよい。参照し易くするため、保護フロー700は、最初に、ホスト300上のソフトウェア・プロセス345からホスト300に接続されたネットワークへのアウトバウンド・ネットワーク・アクセス試行に関して記述される。
フローは、ステップ710で始まり、ローカル保護モジュール310は、ソフトウェア・プロセス345によるアウトバウンド・ネットワーク・アクセス試行を遮断する。一実施形態では、実行可能ソフトウェア340からのプロセスは、NDISドライバ・スタックを使用して、ホスト300のNIC装置370を介してネットワークにアクセスする。これにより、ソフトウェア・プロセス345は、NDISドライバ・スタックを介して電子データを送信することによってネットワークへのアクセスを試みてもよい。接続が、インターネット・プロトコル・スイートを使用している場合、TCP/IP350は、電子データをパケットに分解し、要求された宛先アドレスを提供する。あるいは、接続は、他のプロトコル360(例えば、インターネットワーク・パケット交換(IPX)、NetBIOS拡張ユーザインタフェース(NetBEUI)など)を使用して送信する電子データを作成してもよい。発信パケットを作成した後で、ローカル保護モジュール310は、任意のタイプのネットワーク・アクセスの試み(例えば、ドメインネームサービス(DNS)ホスト名を参照する試み、リモートホストに接続する試み、ネットワークに既に接続されていたソケットに書き込む試み、など)でよいパケットを遮断する。
発信パケットが遮断された後、フローはステップ720に進み、実行ソフトウェア・プロセス345と関連付けられた遮断パケットにどのプログラム・ファイル(例えば、実行可能ファイル、ライブラリ・モジュール、オブジェクト・ファイル、他の実行可能モジュール、スクリプト・ファイル、インタープリタ・ファイルなど)が対応するかをオペレーティング・システムに照会してもよい。この例では、遮断パケットは、実行ソフトウェア・プロセス345にマッピングされ、プロセス345にロードされる実行可能ファイルと1つ又は複数のライブラリ・モジュールにマッピングされることがある。ステップ720で、オペレーティング・シスタム・カーネルは、プロセス・トラフィック・マッピング要素365を維持し、そのようなマッピング情報をローカル保護モジュール310に提供する。次に、フローは、ステップ730に進み、プロセス345からの遮断パケットに対応する1つ又は複数のプログラム・ファイルが信頼できるかどうかが照会される。一例では、ローカル保護モジュール310は、制御フロー318を介して、プログラム・ファイルに関する情報をソフトウェア管理モジュール320に照会してもよい。次に、ソフトウェア管理モジュール320は、ローカル非信頼ソフトウェア・インベントリ330にアクセスして、プログラム・ファイルが信頼できないと分類されるか信頼できると分類されるかを判定し、次にその情報を制御フロー318を介してローカル保護モジュール310に返してもよい。
ステップ730で、プログラム・ファイルのどれかが信頼できないと分類された(即ち、プログラム・ファイルの1つ又は複数が、ローカル非信頼ソフトウェア・インベントリ330上に見つかった)場合、フローはステップ740に進んで、ログ記録が有効かどうかを判断する。ステップ740で、ログ記録が有効である場合、フローはステップ750に進み、ログ記録のためのイベント(即ち、ネットワーク・アクセス試行)を発生させる。例えば、イベント・データ(例えば、ネットワーク・アクセス試行及びその関連プログラム・ファイルに関する情報)が、イベント・フロー316を介してソフトウェア管理モジュール320に送信されてもよく、次に、ソフトウェア管理モジュール320は、イベント・データをローカルにログ記録してもよく、イベント・データを、例えば中央サーバ200などのログ記録するための別の場所に、イベント・フロー326を介して送信してもよい。例示的な実施形態では、中央サーバ200の管理保護モジュール220は、イベント・データをログ・イベント・データベース231などのメモリ要素に記憶するように適応されてもよい。ログ・イベント・データベース231に記憶されるイベント・データの例には、遮断パケットに関連付けられたプログラム・ファイルの識別及び/又はプログラムパス、イベントが生じたホストの識別、ネットワーク・アクセス試行の日時スタンプ、ネットワーク・アクセス試行のタイプ、ネットワーク・アクセス試行の宛先及び/又はソースアドレス、ネットワーク・アクセス試行と関連付けられたポート番号などが挙げられる。管理保護モジュール220は、また、管理コンソール210又は他の報告機構を介してログ・イベント・データベース231に対するアクセスを提供してもよい。
次に、ステップ750でログ記録するイベントを生成した後、又はステップ740でログ記録が有効でない場合、フローはステップ760に進んで取り締まりが有効かどうか判定される。取り締まりが有効でない場合、フローはステップ790に進み、ソフトウェア・プロセス345のネットワークへのアクセスが許可され、遮断パケットが、NIC装置370に渡される。しかしながら、ステップ760で取り締まりが有効である場合は、ステップ770でポリシーが評価されて、構成ポリシーが、プログラム・ファイルの非信頼状態を覆し、ソフトウェア・プロセス345と関連付けられたネットワーク・アクセス又は選択的ネットワーク・アクセスが許可されるかどうか判定される。
一実施形態では、ポリシー構成は、ネットワーク管理者によって巧妙に作成されてもよく、そのようなポリシーは、ホスト300などの各ホストにプッシュされてもよい。例えば、中央サーバ200のポリシー・モジュール230は、管理者又は他の権限あるユーザが管理コンソール210を介してポリシー構成を巧妙に作成し、そのようなポリシーをポリシー・データベース235に記憶することを可能にしてもよい。次に、管理保護モジュール220は、ポリシー更新フロー322を介して、任意の関連ポリシー構成をホスト300のソフトウェア管理モジュール320にプッシュしてもよい。ソフトウェア管理モジュール320は、更に、ポリシー更新フロー312により、ポリシー構成をローカル保護モジュール310にプッシュしてもよい。あるいは、ポリシー構成は、例えばホスト300のディスクドライブに記憶されてもよく、ローカル保護モジュール310は、評価される特定のプロセスの関連ポリシーをソフトウェア管理モジュール320に照会してもよい。
ポリシー構成は、特定のネットワーク所有者によって必要に応じて実施されてもよい。幾つかの例示的な実施形態では、ポリシー構成は、インバウンド及びアウトバウンド・ネットワーク・アクセスを全て阻止する、インバウンド・ネットワーク・アクセスを全て阻止しアウトバウンド・ネットワーク・アクセスを許可する、インバウンド・ネットワーク・アクセスを許可しアウトバウンド・ネットワーク・アクセスを阻止するなど、1つ又は複数の広範囲にわたる制限を含んでもよい。また、ローカル・ネットワークへのアウトバウンド・ネットワーク・アクセスを阻止するがインターネットへのアウトバウンド・ネットワーク・アクセスを許可する、又はソースアドレスの指定サブネットからのインバウンド・ネットワーク・アクセスを許可しかつ/又は宛先アドレスの指定サブネットへのアウトバウンド・ネットワーク・アクセスを許可するなど、より具体的な戦略が使用されてもよい。最終的に、指定されたインバウンド及び/又はアウトバウンド・ネットワーク接続(例えば、ドメインネームサービス(DNS)、簡易メール転送プロトコル(SMTP)、インターネット・リレー・チャット(IRC)など)を阻止するなど、更に大雑把な戦略が使用されてもよい。これらの例のポリシー構成は、ネットワーク・アクセス制限の機能を示す説明のためのものであり、インバウンド及び/若しくはアウトバウンド・ネットワーク・アクセス又はこれらの任意の組み合わせを制限する任意の他のポリシー構成を含むように意図される。
非信頼プログラム・ファイルのための特別なネットワーク・レベル・ポリシーが巧妙に作成されることもある。例えば、ポリシーは、非信頼プログラム・ファイルと関連付けられたネットワーク・アクセス試行を、セカンダリ・サーバなどの別の計算装置に転送するように巧妙に作成されることがある。一例では、この転送を使用するとき、非信頼プログラム・ファイルと関連付けられた潜在的に悪意のあるネットワーク・アクセス試行が、追加のファイアウォール、フィルタ、アンチスパム/アンチウイルス・ゲートウェイ、プロキシなどを介して強制される可能性がある。別の例では、セカンダリ・サーバは、ネットワーク接続を受け取ったときに1つ又は複数の所定のコマンドで応答するように構成されてもよい。幾つかのボットは、特定のコマンドを受け取ると自滅するように設計されており、セカンダリ・サーバは、ネットワーク接続にそのようなコマンドで応答するように構成されてもよく、それにより、セカンダリ・サーバに転送されたボットが破壊される。
特定のポリシー構成は、非信頼ソフトウェアの伝搬及び潜在的に悪意のあるアクティビティを防ぐ必要性や、必要な企業活動を行なう必要性など、競合する関心の間で平衡がとられることがある。例えば、ホスト・サブネットとサーバ・サブネットを有するネットワークでは、ポリシーは、非信頼プログラム・ファイルと関連付けられたソフトウェア・プロセスが、ホスト・サブネットではなくサーバ・サブネットだけにアクセスできるように構成されてもよい。これは、悪意のあるソフトウェアがネットワーク内の他のホストに伝搬するのを防ぐことができ、同時にホストがセキュアなサーバ・サブネットに中断なしにアクセスすることを可能にするので望ましいことがある。別のポリシーは、信頼できないプログラム・ファイルと関連付けられたソフトウェア・プロセスが、既知のサブネット・ホスティング・ジョブ・クリティカル・サービスを除いて、インターネットへアクセスするのを阻止してもよい。したがって、選択的なネットワーク・アクセスを許可するポリシーを巧妙に作成することにより、様々な阻止オプションを使用することができる。
図7のステップ770に戻ると、実行ソフトウェア・プロセス345に対応する1つ又は複数の非信頼プログラム・ファイルによる選択的なネットワーク・アクセスを許可するポリシーが巧妙に作成され、かつ遮断されたパケットが、特定のポリシー要件に適合する場合(例えば、パケットが、非信頼プログラム・ファイルに適用されるポリシーによりアドレスの許可されたサブネットの範囲内にある宛先アドレスを有する場合、など)は、フローは、ステップ790に進み、ソフトウェア・プロセス345が、ネットワーク・アクセスを許可され、パケットがNIC装置370に渡される。しかしながら、ポリシーが、1つ又は複数のプログラム・ファイルの非信頼状態を覆さない場合(即ち、ポリシーがネットワーク・アクセスを許可しないか、ポリシーが適用可能でない場合)は、フローはステップ780に進み、ソフトウェア・プロセス345は、ネットワーク・アクセスから阻止される。一例では、阻止は、TCP接続コールを失敗させエラーコードをソフトウェア・プロセス345に返すことによって行われ、それにより、遮断パケットが、NIC装置370に渡されるのが防止される。
ステップ730に再び関連して、プログラム・ファイルが、信頼できると分類された場合(即ち、ローカル非信頼ソフトウェア・インベントリ330にプログラム・ファイルが見つからない場合)は、フローがステップ760に進んで、取り締まりが有効かどうか判断される。取り締まりが有効でない場合、フローはステップ790に進み、ソフトウェア・プロセス345が、ネットワーク・アクセスを許可され、遮断パケットが、NIC装置370に渡される。しかしながら、ステップ760で取り締まりが有効である場合は、ステップ770で、ポリシーが評価されて、構成ポリシーが1つ又は複数のプログラム・ファイルの信頼状態を覆すかどうか判断されてもよい。例えば、非信頼プログラム・ファイルが、以前に遮断されており、ポリシーが、全てのアウトバウンド・ネットワーク・アクセス試行に適用される何らかのタイプの阻止を提供した場合は、後のネットワーク・アクセス試行と関連付けられた信頼できるプログラム・ファイルが評価され、そのポリシーによってネットワーク・アクセスから阻止される可能性がある。したがって、ポリシーが、1つ又は複数のプログラム・ファイルの信頼状態を覆す(即ち、ポリシーが、ネットワーク・アクセスを許可しない)場合は、フローはステップ780に進み、ソフトウェア・プロセス345が、ネットワーク・アクセスから阻止される。しかしながら、ステップ770で信頼状態がポリシーによって覆されない(即ち、ポリシーが、ネットワーク・アクセスを許可するか、ポリシーが適用できない)場合、フローはステップ790に進み、ソフトウェア・プロセス345は、ネットワーク・アクセスが許可され、遮断パケットが、NIC装置370に渡される。
図7の保護フロー700は、また、ホスト300に対するインバウンド・ネットワーク・アクセス試行の遮断、阻止及びログ記録アクティビティに使用されるフローを表わす。ステップ710で、ローカル保護モジュール310は、NIC装置370からのインバウンド・ネットワーク・アクセス試行を遮断する。インバウンド・ネットワーク・アクセス試行は、例えばTCPリスン又はアクセプト・コールであり、ソフトウェア・プロセス345などのホスト300上の実行ソフトウェア・プロセスと関連付けられることがある。着信遮断パケットは、ネットワーク・アクセス試行の発信遮断パケットに関して本明細書で前に述べたステップ720〜770で評価される。ステップ720から770のフローがステップ790に進んだ場合は、着信遮断パケットが、ホスト300にアクセスすることを許可される。しかしながら、フローがステップ780に進んだ場合、着信遮断パケットは、ホスト300へのアクセスが阻止される。一例では、阻止は、リスン又はアクセプト・コールを失敗させ、リスン又はアクセプトAPIの発呼者にエラーコードを返すことによって行われる。更に、本明細書で前に述べたように、インバウンド・ネットワーク・アクセス試行の多数のポリシー構成が可能である。一例では、ステップ770で、1つ又は複数の非信頼プログラム・ファイルと関連付けられた特定のインバウンド・ネットワーク・アクセス試行を許可するポリシーが巧妙に作成され、着信パケットが、その特定のポリシー要件に適合する(例えば、パケットが、非信頼プログラム・ファイルに適用されるポリシーによりアドレスの許可されたサブネットの範囲内にあるソースアドレスを有する)と判定された場合、フローはステップ790に進み、着信遮断パケットが、ホスト300へのアクセスを許可される。別の例では、ポリシーが、以前のネットワーク・アクセス試行(即ち、インバウンド又はアウトバウンド)に既に適用されており、後のネットワーク・アクセス試行に適用される何らかのタイプの阻止を提供した場合、後のインバウンド・ネットワーク・アクセス試行と関連付けられたプロセスは、対応するプログラム・ファイルが全て信頼状態を有する場合でも、そのポリシーによりホストへのアクセス又は選択的に許可されたアクセスが阻止されることがある。
図8に移ると、図8は、悪意のあるソフトウェアからローカル保護するシステムの別の実施形態が実現されることがある、計算装置又はホスト800の別の実施形態の概略図と中央サーバ200のブロック図とを示す。ホスト800は、図1のホスト120の一実施形態のより詳細な例である。ホスト800は、例えばプログラム・ファイル1〜nなどの1組の実行可能ソフトウェア840を含む。ホスト800内のローカル・ネットワーク保護構成要素は、ネットワーク・フック810、ソフトウェア管理モジュール820、ローカル非信頼ソフトウェア・インベントリ830、及びソフトウェア・プログラム・インベントリ・フィード835を含んでもよい。参照し易くするため、実行可能ソフトウェア840は、ホスト800上のユーザ空間内に示されるが、ホスト800上のディスクドライブなどのメモリ要素に記憶されてもよい。
ソフトウェア・プロセス845などの任意の現在の実行ソフトウェア・プロセスに加えて、ソフトウェア管理モジュール820、ローカル非信頼ソフトウェア・インベントリ830、及びソフトウェア・プログラム・インベントリ・フィード835が、ホスト800のユーザ空間内に常駐してもよい。図8の実施形態で示されたように、プログラム・ファイルが実行され、実行ソフトウェア・プロセス845を作成するときは、実行ソフトウェア・プロセス845によってロードされる他のライブラリ・モジュールに加えて、Windows(登録商標) Sockets API(Winsock)ライブラリ815が、従属物としてソフトウェア・プロセス845にロードされ、ネットワーク・フック810が、従属物としてWinsockライブラリ815にロードされてもよい。ネットワーク・フック810を実施するには、McAfee社によって製造されたHost Intrusion Prevention System(HIPS)などの既存のセキュリティ技術が使用されてもよい。
ソフトウェア管理モジュール820と中央サーバ200との間に、ポリシー更新フロー822、非信頼ソフトウェア更新フロー824及びイベント・フロー826を含むデータ・フローが示される。また、ソフトウェア管理モジュール820とネットワーク・フック810との間に、ポリシー更新フロー812、制御フロー818及びイベント・フロー816を含むデータ及び制御フローが示される。
ホスト800は、ネットワーク・インタフェース・カード(NIC)装置870、プロセッサ880、メモリ要素890などのハードウェア構成要素を含んでもよい。ホスト800のカーネル空間は、伝送制御プロトコル/インターネットプロトコル(TCP/IP)850や他のプロトコル860などの伝送プロトコルを含んでもよい。図8には、図3のホスト300に関して述べたような追加のハードウェア及びソフトウェアは示されていない。
ネットワーク・フック810とソフトウェア管理モジュール820は、ホスト800上のソフトウェア・プロセス845などの実行可能ソフトウェア840のプログラム・ファイルからのプロセスと関連付けられたネットワーク・アクセス試行の遮断、阻止及びログ記録アクティビティを少なくとも部分的に提供するように構成されてもよい。遮断、阻止及びログ記録アクティビティと関連した情報は、特定の場所(例えば、中央サーバ200、ログ・イベント・データベース231など)にプッシュされ、単にローカルに記憶されるかアーカイブされ、かつ/又は任意の適切な形式で適切に表示され(例えば、管理コンソール210などによって)てもよい。1つ又は複数のそのような遮断、阻止及びログ記録アクティビティと関連したセキュリティ技術は、図3に関連して本明細書で前に述べたような要素を含んでもよく、McAfee(登録商標)HIPSソフトウェアを含んでもよい。したがって、本明細書で使用される用語「ネットワーク・フック」及び「ソフトウェア管理モジュール」の広い範囲に、任意のそのような構成要素が含まれてもよい。ローカル非信頼ソフトウェア・インベントリ830は、実行可能ソフトウェア840のプログラム・ファイルの信頼分類など、電子データの阻止及びログ記録と関連した情報を含んでもよく、これらの要素は、ネットワーク・フック810及びソフトウェア管理モジュール820と容易に協力し、連係し、その他相互作用することができる。
図9に移ると、単純化されたフローチャートは、ホスト800上の実行ソフトウェア・プロセス845などのホスト上のソフトウェア・プロセスと関連付けられたネットワーク・アクセス試行(即ち、インバウンド又はアウトバウンド)の遮断、阻止、及びログ記録アクティビティの保護フロー900を示す。一例では、保護フロー900は、ネットワーク・フック810によって部分的に実行され、ホスト800のソフトウェア管理モジュール820によって部分的に実行されてもよい。参照し易くするために、最初に、保護フロー900は、ホスト800上のソフトウェア・プロセス845からホスト800に接続されたネットワークへのアウトバウンド・ネットワーク・アクセス試行について述べられる。
フローはステップ910で始まり、ネットワーク・フック810が、ソフトウェア・プロセス845からのAPIアウトバウンド・ネットワーク・アクセス試行(例えば、接続API、送信APIなど)を遮断する。ネットワーク・フック810が、Winsockライブラリ815上の従属物としてソフトウェア・プロセス845にロードされるので、ネットワーク・フック810は、TCP/IPプロトコルスタック850とインタフェースするWinsockライブラリ815に渡される前にAPIネットワーク・アクセス試行を遮断することができる。ネットワーク・アクセス試行は、任意のタイプのネットワーク・アクセス(例えば、ドメインネームサービス(DNS)ホスト名を参照する試み、リモートホストに接続する試み、ネットワークに既に接続されているソケットに書き込む試みなど)でよい。APIが遮断された後で、フローはステップ920に進み、どのプログラム・ファイル(例えば、実行可能ファイル、ライブラリ・モジュール、オブジェクト・ファイル、他の実行可能モジュール、スクリプト・ファイル、インタープリタ・ファイルなど)が、実行ソフトウェア・プロセス845と関連付けられるか判定する。この例では、遮断されたAPIは、実行ソフトウェア・プロセス845にマッピングされ、プロセス845にロードされた実行可能ファイル及び1つ又は複数のライブラリ・モジュールにマッピングされてもよい。例示的な実施形態では、ソフトウェア管理モジュール820は、どのプログラム・ファイルが実行ソフトウェア・プロセス845にマッピングされ、遮断APIにマッピングされたかに関して、制御フロー818を介してネットワーク・フック810から照会される。ソフトウェア管理モジュール820は、オペレーティング・システムAPIを使用してそのようなマッピング情報を得ることがある。
プログラム・ファイルが識別された後で、フローは、図7の保護フロー700のステップ730〜790と類似していることがあるステップ930〜990に進む。ステップ930で、ローカル非信頼ソフトウェア・インベントリ830上に、ソフトウェア・プロセス845に対応するプログラム・ファイルが見つかったかどうかが照会される。一例では、ソフトウェア管理モジュール820は、ローカル非信頼ソフトウェア・インベントリ830にアクセスして、プログラム・ファイルが信頼できないと分類されるか信頼できると分類されるか判定してもよい。ステップ930で、プログラム・ファイルのどれかが信頼できないと分類された(即ち、プログラム・ファイルの1つ又は複数がローカル非信頼ソフトウェア・インベントリ830上に見つかった)場合、フローはステップ940に進んで、ログ記録が有効かどうか判定する。ログ記録が有効である場合は、フローはステップ950に進んで、図7に関連して本明細書で前に述べたように、ログ記録のためのイベント(即ち、ネットワーク・アクセス試行)を発生させる。
次に、ステップ950でログ記録のためのイベントが生成された後、フローがステップ960に進み、取り締まりが有効かどうか判定する。取り締まりが有効でない場合、ソフトウェア・マネージャ820は、この情報を制御フロー818を介してネットワーク・フック810に渡してもよい。次に、フローはステップ990に進み、ソフトウェア・プロセス845が、APIをWinsock815に渡すことによってネットワークへのアクセスを許可される。しかしながら、ステップ960で取り締まりが有効である場合は、図7に関連して本明細書で前に述べたように、ステップ970でポリシーが評価されて、構成ポリシーが、1つ又は複数の非信頼プログラム・ファイルの非信頼状態を覆すかどうか判定されてもよい。一実施形態では、ポリシー評価は、ソフトウェア管理モジュール820内で行われてもよく、その結果が、制御フロー818を介してネットワーク・フック810に渡されてもよい。
ポリシー構成は、例えば中央サーバ200の管理保護モジュール220を介して、ネットワーク管理者又は他の権限あるユーザによって巧妙に作成されてもよい。管理保護モジュール220は、ポリシー更新フロー822を介して、任意の関連したポリシー構成を、ホスト800のソフトウェア管理モジュール820にプッシュしてもよい。ポリシーが、ソフトウェア・プロセス845に対応する1つ又は複数の非信頼プログラム・ファイルによる選択的ネットワーク・アクセスを許可するように巧妙に作成されており、かつAPIが、特定のポリシー要件に適合する(例えば、APIネットワーク・アクセス試行が、ポリシーにしたがってアドレスの許可されたサブネットの範囲内にある宛先アドレスを含む)場合、ソフトウェア管理モジュール820は、そのような情報を制御フロー818を介してネットワーク・フック810に返してもよい。次に、フローはステップ990に進み、APIがWinsock815に渡され、ソフトウェア・プロセス845は、ネットワークへのアクセスが許可される。しかしながら、ステップ970でポリシーがネットワーク・アクセスを許可しない場合、又は適用可能なポリシーが存在しない場合は、ソフトウェア管理モジュール820は、そのような情報を制御フロー818を介してネットワーク・フック810に返し、フローがステップ980に進み、APIは、Winsock 815に渡されない。代わりに、ネットワーク・フック810が、エラー状態をソフトウェア・プロセス845に返し、それにより、ネットワーク・アクセスが阻止されてもよい。
ステップ930に再び関連して、プログラム・ファイルが、信頼できるとして分類された(即ち、プログラム・ファイルが、ローカル非信頼ソフトウェア・インベントリ830上に見つからない)場合は、フローはステップ960に進み、取り締まりが有効かどうか判断する。取り締まりが有効でない場合、フローはステップ990に進み、APIがWinsock 815に渡され、ソフトウェア・プロセス845は、ネットワークへのアクセスを許可される。しかしながら、ステップ960で取り締まりが有効である場合は、図7に関連して本明細書で前に述べたように、ステップ970でポリシーが評価されて、構成ポリシーが信頼状態を覆すかどうか判断される。ポリシーが、1つ又は複数のプログラム・ファイルの信頼状態を覆す場合、フローはステップ980に進み、APIは、Winsock 815に渡されない。代わりに、ネットワーク・フック810は、エラー状態をソフトウェア・プロセス845に返し、それによりネットワーク・アクセスが阻止されてもよい。しかしながら、ステップ970で、1つ又は複数のプログラム・ファイルの信頼状態が、ポリシーによって覆されない場合、フローはステップ990に進み、APIが、Winsock815に渡され、ソフトウェア・プロセス845は、ネットワークへのアクセスが許可される。
保護フロー900は、また、ホスト300へのインバウンド・ネットワーク・アクセス試行の遮断、阻止及びログ記録アクティビティに使用されるフローを表わす。ステップ910で、ネットワーク・フック810は、Winsockライブラリ815からAPIインバウンド・ネットワーク・アクセス試行(例えば、リッスンAPI、アクセプトAPIなど)を遮断する。インバウンド・ネットワーク・アクセス試行は、アウトバウンド遮断APIに関して本明細書で前に述べたステップ920〜970で評価される。ステップ920〜970のフローがステップ990に進む場合、インバウンド・ネットワーク・アクセス試行は、ホスト300へのアクセスが許可される。しかしながら、フローが、ステップ980に進む場合、インバウンド・ネットワーク・アクセス試行は、ホスト300へのアクセスが阻止される。一例では、阻止は、リスン又はアクセプト・コールを拒絶し、リスン又はアクセプトAPIの発呼者にエラーコードを返すことによって行われる。更に、図7に関して本明細書で前に述べたように、ステップ970で、インバウンド・ネットワーク・アクセスのポリシー構成が適用されてもよい。
図10に移ると、図10は、悪意のあるソフトウェアからローカル保護するシステムを実現することができる計算装置又はホスト1000の別の実施形態の概略図と中央サーバ200のブロック図とを示す。ホスト1000は、図1のホスト120のより詳細な例である。ホスト1000は、例えばプログラム・ファイル1〜nを含む1組の実行可能ソフトウェア1040を含んでもよい。ホスト1000内のローカル・ネットワーク保護構成要素は、ローカル保護モジュール1010、ソフトウェア管理モジュール1020、プログラム・ファイル変更モニタ1025、チェックサム・キャッシュ1030、及びローカル信頼キャッシュ1035を含んでもよい。一実施形態では、チェックサム・キャッシュ1030とローカル信頼キャッシュ1035は、対応するソフトウェア・プログラム・ファイルのためのプログラム・ファイル・パスとチェックサムで構成されてもよい。ソフトウェア管理モジュール1020とプログラム・ファイル変更モニタ1025は、ホスト1000のユーザ空間内に常駐してもよい。また、ホスト1000のユーザ空間内には、実行可能ソフトウェア1040のプログラム・ファイルの1つ又は複数に対応する例示的な実行ソフトウェア・プロセス1045も示される。参照しやすいように、実行可能ソフトウェア1040は、ホスト1000上のユーザ空間内に示されているが、ホスト1000上のディスクドライブなどのメモリ要素内に記憶されてもよい。
ホスト1000は、ネットワーク・インタフェース・カード(NIC)装置1070、プロセッサ1080、メモリ要素1090などのハードウェア構成要素を含んでもよい。ローカル保護モジュール1010と、伝送制御プロトコル/インターネットプロトコル(TCP/IP)1050や他のプロトコル1060などの伝送プロトコルとは、ホスト1000のカーネル空間内に常駐してもよく、図3にホスト300と関連して示され記述された実施形態と類似の方式で、NIC装置1070とインタフェースするネットワーク・ドライバ・インタフェース仕様(NDIS)ドライバ・スタックの一部として実現されてもよい。オペレーティング・システム・カーネルは、ソフトウェア・プロセスを実行可能ソフトウェア1040のその対応プログラム・ファイルにマッピングするプロセス・トラフィック・マッピング要素1065を提供する。
ソフトウェア管理モジュール1020と中央サーバ200との間に、ポリシー更新フロー1022、ホワイトリスト照会データ・フロー1024及びイベント・フロー1026を含むデータ・フローが示される。また、ソフトウェア管理モジュール1020とローカル保護モジュール1010との間に、ポリシー更新フロー1012、制御フロー1018及びイベント・フロー1016を含むデータ及び制御フローが示される。最終的に、チェックサム・キャッシュ1030とローカル信頼キャッシュ1035は、ソフトウェア管理モジュール1020に対する双方向の流れを有することができ、プログラム・ファイル変更モニタ1025は、変更がプログラム・ファイルに行われたこと示すデータをソフトウェア管理モジュール1020に送る。図10には、図3のホスト300に関連して本明細書で前に述べた付加的なハードウェアと類似したホスト1000の付加的なハードウェアが示されていない。
ローカル信頼キャッシュ1035とチェックサム・キャッシュ1030は、ホスト1000のハードウェア内に、一時的記憶用のメモリのブロックとして構成されてもよい。ローカル信頼キャッシュ1035は、グローバル・ホワイトリストの検索、内部ホワイトリストの検索、ブラックリストの検索、プログラム・ファイル変更の評価、又はこれらの任意の組み合わせなどの信頼評価技術を使用して、信頼状態を有することが既に判定されているプログラム・ファイルを識別するエントリ(例えば、チェックサム)を含んでもよい。したがって、ローカル信頼キャッシュ1035内にプログラム・ファイルが見つかった場合は、その特定のプログラム・ファイルの信頼性状態を中央サーバ200に照会しなくてもよい。チェックサム・キャッシュ1030は、ホスト1000上のソフトウェア・プログラム・ファイルの以前に計算されたチェックサムを識別するエントリ(例えば、チェックサム及びプログラム・ファイル・パス)を含んでもよい。チェックサムの計算が、貴重な処理リソースを使用する可能性があるので、計算されたチェックサムは、無駄な二重のチェックサム計算を防ぐために、対応するプログラム・ファイル・パスと共にチェックサム・キャッシュ1030に記憶されてもよい。キャッシュ1035及び1030に記憶されたそのようなデータによって、ネットワーク・アクセス試行とソフトウェア信頼判定処理の際の検索と全体的な処理が早くなる。
プログラム・ファイルが変化したとき(例えば、新しいソフトウェア・バージョン、ソフトウェア・アップグレードなど)とき、その対応するチェックサムが変化し、したがって、チェックサム・キャッシュ1030が更新されなければならない。例示的な実施形態では、プログラム・ファイル変更モニタ1025は、ホスト1000上のプログラム・ファイルの帯域外検査を実行し、変更されたプログラム・ファイルを示すデータ・フィードをソフトウェア管理モジュール1020に提供してチェックサム・キャッシュ1030を更新することによって、チェックサム・キャッシュ1030を更新することができる。ホスト1000上のプログラム・ファイルを調べて変更が行われたかどうかを判定するには、既存の変更追跡製品(例えば、McAfee(登録商標)Change Controlソフトウェア、McAfee(登録商標)Application Controlソフトウェア、McAfee(登録商標)ePolicy Orchestratorソフトウェア、McAfee(登録商標)Policy Auditorソフトウェア、オレゴン州ポートランドのTripwire社によって製造されたTripwire(登録商標)ソフトウェア)が使用されてもよい。例示的な実施形態では、プログラム・ファイル変更モニタ1025は、ホスト1000上のプログラム・ファイルへの変更を示す実時間データをソフトウェア管理モジュール1020に提供してもよい。変更されたプログラム・ファイル・データを受け取った後で、ソフトウェア管理モジュール1020は、変更されたプログラム・ファイルに対応するプログラム・ファイル・パスをチェックサム・キャッシュ1030内で探してもよく、見つかった場合に、そのプログラム・ファイル・パスと関連付けられたチェックサム・エントリを削除してもよい。チェックサム・キャッシュ1030とプログラム・ファイル変更モニタ1025は、ホスト1000上のプログラム・ファイルのプログラム・ファイル・チェックサムを提供し、維持し、更新する一実施形態を提供するが、与えられたプログラム・ファイル・パスに置かれたプログラム・ファイルに適切なチェックサムを提供できる限り、多数の代替手法(例えば、リモート・チェックサム・モジュール、データベース実装など)を利用することができる。
ホスト1000及び中央サーバ200の実施形態を実現するローカル保護システムでは、非信頼ソフトウェア・インベントリ(例えば、ローカル非信頼ソフトウェア・インベントリ、中央非信頼ソフトウェア・インベントリ232など)は、不可欠な構成要素でないことがある。あるいは、中央サーバ200の中央信頼キャッシュ245、ホスト1000のローカル信頼キャッシュ1035、及びホスト1000のチェックサム・キャッシュ1030は、ソフトウェア信頼判定処理の際に以前に計算され、その他判定された迅速なデータ検索に利用されてもよい。
実行可能ソフトウェア1040の信頼判定、阻止、遮断及びログ記録アクティビティは、例示的な実施形態では、少なくとも部分的に、中央サーバ200の管理保護モジュール220とソフトウェア信頼判定モジュール240によって、またホスト1000のソフトウェア管理モジュール1020、プログラム・ファイル変更モニタ1025、及びローカル保護モジュール1010によって提供されてもよい。そのようなアクティビティと関連した情報は、適切に描写され、特定の場所(例えば、チェックサム・キャッシュ1030、ローカル信頼キャッシュ1035、中央信頼キャッシュ245、ログ・イベント・データベース231など)に送られ、又は単に記憶若しくはアーカイブされ、かつ/又は(例えば、管理コンソール210などにより)任意の適切な形式で適切に表示されてもよい。1つ又は複数のそのような信頼判定、阻止、遮断及びログ記録アクティビティと関連したセキュリティ技術は、McAfee(登録商標)ePolicy Orchestratorソフトウェア、McAfee(登録商標)Host Intrusion Prevention System(HIPS)ソフトウェアなどのファイアウォールソフトウェア、変更追跡ソフトウェア、及び/又は他の類似のソフトウェアなどの要素を含むことができる。したがって、本明細書で使用されるような用語「管理保護モジュール」、「ソフトウェア信頼判定モジュール」、「プログラム・ファイル変更モニタ」、「ソフトウェア管理モジュール」及び「ローカル保護モジュール」の広い範囲には、任意のそのような構成要素が含まれることがある。ログ・イベント・データベース231、内部ホワイトリスト233、中央信頼キャッシュ245、チェックサム・キャッシュ1030、及びローカル信頼キャッシュ1035は、電子データの信頼判定、阻止、遮断及びログ記録(例えば、プログラム・ファイルの信頼判定、ソフトウェア・プロセスのネットワーク・アクセス試行など)と関連した情報を含んでもよく、これらの要素は、中央サーバ200とホスト1000のモジュール及び構成要素と容易に協力し、連係し、その他相互作用することができる。
図11に移ると、単純化されたフローチャートは、ホスト1000上の実行ソフトウェア・プロセス1045などのホスト上のソフトウェア・プロセスと関連付けられたネットワーク・アクセス試行(即ち、インバウンド又はアウトバウンド)の遮断、阻止及びログ記録アクティビティの保護フロー1100を示す。一例では、保護フロー1100は、少なくとも部分的に、ホスト1000のローカル保護モジュール1010として実現されてもよい。参照し易くするため、最初に、保護フロー1100が、ホスト1000上のソフトウェア・プロセス1045からホスト1000に接続されたネットワークへのアウトバウンド・ネットワーク・アクセス試行に関して述べられる。
フローはステップ1110で始まり、ローカル保護モジュール1010が、ソフトウェア・プロセス1045によってアウトバウンド・ネットワーク・アクセス試行を遮断する。一例では、実行可能ソフトウェア1040からのプロセスは、NDISドライバ・スタックを使用して、ホスト1000のNIC装置1070を介してネットワークにアクセスする。したがって、ソフトウェア・プロセス1045は、図3と図7に関連して本明細書で前に述べたように、NDISドライバ・スタックを介して電子データを送信することによってネットワークにアクセスすることを試みてもよい。
発信パケットが遮断された後、フローはステップ1120に進み、実行ソフトウェア・プロセス1045からの遮断パケットにどのプログラム・ファイル(例えば、実行可能ファイル、ライブラリ・モジュール、オブジェクト・ファイル、他の実行可能モジュール、スクリプト・ファイル、インタープリタ・ファイルなど)が対応するかをオペレーティング・システムに照会してもよい。この例では、遮断パケットは、実行ソフトウェア・プロセス1045にマッピングされ、プロセス1045にロードされる実行可能ファイル及び1つ又は複数のライブラリ・モジュールにマッピングされてもよい。オペレーティング・システム・カーネルは、ステップ1120で、プロセス・トラフィック・マッピング要素1065を維持し、そのようなマッピング情報をローカル保護モジュール1010に提供する。
次に、フローは、1130で示されたステップ1132〜1136に進んでもよい。これは、ネットワーク・アクセス試行と関連付けられた各プログラム・ファイルについて実行されてもよい。ステップ1132では、ネットワーク・アクセス試行と関連付けられた最初のプログラム・ファイルのチェックサムが、チェックサム・キャッシュ1030内に見つかるかどうかの照会がされる。一実施形態では、チェックサム・キャッシュ1030から、最初のプログラム・ファイルのプログラム・ファイル・パスを検索する。プログラム・ファイル・パスが見つからない場合は、ステップ1134で最初のプログラム・ファイルのチェックサムが計算される。ステップ1136で、チェックサム・キャッシュ1030は、プログラム・ファイル・パスと新しく計算されたチェックサムで更新される。ネットワーク・アクセス試行と関連付けられた追加のプログラム・ファイルのそれぞれについて、ステップ1132〜1136が繰り返される。1つの例示的シナリオでは、ソフトウェア管理モジュール1020が、プログラム・ファイルが変更されたことを示すデータ・フィードをプログラム・ファイル変更モニタ1025から受け取ったときに、チェックサムがチェックサム・キャッシュ1030から以前に取り除かれている場合は、ステップ1132で、チェックサムが見つからないことがある。したがって、このシナリオでは、ステップ1134で、新しいチェックサムが、変更されたプログラム・ファイルに関して計算され、次にステップ1136で、チェックサム・キャッシュ1030に記憶される。本明細書で前に述べたように、与えられたプログラム・ファイル・パスにあるプログラム・ファイルについて適切なチェックサムを提供できる限り、任意の代替の手法を利用してチェックサムを提供することができる。
ステップ1132〜1136が、ネットワーク・アクセス試行と関連付けられた各プログラム・ファイルに行なわれた後で、フローはステップ1140に進む。ステップ1140で、ネットワーク・アクセス試行と関連付けられた全てのプログラム・ファイルが、ローカル信頼キャッシュ1035内に見つかるかどうかの照会がされる。見つかった場合は、各プログラム・ファイルが信頼状態を有すると以前に判定されており、フローはステップ1170に進み、取り締まりが有効かどうかが判定される。取り締まりが有効でない場合、フローはステップ1190に進み、ソフトウェア・プロセス1045は、ネットワーク・アクセスを許可され、遮断パケットが、NIC装置1070に渡される。しかしながら、ステップ1170で取り締まりが有効である場合は、図7に関連して本明細書で前に述べたように、ステップ1175でポリシーが評価されて、ポリシーが、1つ又は複数のプログラム・ファイルの信頼状態を覆すかどうか判断されてもよい。
本明細書で前に述べたように、ポリシー構成は、ネットワーク管理者によって巧妙に作成されてもよく、そのようなポリシーは、ポリシー更新フロー1022を介してホスト1000にプッシュされてもよい。ソフトウェア管理モジュール1020は、更に、ポリシー更新フロー1012により、ポリシー構成をローカル保護モジュール1010にプッシュしてもよい。あるいは、ポリシー構成は、例えばホスト1000のディスクドライブ内などのメモリ要素に記憶されてもよく、ローカル保護モジュール1010は、評価される特定のプロセス及び/又はプログラム・ファイルの任意の関連ポリシーに関してソフトウェア管理モジュール1020に照会してもよい。
本明細書で前に述べたように、ポリシーが、1つ又は複数のプログラム・ファイルの信頼状態を覆す(即ち、ポリシーが、ネットワーク・アクセスを許可しない)場合は、フローはステップ1180に進み、ソフトウェア・プロセス1045は、ネットワーク・アクセスから阻止され、発信パケットが、NIC装置1070に渡されない。しかしながら、ステップ1175で、1つ又は複数のプログラム・ファイルの信頼状態が、ポリシーによって覆されない(即ち、ポリシーがネットワーク・アクセスを許可するか、ポリシーが適用できない)場合は、フローはステップ1190に進み、発信パケットが、NIC装置1070に渡され、ソフトウェア・プロセス1045は、ネットワークへのアクセスを許可される。
ステップ1140に再び関連して、ネットワーク・アクセス試行と関連付けられたプログラム・ファイルが、ローカル信頼キャッシュ1035内に見つからない場合は、フローがステップ1145に進み、ローカル信頼キャッシュ1035内に見つからなかったプログラム・ファイルの信頼判定が中央サーバ200に照会される。これは、図12に関連して本明細書で更に詳しく示され説明される。ローカル信頼キャッシュ1135内に見つからなかった各プログラム・ファイルの信頼性状態が、中央サーバ200から返された後で、フローはステップ1150に進み、ローカル信頼キャッシュ1035が、信頼状態を有するプログラム・ファイルで更新される。
次に、フローはステップ1155に進み、全てのプログラム・ファイルが信頼できるかどうか(即ち、ネットワーク・アクセス試行と関連付けられたプログラム・ファイルが、中央サーバ200への照会により非信頼状態を有すると判定されなかったか)の照会がされる。プログラム・ファイルが全て信頼できる場合は、フローはステップ1170に進んで、取り締まりが有効かどうか判定される。取り締まりが有効でない場合は、フローはステップ1190に進み、ソフトウェア・プロセス1045は、ネットワーク・アクセスを許可され、遮断パケットが、NIC装置1070に渡される。しかしながら、ステップ1170で取り締まりが有効である場合は、ステップ1175でポリシーが評価されて、本明細書で前に述べたように、ポリシーが信頼状態を覆すかどうか判断される。ポリシーが、その1つ又は複数のプログラム・ファイルの信頼状態を覆す場合は、フローはステップ1180に進み、ソフトウェア・プロセス1045のネットワーク・アクセスが阻止される。しかしながら、ステップ1175で、その1つ又は複数のプログラム・ファイルの信頼状態が、ポリシーによって覆されない場合、フローはステップ1190に進み、ソフトウェア・プロセス1045は、ネットワーク・アクセスを許可され、発信パケットが、NIC装置1070に渡される。
ステップ1155に再び関連して、プログラム・ファイルが全て信頼状態を有するとは限らない(即ち、中央サーバ200への照会により、ネットワーク・アクセス試行と関連付けられた少なくとも1つのプログラム・ファイルが非信頼状態を有すると判定された)場合は、フローはステップ1160に進んで、ログ記録が有効かどうかが判断される。ログ記録が有効である場合は、フローはステップ1165に進み、図7に関連して本明細書で前に述べたように、ログ記録のためのイベント(即ち、ネットワーク・アクセス試行)を発生させる。次に、ログ記録のためのイベントが生成された後、又はステップ1160でログ記録が有効でない場合、フローはステップ1170に進み、取り締まりが有効かどうか判定される。取り締まりが有効でない場合、フローはステップ1190に進み、遮断パケットが、NIC装置1070に渡され、ソフトウェア・プロセス1045は、ネットワークへのアクセスを許可される。しかしながら、ステップ1170で取り締まりが有効である場合は、図7に関連して本明細書で前に述べたように、ステップ1175でポリシーが評価されて、任意の構成ポリシーが、1つ又は複数のプログラム・ファイルの非信頼状態を覆し、ソフトウェア・プロセス1045によるネットワーク・アクセス又は選択的なネットワーク・アクセスが許可されるかどうかが判断される。
ポリシーが、ソフトウェア・プロセス1045に対応する1つ又は複数の非信頼プログラム・ファイルによる選択的なネットワーク・アクセスを許可するよう巧妙に作成されており、遮断パケットが、その特定のポリシー要件に適合する場合(例えば、パケットが、ポリシーによりアドレスの許可されたサブネットの範囲内にある宛先アドレスを含む、など)は、フローはステップ1190に進み、遮断パケットが、NIC装置1070に渡され、ソフトウェア・プロセス1045は、ネットワークへのアクセスを許可される。しかしながら、プログラム・ファイルの非信頼状態が、ポリシーによって覆されない(即ち、ポリシーがアクセスを許可しないか、ポリシーが適用できない)場合は、フローはステップ1180に進み、遮断パケットがNIC装置1070に渡されず、ソフトウェア・プロセス1045は、ネットワーク・アクセスから阻止される。
また、図11の保護フロー1100は、ホスト1100へのインバウンド・ネットワーク・アクセス試行の遮断、阻止及びログ記録アクティビティに使用されるフローを表わす。ステップ1110で、ローカル保護モジュール1010が、NIC装置1070からのインバウンド・ネットワーク・アクセス試行を遮断する。インバウンド・ネットワーク・アクセス試行は、例えば、TCPリスン又はアクセプト・コールでよく、ソフトウェア・プロセス1045などの実行ソフトウェア・プロセスと関連付けられてもよい。着信遮断パケットは、ネットワーク・アクセス試行の発信遮断パケットに関連して本明細書で前に述べたステップ1120〜1175で評価される。ステップ1120〜1175のフローがステップ1190に進む場合、着信遮断パケットは、ホスト1000へのアクセスを許可される。しかしながら、フローが、ステップ1180に進む場合は、着信遮断パケットは、ホスト1000へのアクセスを阻止される。一例では、阻止は、リスン又はアクセプト・コールを失敗させ、リスン又はアクセプトAPIの発呼者にエラーコードを返すことによって行われる。更に、本明細書で前に述べたように、インバウンド・ネットワーク・アクセス試行のための多数のポリシー構成が可能であり、インバウンド・ネットワーク・アクセス試行に適用されてもよい。例えば、ステップ1175で、ポリシーが、1つ又は複数の非信頼プログラム・ファイルと関連付けられた、選択されたインバウンド・ネットワーク・アクセス試行を許可するように巧妙に作成されており、着信パケットが、その特定のポリシー要件に適合する(例えば、パケットが、非信頼プログラム・ファイルに適用されるポリシーによりアドレスの許可されたサブネットの範囲内にあるソースアドレスを有するなど)と判断された場合、フローはステップ1190に進み、着信遮断パケットは、ホスト1000へのアクセスを許可される。別の例では、ポリシーが、前のネットワーク・アクセス試行(即ち、インバウンド又はアウトバウンド)に適用され、また後のネットワーク・アクセス試行に適用される何らかのタイプの阻止に提供される場合は、後のインバウンド・ネットワーク・アクセス試行と関連付けられたプロセスが、対応するプログラム・ファイルが全て信頼状態を有する場合でも、そのポリシーによりホストへのアクセス又は選択的に許可されたアクセスが阻止されることがある。
図12に移ると、図12は、図11のステップ1145に対応する信頼判定フロー1200の詳細なフローを示し、ホスト1000によって提供されるプログラム・ファイル(例えば、インバウンド又はアウトバウンド・ネットワーク・アクセス試行と関連付けられ、かつローカル信頼キャッシュ1035内に見つからなかったプログラム・ファイル)について、中央サーバ200のソフトウェア信頼判定モジュール240によって行なわれることがある。フローは、ステップ1210で始まり、ホスト1000が、ローカル信頼キャッシュ1035内に見つからなかったプログラム・ファイルの信頼判定を中央サーバ200に照会する。ステップ1210で、中央サーバ200は、ローカル信頼キャッシュ1035内で見つからなかった各プログラム・ファイルについて、ホワイトリスト・データ・フロー1024によりデータ(例えば、プログラム・ファイルのチェックサム)を受け取る。フローは、ステップ1220に進み、中央信頼キャッシュ245が、受け取ったプログラム・ファイル・チェックサムを探すために検索されることがある。中央信頼キャッシュ245は、内部又はグローバル・ホワイトリストへの照会を必要とせずに迅速に取り出すために、プログラム・ファイルの信頼性状態をキャッシュできるように使用されてもよい。ホスト1000から受け取ったプログラム・ファイル・チェックサムが全て、ステップ1220の中央信頼キャッシュ245内に見つかった場合、フローはステップ1250に進み、各プログラム・ファイルの信頼状態が、ホスト1000に返される。しかしながら、ステップ1220で、プログラム・ファイル・チェックサムが全て中央信頼キャッシュ245内で見つかったとは限らない場合、フローはステップ1230に進み、更なる評価が行なわれる。
ステップ1230で、図1に示されたグローバル・ホワイトリスト165などの1つ又は複数のグローバル・ホワイトリスト、及び/又は図1に示された内部ホワイトリスト133などの1つ又は複数の内部ホワイトリストを検索して、中央信頼キャッシュ245内に見つからなかった各プログラム・ファイルを探してもよい。一実施形態では、プログラム・ファイルを識別するためにホワイトリスト内でチェックサムが使用され、したがって、ステップ1210で中央サーバ200に提供されたチェックサムが、ホワイトリストを検索するために使用される。プログラム・ファイル・チェックサムがホワイトリストに見つかった場合は、対応するプログラム・ファイルの信頼性状態が、信頼できると定義されるが、プログラム・ファイル・チェックサムがどのホワイトリストにも見つからなかった場合は、対応するプログラム・ファイルの信頼性状態が、信頼できないと定義される。ホワイトリストが検索された後、フローはステップ1240に進み、中央信頼キャッシュ245が、信頼状態を有する(即ち、内部及び/又は外部ホワイトリストのうちの1つに見つかった)プログラム・ファイルで更新される。中央信頼キャッシュ245が更新された後で、フローはステップ1250に進み、各プログラム・ファイルの信頼性状態(即ち、信頼できないか信頼できるか)をホスト1000に返す。
図10〜図12に述べた実施形態は、悪意のあるソフトウェアからローカル保護するシステムを強化するように多くの方法で改良されてもよいことは明白であろう。例えば、ホスト1000又は中央サーバ200のモジュールには、図5と図6に関連して本明細書で前に述べたように、非信頼状態を有すると判定されたソフトウェア・プログラム・ファイルのヒューリスティックな条件(例えば、プログラム・ファイルの所有者、修正日、作成日、プログラム・ファイル属性など)の評価を提供するロジックが含まれてもよい。1つ又は複数の既定条件が存在する場合は、プログラム・ファイルが、信頼状態に昇格されてもよい。しかしながら、プログラム・ファイルに適用される既定条件がない場合は、非信頼状態が持続し、プログラム・ファイルは、信頼できないと定義されてもよい。本明細書で前に述べたように、ホワイトリストに加えて、ブラックリストを評価する追加のロジックを含んでもよい。
また、代替のホスト構成を使用してシステムの様々な実施形態が実現されることが理解されよう。例えば、NDISドライバ・スタックとAPIフック構成とを有するホストを含むネットワーク内に実現された非信頼ソフトウェア・インベントリを有する実施形態が示され説明された。非信頼ソフトウェア・インベントリのないシステムの実施形態が、NDISドライバ・スタック・ホスト構成を有するネットワーク内に実現されるように示され説明された。しかしながら、NDISドライバ・スタック、APIフッキング、又は様々な他のホスト構成(例えば、トランスポート・ドライバ・インタフェース(TDI)、Unix(登録商標) Streams、カーネル空間ネットワーク・スタック・フッキングなど)を有するネットワーク内に、実施形態のいずれかが実現されてもよい。例えば、TDIインプリメンテーションでは、ローカル保護構成要素は、図3と図10に示されたものに類似の方式で実施され機能してもよい。しかしながら、TDIインプリメンテーションでは、ローカル保護モジュールが、TCP/IPプロトコルの下ではなく上にあってもよい。
悪意のあるソフトウェアからローカル保護するためのシステム及び方法の1つの代替の実施形態において、システムは、帯域外のプログラム・ファイルを列挙し、それらの列挙されたプログラム・ファイルの信頼性状態を判定し、カリフォルニア州サンタクララのIntel社によって製造されたIntel(登録商標)Active Management Technology(AMT)を使用して非信頼プログラム・ファイルによるネットワーク・アクセスを阻止するように構成されてもよい。この例示的実施形態では、AMTは、ホスト120a、120b又は120cなどのホストのプログラム・ファイルの帯域外検査を実行し、ソフトウェア・インベントリを作成するために使用されてもよい。この列挙が行われた後で、ソフトウェア・インベントリ内のプログラム・ファイルが評価されて本明細書で述べたような信頼性状態が判定されてもよく、ローカル及び/又は中央非信頼ソフトウェア・インベントリが作成され更新されてもよい。AMTを使用することにより、非信頼プログラム・ファイルと関連したファイアウォール規則が、それぞれのホストのハードウェア内に構成されてもよい。具体的には、ホストのNIC装置上に配置されたフィルタが、非信頼プログラム・ファイルを阻止するように構成されてもよい。この構成は、指定された時間(例えば、所定の時間間隔、非信頼ソフトウェア・インベントリが更新されたとき、オンデマンドなど)で行なわれてもよい。
代替のAMT実施形態では、NIC装置上のフィルタの構成が、実時間で行なわれてもよい。ネットワーク・アクセス試行が行われるたびに、例えば、図10〜図12の実施形態に関連して本明細書で示し述べたように、遮断、関連プログラム・ファイルの判定、及びプログラム・ファイルの信頼判定が行なわてもよい。その場合、オペレーティング・システムは、関連プログラム・ファイルのどれかが信頼できないと判定された場合に、AMTファイアウォール規則を更新してもよい。AMTを使用する更に別の実施形態では、実行可能ソフトウェアの列挙が、帯域外で行われてもよく、1つ又は複数の非信頼ソフトウェア・インベントリが、作成され維持されてもよく、阻止が、本明細書に示し述べた他の実施形態(例えば、NDISドライバ・スタック、APIフッキングなど)によって行われてもよい。
別の実施形態では、図1のローカル保護構成要素124a、124b及び124cなどのローカル保護構成要素内で、アプリケーション・レベルのフィルタリングが使用されてもよい。アプリケーション・レベルのフィルタリングでは、Windows(登録商標) Firewall(カリフォルニア州レドモンドのMicrosoft社により製造された)などの特定の許可及び/又は阻止アプリケーションに対応するように適応されたファイアウォールが、ローカル又は中央非信頼ソフトウェア・インベントリと共に使用されてもよい。例えば、ローカル非信頼ソフトウェア・インベントリが、本明細書に記載されたように作成されてもよい。非信頼ソフトウェア・インベントリが読み込まれた後で、インベントリが更新されたとき、ブロック規則(例えば、特定のアプリケーションの阻止、プログラム・ファイルと関連付けられたポートの阻止など)が、非信頼ソフトウェア・インベントリで識別されたソフトウェア・プログラム・ファイルのために作成され、次にファイアウォール内で非信頼ソフトウェア・プログラム・ファイルと関連付けられたネットワーク・アクセス試行を阻止するように更新されてもよい。したがって、ネットワーク・アクセス試行が、1つ又は複数の非信頼プログラム・ファイルにマッピングされた実行ソフトウェア・プロセスと関連付けられたときは、ファイアウォールは、ネットワーク・アクセス試行を阻止する。
更に別の実施形態では、コンピュータ・ネットワークを保護するシステム及び方法が、仮想環境で実現されてもよい。この例示的実施形態では、仮想機械に対応するハードディスク・ファイルの帯域外検査を行なうことができる。ホスト120a、120b又は120cなどのホストのディスク・ファイルは、仮想機械が動作しているハイパーバイザーから開かれてもよく、その結果、全ての実行可能ソフトウェアを見て列挙することができる。列挙されたソフトウェア・プログラム・ファイルを評価して本明細書に記載された信頼性状態を判定することができ、また非信頼ソフトウェア・インベントリを作成し維持することができる。また、ハイパーバイザーを使用してネットワーク・アクセス試行をフィルタリングして、非信頼ソフトウェア・プログラム・ファイルと関連付けられたインバウンド及びアウトバウンド・ネットワーク・アクセス試行を阻止することができる。この実施形態は、データセンター又は仮想デスクトップ・インタフェース(VDI)環境で実施されてもよい。代替の実施形態では、仮想機械ディスク・ファイルの帯域外検査を使用して非信頼ソフトウェア・インベントリが作成された後で、本明細書で述べた他の技術(例えば、NDISスタック、APIフッキングなど)を使用して取り締まりが実行されてもよい。
本明細書で概説された操作を達成するソフトウェアは、様々な場所(例えば、企業IT本部、エンドユーザ・コンピュータ、クラウド内の分散サーバなど)に提供することができる。他の実施形態では、このソフトウェアは、悪意のあるソフトウェアに対するローカル保護をするこのシステムを提供するために、(例えば、別個のネットワーク、装置、サーバなどの個別のエンドユーザ・ライセンスを購入する状況で)ウェブサーバから受け取られ、又はダウンロードされてもよい。1つの例示的実施態様では、このソフトウェアは、セキュリティ攻撃から保護しようとする(又は、データの望ましくないか又は無許可の操作から保護された)1つ又は複数のコンピュータ内に常駐する。
他の例では、悪意のあるソフトウェアに対するローカル保護をするシステムのソフトウェアは、知的所有権下にある要素(例えば、McAfee(登録商標)Application Controlソフトウェア、McAfee(登録商標)Change Controlソフトウェア、McAfee(登録商標)ePolicy Orchestratorソフトウェア、McAfee(登録商標)Policy Auditorソフトウェア、McAfee(登録商標)Artemis Technologyソフトウェア、McAfee(登録商標)Host Intrusion Preventionソフトウェア、McAfee(登録商標)VirusScanソフトウェアなどによるネットワーク・セキュリティ・ソリューションの一部として)を含むことがあり、これらの識別された要素内(又はその近く)に提供されてもよく、任意の他の装置、サーバ、ネットワーク機器、コンソール、ファイアウォール、スイッチ、ルータ、情報技術(IT)装置、分散サーバなどの中に提供されてもよく、相補的ソリューション(例えば、ファイアウォールと関連)として提供されてもよく、ネットワーク内のどこかに提供されてもよい。
図1に示したような例示的なローカル・ネットワーク110において、ホスト120及び中央サーバ130は、悪意のあるソフトウェアからコンピュータ・ネットワークを保護することを容易にするコンピュータ又は計算装置である。本明細書で使用されるとき、用語「コンピュータ」及び「計算装置」は、パーソナルコンピュータ、ネットワーク機器、ルータ、スイッチ、ゲートウェイ、プロセッサ、サーバ、ロードバランサ、ファイアウォール、又はネットワーク環境で電子情報に影響を及ぼすか又は処理するように動作可能な他の適切な装置、構成要素、要素又は物体を包含することを意図する。更に、このコンピュータ及び計算装置は、その動作を容易にする任意の適切なハードウェア、ソフトウェア、構成要素、モジュール、インタフェース、又は物体を含んでもよい。これは、データの有効な保護及び通信を可能にする適切なアルゴリズム及び通信プロトコルを含んでもよい。
特定の例示的な実施態様では、本明細書で概説した悪意のあるソフトウェアに対するコンピュータ・ネットワークの保護に関係するアクティビティは、ソフトウェアで実現されてもよい。これは、中央サーバ130(例えば、中央保護構成要素135)とホスト120(例えば、ローカル保護構成要素124)内に提供されたソフトウェアを含むことができる。これらの構成要素、要素及び/又はモジュールは、互いに協力して、本明細書で述べたように、ボットネットなどの悪意のあるソフトウェアに対するローカル保護を提供するアクティビティを実行することができる。他の実施形態では、これらの特徴は、これらの要素の外部に提供されもよく、これらの意図された機能を達成する他の装置に含まれてもよく、任意の適切な方法で統合されてもよい。例えば、保護アクティビティは、更にホスト120内に局在化されるか中央サーバ130内に更に集中されてもよく、図示されたプロセッサの幾つかは、除去され、その他特定のシステム構成に適応するように統合されてもよい。一般的な意味において、図1に示された機構は、その説明がより論理的であってもよいが、物理的アーキテクチャは、これらの構成要素、要素及びモジュールの様々な順列/組み合わせ/混合物を含んでもよい。
これらの要素(ホスト120及び中央サーバ130)は全て、本明細書に概説されたような信頼判定、ログ記録及び取り締まりを含む保護アクティビティを達成するために連係し、管理し、その他協力することができるソフトウェア(又は、レシプロケーティング・ソフトウェア)を含む。更に他の実施形態では、これらの要素の1つ又は全ては、その動作を容易にする任意の適切なアルゴリズム、ハードウェア、ソフトウェア、構成要素、モジュール、インタフェース、又はオブジェクトを含んでもよい。ソフトウェアを含む実施態様において、そのような構成は、1つ又は複数の有形媒体内に符号化されたロジック(例えば、特定用途向け集積回路(ASIC)内に提供された埋込みロジック、デジタル・シグナル・プロセッサ(DSP)命令、プロセッサや他の類似の装置によって実行されるソフトウェア(オブジェクト・コード及びソースコードを含む可能性がある)など)を含んでもよく、有形媒体は持続的媒体を含む。これらの例の幾つかでは、1つ又は複数のメモリ要素(図1、図2、図3、図8及び図10を含む様々な図に示されたような)は、本明細書に詳述された操作に使用されるデータを記憶することができる。これは、本明細書に記載されたアクティビティを行うために実行されるソフトウェア、ロジック、コード又はプロセッサ命令を記憶することができるメモリ要素を含む。プロセッサは、本明細書に記載された操作を達成するデータと関連付けられた任意のタイプの命令を実行することができる。一例では、プロセッサ(図2、図3、図8及び図10に示されたような)は、要素又は物品(例えば、データ)をある状態又は物事から別の状態又は物事に変換することができる。別の例では、本明細書で概説されたアクティビティは、固定ロジック又はプログラマブル・ロジック(例えば、プロセッサによって実行されるソフトウェア/コンピュータ命令)で実現されてもよく、本明細書に識別された要素は、デジタル・ロジック、ソフトウェア、コード、電子命令、又はこれらの任意の適切な組み合わせを含む何らかのタイプのプログラマブル・プロセッサ、プログラマブル・デジタル・ロジック(例えば、フィールド・プログラマブル・ゲートアレイ(FPGA)、消去可能なプログラマブル読み取り専用メモリ(EPROM)、電気的に消去可能なプログラマブル読み取り専用メモリ(EEPROM)、又はASICで実現されてもよい。
これらの要素(例えば、コンピュータ、ホスト、サーバ、分散サーバなど)はどれも、本明細書に概説されたような保護アクティビティの達成に使用される情報を記憶するためのメモリ要素を含むことができる。更に、これらの装置はそれぞれ、本明細書で述べたような保護アクティビティを行うソフトウェア又はアルゴリズムを実行することができるプロセッサを含んでもよい。これらの装置は、更に、情報を、必要に応じかつ特定の要求に基づいて、任意の適切なメモリ要素(例えば、ランダムアクセスメモリ(RAM)、ROM、EPROM、EEPROM、ASICなど)、ソフトウェア、ハードウェア、あるいは他の適切な構成要素、装置、要素又はオブジェクト内に維持してもよい。本明細書で述べたメモリ項目(例えば、ログ・イベント・データベース、中央非信頼ソフトウェア・インベントリ、ローカル非信頼ソフトウェア・インベントリ、内部ホワイトリスト、ポリシー・データベース、プロセス・トラフィック・マッピングデータベース、チェックサム・キャッシュ、ローカル信頼キャッシュ、中央信頼キャッシュなど)はいずれも、幅広い用語「メモリ要素」に包含されるように解釈されるべきである。同様に、本明細書に述べた潜在的な処理要素、モジュール及び機械はいずれも、幅広い用語「プロセッサ」に包含されるように解釈されるべきである。また、コンピュータ、ホスト、サーバ、分散サーバなどはそれぞれ、ネットワーク環境でデータ又は情報を受信し、送信し、その他通信するのに適切なインタフェースを含んでもよい。
本明細書に提供された例では、2つ、3つ、4つ、又はこれより多くのネットワーク構成要素に関する相互作用が記述されていることに注意されたい。しかしながら、これは、明瞭さと単なる例のために行われた。悪意のあるソフトウェアに対するローカル保護をするシステムは、任意の適切な方法で統合できることを理解されたい。類似の設計選択に沿って、図の示されたコンピュータ、モジュール、構成要素及び要素はいずれも、様々な可能な構成で組み合わされてもよく、これらは全て、本明細書の広い範囲内にあることは明らかである。特定の事例では、限られた数の構成要素又はネットワーク要素だけを参照して所定の組のフローの機能の1つ又は複数について記述する方が容易なことがある。したがって、図1(及びその教示)のシステムが、容易に拡張可能であることを理解されたい。システムは、多数の構成要素、並びにより複雑又は高度な機構及び構成に適応することができる。したがって、提供された例は、範囲を制限せず、また様々な他のアーキテクチャに潜在的に適用されるようなローカル保護をするシステムの幅広い教示を妨げるべきではない。
また、以上の図に関連して述べた操作が、悪意のあるソフトウェアに対するローカル保護をするシステムによって又はそのシステム内で実行される可能性のあるシナリオの一部だけを示すことに注意することが重要である。これらの操作の幾つかは、必要に応じて削除又は除去されてもよく、あるいはこれらの操作は、述べた概念の範囲を逸脱せずに大幅に修正又は変更されてもよい。更に、これらの操作と様々なステップのタイミングは、この開示に教示された結果を達成するように大幅に変更されてもよい。例えば、信頼判定処理は、グローバル又は外部ホワイトリストより前に内部ホワイトリストを評価してもよい。したがって、以上の動作フローは、例示と検討のために提示された。システムは、述べた概念の教示から逸脱することなく任意の適切な機構、時系列、構成及びタイミングが提供されるという点で、実質的な柔軟性を提供する。

Claims (22)

  1. 計算装置のプロセッサによって実行されるコンピュータプログラムであって、前記プロセッサが前記コンピュータプログラムを実行することにより、
    前記計算装置上で実行しているプロセスと関連付けられたネットワークアクセス試行を、前記計算装置上で遮断し、
    前記プロセスにマッピングされた複数のソフトウェアプログラムファイルを判定し、
    前記複数のソフトウェアプログラムファイルのなかに信頼されないものがあるかを判定し、
    前記ソフトウェアプログラムファイルのなかに信頼されないものがあると判定した場合、前記ネットワークアクセス試行と関連付けられたネットワークアドレスが許可ネットワークアドレスの組のなかに含まれているか判定し、
    前記ネットワークアドレスが前記許可ネットワークアドレスの組のなかに含まれていると判定した場合、前記ネットワークアクセス試行を許可する、
    コンピュータプログラム。
  2. 前記ネットワークアクセス試行は、前記計算装置から宛先ノードへ向かう外向きであり、
    前記ネットワークアドレスは、前記宛先ノードと関連付けられている、
    請求項1のコンピュータプログラム。
  3. 前記ネットワークアクセス試行は、ソースノードから前記計算装置へ向かう内向きであり、
    前記ネットワークアドレスは、前記ソースノードと関連づけられている、
    請求項1のコンピュータプログラム。
  4. 前記複数のソフトウェアプログラムファイルのうち少なくとも一つのソフトウェアプログラムファイルは、実行可能ファイルであり、
    前記複数のソフトウェアプログラムファイルのうち別の少なくとも一つのソフトウェアプログラムファイルは、前記プロセスにロードされたライブラリモジュールである、
    請求項1乃至3いずれかのコンピュータプログラム。
  5. 前記プロセッサは、更に、
    前記ソフトウェアプログラムファイルのなかに信頼されないものがあると判定し、なおかつ、前記ネットワークアクセス試行と関連付けられた前記ネットワークアドレスが前記許可ネットワークアドレスの組に含まれないと判定した場合に、前記ネットワークアクセス試行を阻止する、
    請求項1乃至4いずれかのコンピュータプログラム。
  6. 前記プロセッサは、更に、
    前記ソフトウェアプログラムファイルがすべて信頼されると判定した場合、前記ネットワークアクセス試行を許可する、
    請求項1乃至5いずれかのコンピュータプログラム。
  7. 前記プロセッサは、
    ネットワークアクセスポリシーが、前記ソフトウェアプログラムファイルのなかに信頼されないものがあると判定した場合に前記ネットワークアクセス試行を許可しない場合であっても、前記ネットワークアクセス試行と関連づけられた前記ネットワークアドレスが、前記許可ネットワークアドレスの組に含まれる場合は、前記ネットワークアクセス試行を許可する、
    請求項1乃至6いずれかのコンピュータプログラム。
  8. 前記プロセッサは、
    前記複数のソフトウェアプログラムファイルのなかに信頼されないものがあるかの判定において、ソフトウェアプログラムファイルがホワイトリストのなかで識別されない場合に、前記ソフトウェアプログラムファイルが信頼されないと判定する、
    請求項1乃至7いずれかのコンピュータプログラム。
  9. 前記プロセッサは、
    前記複数のソフトウェアプログラムファイルのなかに信頼されないものがあるかの判定において、
    信頼ソフトウェアプログラムファイルを識別するローカルキャッシュを検索して、ソフトウェアプログラムファイルが識別されるか判定し、
    前記ソフトウェアプログラムファイルがローカルキャッシュによって識別されない場合、前記ソフトウェアプログラムファイルの信頼性状態を、中央サーバに照会し、
    前記信頼性状態が、前記ソフトウェアプログラムファイルが信頼されることを示す場合に、前記ソフトウェアプログラムファイルを識別するよう、前記ローカルキャッシュを更新する、
    請求項1乃至8いずれかのコンピュータプログラム。
  10. 前記プロセッサは、
    前記ネットワークアクセス試行の遮断において、前記プロセスのなかにロードされたネットワークフックを使用して、前記ネットワークアクセス試行と関連付けられたアプリケーションプログラムインタフェースを遮断する
    請求項1乃至9いずれかのコンピュータプログラム。
  11. 前記プロセッサは、
    前記プロセスにマッピングされた複数のソフトウェアプログラムファイルの判定において、オペレーティングシステムのアプリケーションプログラムインタフェースを使用する、
    請求項1乃至10いずれかのコンピュータプログラム。
  12. 前記プロセッサは、更に、
    前記複数のソフトウェアプログラムファイルのなかに信頼されないものがあると判定した場合に、前記ネットワークアクセス試行に関係する情報をログ記録する
    請求項1乃至11いずれかのコンピュータプログラム。
  13. 保護モジュールと、前記保護モジュールに関連付けられた命令を実行可能なプロセッサとを備え、前記プロセッサが前記命令を実行することにより、
    計算装置上で実行しているプロセスと関連付けられたネットワークアクセス試行を、前記計算装置上で遮断し、
    前記プロセスにマッピングされた複数のソフトウェアプログラムファイルを判定し、
    前記複数のソフトウェアプログラムファイルのなかに信頼されないものがあるかを判定し、
    前記ソフトウェアプログラムファイルのなかに信頼されないものがあると判定した場合、前記ネットワークアクセス試行と関連付けられたネットワークアドレスが許可ネットワークアドレスの組のなかに含まれているか判定し、
    前記ネットワークアドレスが前記許可ネットワークアドレスの組のなかに含まれていると判定した場合、前記ネットワークアクセス試行を許可する、
    装置。
  14. 前記複数のソフトウェアプログラムファイルのうち少なくとも一つのソフトウェアプログラムファイルは、実行可能ファイルであり、
    前記複数のソフトウェアプログラムファイルのうち別の少なくとも一つのソフトウェアプログラムファイルは、前記プロセスにロードされたライブラリモジュールである、
    請求項13の装置。
  15. 前記プロセッサは、更に、
    前記ソフトウェアプログラムファイルのなかに信頼されないものがあると判定し、なおかつ、前記ネットワークアクセス試行と関連付けられた前記ネットワークアドレスが前記許可ネットワークアドレスの組に含まれないと判定した場合に、前記ネットワークアクセス試行を阻止する、
    請求項13又は14の装置。
  16. 前記プロセッサは、
    ネットワークアクセスポリシーが、前記ソフトウェアプログラムファイルのなかに信頼されないものがあると判定した場合に前記ネットワークアクセス試行を許可しない場合であっても、前記ネットワークアクセス試行と関連づけられた前記ネットワークアドレスが、前記許可ネットワークアドレスの組に含まれる場合は、前記ネットワークアクセス試行を許可する、
    請求項13乃至15いずれかの装置。
  17. 前記プロセッサは、
    前記複数のソフトウェアプログラムファイルのなかに信頼されないものがあるかの判定において、ソフトウェアプログラムファイルがホワイトリストのなかで識別されない場合に、前記ソフトウェアプログラムファイルが信頼されないと判定する、
    請求項13乃至16いずれかの装置。
  18. 前記プロセッサは、
    前記プロセスにマッピングされた複数のソフトウェアプログラムファイルの判定において、オペレーティングシステムのアプリケーションプログラムインタフェースを使用する、
    請求項13乃至17いずれかの装置。
  19. 計算装置上で実行しているプロセスと関連付けられたネットワークアクセス試行を、前記計算装置上で遮断し、
    前記プロセスにマッピングされた複数のソフトウェアプログラムファイルを判定し、
    前記複数のソフトウェアプログラムファイルのなかに信頼されないものがあるかを判定し、
    前記ソフトウェアプログラムファイルのなかに信頼されないものがあると判定した場合、前記ネットワークアクセス試行と関連付けられたネットワークアドレスが許可ネットワークアドレスの組のなかに含まれているか判定し、
    前記ネットワークアドレスが前記許可ネットワークアドレスの組のなかに含まれていると判定した場合、前記ネットワークアクセス試行を許可する、
    方法。
  20. 前記ネットワークアクセス試行は、前記計算装置から宛先ノードへ向かう外向きであり、
    前記ネットワークアドレスは、前記宛先ノードと関連付けられている、
    請求項19の方法。
  21. 前記複数のソフトウェアプログラムファイルのなかに信頼されないものがあるかの判定において、ソフトウェアプログラムファイルがホワイトリストのなかで識別されない場合に、前記ソフトウェアプログラムファイルが信頼されないと判定する、
    請求項19又は20の方法。
  22. 前記複数のソフトウェアプログラムファイルのうち少なくとも一つのソフトウェアプログラムファイルは、実行可能ファイルであり、
    前記複数のソフトウェアプログラムファイルのうち別の少なくとも一つのソフトウェアプログラムファイルは、前記プロセスにロードされたライブラリモジュールである、
    請求項19乃至21いずれかの方法。
JP2015227446A 2010-07-28 2015-11-20 悪意のあるソフトウェアに対するローカル保護をするシステム及び方法 Active JP6086968B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/844,892 2010-07-28
US12/844,892 US8925101B2 (en) 2010-07-28 2010-07-28 System and method for local protection against malicious software

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2013521767A Division JP5845258B2 (ja) 2010-07-28 2011-01-10 悪意のあるソフトウェアに対するローカル保護をするシステム及び方法

Publications (2)

Publication Number Publication Date
JP2016053979A JP2016053979A (ja) 2016-04-14
JP6086968B2 true JP6086968B2 (ja) 2017-03-01

Family

ID=43838166

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2013521767A Active JP5845258B2 (ja) 2010-07-28 2011-01-10 悪意のあるソフトウェアに対するローカル保護をするシステム及び方法
JP2015227446A Active JP6086968B2 (ja) 2010-07-28 2015-11-20 悪意のあるソフトウェアに対するローカル保護をするシステム及び方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2013521767A Active JP5845258B2 (ja) 2010-07-28 2011-01-10 悪意のあるソフトウェアに対するローカル保護をするシステム及び方法

Country Status (6)

Country Link
US (2) US8925101B2 (ja)
EP (1) EP2599026B1 (ja)
JP (2) JP5845258B2 (ja)
CN (1) CN103229185B (ja)
AU (1) AU2011283160B2 (ja)
WO (1) WO2012015485A1 (ja)

Families Citing this family (147)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7840968B1 (en) 2003-12-17 2010-11-23 Mcafee, Inc. Method and system for containment of usage of language interfaces
WO2006101549A2 (en) 2004-12-03 2006-09-28 Whitecell Software, Inc. Secure system for allowing the execution of authorized computer program code
US7856661B1 (en) 2005-07-14 2010-12-21 Mcafee, Inc. Classification of software on networked systems
US7757269B1 (en) 2006-02-02 2010-07-13 Mcafee, Inc. Enforcing alignment of approved changes and deployed changes in the software change life-cycle
US7895573B1 (en) 2006-03-27 2011-02-22 Mcafee, Inc. Execution environment file inventory
US8555404B1 (en) 2006-05-18 2013-10-08 Mcafee, Inc. Connectivity-based authorization
US9690168B2 (en) 2006-11-20 2017-06-27 Red.Com, Inc. Focus assist system and method
US7544919B2 (en) 2006-11-20 2009-06-09 Red.Com, Inc. Focus assist system and method
US9424154B2 (en) 2007-01-10 2016-08-23 Mcafee, Inc. Method of and system for computer system state checks
US8332929B1 (en) 2007-01-10 2012-12-11 Mcafee, Inc. Method and apparatus for process enforced configuration management
US8701189B2 (en) 2008-01-31 2014-04-15 Mcafee, Inc. Method of and system for computer system denial-of-service protection
US8615502B2 (en) 2008-04-18 2013-12-24 Mcafee, Inc. Method of and system for reverse mapping vnode pointers
US8544003B1 (en) 2008-12-11 2013-09-24 Mcafee, Inc. System and method for managing virtual machine configurations
US8341627B2 (en) * 2009-08-21 2012-12-25 Mcafee, Inc. Method and system for providing user space address protection from writable memory area in a virtual environment
US8381284B2 (en) 2009-08-21 2013-02-19 Mcafee, Inc. System and method for enforcing security policies in a virtual environment
US9552497B2 (en) * 2009-11-10 2017-01-24 Mcafee, Inc. System and method for preventing data loss using virtual machine wrapped applications
US8925101B2 (en) 2010-07-28 2014-12-30 Mcafee, Inc. System and method for local protection against malicious software
US8938800B2 (en) 2010-07-28 2015-01-20 Mcafee, Inc. System and method for network level protection against malicious software
US8549003B1 (en) 2010-09-12 2013-10-01 Mcafee, Inc. System and method for clustering host inventories
US9075993B2 (en) 2011-01-24 2015-07-07 Mcafee, Inc. System and method for selectively grouping and managing program files
US9112830B2 (en) 2011-02-23 2015-08-18 Mcafee, Inc. System and method for interlocking a host and a gateway
US20130179287A1 (en) * 2011-08-08 2013-07-11 Gennady SLOBODSKIY System and method for electronic distribution of software and data
US8776040B2 (en) 2011-08-19 2014-07-08 International Business Machines Corporation Protection for unauthorized firmware and software upgrades to consumer electronic devices
US8856771B2 (en) * 2011-08-19 2014-10-07 International Business Machines Corporation Protection for unauthorized firmware and software upgrades to consumer electronic devices
US9594881B2 (en) 2011-09-09 2017-03-14 Mcafee, Inc. System and method for passive threat detection using virtual memory inspection
US8694738B2 (en) 2011-10-11 2014-04-08 Mcafee, Inc. System and method for critical address space protection in a hypervisor environment
US8973144B2 (en) 2011-10-13 2015-03-03 Mcafee, Inc. System and method for kernel rootkit protection in a hypervisor environment
US9069586B2 (en) 2011-10-13 2015-06-30 Mcafee, Inc. System and method for kernel rootkit protection in a hypervisor environment
US8713668B2 (en) 2011-10-17 2014-04-29 Mcafee, Inc. System and method for redirected firewall discovery in a network environment
US8800024B2 (en) 2011-10-17 2014-08-05 Mcafee, Inc. System and method for host-initiated firewall discovery in a network environment
US9703950B2 (en) * 2012-03-30 2017-07-11 Irdeto B.V. Method and system for preventing and detecting security threats
US8739272B1 (en) 2012-04-02 2014-05-27 Mcafee, Inc. System and method for interlocking a host and a gateway
US9349011B2 (en) 2012-05-16 2016-05-24 Fisher-Rosemount Systems, Inc. Methods and apparatus to identify a degradation of integrity of a process control system
US8756689B2 (en) 2012-06-29 2014-06-17 Intel Corporation Method, system, and device for securely handling virtual function driver communications with a physical function driver
US10169571B1 (en) * 2012-07-18 2019-01-01 Sequitur Labs, Inc. System and method for secure, policy-based access control for mobile computing devices
US9294440B1 (en) * 2012-09-07 2016-03-22 Amazon Technologies, Inc. Secure inter-zone data communication
US11188652B2 (en) 2012-10-02 2021-11-30 Mordecai Barkan Access management and credential protection
US9342695B2 (en) 2012-10-02 2016-05-17 Mordecai Barkan Secured automated or semi-automated systems
US9092628B2 (en) * 2012-10-02 2015-07-28 Mordecai Barkan Secure computer architectures, systems, and applications
US9672360B2 (en) 2012-10-02 2017-06-06 Mordecai Barkan Secure computer architectures, systems, and applications
US9672374B2 (en) * 2012-10-19 2017-06-06 Mcafee, Inc. Secure disk access control
US9210128B2 (en) * 2012-10-25 2015-12-08 Check Point Software Technologies Ltd. Filtering of applications for access to an enterprise network
US8973146B2 (en) 2012-12-27 2015-03-03 Mcafee, Inc. Herd based scan avoidance system in a network environment
US8856330B2 (en) 2013-03-04 2014-10-07 Fmr Llc System for determining whether to block internet access of a portable system based on its current network configuration
US9882919B2 (en) 2013-04-10 2018-01-30 Illumio, Inc. Distributed network security using a logical multi-dimensional label-based policy model
AU2014251011B2 (en) 2013-04-10 2016-03-10 Illumio, Inc. Distributed network management using a logical multi-dimensional label-based policy model
US9641349B2 (en) * 2013-04-22 2017-05-02 Salesforce.Com, Inc. Systems and methods of viral enablement of features by peer-to-peer connection
EP2840492A1 (en) * 2013-08-23 2015-02-25 British Telecommunications public limited company Method and apparatus for modifying a computer program in a trusted manner
US9560173B2 (en) * 2013-10-22 2017-01-31 Vmware, Inc. Techniques for improving SYN cache performance
WO2015060857A1 (en) 2013-10-24 2015-04-30 Mcafee, Inc. Agent assisted malicious application blocking in a network environment
CN105683943B (zh) * 2013-11-04 2019-08-23 伊尔拉米公司 使用基于逻辑多维标签的策略模型的分布式网络安全
US9503465B2 (en) 2013-11-14 2016-11-22 At&T Intellectual Property I, L.P. Methods and apparatus to identify malicious activity in a network
CN103916288B (zh) * 2013-12-27 2017-11-28 哈尔滨安天科技股份有限公司 一种基于网关与本地的Botnet检测方法及系统
US20150234703A1 (en) * 2014-02-20 2015-08-20 Netapp, Inc. System and method to perform a backup operation using one or more attributes of files
CN103823687A (zh) * 2014-03-17 2014-05-28 联想(北京)有限公司 信息处理方法和设备
US9917851B2 (en) 2014-04-28 2018-03-13 Sophos Limited Intrusion detection using a heartbeat
US10122753B2 (en) 2014-04-28 2018-11-06 Sophos Limited Using reputation to avoid false malware detections
US10049033B2 (en) * 2014-06-03 2018-08-14 Sap Se Application gateway for cloud computing systems
US9866582B2 (en) 2014-06-30 2018-01-09 Paypal, Inc. Detection of scripted activity
US9413740B2 (en) * 2014-07-22 2016-08-09 Microsoft Technology Licensing, Llc Establishing secure computing devices for virtualization and administration
US10462185B2 (en) 2014-09-05 2019-10-29 Sequitur Labs, Inc. Policy-managed secure code execution and messaging for computing devices and computing device security
US9537841B2 (en) 2014-09-14 2017-01-03 Sophos Limited Key management for compromised enterprise endpoints
US9965627B2 (en) 2014-09-14 2018-05-08 Sophos Limited Labeling objects on an endpoint for encryption management
US10122687B2 (en) 2014-09-14 2018-11-06 Sophos Limited Firewall techniques for colored objects on endpoints
JP6334069B2 (ja) * 2014-11-25 2018-05-30 エンサイロ リミテッドenSilo Ltd. 悪意のあるコードの検出の精度保証のためのシステムおよび方法
WO2016097757A1 (en) 2014-12-18 2016-06-23 Sophos Limited A method and system for network access control based on traffic monitoring and vulnerability detection using process related information
WO2016113911A1 (ja) 2015-01-16 2016-07-21 三菱電機株式会社 データ判定装置、データ判定方法及びプログラム
CN105991482A (zh) * 2015-03-16 2016-10-05 美商艾尔康太平洋股份有限公司 网络信息撷取系统及其方法
US10492121B2 (en) * 2015-03-31 2019-11-26 Hewlett-Packard Development Company, L.P. Application access based on network
US10685130B2 (en) 2015-04-21 2020-06-16 Sequitur Labs Inc. System and methods for context-aware and situation-aware secure, policy-based access control for computing devices
US11847237B1 (en) 2015-04-28 2023-12-19 Sequitur Labs, Inc. Secure data protection and encryption techniques for computing devices and information storage
US11425168B2 (en) 2015-05-14 2022-08-23 Sequitur Labs, Inc. System and methods for facilitating secure computing device control and operation
US10311234B2 (en) * 2015-06-26 2019-06-04 Quick Heal Technologies Private Limited Anti-ransomware
US10691476B2 (en) * 2015-06-27 2020-06-23 Mcafee, Llc Protection of sensitive data
US11093613B2 (en) * 2015-08-25 2021-08-17 Volexity, Inc. Systems methods and devices for memory analysis and visualization
GB2544309B (en) * 2015-11-12 2020-01-22 F Secure Corp Advanced local-network threat response
US20170149804A1 (en) * 2015-11-20 2017-05-25 Lastline, Inc. Methods and systems for malware host correlation
US9800606B1 (en) * 2015-11-25 2017-10-24 Symantec Corporation Systems and methods for evaluating network security
CN105404583B (zh) * 2015-12-04 2017-10-20 中科信息安全共性技术国家工程研究中心有限公司 一种apk的快速检测及提高单位资源利用率的方法
CN105530255B (zh) * 2015-12-16 2019-03-29 网宿科技股份有限公司 验证请求数据的方法及装置
US20190089595A1 (en) * 2017-09-18 2019-03-21 Cyber 2.0 (2015) LTD Automatic security configuration
CA3010645A1 (en) * 2016-01-07 2017-07-13 Genetec Inc. Network sanitization for dedicated communication function and edge enforcement
US10911472B2 (en) * 2016-02-25 2021-02-02 Imperva, Inc. Techniques for targeted botnet protection
RU2634181C1 (ru) * 2016-06-02 2017-10-24 Акционерное общество "Лаборатория Касперского" Система и способ обнаружения вредоносных компьютерных систем
US10402577B2 (en) * 2016-06-03 2019-09-03 Honeywell International Inc. Apparatus and method for device whitelisting and blacklisting to override protections for allowed media at nodes of a protected system
US10402559B2 (en) 2016-06-03 2019-09-03 Honeywell International Inc. System and method supporting secure data transfer into and out of protected systems using removable media
US10812517B2 (en) 2016-06-03 2020-10-20 Honeywell International Inc. System and method for bridging cyber-security threat intelligence into a protected system using secure media
US10643007B2 (en) 2016-06-03 2020-05-05 Honeywell International Inc. System and method for auditing file access to secure media by nodes of a protected system
US10614219B2 (en) 2016-06-03 2020-04-07 Honeywell International Inc. Apparatus and method for locking and unlocking removable media for use inside and outside protected systems
US10205726B2 (en) 2016-06-03 2019-02-12 Honeywell International Inc. Apparatus and method for preventing file access by nodes of a protected system
US10715533B2 (en) * 2016-07-26 2020-07-14 Microsoft Technology Licensing, Llc. Remediation for ransomware attacks on cloud drive folders
US10360021B2 (en) * 2016-08-19 2019-07-23 Veniam, Inc. Systems and methods for reliable software update in a network of moving things including, for example, autonomous vehicles
CN106406758B (zh) * 2016-09-05 2019-06-18 华为技术有限公司 一种基于分布式存储系统的数据处理方法及存储设备
US10700865B1 (en) 2016-10-21 2020-06-30 Sequitur Labs Inc. System and method for granting secure access to computing services hidden in trusted computing environments to an unsecure requestor
US9756061B1 (en) * 2016-11-18 2017-09-05 Extrahop Networks, Inc. Detecting attacks using passive network monitoring
US10476673B2 (en) 2017-03-22 2019-11-12 Extrahop Networks, Inc. Managing session secrets for continuous packet capture systems
CN107124717A (zh) * 2017-03-31 2017-09-01 捷开通讯(深圳)有限公司 一种网络连接管理方法、移动终端及存储装置
US10873588B2 (en) * 2017-08-01 2020-12-22 Pc Matic, Inc. System, method, and apparatus for computer security
US10783239B2 (en) * 2017-08-01 2020-09-22 Pc Matic, Inc. System, method, and apparatus for computer security
US11487868B2 (en) * 2017-08-01 2022-11-01 Pc Matic, Inc. System, method, and apparatus for computer security
JP6728113B2 (ja) * 2017-08-22 2020-07-22 株式会社東芝 情報処理装置、情報処理方法、および情報処理プログラム
US10944720B2 (en) * 2017-08-24 2021-03-09 Pensando Systems Inc. Methods and systems for network security
US9967292B1 (en) 2017-10-25 2018-05-08 Extrahop Networks, Inc. Inline secret sharing
US10990671B2 (en) 2018-01-12 2021-04-27 Honeywell International Inc. System and method for implementing secure media exchange on a single board computer
US20190222610A1 (en) * 2018-01-18 2019-07-18 Illumio, Inc. User-Based Visibility and Control of a Segmentation Policy
US10389574B1 (en) 2018-02-07 2019-08-20 Extrahop Networks, Inc. Ranking alerts based on network monitoring
US10038611B1 (en) 2018-02-08 2018-07-31 Extrahop Networks, Inc. Personalization of alerts based on network monitoring
US10270794B1 (en) 2018-02-09 2019-04-23 Extrahop Networks, Inc. Detection of denial of service attacks
CN108566643A (zh) * 2018-04-24 2018-09-21 深信服科技股份有限公司 App访问控制方法、系统、终端设备及存储介质
US10949400B2 (en) * 2018-05-09 2021-03-16 Palantir Technologies Inc. Systems and methods for tamper-resistant activity logging
US10411978B1 (en) 2018-08-09 2019-09-10 Extrahop Networks, Inc. Correlating causes and effects associated with network activity
US10594718B1 (en) 2018-08-21 2020-03-17 Extrahop Networks, Inc. Managing incident response operations based on monitored network activity
US10776488B2 (en) * 2018-09-24 2020-09-15 Dell Products L.P. Extend root of trust to include firmware of individual components of a device
US11188622B2 (en) * 2018-09-28 2021-11-30 Daniel Chien Systems and methods for computer security
US11425170B2 (en) 2018-10-11 2022-08-23 Honeywell International Inc. System and method for deploying and configuring cyber-security protection solution using portable storage device
JP6971958B2 (ja) * 2018-12-10 2021-11-24 株式会社東芝 情報処理装置、情報処理方法、および情報処理プログラム
CN109309690B (zh) * 2018-12-28 2019-04-02 中国人民解放军国防科技大学 一种基于报文认证码的软件白名单控制方法
CN109726548B (zh) * 2018-12-29 2021-04-27 360企业安全技术(珠海)有限公司 应用程序行为的处理方法、服务器、系统及存储介质
US11063954B2 (en) * 2019-01-11 2021-07-13 Panasonic Avionics Corporation Networking methods and systems for transportation vehicle entertainment systems
US11609992B2 (en) * 2019-03-29 2023-03-21 Acronis International Gmbh Systems and methods for anti-malware scanning using automatically-created white lists
US11556650B2 (en) 2019-04-30 2023-01-17 International Business Machines Corporation Methods and systems for preventing utilization of problematic software
US10965702B2 (en) 2019-05-28 2021-03-30 Extrahop Networks, Inc. Detecting injection attacks using passive network monitoring
US11347858B2 (en) * 2019-07-22 2022-05-31 Dell Products L.P. System and method to inhibit firmware downgrade
US11165814B2 (en) 2019-07-29 2021-11-02 Extrahop Networks, Inc. Modifying triage information based on network monitoring
US11388072B2 (en) 2019-08-05 2022-07-12 Extrahop Networks, Inc. Correlating network traffic that crosses opaque endpoints
US10742530B1 (en) 2019-08-05 2020-08-11 Extrahop Networks, Inc. Correlating network traffic that crosses opaque endpoints
US10742677B1 (en) 2019-09-04 2020-08-11 Extrahop Networks, Inc. Automatic determination of user roles and asset types based on network monitoring
US11677754B2 (en) 2019-12-09 2023-06-13 Daniel Chien Access control systems and methods
US11165823B2 (en) 2019-12-17 2021-11-02 Extrahop Networks, Inc. Automated preemptive polymorphic deception
US11509463B2 (en) 2020-05-31 2022-11-22 Daniel Chien Timestamp-based shared key generation
US11438145B2 (en) 2020-05-31 2022-09-06 Daniel Chien Shared key generation based on dual clocks
US11431492B2 (en) * 2020-06-25 2022-08-30 At&T Intellectual Property I, L.P. Mutable encrypted system
JP7074805B2 (ja) * 2020-07-01 2022-05-24 株式会社東芝 情報処理装置、情報処理方法、および情報処理プログラム
CN111953565B (zh) * 2020-08-10 2022-03-01 苏州浪潮智能科技有限公司 一种虚拟化环境中带宽检测的方法、系统、设备及介质
US11636219B2 (en) * 2020-09-11 2023-04-25 Pc Matic, Inc. System, method, and apparatus for enhanced whitelisting
US11275828B1 (en) * 2020-09-11 2022-03-15 Pc Matic, Inc. System, method, and apparatus for enhanced whitelisting
US11507675B2 (en) * 2020-09-11 2022-11-22 Pc Matic, Inc. System, method, and apparatus for enhanced whitelisting
WO2022066910A1 (en) 2020-09-23 2022-03-31 Extrahop Networks, Inc. Monitoring encrypted network traffic
US11463466B2 (en) 2020-09-23 2022-10-04 Extrahop Networks, Inc. Monitoring encrypted network traffic
US20220231990A1 (en) * 2021-01-20 2022-07-21 AVAST Software s.r.o. Intra-lan network device isolation
US11349861B1 (en) 2021-06-18 2022-05-31 Extrahop Networks, Inc. Identifying network entities based on beaconing activity
US11914709B2 (en) 2021-07-20 2024-02-27 Bank Of America Corporation Hybrid machine learning and knowledge graph approach for estimating and mitigating the spread of malicious software
US11296967B1 (en) 2021-09-23 2022-04-05 Extrahop Networks, Inc. Combining passive network analysis and active probing
CN113849246B (zh) * 2021-09-24 2024-01-23 统信软件技术有限公司 插件识别方法、插件加载方法、计算设备及存储介质
US20230195881A1 (en) * 2021-12-16 2023-06-22 Hewlett-Packard Development Company, L.P. Virtual machines to install untrusted executable codes
US11843606B2 (en) 2022-03-30 2023-12-12 Extrahop Networks, Inc. Detecting abnormal data access based on data similarity
US11818176B1 (en) 2022-06-06 2023-11-14 Netskope, Inc. Configuring IoT devices for policy enforcement

Family Cites Families (351)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4982430A (en) 1985-04-24 1991-01-01 General Instrument Corporation Bootstrap channel security arrangement for communication network
US4688169A (en) 1985-05-30 1987-08-18 Joshi Bhagirath S Computer software security system
US5155847A (en) 1988-08-03 1992-10-13 Minicom Data Corporation Method and apparatus for updating software at remote locations
US5560008A (en) 1989-05-15 1996-09-24 International Business Machines Corporation Remote authentication and authorization in a distributed data processing system
CA2010591C (en) 1989-10-20 1999-01-26 Phillip M. Adams Kernels, description tables and device drivers
US5222134A (en) 1990-11-07 1993-06-22 Tau Systems Corporation Secure system for activating personal computer software at remote locations
US5390314A (en) 1992-10-09 1995-02-14 American Airlines, Inc. Method and apparatus for developing scripts that access mainframe resources that can be executed on various computer systems having different interface languages without modification
US5339261A (en) 1992-10-22 1994-08-16 Base 10 Systems, Inc. System for operating application software in a safety critical environment
US5584009A (en) 1993-10-18 1996-12-10 Cyrix Corporation System and method of retiring store data from a write buffer
JP3777196B2 (ja) 1994-05-10 2006-05-24 富士通株式会社 クライアント/サーバシステム用の通信制御装置
JP3042341B2 (ja) 1994-11-30 2000-05-15 日本電気株式会社 クラスタ結合型マルチプロセッサシステムにおけるローカル入出力制御方法
US6282712B1 (en) 1995-03-10 2001-08-28 Microsoft Corporation Automatic software installation on heterogeneous networked computer systems
US5699513A (en) 1995-03-31 1997-12-16 Motorola, Inc. Method for secure network access via message intercept
US5787427A (en) 1996-01-03 1998-07-28 International Business Machines Corporation Information handling system, method, and article of manufacture for efficient object security processing by grouping objects sharing common control access policies
US5842017A (en) 1996-01-29 1998-11-24 Digital Equipment Corporation Method and apparatus for forming a translation unit
US5907709A (en) 1996-02-08 1999-05-25 Inprise Corporation Development system with methods for detecting invalid use and management of resources and memory at runtime
US5884298A (en) 1996-03-29 1999-03-16 Cygnet Storage Solutions, Inc. Method for accessing and updating a library of optical discs
US5907708A (en) 1996-06-03 1999-05-25 Sun Microsystems, Inc. System and method for facilitating avoidance of an exception of a predetermined type in a digital computer system by providing fix-up code for an instruction in response to detection of an exception condition resulting from execution thereof
US5787177A (en) 1996-08-01 1998-07-28 Harris Corporation Integrated network security access control system
US5926832A (en) 1996-09-26 1999-07-20 Transmeta Corporation Method and apparatus for aliasing memory data in an advanced microprocessor
US5991881A (en) 1996-11-08 1999-11-23 Harris Corporation Network surveillance system
US5987611A (en) 1996-12-31 1999-11-16 Zone Labs, Inc. System and methodology for managing internet access on a per application basis for client computers connected to the internet
US6141698A (en) 1997-01-29 2000-10-31 Network Commerce Inc. Method and system for injecting new code into existing application code
US5944839A (en) 1997-03-19 1999-08-31 Symantec Corporation System and method for automatically maintaining a computer system
US6587877B1 (en) 1997-03-25 2003-07-01 Lucent Technologies Inc. Management of time and expense when communicating between a host and a communication network
US6192475B1 (en) 1997-03-31 2001-02-20 David R. Wallace System and method for cloaking software
US6167522A (en) 1997-04-01 2000-12-26 Sun Microsystems, Inc. Method and apparatus for providing security for servers executing application programs received via a network
US6356957B2 (en) 1997-04-03 2002-03-12 Hewlett-Packard Company Method for emulating native object oriented foundation classes on a target object oriented programming system using a template library
US6073142A (en) 1997-06-23 2000-06-06 Park City Group Automated post office based rule analysis of e-mail messages and other data objects for controlled distribution in network environments
US6275938B1 (en) 1997-08-28 2001-08-14 Microsoft Corporation Security enhancement for untrusted executable code
US6192401B1 (en) 1997-10-21 2001-02-20 Sun Microsystems, Inc. System and method for determining cluster membership in a heterogeneous distributed system
US6393465B2 (en) 1997-11-25 2002-05-21 Nixmail Corporation Junk electronic mail detector and eliminator
US5987610A (en) 1998-02-12 1999-11-16 Ameritech Corporation Computer virus screening methods and systems
CN1118772C (zh) 1998-05-06 2003-08-20 松下电器产业株式会社 数字数据发送接收系统及其方法
US6795966B1 (en) 1998-05-15 2004-09-21 Vmware, Inc. Mechanism for restoring, porting, replicating and checkpointing computer systems using state extraction
US6442686B1 (en) 1998-07-02 2002-08-27 Networks Associates Technology, Inc. System and methodology for messaging server-based management and enforcement of crypto policies
US6182142B1 (en) 1998-07-10 2001-01-30 Encommerce, Inc. Distributed access management of information resources
US6338149B1 (en) 1998-07-31 2002-01-08 Westinghouse Electric Company Llc Change monitoring system for a computer system
US6546425B1 (en) 1998-10-09 2003-04-08 Netmotion Wireless, Inc. Method and apparatus for providing mobile and other intermittent connectivity in a computing environment
JP3753873B2 (ja) 1998-11-11 2006-03-08 株式会社島津製作所 分光光度計
JP3522141B2 (ja) 1999-01-28 2004-04-26 富士通株式会社 修正プログラムを継承したプログラムの自動生成方法、プログラム自動生成装置及び修正プログラムを継承したプログラムを自動生成するプログラムを記録した記録媒体
US6969352B2 (en) 1999-06-22 2005-11-29 Teratech Corporation Ultrasound probe with integrated electronics
US6453468B1 (en) 1999-06-30 2002-09-17 B-Hub, Inc. Methods for improving reliability while upgrading software programs in a clustered computer system
US6496477B1 (en) 1999-07-09 2002-12-17 Texas Instruments Incorporated Processes, articles, and packets for network path diversity in media over packet applications
US6567857B1 (en) 1999-07-29 2003-05-20 Sun Microsystems, Inc. Method and apparatus for dynamic proxy insertion in network traffic flow
US7340684B2 (en) 1999-08-19 2008-03-04 National Instruments Corporation System and method for programmatically generating a second graphical program based on a first graphical program
US6256773B1 (en) 1999-08-31 2001-07-03 Accenture Llp System, method and article of manufacture for configuration management in a development architecture framework
US6990591B1 (en) 1999-11-18 2006-01-24 Secureworks, Inc. Method and system for remotely configuring and monitoring a communication device
US6321267B1 (en) * 1999-11-23 2001-11-20 Escom Corporation Method and apparatus for filtering junk email
US6662219B1 (en) 1999-12-15 2003-12-09 Microsoft Corporation System for determining at subgroup of nodes relative weight to represent cluster by obtaining exclusive possession of quorum resource
US6460050B1 (en) 1999-12-22 2002-10-01 Mark Raymond Pace Distributed content identification system
US6769008B1 (en) 2000-01-10 2004-07-27 Sun Microsystems, Inc. Method and apparatus for dynamically altering configurations of clustered computer systems
US7082456B2 (en) 2000-03-17 2006-07-25 Filesx Ltd. Accelerating responses to requests made by users to an internet
US6748534B1 (en) 2000-03-31 2004-06-08 Networks Associates, Inc. System and method for partitioned distributed scanning of a large dataset for viruses and other malware
US6941470B1 (en) 2000-04-07 2005-09-06 Everdream Corporation Protected execution environments within a computer system
CA2305078A1 (en) 2000-04-12 2001-10-12 Cloakware Corporation Tamper resistant software - mass data encoding
US7325127B2 (en) 2000-04-25 2008-01-29 Secure Data In Motion, Inc. Security server system
JP4700884B2 (ja) 2000-04-28 2011-06-15 インターナショナル・ビジネス・マシーンズ・コーポレーション コンピュータのセキュリティ情報を管理するための方法およびシステム
US6769115B1 (en) 2000-05-01 2004-07-27 Emc Corporation Adaptive interface for a software development environment
US6847993B1 (en) 2000-05-31 2005-01-25 International Business Machines Corporation Method, system and program products for managing cluster configurations
US6934755B1 (en) 2000-06-02 2005-08-23 Sun Microsystems, Inc. System and method for migrating processes on a network
US6611925B1 (en) 2000-06-13 2003-08-26 Networks Associates Technology, Inc. Single point of entry/origination item scanning within an enterprise or workgroup
US20030061506A1 (en) 2001-04-05 2003-03-27 Geoffrey Cooper System and method for security policy
US6901519B1 (en) 2000-06-22 2005-05-31 Infobahn, Inc. E-mail virus protection system and method
US8204999B2 (en) 2000-07-10 2012-06-19 Oracle International Corporation Query string processing
US7093239B1 (en) 2000-07-14 2006-08-15 Internet Security Systems, Inc. Computer immune system and method for detecting unwanted code in a computer system
US7350204B2 (en) 2000-07-24 2008-03-25 Microsoft Corporation Policies for secure software execution
DE60102934T2 (de) 2000-08-04 2005-03-10 Xtradyne Technologies Ag Verfahren und system für sitzungsbasierte berechtigung und zugangskontrolle für vernetzte anwendungsobjekte
AUPQ968100A0 (en) 2000-08-25 2000-09-21 Telstra Corporation Limited A management system
US20020165947A1 (en) 2000-09-25 2002-11-07 Crossbeam Systems, Inc. Network application apparatus
US7707305B2 (en) 2000-10-17 2010-04-27 Cisco Technology, Inc. Methods and apparatus for protecting against overload conditions on nodes of a distributed network
US7606898B1 (en) 2000-10-24 2009-10-20 Microsoft Corporation System and method for distributed management of shared computers
US7146305B2 (en) 2000-10-24 2006-12-05 Vcis, Inc. Analytical virtual machine
US6930985B1 (en) 2000-10-26 2005-08-16 Extreme Networks, Inc. Method and apparatus for management of configuration in a network
US7054930B1 (en) 2000-10-26 2006-05-30 Cisco Technology, Inc. System and method for propagating filters
US6834301B1 (en) 2000-11-08 2004-12-21 Networks Associates Technology, Inc. System and method for configuration, management, and monitoring of a computer network using inheritance
US6766334B1 (en) 2000-11-21 2004-07-20 Microsoft Corporation Project-based configuration management method and apparatus
US20020069367A1 (en) 2000-12-06 2002-06-06 Glen Tindal Network operating system data directory
US6907600B2 (en) 2000-12-27 2005-06-14 Intel Corporation Virtual translation lookaside buffer
JP2002244898A (ja) 2001-02-19 2002-08-30 Hitachi Ltd データベース管理プログラム及びデータベースシステム
US6993012B2 (en) 2001-02-20 2006-01-31 Innomedia Pte, Ltd Method for communicating audio data in a packet switched network
US7739497B1 (en) 2001-03-21 2010-06-15 Verizon Corporate Services Group Inc. Method and apparatus for anonymous IP datagram exchange using dynamic network address translation
WO2002093334A2 (en) 2001-04-06 2002-11-21 Symantec Corporation Temporal access control for computer virus outbreaks
US6918110B2 (en) 2001-04-11 2005-07-12 Hewlett-Packard Development Company, L.P. Dynamic instrumentation of an executable program by means of causing a breakpoint at the entry point of a function and providing instrumentation code
CN1141821C (zh) 2001-04-25 2004-03-10 数位联合电信股份有限公司 可重定向的连接上网系统
US6988101B2 (en) 2001-05-31 2006-01-17 International Business Machines Corporation Method, system, and computer program product for providing an extensible file system for accessing a foreign file system from a local data processing system
US6715050B2 (en) 2001-05-31 2004-03-30 Oracle International Corporation Storage access keys
US6988124B2 (en) 2001-06-06 2006-01-17 Microsoft Corporation Locating potentially identical objects across multiple computers based on stochastic partitioning of workload
US7290266B2 (en) 2001-06-14 2007-10-30 Cisco Technology, Inc. Access control by a real-time stateful reference monitor with a state collection training mode and a lockdown mode for detecting predetermined patterns of events indicative of requests for operating system resources resulting in a decision to allow or block activity identified in a sequence of events based on a rule set defining a processing policy
US7065767B2 (en) 2001-06-29 2006-06-20 Intel Corporation Managed hosting server auditing and change tracking
US7069330B1 (en) 2001-07-05 2006-06-27 Mcafee, Inc. Control of interaction between client computer applications and network resources
US20030023736A1 (en) 2001-07-12 2003-01-30 Kurt Abkemeier Method and system for filtering messages
US20030014667A1 (en) 2001-07-16 2003-01-16 Andrei Kolichtchak Buffer overflow attack detection and suppression
US6877088B2 (en) 2001-08-08 2005-04-05 Sun Microsystems, Inc. Methods and apparatus for controlling speculative execution of instructions based on a multiaccess memory condition
US7007302B1 (en) * 2001-08-31 2006-02-28 Mcafee, Inc. Efficient management and blocking of malicious code and hacking attempts in a network environment
US7010796B1 (en) 2001-09-28 2006-03-07 Emc Corporation Methods and apparatus providing remote operation of an application programming interface
US7278161B2 (en) 2001-10-01 2007-10-02 International Business Machines Corporation Protecting a data processing system from attack by a vandal who uses a vulnerability scanner
US7177267B2 (en) 2001-11-09 2007-02-13 Adc Dsl Systems, Inc. Hardware monitoring and configuration management
US7853643B1 (en) 2001-11-21 2010-12-14 Blue Titan Software, Inc. Web services-based computing resource lifecycle management
EP1315066A1 (en) 2001-11-21 2003-05-28 BRITISH TELECOMMUNICATIONS public limited company Computer security system
US7346781B2 (en) 2001-12-06 2008-03-18 Mcafee, Inc. Initiating execution of a computer program from an encrypted version of a computer program
US7159036B2 (en) 2001-12-10 2007-01-02 Mcafee, Inc. Updating data from a source computer to groups of destination computers
US7039949B2 (en) 2001-12-10 2006-05-02 Brian Ross Cartmell Method and system for blocking unwanted communications
US10033700B2 (en) 2001-12-12 2018-07-24 Intellectual Ventures I Llc Dynamic evaluation of access rights
CA2469633C (en) 2001-12-13 2011-06-14 Japan Science And Technology Agency Software safety execution system
US7398389B2 (en) 2001-12-20 2008-07-08 Coretrace Corporation Kernel-based network security infrastructure
US7096500B2 (en) 2001-12-21 2006-08-22 Mcafee, Inc. Predictive malware scanning of internet data
JP3906356B2 (ja) 2001-12-27 2007-04-18 独立行政法人情報通信研究機構 構文解析方法及び装置
US7743415B2 (en) 2002-01-31 2010-06-22 Riverbed Technology, Inc. Denial of service attacks characterization
US20030167399A1 (en) 2002-03-01 2003-09-04 Yves Audebert Method and system for performing post issuance configuration and data changes to a personal security device using a communications pipe
US6941449B2 (en) 2002-03-04 2005-09-06 Hewlett-Packard Development Company, L.P. Method and apparatus for performing critical tasks using speculative operations
US7600021B2 (en) 2002-04-03 2009-10-06 Microsoft Corporation Delta replication of source files and packages across networked resources
US20070253430A1 (en) 2002-04-23 2007-11-01 Minami John S Gigabit Ethernet Adapter
US7370360B2 (en) 2002-05-13 2008-05-06 International Business Machines Corporation Computer immune system and method for detecting unwanted code in a P-code or partially compiled native-code program executing within a virtual machine
US7823148B2 (en) 2002-05-22 2010-10-26 Oracle America, Inc. System and method for performing patch installation via a graphical user interface
US20030221190A1 (en) 2002-05-22 2003-11-27 Sun Microsystems, Inc. System and method for performing patch installation on multiple devices
US7024404B1 (en) 2002-05-28 2006-04-04 The State University Rutgers Retrieval and display of data objects using a cross-group ranking metric
US7512977B2 (en) * 2003-06-11 2009-03-31 Symantec Corporation Intrustion protection system utilizing layers
US8843903B1 (en) 2003-06-11 2014-09-23 Symantec Corporation Process tracking application layered system
US7823203B2 (en) 2002-06-17 2010-10-26 At&T Intellectual Property Ii, L.P. Method and device for detecting computer network intrusions
US7139916B2 (en) 2002-06-28 2006-11-21 Ebay, Inc. Method and system for monitoring user interaction with a computer
US8924484B2 (en) 2002-07-16 2014-12-30 Sonicwall, Inc. Active e-mail filter with challenge-response
US7522906B2 (en) 2002-08-09 2009-04-21 Wavelink Corporation Mobile unit configuration management for WLANs
US7647410B2 (en) 2002-08-28 2010-01-12 Procera Networks, Inc. Network rights management
US7624347B2 (en) 2002-09-17 2009-11-24 At&T Intellectual Property I, L.P. System and method for forwarding full header information in email messages
US7546333B2 (en) 2002-10-23 2009-06-09 Netapp, Inc. Methods and systems for predictive change management for access paths in networks
US20040088398A1 (en) 2002-11-06 2004-05-06 Barlow Douglas B. Systems and methods for providing autoconfiguration and management of nodes
US7353501B2 (en) 2002-11-18 2008-04-01 Microsoft Corporation Generic wrapper scheme
US7865931B1 (en) 2002-11-25 2011-01-04 Accenture Global Services Limited Universal authorization and access control security measure for applications
US7346927B2 (en) 2002-12-12 2008-03-18 Access Business Group International Llc System and method for storing and accessing secure data
US20040143749A1 (en) 2003-01-16 2004-07-22 Platformlogic, Inc. Behavior-based host-based intrusion prevention system
US20040167906A1 (en) 2003-02-25 2004-08-26 Smith Randolph C. System consolidation tool and method for patching multiple servers
US7024548B1 (en) 2003-03-10 2006-04-04 Cisco Technology, Inc. Methods and apparatus for auditing and tracking changes to an existing configuration of a computerized device
US7529754B2 (en) 2003-03-14 2009-05-05 Websense, Inc. System and method of monitoring and controlling application files
JPWO2004095285A1 (ja) 2003-03-28 2006-07-13 松下電器産業株式会社 記録媒体およびこれを用いる記録装置並びに再生装置
US8209680B1 (en) 2003-04-11 2012-06-26 Vmware, Inc. System and method for disk imaging on diverse computers
US7607010B2 (en) 2003-04-12 2009-10-20 Deep Nines, Inc. System and method for network edge data protection
US20050108516A1 (en) 2003-04-17 2005-05-19 Robert Balzer By-pass and tampering protection for application wrappers
US20040230963A1 (en) 2003-05-12 2004-11-18 Rothman Michael A. Method for updating firmware in an operating system agnostic manner
DE10324189A1 (de) 2003-05-28 2004-12-16 Robert Bosch Gmbh Verfahren zur Steuerung des Zugriffs auf eine Ressource einer Applikation in einer Datenverarbeitungseinrichtung
US7657599B2 (en) 2003-05-29 2010-02-02 Mindshare Design, Inc. Systems and methods for automatically updating electronic mail access lists
US20050108562A1 (en) 2003-06-18 2005-05-19 Khazan Roger I. Technique for detecting executable malicious code using a combination of static and dynamic analyses
US7827602B2 (en) 2003-06-30 2010-11-02 At&T Intellectual Property I, L.P. Network firewall host application identification and authentication
US7454489B2 (en) 2003-07-01 2008-11-18 International Business Machines Corporation System and method for accessing clusters of servers from the internet network
US7283517B2 (en) 2003-07-22 2007-10-16 Innomedia Pte Stand alone multi-media terminal adapter with network address translation and port partitioning
US7463590B2 (en) 2003-07-25 2008-12-09 Reflex Security, Inc. System and method for threat detection and response
US7526541B2 (en) 2003-07-29 2009-04-28 Enterasys Networks, Inc. System and method for dynamic network policy management
US7886093B1 (en) 2003-07-31 2011-02-08 Hewlett-Packard Development Company, L.P. Electronic device network supporting compression and decompression in electronic devices
US7925722B1 (en) 2003-08-01 2011-04-12 Avocent Corporation Method and apparatus for discovery and installation of network devices through a network
US7401104B2 (en) 2003-08-21 2008-07-15 Microsoft Corporation Systems and methods for synchronizing computer systems through an intermediary file system share or device
US7464408B1 (en) 2003-08-29 2008-12-09 Solidcore Systems, Inc. Damage containment by translation
US8539063B1 (en) 2003-08-29 2013-09-17 Mcafee, Inc. Method and system for containment of networked application client software by explicit human input
US20050065935A1 (en) * 2003-09-16 2005-03-24 Chebolu Anil Kumar Client comparison of network content with server-based categorization
US7360097B2 (en) 2003-09-30 2008-04-15 Check Point Software Technologies, Inc. System providing methodology for securing interfaces of executable files
US7930351B2 (en) 2003-10-14 2011-04-19 At&T Intellectual Property I, L.P. Identifying undesired email messages having attachments
US7280956B2 (en) 2003-10-24 2007-10-09 Microsoft Corporation System, method, and computer program product for file encryption, decryption and transfer
US7814554B1 (en) 2003-11-06 2010-10-12 Gary Dean Ragner Dynamic associative storage security for long-term memory storage devices
US20050114672A1 (en) 2003-11-20 2005-05-26 Encryptx Corporation Data rights management of digital information in a portable software permission wrapper
US7430760B2 (en) * 2003-12-05 2008-09-30 Microsoft Corporation Security-related programming interface
US20040172551A1 (en) 2003-12-09 2004-09-02 Michael Connor First response computer virus blocking.
US7600219B2 (en) 2003-12-10 2009-10-06 Sap Ag Method and system to monitor software interface updates and assess backward compatibility
US7546594B2 (en) 2003-12-15 2009-06-09 Microsoft Corporation System and method for updating installation components using an installation component delta patch in a networked environment
US7840968B1 (en) 2003-12-17 2010-11-23 Mcafee, Inc. Method and system for containment of usage of language interfaces
JP2005202523A (ja) * 2004-01-13 2005-07-28 Sony Corp コンピュータ装置及びプロセス制御方法
US7272654B1 (en) 2004-03-04 2007-09-18 Sandbox Networks, Inc. Virtualizing network-attached-storage (NAS) with a compact table that stores lossy hashes of file names and parent handles rather than full names
JP4480422B2 (ja) * 2004-03-05 2010-06-16 富士通株式会社 不正アクセス阻止方法、装置及びシステム並びにプログラム
US7783735B1 (en) 2004-03-22 2010-08-24 Mcafee, Inc. Containment of network communication
JP2005275839A (ja) * 2004-03-25 2005-10-06 Nec Corp ソフトウェア利用許可方法及びシステム
US7966658B2 (en) 2004-04-08 2011-06-21 The Regents Of The University Of California Detecting public network attacks using signatures and fast content analysis
US8060924B2 (en) 2004-04-19 2011-11-15 Lumension Security, Inc. On-line centralized and local authorization of executable files
US20060004875A1 (en) 2004-05-11 2006-01-05 Microsoft Corporation CMDB schema
US7890946B2 (en) 2004-05-11 2011-02-15 Microsoft Corporation Efficient patching
US7818377B2 (en) * 2004-05-24 2010-10-19 Microsoft Corporation Extended message rule architecture
WO2005117466A2 (en) 2004-05-24 2005-12-08 Computer Associates Think, Inc. Wireless manager and method for managing wireless devices
US7506170B2 (en) 2004-05-28 2009-03-17 Microsoft Corporation Method for secure access to multiple secure networks
US20050273858A1 (en) 2004-06-07 2005-12-08 Erez Zadok Stackable file systems and methods thereof
JP4341517B2 (ja) 2004-06-21 2009-10-07 日本電気株式会社 セキュリティポリシー管理システム、セキュリティポリシー管理方法およびプログラム
US7694150B1 (en) 2004-06-22 2010-04-06 Cisco Technology, Inc System and methods for integration of behavioral and signature based security
US20050289538A1 (en) 2004-06-23 2005-12-29 International Business Machines Corporation Deploying an application software on a virtual deployment target
US7203864B2 (en) 2004-06-25 2007-04-10 Hewlett-Packard Development Company, L.P. Method and system for clustering computers into peer groups and comparing individual computers to their peers
US7908653B2 (en) 2004-06-29 2011-03-15 Intel Corporation Method of improving computer security through sandboxing
KR101214326B1 (ko) 2004-07-09 2012-12-21 텔레폰악티에볼라겟엘엠에릭슨(펍) 멀티미디어 통신 시스템에서 여러 서비스를 제공하는 방법및 장치
US20060015501A1 (en) 2004-07-19 2006-01-19 International Business Machines Corporation System, method and program product to determine a time interval at which to check conditions to permit access to a file
US7937455B2 (en) 2004-07-28 2011-05-03 Oracle International Corporation Methods and systems for modifying nodes in a cluster environment
JP2006059217A (ja) * 2004-08-23 2006-03-02 Mitsubishi Electric Corp ソフトウェアメモリイメージ生成装置及び組み込み機器ソフトウェア更新システム及びプログラム
US7703090B2 (en) 2004-08-31 2010-04-20 Microsoft Corporation Patch un-installation
US7873955B1 (en) 2004-09-07 2011-01-18 Mcafee, Inc. Solidifying the executable software set of a computer
US7392374B2 (en) 2004-09-21 2008-06-24 Hewlett-Packard Development Company, L.P. Moving kernel configurations
US7561515B2 (en) 2004-09-27 2009-07-14 Intel Corporation Role-based network traffic-flow rate control
US8146145B2 (en) 2004-09-30 2012-03-27 Rockstar Bidco Lp Method and apparatus for enabling enhanced control of traffic propagation through a network firewall
US7506364B2 (en) 2004-10-01 2009-03-17 Microsoft Corporation Integrated access authorization
US20060080656A1 (en) 2004-10-12 2006-04-13 Microsoft Corporation Methods and instructions for patch management
US9329905B2 (en) 2004-10-15 2016-05-03 Emc Corporation Method and apparatus for configuring, monitoring and/or managing resource groups including a virtual machine
US10043008B2 (en) * 2004-10-29 2018-08-07 Microsoft Technology Licensing, Llc Efficient white listing of user-modifiable files
US7765538B2 (en) 2004-10-29 2010-07-27 Hewlett-Packard Development Company, L.P. Method and apparatus for determining which program patches to recommend for installation
WO2007001439A2 (en) 2004-11-04 2007-01-04 Telcordia Technologies, Inc. Detecting exploit code in network flows
US20060101277A1 (en) 2004-11-10 2006-05-11 Meenan Patrick A Detecting and remedying unauthorized computer programs
WO2006101549A2 (en) 2004-12-03 2006-09-28 Whitecell Software, Inc. Secure system for allowing the execution of authorized computer program code
US20060136338A1 (en) * 2004-12-16 2006-06-22 Intel Corporation Techniques for filtering attempts to access component core logic
US8479193B2 (en) 2004-12-17 2013-07-02 Intel Corporation Method, apparatus and system for enhancing the usability of virtual machines
US7765544B2 (en) 2004-12-17 2010-07-27 Intel Corporation Method, apparatus and system for improving security in a virtual machine host
US7607170B2 (en) 2004-12-22 2009-10-20 Radware Ltd. Stateful attack protection
US7752667B2 (en) 2004-12-28 2010-07-06 Lenovo (Singapore) Pte Ltd. Rapid virus scan using file signature created during file write
EP2739014B1 (en) 2005-01-24 2018-08-01 Citrix Systems, Inc. Systems and methods for performing caching of dynamically generated objects in a network
US7302558B2 (en) 2005-01-25 2007-11-27 Goldman Sachs & Co. Systems and methods to facilitate the creation and configuration management of computing systems
US7385938B1 (en) 2005-02-02 2008-06-10 At&T Corp. Method and apparatus for adjusting a network device configuration change distribution schedule
US20130247027A1 (en) 2005-02-16 2013-09-19 Solidcore Systems, Inc. Distribution and installation of solidified software on a computer
US8056138B2 (en) 2005-02-26 2011-11-08 International Business Machines Corporation System, method, and service for detecting improper manipulation of an application
US7836504B2 (en) 2005-03-01 2010-11-16 Microsoft Corporation On-access scan of memory for malware
US7685635B2 (en) 2005-03-11 2010-03-23 Microsoft Corporation Systems and methods for multi-level intercept processing in a virtual machine environment
TW200707417A (en) 2005-03-18 2007-02-16 Sony Corp Reproducing apparatus, reproducing method, program, program storage medium, data delivery system, data structure, and manufacturing method of recording medium
US7552479B1 (en) 2005-03-22 2009-06-23 Symantec Corporation Detecting shellcode that modifies IAT entries
US7770151B2 (en) 2005-04-07 2010-08-03 International Business Machines Corporation Automatic generation of solution deployment descriptors
US8590044B2 (en) 2005-04-14 2013-11-19 International Business Machines Corporation Selective virus scanning system and method
US7349931B2 (en) 2005-04-14 2008-03-25 Webroot Software, Inc. System and method for scanning obfuscated files for pestware
US7562385B2 (en) 2005-04-20 2009-07-14 Fuji Xerox Co., Ltd. Systems and methods for dynamic authentication using physical keys
US7603552B1 (en) 2005-05-04 2009-10-13 Mcafee, Inc. Piracy prevention using unique module translation
US7363463B2 (en) 2005-05-13 2008-04-22 Microsoft Corporation Method and system for caching address translations from multiple address spaces in virtual machines
US8001245B2 (en) 2005-06-01 2011-08-16 International Business Machines Corporation System and method for autonomically configurable router
WO2006137057A2 (en) 2005-06-21 2006-12-28 Onigma Ltd. A method and a system for providing comprehensive protection against leakage of sensitive information assets using host based agents, content- meta-data and rules-based policies
US8839450B2 (en) 2007-08-02 2014-09-16 Intel Corporation Secure vault service for software components within an execution environment
US7739721B2 (en) 2005-07-11 2010-06-15 Microsoft Corporation Per-user and system granular audit policy implementation
CN101218568A (zh) 2005-07-11 2008-07-09 微软公司 每-用户和系统粒度的审计策略实现
US7856661B1 (en) 2005-07-14 2010-12-21 Mcafee, Inc. Classification of software on networked systems
US7984493B2 (en) 2005-07-22 2011-07-19 Alcatel-Lucent DNS based enforcement for confinement and detection of network malicious activities
CN103984891A (zh) 2005-07-29 2014-08-13 Bit9公司 网络安全系统和方法
US7895651B2 (en) * 2005-07-29 2011-02-22 Bit 9, Inc. Content tracking in a network security system
US7962616B2 (en) 2005-08-11 2011-06-14 Micro Focus (Us), Inc. Real-time activity monitoring and reporting
US7340574B2 (en) 2005-08-30 2008-03-04 Rockwell Automation Technologies, Inc. Method and apparatus for synchronizing an industrial controller with a redundant controller
US8327353B2 (en) 2005-08-30 2012-12-04 Microsoft Corporation Hierarchical virtualization with a multi-level virtualization mechanism
US20070074199A1 (en) 2005-09-27 2007-03-29 Sebastian Schoenberg Method and apparatus for delivering microcode updates through virtual machine operations
EP1770915A1 (en) 2005-09-29 2007-04-04 Matsushita Electric Industrial Co., Ltd. Policy control in the evolved system architecture
US7712132B1 (en) 2005-10-06 2010-05-04 Ogilvie John W Detecting surreptitious spyware
US8131825B2 (en) 2005-10-07 2012-03-06 Citrix Systems, Inc. Method and a system for responding locally to requests for file metadata associated with files stored remotely
US7725737B2 (en) 2005-10-14 2010-05-25 Check Point Software Technologies, Inc. System and methodology providing secure workspace environment
US20070169079A1 (en) 2005-11-08 2007-07-19 Microsoft Corporation Software update management
US7836303B2 (en) 2005-12-09 2010-11-16 University Of Washington Web browser operating system
US7856538B2 (en) 2005-12-12 2010-12-21 Systex, Inc. Methods, systems and computer readable medium for detecting memory overflow conditions
US20070143851A1 (en) * 2005-12-21 2007-06-21 Fiberlink Method and systems for controlling access to computing resources based on known security vulnerabilities
US8296437B2 (en) 2005-12-29 2012-10-23 Logmein, Inc. Server-mediated setup and maintenance of peer-to-peer client computer communications
US20070174429A1 (en) 2006-01-24 2007-07-26 Citrix Systems, Inc. Methods and servers for establishing a connection between a client system and a virtual machine hosting a requested computing environment
US7757269B1 (en) 2006-02-02 2010-07-13 Mcafee, Inc. Enforcing alignment of approved changes and deployed changes in the software change life-cycle
JPWO2007100045A1 (ja) 2006-03-03 2009-07-23 日本電気株式会社 通信制御装置、通信制御システム、通信制御方法、および通信制御用プログラム
WO2007099273A1 (en) 2006-03-03 2007-09-07 Arm Limited Monitoring values of signals within an integrated circuit
US8621433B2 (en) 2006-03-20 2013-12-31 Microsoft Corporation Managing version information for software components
US7895573B1 (en) 2006-03-27 2011-02-22 Mcafee, Inc. Execution environment file inventory
US7752233B2 (en) 2006-03-29 2010-07-06 Massachusetts Institute Of Technology Techniques for clustering a set of objects
US7870387B1 (en) 2006-04-07 2011-01-11 Mcafee, Inc. Program-based authorization
US8015563B2 (en) 2006-04-14 2011-09-06 Microsoft Corporation Managing virtual machines with system-wide policies
US7966659B1 (en) 2006-04-18 2011-06-21 Rockwell Automation Technologies, Inc. Distributed learn mode for configuring a firewall, security authority, intrusion detection/prevention devices, and the like
US8352930B1 (en) 2006-04-24 2013-01-08 Mcafee, Inc. Software modification by group to minimize breakage
US8458673B2 (en) 2006-04-26 2013-06-04 Flexera Software Llc Computer-implemented method and system for binding digital rights management executable code to a software application
US7849502B1 (en) 2006-04-29 2010-12-07 Ironport Systems, Inc. Apparatus for monitoring network traffic
US8555404B1 (en) 2006-05-18 2013-10-08 Mcafee, Inc. Connectivity-based authorization
US20080082662A1 (en) 2006-05-19 2008-04-03 Richard Dandliker Method and apparatus for controlling access to network resources based on reputation
US8291409B2 (en) 2006-05-22 2012-10-16 Microsoft Corporation Updating virtual machine with patch on host that does not have network access
US7761912B2 (en) 2006-06-06 2010-07-20 Microsoft Corporation Reputation driven firewall
US7809704B2 (en) 2006-06-15 2010-10-05 Microsoft Corporation Combining spectral and probabilistic clustering
US7831997B2 (en) 2006-06-22 2010-11-09 Intel Corporation Secure and automatic provisioning of computer systems having embedded network devices
US20070300215A1 (en) 2006-06-26 2007-12-27 Bardsley Jeffrey S Methods, systems, and computer program products for obtaining and utilizing a score indicative of an overall performance effect of a software update on a software host
US8009566B2 (en) 2006-06-26 2011-08-30 Palo Alto Networks, Inc. Packet classification in a network security device
US7950056B1 (en) * 2006-06-30 2011-05-24 Symantec Corporation Behavior based processing of a new version or variant of a previously characterized program
US8365294B2 (en) 2006-06-30 2013-01-29 Intel Corporation Hardware platform authentication and multi-platform validation
US8468526B2 (en) 2006-06-30 2013-06-18 Intel Corporation Concurrent thread execution using user-level asynchronous signaling
US8572721B2 (en) 2006-08-03 2013-10-29 Citrix Systems, Inc. Methods and systems for routing packets in a VPN-client-to-VPN-client connection via an SSL/VPN network appliance
US8495181B2 (en) * 2006-08-03 2013-07-23 Citrix Systems, Inc Systems and methods for application based interception SSI/VPN traffic
US8015388B1 (en) 2006-08-04 2011-09-06 Vmware, Inc. Bypassing guest page table walk for shadow page table entries not present in guest page table
US20080059123A1 (en) 2006-08-29 2008-03-06 Microsoft Corporation Management of host compliance evaluation
EP1901192A1 (en) 2006-09-14 2008-03-19 British Telecommunications Public Limited Company Mobile application registration
US8161475B2 (en) 2006-09-29 2012-04-17 Microsoft Corporation Automatic load and balancing for virtual machines to meet resource requirements
US7769731B2 (en) 2006-10-04 2010-08-03 International Business Machines Corporation Using file backup software to generate an alert when a file modification policy is violated
US9697019B1 (en) 2006-10-17 2017-07-04 Manageiq, Inc. Adapt a virtual machine to comply with system enforced policies and derive an optimized variant of the adapted virtual machine
US8584199B1 (en) 2006-10-17 2013-11-12 A10 Networks, Inc. System and method to apply a packet routing policy to an application session
US8055904B1 (en) 2006-10-19 2011-11-08 United Services Automobile Assocation (USAA) Systems and methods for software application security management
US7979749B2 (en) 2006-11-15 2011-07-12 International Business Machines Corporation Method and infrastructure for detecting and/or servicing a failing/failed operating system instance
US7689817B2 (en) 2006-11-16 2010-03-30 Intel Corporation Methods and apparatus for defeating malware
US8091127B2 (en) 2006-12-11 2012-01-03 International Business Machines Corporation Heuristic malware detection
US8336046B2 (en) 2006-12-29 2012-12-18 Intel Corporation Dynamic VM cloning on request from application based on mapping of virtual hardware configuration to the identified physical hardware resources
US7996836B1 (en) 2006-12-29 2011-08-09 Symantec Corporation Using a hypervisor to provide computer security
US8381209B2 (en) 2007-01-03 2013-02-19 International Business Machines Corporation Moveable access control list (ACL) mechanisms for hypervisors and virtual machines and virtual port firewalls
US8254568B2 (en) 2007-01-07 2012-08-28 Apple Inc. Secure booting a computing device
US8332929B1 (en) 2007-01-10 2012-12-11 Mcafee, Inc. Method and apparatus for process enforced configuration management
US9424154B2 (en) 2007-01-10 2016-08-23 Mcafee, Inc. Method of and system for computer system state checks
US8380987B2 (en) 2007-01-25 2013-02-19 Microsoft Corporation Protection agents and privilege modes
JP4715774B2 (ja) * 2007-03-02 2011-07-06 日本電気株式会社 レプリケーション方法、レプリケーションシステム、ストレージ装置、プログラム
US8276201B2 (en) 2007-03-22 2012-09-25 International Business Machines Corporation Integrity protection in data processing systems
US20080282080A1 (en) 2007-05-11 2008-11-13 Nortel Networks Limited Method and apparatus for adapting a communication network according to information provided by a trusted client
US7930327B2 (en) 2007-05-21 2011-04-19 International Business Machines Corporation Method and apparatus for obtaining the absolute path name of an open file system object from its file descriptor
US20080295173A1 (en) * 2007-05-21 2008-11-27 Tsvetomir Iliev Tsvetanov Pattern-based network defense mechanism
US20080301770A1 (en) 2007-05-31 2008-12-04 Kinder Nathan G Identity based virtual machine selector
US20090007100A1 (en) 2007-06-28 2009-01-01 Microsoft Corporation Suspending a Running Operating System to Enable Security Scanning
JP2009026022A (ja) * 2007-07-19 2009-02-05 Hitachi Systems & Services Ltd ファイル保護装置およびファイル保護方法
US8763115B2 (en) 2007-08-08 2014-06-24 Vmware, Inc. Impeding progress of malicious guest software
CN101370004A (zh) 2007-08-16 2009-02-18 华为技术有限公司 一种组播会话安全策略的分发方法及组播装置
US20090063747A1 (en) 2007-08-28 2009-03-05 Rohati Systems, Inc. Application network appliances with inter-module communications using a universal serial bus
WO2009032710A2 (en) 2007-08-29 2009-03-12 Nirvanix, Inc. Filing system and method for data files stored in a distributed communications network
US8250641B2 (en) 2007-09-17 2012-08-21 Intel Corporation Method and apparatus for dynamic switching and real time security control on virtualized systems
US8819676B2 (en) 2007-10-30 2014-08-26 Vmware, Inc. Transparent memory-mapped emulation of I/O calls
US8195931B1 (en) 2007-10-31 2012-06-05 Mcafee, Inc. Application change control
JP5238235B2 (ja) 2007-12-07 2013-07-17 株式会社日立製作所 管理装置及び管理方法
US8701189B2 (en) 2008-01-31 2014-04-15 Mcafee, Inc. Method of and system for computer system denial-of-service protection
US8788805B2 (en) 2008-02-29 2014-07-22 Cisco Technology, Inc. Application-level service access to encrypted data streams
US8336094B2 (en) 2008-03-27 2012-12-18 Juniper Networks, Inc. Hierarchical firewalls
US8321931B2 (en) 2008-03-31 2012-11-27 Intel Corporation Method and apparatus for sequential hypervisor invocation
US8615502B2 (en) 2008-04-18 2013-12-24 Mcafee, Inc. Method of and system for reverse mapping vnode pointers
JP5191043B2 (ja) * 2008-04-21 2013-04-24 学校法人東京電機大学 プログラムの不正起動防止システム及び方法
US8234709B2 (en) 2008-06-20 2012-07-31 Symantec Operating Corporation Streaming malware definition updates
US9058420B2 (en) 2008-06-20 2015-06-16 Vmware, Inc. Synchronous decoupled program analysis in virtual environments
US8132091B2 (en) 2008-08-07 2012-03-06 Serge Nabutovsky Link exchange system and method
US8065714B2 (en) 2008-09-12 2011-11-22 Hytrust, Inc. Methods and systems for securely managing virtualization platform
US9141381B2 (en) 2008-10-27 2015-09-22 Vmware, Inc. Version control environment for virtual machines
JP4770921B2 (ja) 2008-12-01 2011-09-14 日本電気株式会社 ゲートウェイサーバ、ファイル管理システム、ファイル管理方法とプログラム
US8544003B1 (en) 2008-12-11 2013-09-24 Mcafee, Inc. System and method for managing virtual machine configurations
US8274895B2 (en) 2009-01-26 2012-09-25 Telefonaktiebolaget L M Ericsson (Publ) Dynamic management of network flows
US8904520B1 (en) 2009-03-19 2014-12-02 Symantec Corporation Communication-based reputation system
US8387046B1 (en) 2009-03-26 2013-02-26 Symantec Corporation Security driver for hypervisors and operating systems of virtualized datacenters
US8060722B2 (en) 2009-03-27 2011-11-15 Vmware, Inc. Hardware assistance for shadow page table coherence with guest page mappings
US20100299277A1 (en) 2009-05-19 2010-11-25 Randy Emelo System and method for creating and enhancing mentoring relationships
US8359422B2 (en) 2009-06-26 2013-01-22 Vmware, Inc. System and method to reduce trace faults in software MMU virtualization
GB2471716A (en) 2009-07-10 2011-01-12 F Secure Oyj Anti-virus scan management using intermediate results
JP2010016834A (ja) 2009-07-16 2010-01-21 Nippon Telegr & Teleph Corp <Ntt> フィルタリング方法
US8381284B2 (en) 2009-08-21 2013-02-19 Mcafee, Inc. System and method for enforcing security policies in a virtual environment
US8341627B2 (en) 2009-08-21 2012-12-25 Mcafee, Inc. Method and system for providing user space address protection from writable memory area in a virtual environment
US8572695B2 (en) 2009-09-08 2013-10-29 Ricoh Co., Ltd Method for applying a physical seal authorization to documents in electronic workflows
US9552497B2 (en) 2009-11-10 2017-01-24 Mcafee, Inc. System and method for preventing data loss using virtual machine wrapped applications
US9390263B2 (en) 2010-03-31 2016-07-12 Sophos Limited Use of an application controller to monitor and control software file and application environments
US8813209B2 (en) 2010-06-03 2014-08-19 International Business Machines Corporation Automating network reconfiguration during migrations
US8925101B2 (en) 2010-07-28 2014-12-30 Mcafee, Inc. System and method for local protection against malicious software
US8938800B2 (en) 2010-07-28 2015-01-20 Mcafee, Inc. System and method for network level protection against malicious software
US8549003B1 (en) 2010-09-12 2013-10-01 Mcafee, Inc. System and method for clustering host inventories
EP2622525A1 (en) 2010-09-30 2013-08-07 Hewlett-Packard Development Company, L.P. Virtual machines for virus scanning
US9075993B2 (en) 2011-01-24 2015-07-07 Mcafee, Inc. System and method for selectively grouping and managing program files
US9112830B2 (en) 2011-02-23 2015-08-18 Mcafee, Inc. System and method for interlocking a host and a gateway
US20130247192A1 (en) 2011-03-01 2013-09-19 Sven Krasser System and method for botnet detection by comprehensive email behavioral analysis
US9015709B2 (en) 2011-03-08 2015-04-21 Rackspace Us, Inc. Hypervisor-agnostic method of configuring a virtual machine
US9122877B2 (en) 2011-03-21 2015-09-01 Mcafee, Inc. System and method for malware and network reputation correlation
US9594881B2 (en) 2011-09-09 2017-03-14 Mcafee, Inc. System and method for passive threat detection using virtual memory inspection
US8694738B2 (en) 2011-10-11 2014-04-08 Mcafee, Inc. System and method for critical address space protection in a hypervisor environment
US8973144B2 (en) 2011-10-13 2015-03-03 Mcafee, Inc. System and method for kernel rootkit protection in a hypervisor environment
US9069586B2 (en) 2011-10-13 2015-06-30 Mcafee, Inc. System and method for kernel rootkit protection in a hypervisor environment
US8800024B2 (en) 2011-10-17 2014-08-05 Mcafee, Inc. System and method for host-initiated firewall discovery in a network environment
US8713668B2 (en) 2011-10-17 2014-04-29 Mcafee, Inc. System and method for redirected firewall discovery in a network environment
US8713684B2 (en) 2012-02-24 2014-04-29 Appthority, Inc. Quantifying the risks of applications for mobile devices
US8793489B2 (en) 2012-03-01 2014-07-29 Humanconcepts, Llc Method and system for controlling data access to organizational data maintained in hierarchical
US8739272B1 (en) 2012-04-02 2014-05-27 Mcafee, Inc. System and method for interlocking a host and a gateway
US8931043B2 (en) 2012-04-10 2015-01-06 Mcafee Inc. System and method for determining and using local reputations of users and hosts to protect information in a network environment
US9292688B2 (en) 2012-09-26 2016-03-22 Northrop Grumman Systems Corporation System and method for automated machine-learning, zero-day malware detection
US8973146B2 (en) 2012-12-27 2015-03-03 Mcafee, Inc. Herd based scan avoidance system in a network environment
US9311480B2 (en) 2013-03-15 2016-04-12 Mcafee, Inc. Server-assisted anti-malware client
WO2014142986A1 (en) 2013-03-15 2014-09-18 Mcafee, Inc. Server-assisted anti-malware client
WO2015060857A1 (en) 2013-10-24 2015-04-30 Mcafee, Inc. Agent assisted malicious application blocking in a network environment

Also Published As

Publication number Publication date
EP2599026B1 (en) 2018-12-19
AU2011283160B2 (en) 2014-08-28
EP2599026A1 (en) 2013-06-05
CN103229185A (zh) 2013-07-31
JP2013532869A (ja) 2013-08-19
WO2012015485A1 (en) 2012-02-02
JP2016053979A (ja) 2016-04-14
US8925101B2 (en) 2014-12-30
US20120030731A1 (en) 2012-02-02
AU2011283160A1 (en) 2013-02-07
CN103229185B (zh) 2016-11-16
US20150180884A1 (en) 2015-06-25
US9467470B2 (en) 2016-10-11
JP5845258B2 (ja) 2016-01-20

Similar Documents

Publication Publication Date Title
JP6086968B2 (ja) 悪意のあるソフトウェアに対するローカル保護をするシステム及び方法
JP6080910B2 (ja) 悪意のあるソフトウェアに対するネットワーク・レベル保護をするシステム及び方法
US9661017B2 (en) System and method for malware and network reputation correlation
US6892241B2 (en) Anti-virus policy enforcement system and method
US10541969B2 (en) System and method for implementing content and network security inside a chip
US9413785B2 (en) System and method for interlocking a host and a gateway
Mell et al. Guide to malware incident prevention and handling
US20100154032A1 (en) System and Method for Classification of Unwanted or Malicious Software Through the Identification of Encrypted Data Communication
US8650638B2 (en) System and method for detecting a file embedded in an arbitrary location and determining the reputation of the file
US9065850B1 (en) Phishing detection systems and methods
OLUSEYE-PAUL IMPLEMENTATION OF AN INTRUSION DETECTION SYSTEM ON MTU NETWORK
Baskerville Intrusion Prevention Systems: How do they prevent intrusion?
Kumar et al. Intrusion Detection System using Deep Learning
Bogdan Providing Grid Systems' Dependability and Security

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20161220

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170131

R150 Certificate of patent or registration of utility model

Ref document number: 6086968

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250