JP2018531470A6 - 自動化されたアプリケーション分析のための技法 - Google Patents

自動化されたアプリケーション分析のための技法 Download PDF

Info

Publication number
JP2018531470A6
JP2018531470A6 JP2018520193A JP2018520193A JP2018531470A6 JP 2018531470 A6 JP2018531470 A6 JP 2018531470A6 JP 2018520193 A JP2018520193 A JP 2018520193A JP 2018520193 A JP2018520193 A JP 2018520193A JP 2018531470 A6 JP2018531470 A6 JP 2018531470A6
Authority
JP
Japan
Prior art keywords
application
activity
allowing
associating
detected
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2018520193A
Other languages
English (en)
Other versions
JP6602471B2 (ja
JP2018531470A (ja
Inventor
ケネディ・マーク
ガードナー・アンドリュー・ビー
チョン・ヴィンセント
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NortonLifeLock Inc
Original Assignee
Symantec Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US14/922,952 external-priority patent/US9858410B2/en
Application filed by Symantec Corp filed Critical Symantec Corp
Publication of JP2018531470A publication Critical patent/JP2018531470A/ja
Publication of JP2018531470A6 publication Critical patent/JP2018531470A6/ja
Application granted granted Critical
Publication of JP6602471B2 publication Critical patent/JP6602471B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

自動化されたアプリケーション分析のための技法が開示される。一実施形態では、本技法は、方法であって、コード作成活動を検出することと、以前に知られていなかったアプリケーションの存在を検出することと、検出されたアプリケーションをコード作成活動と関連付けることと、アプリケーションが、検出されたアプリケーションをコード作成活動と関連付けることに基づいて、実行されることを許可することと、を含む、方法として実現され得る。

Description

関連出願の相互参照
本出願は、参照によりその全体が本明細書に組み込まれる、2015年10月26日に出願された米国通常特許出願第14/922,952号に対する優先権を主張するものである。
本開示は、概して、アプリケーションセキュリティに関し、より具体的には、自動化されたアプリケーション分析のための技法に関する。
最新のマルウェア検出ソフトウェアは、新規の悪質なコードさえも特定及び駆除する、知られていないプロセスを分析するためのアドバンスドヒューリスティックを含む。しかしながら、いくつかの個人及び企業は、専有コードへの潜在的干渉のため、これらのツールを実装しないことを選択し、すなわち、会社の内部で開発されたツール及び実行ファイルは、悪質なものとして不正にフラグが立てられ得る。
マルウェア検出フレームワークは、マニュアルホワイトリストプロセスを含み得、このプロセスによって、ユーザは、認可プログラムを意図的に特定することができるが、多くの場合、マニュアルホワイトリストは、一貫して使用されない。次いで、専有ソフトウェアのためのフォールスポジティブは、ユーザにマルウェア分析ツールを無効にさせ得る。
上記を考慮すると、マルウェアの検出のための現在の技法と関連付けられた重大な問題及び欠点があり得ることが理解され得る。
自動化されたアプリケーション分析のための技法が開示される。一実施形態では、本技法は、方法であって、コード作成活動を検出することと、以前に知られていなかったアプリケーションの存在を検出することと、検出されたアプリケーションをコード作成活動と関連付けることと、アプリケーションが、検出されたアプリケーションをコード作成活動と関連付けることに基づいて、実行されることを許可することと、を含む、方法として実現され得る。
本実施形態の他の態様に従って、アプリケーションが実行されることを許可することは、アプリケーションをアプリケーションホワイトリストに自動的に追加することを更に必要とし得る。
本実施形態の更なる態様に従って、本方法は、第2のアプリケーションを検出することと、リモートクライアントから、第2のアプリケーションのステータスをホワイトリスト上にあるものとして受信することと、第2のアプリケーションが、受信されたステータスに基づいて実行されることを許可することと、を更に含み得る。
本実施形態の更なる態様に従って、本方法は、アプリケーションに関する範囲を判定することと、アプリケーションの範囲内の1つ以上のリモートクライアントに、ホワイトリスト上のアプリケーションのステータスを伝送することと、を更に含み得る。
本実施形態の更なる態様に従って、アプリケーションが実行されることを許可することは、ホワイトリスト化ポリシーと関連付けられた複数のパラメータに、コード作成活動を整合させることに更に基づき得る。
本実施形態の更なる態様に従って、本方法は、アプリケーションに関する評判スコアを生成することを更に含み得る。評判スコアは、検出されたアプリケーションをコード作成活動と関連付けることに基づき得る。アプリケーションが実行されることを許可することは、事前に設定された閾値を超えるアプリケーションの評判スコアに更に基づき得る。
本実施形態の他の態様に従って、コード作成活動は、アプリケーションをコンパイルしている可能性がある。検出されたアプリケーションをコード作成活動と関連付けることは、コンパイルされたアプリケーションが検出されたアプリケーションに整合することを判定することを含み得る。
本実施形態の別の態様に従って、本技法は、製造物品であって、少なくとも1つの非一時的プロセッサで読み取り可能なストレージ媒体と、少なくとも1つの媒体上に記憶される命令と、を含む製造物品として実現され得る。命令は、少なくとも1つのプロセッサによって少なくとも1つの媒体から読み取り可能であり、それによって、少なくとも1つのプロセッサに、上記の方法における工程のいずれか及び全てを実施するように動作するように構成され得る。
本実施形態の別の態様に従って、本技法は、システムであって、ネットワークに通信可能に連結される1つ以上のプロセッサを備えるシステムとして実現され得、1つ以上のプロセッサは、上記の実施形態のいずれに対して上述の工程のいずれか及び全てを実施するように構成される。
以下、添付の図面に示されるように、特定の実施形態を参照して本開示を更に詳細に説明する。本開示は特定の実施形態を参照して以下に説明されるが、本開示がそれに限定されないことを理解されたい。本明細書中の教示に接する機会のある当業者であれば、他の使用分野のみならず、追加的な実施、変形例、及び実施形態も認めるであろうし、それらは、本明細書中に記載される本開示の範囲に含まれ、本開示の重要な有用性に関するものである。
本開示のより完全な理解を促すために、添付の図面を参照されたい。同様の要素には、同様の数字が付される。これらの図面は、本開示を限定するものとして解釈するべきではなく、単に例示することだけを意図している。
本開示の実施形態によるネットワークアーキテクチャを示すブロック図である。 本開示の実施形態によるコンピュータシステムを示すブロック図である。 本開示の実施形態によるセキュリティモジュールを図解するブロック図を示す。 本開示の実施形態による自動化されたアプリケーション分析のための方法を示す。
本開示の実施形態は、開発及び使用される際、登録されたユーザによって開発活動を特定し、専有ソフトウェアを自動的にホワイトリスト化する、自動化されたアプリケーション分析フレームワークを対象とする。システムは、内部ツール開発のために認識される状況下で登録されたユーザによって、実行可能なツールの作成及び普及を追跡し、管理者によって設定されるパラメータ内で、ホワイトリストにこれらのツールを自動的に追加する。いくつかの実装では、システムは、ツール開発活動を評判スコアと関連付け、この評判スコアは、会社におけるユーザの履歴及び場所、並びに活動の性質を含む多くの要因を含み得る。次いで、評判スコアは、実行ファイルがホワイトリスト化されるか、通常のヒューリスティック下で調査されるか、特定事項において禁止されるかどうかを判定するために使用され得る。
図1は、本開示の実施形態によるネットワークアーキテクチャ100を示すブロック図である。図1は、ネットワークアーキテクチャ100の簡略図であり、図中に示されていない付加的な要素を含んでもよい。ネットワークアーキテクチャ100は、クライアントシステム110、120、及び130、並びにサーバ140A〜140N(これらの各々のうちの1つ以上は図2に示すコンピュータシステム200を用い実装されてもよい)を含んでもよい。クライアントシステム110、120、及び130は、ネットワーク150に通信可能に連結することができる。サーバ140Aは、ストレージデバイス160A(1)〜(N)と通信可能に連結されてもよく、サーバ140Bは、ストレージデバイス160B(1)〜(N)と通信可能に連結されてもよい。サーバ140A及び140Bは、SAN(ストレージエリアネットワーク)ファブリック170と通信可能に連結することができる。SANファブリック170は、サーバ140A及び140B、並びにネットワーク150を介してクライアントシステム110、120、及び130により、ストレージデバイス180(1)〜(N)へのアクセスをサポートすることができる。
図2のコンピュータシステム200を参照すると、モデム247、ネットワークインタフェース248、又はいくつかの他の方法を使用して、クライアントシステム110、120、及び130のうちの1つ以上からネットワーク150への接続を提供することができる。クライアントシステム110、120、及び130は、例えば、ウェブブラウザ又は他のクライアントソフトウェア(図示せず)を用いて、サーバ140A又は140Bの情報にアクセスすることができる。このようなクライアントにより、クライアントシステム110、120及び130は、サーバ140A若しくは140B、又はストレージデバイス160A(1)〜(N)、160B(1)〜(N)、及び/若しくは180(1)〜(N)のいずれかによりホストされるデータにアクセスすることが可能になる。
ネットワーク150及び190は、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、インターネット、セルラーネットワーク、衛星ネットワーク、又はクライアント110、120、及び130、サーバ140、並びにネットワーク150及び190と通信可能に連結される他のデバイスとの間の通信を可能にする他のネットワークであってもよい。ネットワーク150及び190は、スタンドアロンネットワークとして、又は互いに協働して作動する、1つ又は任意の数の、上述した例示的なタイプのネットワークを更に含むことができる。ネットワーク150及び190は、それらが通信可能に連結される1つ以上のクライアント又はサーバの1つ以上のプロトコルを利用することができる。ネットワーク150及び190は、ネットワークデバイスの1つ以上のプロトコルに、他のプロトコルから又は他のプロトコルへ変換することができる。ネットワーク150及び190は、それぞれ1つのネットワークとして示されているが、1つ以上の実施形態によれば、ネットワーク150及び190は、それぞれ相互接続された複数のネットワークを含んでもよいことを理解されたい。
ストレージデバイス160A(1)〜(N)、160B(1)〜(N)、及び/又は180(1)〜(N)は、ネットワークアクセス可能なストレージであってもよく、サーバ140A又は140Bに対しローカル、リモート又はこれらの組み合わせであってもよい。ストレージデバイス160A(1)〜(N)、160B(1)〜(N)、及び/又は180(1)〜(N)は、レイド(「RAID」)、磁気テープ、ディスク、ストレージエリアネットワーク(「SAN」)、インターネットスモールコンピュータシステムインタフェース(「iSCSI」)SAN、ファイバチャネルSAN、コモンインターネットファイルシステム(「CIFS」)、ネットワークアタッチトストレージ(「NAS」)、ネットワークファイルシステム(「NFS」)、光ベースのストレージ、又は他のコンピュータアクセス可能なストレージを利用することができる。ストレージデバイス160A(1)〜(N)、160B(1)〜(N)、及び/又は180(1)〜(N)は、バックアップ又はアーカイブの目的で使用することができる。更に、ストレージデバイス160A(1)〜(N)、160B(1)〜(N)、及び/又は180(1)〜(N)は、多層ストレージ環境の一部として実装することができる。
いくつかの実施形態によれば、クライアント110、120、及び130は、ネットワーク150への無線又は有線接続を介して連結される、スマートフォン、PDA、デスクトップコンピュータ、ラップトップコンピュータ、サーバ、他のコンピュータ、又は他のデバイスであってもよい。クライアント110、120、及び130は、ユーザ入力、データベース、ファイル、ウェブサービス、及び/又はアプリケーションプログラミングインタフェースからデータを受信することができる。いくつかの実装では、クライアント110、120、及び130は、具体的には、スマートフォン又はタブレットなどのネットワーク対応モバイルデバイスであってもよい。
サーバ140A及び140Bは、アプリケーションサーバ、アーカイブプラットフォーム、バックアップサーバ、ネットワークストレージデバイス、メディアサーバ、電子メールサーバ、文書管理プラットフォーム、エンタープライズサーチサーバ、又はネットワーク150と通信可能に連結された他のデバイスであってもよい。サーバ140A及び140Bは、ストレージデバイス160A(1)〜(N)、160B(1)〜(N)、及び/又は180(1)〜(N)のいずれかをアプリケーションデータ、バックアップデータ、又は他のデータのストレージのために利用することができる。サーバ140A及び140Bは、クライアント110、120、及び130と、バックアッププラットフォーム、バックアッププロセス、及び/又はストレージとの間で送受信されるデータを処理することができる、アプリケーションサーバなどのホストであってもよい。いくつかの実施形態によれば、サーバ140A及び140Bは、データのバックアップ及び/又はアーカイブのために使用されるプラットフォームであってもよい。データの1つ以上の部分は、適用されたバックアップポリシー及び/又はアーカイブ、データソースに関連付けられた属性、バックアップのために利用可能なスペース、データソースにおいて利用可能なスペース、又は他の要因に基づいて、バックアップ又はアーカイブされてもよい。
いくつかの実施形態によれば、クライアント110、120、及び130は、例えば、セキュリティモジュール154などのシステム監視及び保護のためのソフトウェアの1つ以上の部分を含むことができる。セキュリティモジュール154の調整及び制御のための構成要素は、サーバ140Aなどのネットワーク中心位置に常駐し得る。例えば、サーバ140Aは、サーバ、ファイアウォール、ゲートウェイ、又はシステム及びネットワークセキュリティ要素の管理をサポートするために1つ以上の行為を実行することができる、他のネットワーク要素であってもよい。いくつかの実施形態によれば、ネットワーク190は、外部ネットワークであってもよく(例えば、インターネット)、サーバ140Aは、1つ以上の内部構成要素とクライアントと外部ネットワークとの間のゲートウェイ又はファイアウォールであってもよい。
図2は、本開示の実施形態によるコンピュータシステム200のブロック図である。コンピュータシステム200は、本開示に従って技術を実施するのに好適である。コンピュータシステム200は、コンピュータシステム200の主要なサブシステムを相互接続することができるバス212を含むことができ、主要なサブシステムには、中央処理装置214、システムメモリ217(例えば、RAM(ランダムアクセスメモリ)、ROM(読出し専用メモリ)、フラッシュRAMなど)、入力/出力(I/O)コントローラ218、オーディオ出力インタフェース222を介するスピーカシステム220などの外部オーディオデバイス、ディスプレイアダプタ226を介するディスプレイ画面224などの外部装置、シリアルポート228及び230、キーボード232(キーボードコントローラ233を介してインタフェース接続される)、ストレージインタフェース234、印刷のためにデータ及び/又は画像を受信するために動作するプリンタ237、ファイバチャネルネットワーク290と接続するために動作するホストバスアダプタ(HBA)インタフェースカード235A、SCSIバス239と接続するために動作するホストバスアダプタ(HBA)インタフェースカード235B、及び光ディスク242を受信するために動作する光ディスクドライブ240などが含まれる。同様に、マウス246(又はシリアルポート228を介してバス212に連結された他のポイントアンドクリックデバイス)、モデム247(シリアルポート230を介してバス212に連結される)、ネットワークインタフェース248(バス212に直接連結される)、電力マネージャ250、及びバッテリー252が含まれてもよい。
バス212によって、中央処理装置214と、上述したような、読出し専用メモリ(ROM)又はフラッシュメモリ(どちらも図示せず)及びランダムアクセスメモリ(RAM)(図示せず)を含んでもよい、システムメモリ217との間のデータ通信が可能になる。RAMは、オペレーティングシステム及びアプリケーションプログラムがロードされてもよいメインメモリであってもよい。ROM又はフラッシュメモリは、他のコードと共に、周辺構成要素との相互作用などの基本的なハードウェアの動作を制御する、ベーシック入力/出力システム(BIOS)を含むことができる。コンピュータシステム200に常駐するアプリケーションは、ハードディスクドライブ(例えば、固定ディスク244)、光学ドライブ(例えば、光学ドライブ240)、プリンタ237、取り外し可能なディスクユニット(例えば、ユニバーサルシリアルバスドライブ)、又は他のストレージ媒体などの、コンピュータで読み取り可能な媒体上に記憶され、かつそれを介してアクセスされ得る。いくつかの実施形態によれば、セキュリティモジュール154は、システムメモリ217に常駐してもよい。
ストレージインタフェース234は、コンピュータシステム200の他のストレージインタフェースと同様に、固定ディスクドライブ244など、情報の記憶及び/又は検索用の標準的なコンピュータ可読媒体に接続することができる。固定ディスクドライブ244は、コンピュータシステム200の一部であってもよく、又は独立したものであって、他のインタフェースシステムを通してアクセスされてもよい。モデム247は、電話回線を介してリモートサーバへの直接接続を提供してもよく、インターネットサービスプロバイダ(ISP)経由でインターネットに接続してもよい。ネットワークインタフェース248は、POP(ポイントオブプレゼンス)を介したインターネットに対する直接ネットワークリンクを介して、リモートサーバに対する直接接続を提供してもよい。ネットワークインタフェース248は、デジタル携帯電話接続、セルラーデジタルパケットデータ(CDPD)接続、又はデジタル衛星データ接続などを含む無線技術を用いて、このような接続を提供してもよい。
他の多くのデバイス又はサブシステム(図示せず)も同様の方法で接続することができる(例えば、文書スキャナ、デジタルカメラなど)。逆に、図2に示されるデバイスの全てが、本開示を実施するために存在する必要はない。デバイス及びサブシステムは、図2に示されるものとは異なる手法で相互接続することができる。本開示を実装するためのコードは、システムメモリ217、固定ディスク244、又は光ディスク242など、コンピュータで読み取り可能なストレージ媒体のうちの1つ以上に記憶することができる。本開示を実装するためのコードは、1つ以上のインタフェースを介して受信し、メモリに記憶することもできる。コンピュータシステム200に設けられたオペレーティングシステムは、MS−DOS(登録商標)、MS−WINDOWS(登録商標)、OS/2(登録商標)、OS X(登録商標)、UNIX(登録商標)、Linux(登録商標)、又は他の周知のオペレーティングシステムでもよい。
電力マネージャ250は、バッテリー252の電力レベルを監視することができる。電力マネージャ250は、電力レベル、コンピュータシステム200のシャットダウン前残り時間窓、電力消費率、コンピュータシステムが主電源(例えば、AC電源)又はバッテリー電源のいずれを使用しているかの表示器、及び他の電力関連情報の判定を可能にするために、1つ以上のAPI(アプリケーションプログラミングインタフェース)を提供することができる。いくつかの実施形態によれば、電力マネージャ250のAPIは、リモートアクセス可能であってもよい(例えば、ネットワーク接続を介して、リモートバックアップ管理モジュールにアクセス可能であってもよい)。いくつかの実施形態によれば、バッテリー252は、コンピュータシステム200のローカル又はリモートのいずれかに位置する無停電電源装置(UPS)であってもよい。このような実施形態では、電力マネージャ250は、UPSの電力レベルに関する情報を提供することができる。
図3は、システム活動を監視し、かつ悪質なコードに対してシステムを安全にするためのエンドユーザクライアントシステム上に配置され得るセキュリティモジュール154の例を図解する。エンドユーザシステムのモジュールとして図解されるが、図解されたモジュールのうちの1つ以上が、ネットワークにわたって利用可能なシステムの一部において、全部又は一部において具現化され得、本明細書に図解される様々な機能が、複数のクライアントシステムに関して中央に管理され得ることが理解されよう。
セキュリティモジュール154は、位置付けられる活動モニタ302を含み、クライアントデバイスのユーザによって行われる行為を特定し、それらの行為がコード作成と関連付けられるかどうかを判定し得る。認証モジュール304は、システム自体内にあるネイティブ認証機構へのリンキングなどによってシステム内に登録されるユーザを特定するための機構を含み得る。更に、認証モジュール304は、様々な決定及び行為を特定の登録されたユーザと関連付けるために、セキュリティモジュール154内で他のモジュールへのユーザ登録を確認し得る。
評判モジュール306は、クライアントシステム上で実行されるアプリケーションのために評判スコアを維持することを課せられる。いくつかの実装では、様々なアドバンスドヒューリスティックは、評判スコアの生成に関与し得、この評判スコアは、アプリケーションの性質及び系統、並びに任意の予想される、又は疑わしい活動の記録を含み得る。更に、本発明の実施形態では、評判スコアは、また、活動モニタ302によって記録される任意の開発活動、並びに評判スコアを生成する際に開発活動に関連付けられた登録されたユーザ(複数可)のアイデンティティも考慮することになる。
いくつかの実装では、認可されたコンパイラアプリケーションによってコンパイルされたものに密接に整合することが示されるアプリケーションに関する評判スコアは、著しくより高い場合がある。アプリケーションをコード作成活動に整合させることは、いくつかの実装では、チェックサム、ファイルサイズ、及び正規ファイルを検査する際に使用される他の情報を比較することを含み得る。
更にその上、いくつかの実装では、アプリケーションのための評判スコアは、システムにアプリケーションを導入したものとして特定される登録されたユーザと関連付けられた評判スコアに基づいて、著しくより高い又はより低い場合がある。ユーザの評判スコアは、ユーザの以前に記録された活動、システムと関連付けられた組織内のユーザの位置、ユーザの責任(例えば、ユーザがITプロとして組織によって採用されて、システムサポートのためのツールを開発することが予期されるかどうかなど)、システム管理者によって提供されるカスタム設定、ユーザが関連付けられたプラットフォーム及びアプリケーションの性質などを含むいくらかの要因に基づき得る。
顕著な特定の要因は、ユーザが、悪質なコードをはらむことが判定された1つ以上の分析されたファイルと以前に関連付けられている場合、そのユーザの評判スコア、及びそのユーザと関連付けられた更なるアプリケーションのスコアは、その結果より低くなる場合があることである。同様に、システムによって安全であると正確に見なされたことを確認されアプリケーションと関連付けられたユーザは、そのユーザからのファイルが信頼できることが示されるにつれて、より高い評判スコアを有し得る。
いくつかの実装では、ポリシーモジュール307は、評判スコアから独立しているアプリケーションの自動化されたホワイトリスト化のための別の道を提供し得る。適切な資格情報を用いる管理者又は他のユーザは、1つ以上のポリシーを指定することができる場合があり、このポリシーによって、専有ツールを生成することと関連付けられた特定の活動は、結果として生じる実行ファイルをホワイトリスト化することを自動的にもたらし得る。例えば、管理者は、特定のユーザ、特定のコンピュータシステム及びプラットフォーム、実行ファイルを作成するための特定のアプリケーション、結果として生じる実行ファイルのための特定のディレクトリ、及び実行ファイルが生成される特定の時間フレームを指定し得る。管理者が設定したパラメータの全てを含む、そのポリシー下で生成されるいかなる実行ファイルも、ホワイトリスト上に含まれることになる。更なるパラメータは、使用範囲であり得、すなわち、実行ファイルは、特定の組の指定されたシステム上で検出されるときのみホワイトリスト化されるが、システムの他の部分で検出されるときにはホワイトリスト化されない場合がある。
説明されるようなポリシーモジュール307は、評判モジュール306から独立して機能し得、いくつかのシステムが、自動化されたホワイトリスト化ポリシー又は評判スコアを含むが、両方は含まない場合があることが理解される。しかしながら、これらの機構間の相互作用は、それらの両方が使用中であるときに起こり得、例えば、ポリシーの1つ以上のパラメータを含むポリシーの範囲外に作成されるコード(ポリシー指定されたユーザによってポリシー指定されたアプリケーションを用いて、指定されていない時間において指定されていないシステム上で作成されるコードなど)は、いくつかの実装では、部分的整合により、より高い評判スコアを与えられ得る。代替的に、いくつかの実装では、承認されない時間において承認されない機械上で作成される実行ファイルが、セキュリティ違反を示す場合があるので、そのような実行ファイルには、非常に低い評判スコアが与えられ得る。機械学習及び他のヒューリスティックは、ある特定のシステムが、明示的に提供されたポリシーから、おそらく信頼できるであろう他の活動まで外挿することを可能にし得る。
アプリケーション範囲追跡装置モジュール308は、アプリケーションがどのようにシステムと関連付けられたより大きなネットワーク内で配信されるかについて追跡することに責任がある場合がある。いくつかの実装では、他のシステム上のアプリケーション範囲追跡装置308は、特定のアプリケーションが、サーバハブ内で、ローカルネットワークを通して、顧客ウェブサイト全体で、あるいはグローバルに、単一の機械でローカルに配置されるかどうかを判定するために、一括して通信し得る。いくつかの実装では、アプリケーションの範囲は、その評判スコアに影響し得る。検証されたアプリケーションの意図的な普及と関連付けられた活動は、アプリケーションが認可されるという証拠として行われ得る。経時的に、広範囲にわたる検証された普及は、ネットワーク内の事実上の認可として行われ得る。
セキュリティモジュール154は、ローカルからグローバルまでの範囲で変動するアプリケーションを含み得るアプリケーションホワイトリスト310を含み得、そのために、十分に高い評判スコアが、それらのアプリケーションが確実に安全であると見なされるように生成された。ホワイトリスト310は、実行ファイルに関する様々な情報を含み、システム登録データ、ファイルサイズ及びチェックサム情報、名前、典型的なファイルパス情報などのアプリケーションを肯定的に特定するのに必要なファイルをサポートし得る。アプリケーションホワイトリスト310は、いくつかの実装では、システムネットワークにわたり、モジュール間で共有され得るか、又は中心ネットワーク位置から遠隔で維持及び管理され得る。
セキュリティモジュール154は、活動追跡装置302及び認証モジュール304と共に働く評判モジュール306によって生成されるスコアに基づいて、ホワイトリスト310にアプリケーションを自動的に追加する。様々な閾値は、ある特定の環境及び条件下で提供され得、いくつかの実施形態では、管理者確立された又はデフォルトの閾値が使用され得、評判スコアが確立された閾値を超えるアプリケーションは、そのスコアが維持される間は、自動的にホワイトリスト化され得る。
セキュリティモジュール154は、マルウェアの介入モジュール312を含み得、それは、マルウェアをクリーニングし、検疫し、無効にし、及び/又はブロックするために当該技術分野で知られている任意のツールを含み得る。いくつかの実装では、マルウェアの介入モジュール312は、特定のアプリケーションの操作に介在する前に、アプリケーションをホワイトリスト310と照合し得る。ホワイトリスト310上のアプリケーションは、モジュール312による介入から自動的に免除され得るか、あるいは、システムは、ホワイトリストのアプリケーションに介在する前に、管理者又はエンドユーザに通知し、許可を必要とし得る。対照的に、ホワイトリスト310上で見出されないアプリケーションは、マルウェアの介入モジュール312によって、又はユーザから必要とされるより少ない警報及び許可を用いて、より迅速に作用され得る。いくつかの実装では、更に低い閾値を下回る評判スコアを与えられるコードは、単に完全に実行されることを禁止され得るか、又はユーザによって明示的な警告及び認可の後に実行され得る。
図4は、本開示のいくつかの実施形態による自動化されたアプリケーション分析のための方法400を図解する。様々な方法が、説明されたことの範囲内で可能であり、かつ以下の方法400が、例示的な目的のためにのみ与えられることが理解されよう。説明される工程は、上述のようにセキュリティモジュール154などの任意の適切なシステムによって実行され得る。
システムは、コード作成活動を監視する(402)。いくつかの実装では、これは、実行ファイルを生成するためにコードをコンパイルすることができるアプリケーションを特定及び監視することを主に伴い得る。他の実装では、マルウェアとして不正に特定されるべきではない新しい又は新たに修正されるアプリケーションの作成を特定するために、エディタ、成り済まし、コード作成及び修正と関連付けられると考えられる他のアプリケーションを監視すること更に伴い得る。
システムが新しい、知られていないアプリケーションを検出及び分析するとき、それが監視された作成活動によって生成されるアプリケーションに整合する場合、アプリケーションは、その活動で特定され得る(404)。次いで、それは、また、その同じ活動と関連付けられた登録されたユーザで特定され得る(406)。
システムは、1つ以上の確立されたホワイトリスト化ポリシーに含まれるパラメータに対して、アプリケーションと関連付けられた作成活動を比較する(408)。コード作成活動が確立されたパラメータの全てに整合する場合、アプリケーションは自動的にホワイトリスト化される(410)。上述のように、アプリケーションのホワイトリスト化は、ポリシーの詳細、作成のパラメータ、又はユーザによるその後の普及活動に基づいて、範囲が変動し得る。いくつかの実装では、承認されたグループ内のユーザのみが、システムからの更なる精査なしで実行ファイルを実行させることが許可され得る。
いくつかの実装では、コード作成が任意の確立されたポリシー外で起こるとき、作成活動が十分に高い評判スコアを割り当てられる場合、自動化されたホワイトリスト化が依然として起こり得る。作成活動の詳細、登録されたユーザの詳細、アプリケーションの意図された範囲、アプリケーションのファイルと様々な記録との比較(ハッシュ及びメタデータを含む)、並びに当該技術分野で知られている他の分析要因に基づいて、アプリケーションは、評判スコアを割り当てられる(412)。上記のように、評判スコアは、システム管理者によって提供される設定を含む様々な要因によって影響され得る。
次いで、評判スコアは、閾値に対して比較され(414)、この閾値は、それ自体が管理者の好みを含むいくらかの要因に従って設定され得る。アプリケーションがITで作業している信頼されたユーザによってコンパイルされたといった理由で、評判スコアが十分に高い場合、アプリケーションはホワイトリストに自動的に追加される(416)。評判スコアの最高値と関連付けられないアプリケーションは、潜在的マルウェアとして更に分析され得(418)、ホワイトリストによって付与されるいずれの手続き免除も提供されない。
ここで、上述した本開示による自動化されたアプリケーション分析のための技法は、ある程度まで入力データの処理及び出力データの生成を含んでもよい点に留意する必要がある。この入力データ処理及び出力データ生成は、ハードウェア又はソフトウェアにより実施されてもよい。例えば、特定の電子部品は、用いられたセキュリティモジュール、又は上述した本開示による自動化されたアプリケーション分析と関連付けられた機能を実装するための類似若しくは関連する回路であり得る。代替的に、命令に従って動作する1つ以上のプロセッサは、上述した本開示による自動化されたアプリケーション分析と関連付けられた機能を実装してもよい。かかる場合、このような命令が1つ以上の非一時的プロセッサで読み取り可能なストレージ媒体(例えば、磁気ディスク又は他のストレージ媒体)に記憶され得るか、あるいは1つ以上の搬送波中に具現化された1つ以上の信号を介して1つ以上のプロセッサに伝送され得ることは、本開示の範囲に含まれる。
本開示は、本明細書に示す特定の実施形態により範囲を限定されるものではない。実際、本明細書に記載されるものに加え、本開示の他の様々な実施形態及びその変更形態は、上述の説明及び添付の図面から、当業者には明らかとなろう。したがって、このような他の実施形態及びその変更形態は本開示の範囲内に含まれるものである。更に、本開示は少なくとも1つの特定の目的のための少なくとも1つの特定の環境における少なくとも1つの特定の実施の文脈で本明細書に記載されているが、その有用性はそれらに限定されず、本開示は任意の数の目的のために任意の数の環境において有益に実施され得ることが当業者には理解されよう。それに応じて、以下に記載する「特許請求の範囲」は、本明細書に記載された本開示の範囲の最大限の広さ及び趣旨を考慮して解釈されるべきである。

Claims (20)

  1. コンピュータ実装方法であって、
    コード作成活動を検出することと、
    以前に知られていなかったアプリケーションの存在を検出することと、
    前記検出されたアプリケーションを前記コード作成活動と関連付けることと、
    前記アプリケーションが、前記検出されたアプリケーションを前記コード作成活動と関連付けることに基づいて、実行されることを許可することと、を含む、コンピュータ実装方法。
  2. 前記アプリケーションが実行されることを許可することが、前記アプリケーションをアプリケーションホワイトリストに自動的に追加することを更に必要とする、請求項1に記載の方法。
  3. 第2のアプリケーションを検出することと、
    リモートクライアントから、前記第2のアプリケーションのステータスをホワイトリスト上にあるものとして受信することと、
    前記第2のアプリケーションが、前記受信されたステータスに基づいて実行されることを許可することと、を更に含む、請求項2に記載の方法。
  4. 前記アプリケーションに関する範囲を判定することと、
    前記アプリケーションの前記範囲内の1つ以上のリモートクライアントに、前記ホワイトリスト上の前記アプリケーションの前記ステータスを伝送することと、を更に含む、請求項2に記載の方法。
  5. 前記アプリケーションが実行されることを許可することが、ホワイトリスト化ポリシーと関連付けられた複数のパラメータに、前記コード作成活動を整合させることに更に基づく、請求項1に記載の方法。
  6. 前記アプリケーションに関する評判スコアを生成することを更に含み、
    前記評判スコアが、前記検出されたアプリケーションを前記コード作成活動と関連付けることに基づき、
    前記アプリケーションが実行されることを許可することが、事前に設定された閾値を超える前記アプリケーションの前記評判スコアに更に基づく、請求項1に記載の方法。
  7. 前記コード作成活動が、アプリケーションをコンパイルしており、
    前記検出されたアプリケーションを前記コード作成活動と関連付けることが、前記コンパイルされたアプリケーションが前記検出されたアプリケーションに整合するということを判定することを含む、請求項1に記載の方法。
  8. 請求項1に記載の前記方法を実行するためのコンピュータプロセスを実行するように少なくとも1つのプロセッサに命令するために、前記少なくとも1つのプロセッサによって読み取り可能であるように構成されている命令のコンピュータプログラムを記憶する、少なくとも1つの非一時的プロセッサで読み取り可能なストレージ媒体。
  9. 製造物品であって、
    少なくとも1つの非一時的プロセッサで読み取り可能なストレージ媒体と、
    前記少なくとも1つの媒体上に記憶される命令と、を備え、
    前記命令が、少なくとも1つのプロセッサによって前記少なくとも1つの媒体から読み取り可能であり、それによって、前記少なくとも1つのプロセッサに、
    コード作成活動を検出することと、
    以前に知られていなかったアプリケーションの存在を検出することと、
    前記検出されたアプリケーションを前記コード作成活動と関連付けることと、
    前記アプリケーションが、前記検出されたアプリケーションを前記コード作成活動と関連付けることに基づいて、実行されることを許可することと、を行うように動作させるように構成されている、製造物品。
  10. 前記アプリケーションが実行されることを許可することが、前記アプリケーションをアプリケーションホワイトリストに自動的に追加することを更に必要とする、請求項9に記載の物品。
  11. 前記少なくとも1つのプロセッサが、
    第2のアプリケーションを検出することと、
    リモートクライアントから、前記第2のアプリケーションのステータスをホワイトリスト上にあるものとして受信することと、
    前記第2のアプリケーションが、前記受信されたステータスに基づいて実行されることを許可することと、を行うように更に動作可能である、請求項10に記載の物品。
  12. 前記少なくとも1つのプロセッサが、
    前記アプリケーションに関する範囲を判定することと、
    前記アプリケーションの前記範囲内の1つ以上のリモートクライアントに、前記ホワイトリスト上の前記アプリケーションの前記ステータスを伝送することと、を行うように更に動作可能である、請求項10に記載の物品。
  13. 前記アプリケーションが実行されることを許可することが、ホワイトリスト化ポリシーと関連付けられた複数のパラメータに、前記コード作成活動を整合させることに更に基づく、請求項9に記載の物品。
  14. 前記少なくとも1つのプロセッサが、
    前記アプリケーションに関する評判スコアを生成するように更に動作可能であり、
    前記評判スコアが、前記検出されたアプリケーションを前記コード作成活動と関連付けることに基づき、
    前記アプリケーションが実行されることを許可することが、事前に設定された閾値を超える前記アプリケーションの前記評判スコアに更に基づく、請求項1に記載の方法。
  15. システムであって、
    ネットワークに通信可能に連結される1つ以上のプロセッサを備え、前記1つ以上のプロセッサが、
    コード作成活動を検出することと、
    以前に知られていなかったアプリケーションの存在を検出することと、
    前記検出されたアプリケーションを前記コード作成活動と関連付けることと、
    前記アプリケーションが、前記検出されたアプリケーションを前記コード作成活動と関連付けることに基づいて、実行されることを許可することと、を行うように構成されている、製造物品。
  16. 前記アプリケーションが実行されることを許可することが、前記アプリケーションをアプリケーションホワイトリストに自動的に追加することを更に必要とする、請求項15に記載のシステム。
  17. 前記1つ以上のプロセッサが、
    第2のアプリケーションを検出することと、
    リモートクライアントから、前記第2のアプリケーションのステータスをホワイトリスト上にあるものとして受信することと、
    前記第2のアプリケーションが、前記受信されたステータスに基づいて実行されることを許可することと、を行うように更に動作可能である、請求項10に記載の物品。
  18. 前記1つ以上のプロセッサが、
    前記アプリケーションに関する範囲を判定することと、
    前記アプリケーションの前記範囲内の1つ以上のリモートクライアントに、前記ホワイトリスト上の前記アプリケーションの前記ステータスを伝送することと、を行うように更に動作可能である、請求項10に記載の物品。
  19. 前記アプリケーションが実行されることを許可することが、ホワイトリスト化ポリシーと関連付けられた複数のパラメータに、前記コード作成活動を整合させることに更に基づき、評判スコアが、登録されたユーザと関連付けられたスコアに更に基づく、請求項15に記載のシステム。
  20. 前記1つ以上のプロセッサが、
    前記アプリケーションに関する評判スコアを生成するように更に構成されており、
    前記評判スコアが、前記検出されたアプリケーションを前記コード作成活動と関連付けることに基づき、
    前記アプリケーションが実行されることを許可することが、事前に設定された閾値を超える前記アプリケーションの前記評判スコアに更に基づく、請求項1に記載の方法。
JP2018520193A 2015-10-26 2016-09-27 自動化されたアプリケーション分析のための技法 Active JP6602471B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/922,952 2015-10-26
US14/922,952 US9858410B2 (en) 2015-10-26 2015-10-26 Techniques for automated application analysis
PCT/US2016/053966 WO2017074632A1 (en) 2015-10-26 2016-09-27 Techniques for automated application analysis

Publications (3)

Publication Number Publication Date
JP2018531470A JP2018531470A (ja) 2018-10-25
JP2018531470A6 true JP2018531470A6 (ja) 2018-12-13
JP6602471B2 JP6602471B2 (ja) 2019-11-06

Family

ID=57121547

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018520193A Active JP6602471B2 (ja) 2015-10-26 2016-09-27 自動化されたアプリケーション分析のための技法

Country Status (5)

Country Link
US (1) US9858410B2 (ja)
EP (1) EP3369029B1 (ja)
JP (1) JP6602471B2 (ja)
CN (1) CN108351942B (ja)
WO (1) WO2017074632A1 (ja)

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006101549A2 (en) * 2004-12-03 2006-09-28 Whitecell Software, Inc. Secure system for allowing the execution of authorized computer program code
US7890612B2 (en) * 2006-05-08 2011-02-15 Electro Guard Corp. Method and apparatus for regulating data flow between a communications device and a network
US9378373B2 (en) * 2007-09-24 2016-06-28 Symantec Corporation Software publisher trust extension application
US8595282B2 (en) * 2008-06-30 2013-11-26 Symantec Corporation Simplified communication of a reputation score for an entity
US9495538B2 (en) * 2008-09-25 2016-11-15 Symantec Corporation Graduated enforcement of restrictions according to an application's reputation
US7640589B1 (en) * 2009-06-19 2009-12-29 Kaspersky Lab, Zao Detection and minimization of false positives in anti-malware processing
US20130097660A1 (en) * 2011-10-17 2013-04-18 Mcafee, Inc. System and method for whitelisting applications in a mobile network environment
US8584235B2 (en) * 2011-11-02 2013-11-12 Bitdefender IPR Management Ltd. Fuzzy whitelisting anti-malware systems and methods
RU2494453C2 (ru) * 2011-11-24 2013-09-27 Закрытое акционерное общество "Лаборатория Касперского" Способ распределенного выполнения задач компьютерной безопасности
US8214905B1 (en) * 2011-12-21 2012-07-03 Kaspersky Lab Zao System and method for dynamically allocating computing resources for processing security information
CA2874489A1 (en) * 2012-05-09 2013-11-14 SunStone Information Defense Inc. Methods and apparatus for identifying and removing malicious applications
KR101402057B1 (ko) * 2012-09-19 2014-06-03 주식회사 이스트시큐리티 위험도 계산을 통한 리패키지 애플리케이션의 분석시스템 및 분석방법
CA2902110C (en) * 2013-02-25 2018-07-31 Beyondtrust Software, Inc. Systems and methods of risk based rules for application control

Similar Documents

Publication Publication Date Title
JP6059812B2 (ja) セキュリティ脆弱性を検出するための技術
EP3474176B1 (en) System and method of detecting a malicious file
JP7084778B2 (ja) 標的型攻撃をクラウド型検出、探索および除去するシステムおよび方法
US10154066B1 (en) Context-aware compromise assessment
US9418222B1 (en) Techniques for detecting advanced security threats
US8719935B2 (en) Mitigating false positives in malware detection
US9177145B2 (en) Modified file tracking on virtual machines
EP2245572B1 (en) Detecting rootkits over a storage area network
JP6134395B2 (ja) アプリケーション制御のためのリスクベースの規則のシステム及び方法
JP6099804B2 (ja) スピアフィッシングターゲットを予測及び保護するための技法
US11477232B2 (en) Method and system for antivirus scanning of backup data at a centralized storage
US10225284B1 (en) Techniques of obfuscation for enterprise data center services
US9792436B1 (en) Techniques for remediating an infected file
US9239907B1 (en) Techniques for identifying misleading applications
US9141795B2 (en) Techniques for detecting malicious activity
EP3964990A1 (en) Method and system for deciding on the need for an automated response to an incident
US10650142B1 (en) Systems and methods for detecting potentially malicious hardware-related anomalies
JP6602471B2 (ja) 自動化されたアプリケーション分析のための技法
CN116611058A (zh) 一种勒索病毒检测方法及相关系统
CN116415240A (zh) 一种勒索病毒检测方法以及相关系统
US9578057B1 (en) Techniques for detecting an intranet spoofing attack
JP2018531470A6 (ja) 自動化されたアプリケーション分析のための技法
US9231969B1 (en) Determining file risk based on security reputation of associated objects
EP3906475A1 (en) Context based authorized external device copy detection
US10243963B1 (en) Systems and methods for generating device-specific security policies for applications