JP2018520437A - デジタル証明書を使用したマルウェア検出 - Google Patents

デジタル証明書を使用したマルウェア検出 Download PDF

Info

Publication number
JP2018520437A
JP2018520437A JP2017567101A JP2017567101A JP2018520437A JP 2018520437 A JP2018520437 A JP 2018520437A JP 2017567101 A JP2017567101 A JP 2017567101A JP 2017567101 A JP2017567101 A JP 2017567101A JP 2018520437 A JP2018520437 A JP 2018520437A
Authority
JP
Japan
Prior art keywords
digital certificate
data
analysis
file
digital
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2017567101A
Other languages
English (en)
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 JP2018520437A publication Critical patent/JP2018520437A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/562Static detection
    • G06F21/563Static detection by source code analysis
    • 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/567Computer malware detection or handling, e.g. anti-virus arrangements using dedicated hardware

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Virology (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Storage Device Security (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本明細書で説明される具体的な実施形態は、デジタル証明書に関するデータを分析し、デジタル証明書にレピュテーションを割り当てるべく構成され得る電子デバイスを提供し、レピュテーションはデータが適切かどうかの指標を含む。データの分析はデジタル証明書のためのコード署名がデジタル証明書のためのバイナリコードに一致するかどうか、デジタル証明書がポータブルな実行可能ファイルヘッダを変更することによりデータに結び付けられているかどうか、またはデジタル証明書が異なるデータと関連付けられる別の信頼できるデジタル証明書と同一であるかどうかを判定することを含み得る。

Description

[関連出願の相互参照]
本願は2015年6月27日に出願された「MALWARE DETECTION USING A DIGITAL CERTIFICATE」と題する米国非仮(実用)特許出願第14/752,874号に基づく優先権およびその利益を主張し、参照により本明細書にその全体が組み込まれる。
本開示は、概して情報セキュリティの分野に関し、より具体的にはデジタル証明書を使用したマルウェア検出に関する。
ネットワークセキュリティの分野は、現代社会において、ますます重要になってきている。インターネットは、世界中の種々のコンピュータネットワークの相互接続を可能にしている。具体的には、インターネットは、様々な種類のクライアントデバイスを介して、種々のコンピュータネットワークに接続された種々のユーザ間でデータを交換するための媒体を提供する。インターネットの使用が、ビジネスコミュニケーションおよびパーソナルコミュニケーションを変化させてきたが、それはまた、悪意のあるオペレータが、コンピュータおよびコンピュータネットワークへ不正アクセスを得るための、および機密情報の意図的なまたは不注意な開示のための手段として使われている。
ホストコンピュータを感染させる悪意のあるソフトウェア(「マルウェア」)は、ホストコンピュータと関連付けられた企業または個人からの機密情報の盗取、他のホストコンピュータへの伝播、および/または分散型サービス妨害攻撃に対する支援、ホストコンピュータからのスパムまたは悪意のある電子メールの送信等のようなあらゆる悪意のある動作を実行することが可能であり得る。したがって、悪意のあるソフトウェアおよびデバイスによる悪意のある不慮の搾取からコンピュータおよびコンピュータネットワークを保護するための重要な管理上の問題が残っている。
本開示、およびその特徴と利点のより完全な理解を提供するべく、添付の図と共に以下の説明が参照され、図において同様の参照番号は同様の部分を表す。
本開示の一実施形態による、デジタル証明書を使用したマルウェア検出のための通信システムの簡略ブロック図である。
本開示の一実施形態による、デジタル証明書を使用したマルウェア検出のための通信システムの簡略ブロック図である。
本開示の一実施形態による、デジタル証明書を使用したマルウェア検出のための通信システムの簡略ブロック図である。
一実施形態による、通信システムと関連付けられてよい潜在的な動作を示す簡略フローチャートである。
一実施形態による、ポイントツーポイント構成で配置される例示的なコンピューティングシステムを示すブロック図である。
本開示の例示的なARMエコシステムシステムオンチップ(SOC)と関連付けられる簡略ブロック図である。
一実施形態による、例示的なプロセッサコアを示すブロック図である。
図面の図は、必ずしも縮尺通りに描かれていない。それらの寸法が、本開示の範囲から逸脱することなく大幅に変更され得るためである。
[例示的な実施形態]
図1は、本開示の一実施形態による、デジタル証明書を使用したマルウェア検出のための通信システム100の簡略ブロック図である。図1に示すとおり、通信システム100の一実施形態は、電子デバイス102、クラウドサービス104、およびサーバ106を含み得る。電子デバイス102は、メモリ108、プロセッサ110、デジタル証明書検証モジュール112、および1または複数のファイル114a−114cを含み得る。各ファイル114a−114cは、それぞれデジタル証明書116a−116cを含み得る。クラウドサービス104およびサーバ106は、それぞれネットワークデジタル証明書検証モジュール118を含んでよい。電子デバイス102、クラウドサービス104、およびサーバ106は、ネットワーク126を使用して通信してよい。
悪意のあるデバイス120は、悪意のあるファイル122により、電子デバイス102を取り込むまたは感染させようと試み得る。悪意のあるファイル122は、悪意のあるファイル122の真のアイデンティティまたは目的を隠そうと試みて、不適切なデジタル証明書124を含み得る。悪意のあるデバイス120は、ネットワーク126を使用して電子デバイス102と通信し得る、または、(例えば、ユニバーサルシリアルバス(USB)型の接続を通じて)電子デバイス102に物理的に接続され得る。
悪意のあるファイル122は、ホストコンピュータと関連付けられた企業または個人からの機密情報の盗取、他のホストコンピュータへの伝播、および/または分散型サービス妨害攻撃に対する支援、ホストコンピュータからのスパムまたは悪意のある電子メールの送信等のようなあらゆる悪意のある動作等を実行するべくホストコンピュータ(例えば電子デバイス102)を感染させるマルウェアまたは悪意のあるソフトウェアであり得る。
デジタル証明書検証モジュール112は、不適切なデジタル証明書124を識別するべく構成され得、かつ、悪意のあるファイル122をマルウェアとして識別し得る。例えば、デジタル証明書検証モジュール112は、デジタル証明書が不適切であるかどうかを判定するべく、各ファイル114a−114cおよびそれらのデジタル証明書116a−116cを分析するように構成され得る。各ファイル114a−114cについてのメタデータと各デジタル証明書116a−116cを組み合わせて、不適切なまたは悪意のあるデジタル証明書が識別され得る。特定の例において、デジタル証明書検証モジュール112は、各デジタル証明書116a−116cを分析し得、かつ、各デジタル証明書116a−116cのコード署名(例えば、Authenticode(登録商標))がバイナリコードに一致するかどうかを判定し得る。コード署名は、暗号学的ハッシュ関数の使用により署名されたため、ソフトウェアの作者を確認し、コードが変更または破損されなかったという保証を試みるためのデジタル署名の実行ファイルおよびスクリプトのプロセスである。暗号学的ハッシュ関数は、デジタル証明書に任意の変更がなされたかどうかを示すことにより、デジタル証明書の完全性の検証を提供し得る。
図1の要素は、任意の好適な接続(有線または無線)を採用する1または複数のインタフェースを通じて互いに連結されてよく、それによりネットワーク(例えば、ネットワーク126)通信のための実行可能な経路を提供する。さらに、特定の構成の必要性に基づき、図1のこれらの要素のうち任意の1または複数のものは、組み合わされるか、またはアーキテクチャから取り除かれてよい。通信システム100は、ネットワークにおけるパケットの送信または受信用の伝送制御プロトコル/インターネットプロトコル(TCP/IP)通信が可能な構成を含んでよい。通信システム100はまた、適切である場合に、特定の必要性に基づいて、ユーザデータグラムプロトコル/IP(UDP/IP)または任意の他の好適なプロトコルと共に動作してよい。
通信システム100の特定の例示的技術を説明する目的で、ネットワーク環境をトラバースしている場合のある通信を理解することが重要である。以下の基礎的な情報は、本開示が適切に説明され得る根拠とみなされてよい。
現在のマルウェア検出システムおよび方法は、デジタル証明書により、ファイルをしばしば無視する、または、分析しない。これはファイルが信頼できるものであり、ファイルが実行され得るとシステムに通知する証明書の検証により一般的信頼が適用されるためである。いくつかのマルウェア検出システムおよびセキュリティプロダクトは、デジタル証明書によるファイルの検査を回避するべくデジタル証明書により得られた信頼の知識を使用する。したがって、現在のマルウェア検出システムおよびセキュリティプロダクトを回避するための一般的な手法は、デジタル証明書を悪意のあるファイルに結び付けることである。例えば、ポータブルな実行可能(PE)ヘッダのディレクトリ構造を変更すること、および悪意のあるファイルのデジタル証明書またはデジタル署名が有効であるようにみえる手法でデジタル証明書を悪意のあるファイルに書き込むことが可能である。必要とされるのはデジタル証明書の有効性を分析し、デジタル証明書が不適切であるかどうかを判定するシステムおよび方法である。
図1に概説されるように、デジタル証明書を使用したマルウェア検出のための通信システムは、これらの問題(および他の問題)を解決し得る。通信システム100は、ファイル(例えば、ファイル114a−114c)のためのデジタル証明書(例えば、デジタル証明書116a−166c)を分析し、ファイルがそのファイルは悪意があるものであると示し得る不適切なデジタル証明書を有するかどうかを判定するべく構成されてよい。例えば、デジタル証明書検証モジュール112は、ファイルを分析し、かつ、ファイルがPEヘッダおよびディレクトリを変更することにより結び付けられる不正な形式の証明書を有するかどうかを判定し得る。これを判定する1つの手法は、不適切なデジタル証明書がAuthenticode検証に失敗することになる(例えば、不良なハッシュ)Authenticode検証を使用することである。また、不適切なデジタル証明書は、その証明書が既知のデジタル証明書のフィンガープリントを共有するかどうか、またはファイルハッシュがシステムに特有であるかどうかを識別され得る。信頼できる証明書として同一のフィンガープリントを含むが、無効なAuthenticodeを有する証明書を使用したデジタル署名は、不適切なデジタル証明書の指標であり、かつ、(例えば、寄生性感染を通じて)変更されている証明書、または窃取された証明書を使用したマルウェアの強い指標である。寄生性感染の場合において、小さな誤差は、ファイルがオペレーティングシステムにおいて、ウィンドウズ(登録商標)ファイルの保護下または正規のアプリケーションの他の登録下であるかどうかをチェックすることにより取り除かれ得る。一例において、既知の証明書のフィンガープリントは、ネットワークデジタル証明書検証モジュール118を使用したより集中的な分析を通して識別され得る。例えば、既知のデジタル証明書を識別するべく公開鍵またはサムプリントが使用されてよい。別の例において、ネットワークデジタル証明書検証モジュール118は、フィンガープリントが別のデジタル証明書と同一であるかどうかを判定するべく照会され得る。ネットワークデジタル証明書検証モジュール118はまた、大量のバッチサンプルのネットワーク分析技術を使用することにより証明書の信頼を判定するべく使用され得る。
図1のインフラストラクチャを参照すると、例示的な実施形態による通信システム100が示されている。概して、通信システム100は、任意の種類のまたは任意のトポロジのネットワークにおいて実装され得る。ネットワーク126は、通信システム100を通じて伝播する情報のパケットを受信および送信するための、相互接続された通信経路の一連のポイントまたはノードを表す。ネットワーク126は、ノード間の通信インタフェースを提供し、任意のローカルエリアネットワーク(LAN)、仮想ローカルエリアネットワーク(VLAN)、ワイドエリアネットワーク(WAN)、無線ローカルエリアネットワーク(WLAN)、メトロポリタンエリアネットワーク(MAN)、イントラネット、エクストラネット、仮想プライベートネットワーク(VPN)、および、ネットワーク環境における通信を容易にする任意の他の適切なアーキテクチャまたはシステム、あるいはそれらの任意の好適な組み合わせとして、有線および/または無線通信を含んで構成されてよい。
通信システム100において、パケット、フレーム、信号、データ等を含むネットワークトラフィックは、任意の好適な通信メッセージングプロトコルに従って送信および受信され得る。好適な通信メッセージングプロトコルはオープンシステム間相互接続(OSI)モデル、またはその任意の派生例もしくは変形例(例えば、伝送制御プロトコル/インターネットプロトコル(TCP/IP)、ユーザデータグラムプロトコル/IP(UDP/IP))のような階層スキームを含み得る。さらに、セルラネットワークを通じた無線信号通信はまた、通信システム100に提供されてよい。好適なインタフェースおよびインフラストラクチャは、セルラネットワークとの通信を可能とするべく提供されてよい。
本明細書で使用される「パケット」という用語は、パケット交換ネットワーク上で、送信元ノードと宛先ノードとの間でルーティングされ得るデータ単位を指す。パケットは、送信元ネットワークアドレスおよび宛先ネットワークアドレスを含む。これらのネットワークアドレスは、TCP/IPメッセージングプロトコルにおけるインターネットプロトコル(IP)アドレスであり得る。本明細書で使用される「データ」という用語は、電子デバイスおよび/またはネットワークにおいて1つのポイントから別のポイントに伝達されてよい、任意の種類のバイナリ、数値、音声、ビデオ、テキストもしくはスクリプトデータ、または任意の種類のソースコードもしくはオブジェクトコード、または、任意の適切なフォーマットの任意の他の好適な情報を指す。さらに、メッセージ、要求、応答およびクエリは、ネットワークトラフィックの形態であり、したがって、パケット、フレーム、信号、データ等を備えてよい。
一実装例において、電子デバイス102、クラウドサービス104、およびサーバ106は、ネットワーク要素であり、これらは、複数のネットワークアプライアンス、サーバ、ルータ、スイッチ、ゲートウェイ、ブリッジ、ロードバランサ、プロセッサ、モジュール、またはネットワーク環境において情報を交換するべく動作可能な任意の他の好適なデバイス、コンポーネント、要素、もしくはオブジェクトを包含することが意図される。ネットワーク要素は、それらの動作を容易にする、任意の好適なハードウェア、ソフトウェア、コンポーネント、モジュールまたはオブジェクト、ならびにネットワーク環境において、データもしくは情報を受信、送信および/またはその他の方法で伝達するための好適なインタフェースも含んでよい。これは、データまたは情報の効果的な交換を可能にする適切なアルゴリズムおよび通信プロトコルを含んでよい。
通信システム100と関連付けられた内部構造に関して、電子デバイス102、クラウドサービス104、およびサーバ106は、本明細書で概説される動作において使用される情報を記憶するためのメモリ素子(例えばメモリ108)を含み得る。電子デバイス102、クラウドサービス104およびサーバ106は、任意の好適なメモリ素子(例えば、ランダムアクセスメモリ(RAM)、リードオンリメモリ(ROM)、消去可能プログラマブルROM(EPROM)、電子的消去可能プログラマブルROM(EEPROM)、特定用途向け集積回路(ASIC)等)、ソフトウェア、ハードウェア、ファームウェアに、または適切である場合に、特定の必要性に基づいて、任意の他の好適なコンポーネント、デバイス、要素、またはオブジェクトに情報を保持してよい。本明細書で述べられているメモリアイテムのいずれも、「メモリ素子」という広義の用語に包含されていると解釈されるべきである。さらに、通信システム100において使用、追跡、送信、または、受信されている情報は、任意のデータベース、レジスタ、キュー、テーブル、キャッシュ、制御リスト、または、他のストレージ構造において提供され得、それらの全ては、任意の好適なタイムフレームで参照され得る。そのようなストレージの選択肢のいずれもまた、本明細書で使用される「メモリ素子」という広義の用語内に含まれてよい。
特定の実装例において、本明細書に概説される機能は、非一時的コンピュータ可読媒体を含んでよい1または複数の有形媒体内に符号化されているロジック(例えば、ASIC内に提供される組み込みロジック、デジタル信号プロセッサ(DSP)命令、プロセッサ、または、他の同様の機械等により実行される(オブジェクトコードおよびソースコードを潜在的に包含する)ソフトウェア)により実装されてよい。これらの例のいくつかにおいて、メモリ素子は、本明細書に説明されている動作に使用されるデータを記憶し得る。これは、本明細書に説明されているアクティビティを行うために実行されるソフトウェア、ロジック、コードまたはプロセッサ命令を記憶できるメモリ素子を含む。
一実装例において、本明細書に概説される動作を実現し、または促進するべく、電子デバイス102、クラウドサービス104、およびサーバ106のような通信システム100のネットワーク要素は、ソフトウェアモジュール(例えば、デジタル証明書検証モジュール112およびネットワークデジタル証明書検証モジュール118)を含んでよい。これらのモジュールは、特定の構成および/またはプロビジョニングの必要性に基づいてよい任意の適切な方式で、好適に組み合わされてよい。例示的な実施形態において、そのような動作は、ハードウェアによって実行され、これらの要素に外部から実施され、または意図される機能を実現する何らかの他のネットワークデバイスに含まれてよい。さらに、モジュールは、ソフトウェア、ハードウェア、ファームウェア、またはそれらの任意の好適な組み合わせとして実装され得る。これらの要素はまた、本明細書に概説されるように、動作を実現するために他のネットワーク要素と連携できるソフトウェア(またはレシプロケーティングソフトウェア)を含んでよい。
さらに、電子デバイス102、クラウドサービス104、およびサーバ106は、本明細書で述べられているようなアクティビティを実行するためのソフトウェアまたはアルゴリズムを実行し得るプロセッサ(例えばプロセッサ110)を含んでよい。プロセッサは、本明細書に詳述されている動作を実現するべく、データと関連付けられた任意の種類の命令を実行し得る。一例において、プロセッサは、要素または物品(例えばデータ)を1つの状態もしくは物から別の状態もしくは物に変換できる。別の例において、本明細書で概説するアクティビティは、固定ロジックまたはプログラマブルロジック(例えば、プロセッサにより実行されるソフトウェア/コンピュータ命令)で実施されてよい。本明細書で識別される要素は、何らかの種類のプログラマブルプロセッサ、プログラマブルデジタルロジック(例えば、フィールドプログラマブルゲートアレイ(FPGA)、EPROM、EEPROM)またはデジタルロジック、ソフトウェア、コード、電子命令もしくはそれらの任意の好適な組み合わせを含むASICであり得る。本明細書で説明されている潜在的な処理要素、モジュールおよび機械のいずれも、「プロセッサ」という広義の用語に包含されていると解釈されるべきである。
電子デバイス102は、ネットワーク要素であり得、例えば、デスクトップコンピュータ、ラップトップコンピュータ、モバイルデバイス、携帯情報端末、スマートフォン、タブレット、または他の同様のデバイスを含み得る。クラウドサービス104は、電子デバイス102にクラウドサービスを提供するべく構成される。クラウドサービスは、概して、インターネットのようなネットワークを介したサービスとして供給されるコンピューティングリソースの使用と定義されてよい。典型的に、計算、ストレージ、およびネットワークリソースは、クラウドインフラストラクチャにおいて提供され、作業負荷をローカルネットワークからクラウドネットワークへ効果的にシフトする。サーバ106は、サーバまたは仮想サーバのようなネットワーク要素であり得、なんらかのネットワーク(例えば、ネットワーク126)を介して通信システム100における通信を開始したい、クライアント、顧客、エンドポイントまたはエンドユーザと関連付けられ得る。「サーバ」という用語は、通信システム100内のクライアントの代わりに、クライアントの要求を果たす、および/または何らかの計算タスクを実行するべく使用されるデバイスを含む。デジタル証明書検証モジュール112は、電子デバイス102に配置されているように図1に表されているが、これは説明のためにすぎない。デジタル証明書検証モジュール112は、任意の好適な構成において組み合わされ、または分離され得る。さらに、デジタル証明書検証モジュール112は、クラウドサービス104またはサーバ106のような電子デバイス102によりアクセス可能な別のネットワークに統合され、または分配され得る。
図2Aを参照すると、図2Aは、性質不明のファイル128のブロック図である。性質不明のファイル128は、信頼できるファイル、良性のファイルまたは悪意のあるファイルであり得る。性質不明のファイル128は、イメージオプショナルヘッダ130、セクションヘッダ134、およびセクション136を含み得る。イメージオプショナルヘッダ130は、証明書テーブル132を含み得る。イメージオプショナルヘッダ130は、性質不明のファイル128のローダに情報を提供し得る。証明書テーブル132は、ファイルが1または複数のデジタル証明書を含むかどうかを示し得る。セクションヘッダ134は、セクション136のコンテンツまたはデータを識別し得る。セクション136は、性質不明のファイル128のペイロードのような性質不明のファイル128に関するデータを含む。性質不明のファイル128は、デジタル証明書を含まないので、性質不明のファイル128が悪意のあるものであった場合に、大抵のマルウェア検出システムおよびセキュリティプロダクトが、性質不明のファイル128を悪意のあるファイルとして識別することが比較的容易であり得る。
図2Bを参照すると、図2Bは、デジタル証明書によるデジタル署名済のファイル138のブロック図である。デジタル署名済のファイル138が悪意のあるファイルであった場合、性質不明のファイル128とは異なり、いくつかのマルウェア検出システムおよびセキュリティプロダクトは、デジタル署名済のファイル138を悪意のあるファイルとして特定しないであろう。デジタル署名済のファイル138はイメージオプショナルヘッダ130、セクション、ヘッダ134、およびセクション136を含み得る。セクション136は、証明書テーブル140を含み得る。証明書テーブル140は、コンテンツ情報142、証明書144、および署名者情報146を含み得る。証明書144は、デジタル署名済のファイル138のための任意のデジタル証明書を含み得る。例えば、証明書144は、パブリッシャ/タイムスタンプのための証明書、X509証明書148を含むものとして示されている。署名者情報146は、証明書144の各デジタル証明書のための署名者情報を含む。例えば、署名者情報146は、パブリッシャ/タイムスタンプのための証明書、X509証明書148のためのデジタル証明書署名者情報150を含むものとして示されている。デジタル証明書署名者情報150は、副署名152を含み得る。
デジタル証明書検証モジュール112(またはネットワークデジタル証明書検証モジュール118)は、デジタル署名済のファイル138を分析し、かつ、デジタル署名済のファイル138が悪意のあるものであるかどうかを判定するべく構成され得る。例えば、デジタル証明書検証モジュール112は、セキュリティディレクトリエントリが悪意のあるファイルを示すような手法で設定されているかどうかを判定するべく証明書テーブル132を分析し得る。加えて、デジタル証明書検証モジュール112は、セクションヘッダ134を分析し、セクションサイズが変更されているかどうかを判定し得る。変更された場合、その後デジタル署名済のファイル138は悪意のあるものであり得る。また、デジタル証明書検証モジュール112は、コンテンツ情報142を分析し、Authenticodeが既知のマルウェアファイルのためのAuthenticodeに一致するべく変更されているかどうかを判定し得る。デジタル証明書検証モジュール112はまた、証明書テーブル140を分析し、証明書が別の正規のファイルから追加されているかどうかを判定するべく構成され得る。さらに、デジタル証明書検証モジュール112は、証明書の詳細が変更され、それが悪意のあるアクティビティを示しているかどうかを判定するべくパブリッシャ/タイムスタンプのための証明書、X509証明書148を分析し得る。加えて、デジタル証明書検証モジュール112は、副署名152が任意の未認証の属性を含み、それが悪意のあるアクティビティを示し得るかどうかを判定するべくデジタル証明書署名者情報150の副署名152を分析し得る。
図3を参照すると、図3は、一実施形態による、デジタル証明書を使用したマルウェア検出と関連付けられてよいフロー300の可能な動作を示す例示的なフローチャートである。一実施形態において、フロー300の1または複数の動作は、デジタル証明書検証モジュール112およびネットワークデジタル証明書検証モジュール118により実行されてよい。302において、ファイルと関連付けられたデジタル証明書が分析される。304において、システムはデジタル証明書が適切であるかどうかを判定する。デジタル証明書が適切であるかどうかを判定するべく、システムはデジタル証明書に関するファイルおよびファイル中のデータを分析し得る。例えば、システムはデジタル証明書のためのコード署名がデジタル証明書のためのバイナリコードに一致するかどうか、デジタル証明書がポータブルな実行可能ファイルヘッダを変更することによりデータに結び付けられているかどうか、デジタル証明書が異なるデータと関連付けられる別の信頼できるデジタル証明書と同一であるかまたは同一のフィンガープリントを有するかどうか等を判定し得る。デジタル証明書が適切ではない場合(例えば、デジタル証明書のためのコード署名がデジタル証明書のためのバイナリコードに一致する場合、デジタル証明書がポータブルな実行可能ファイルヘッダを変更することによりデータに結び付けられている場合、デジタル証明書が異なるデータと関連付けられる別の信頼できるデジタル証明書と同一であるかまたは同一のフィンガープリントを有する場合等)、306に示されるように、ファイルは、信頼できないものであるとして分類されてよい。デジタル証明書が適切である場合、310に示されるように、その後システムはデジタル証明書が信頼できるものであるかどうかを判定する。例えば、デジタル証明書に関するデータは、適切であり得るが、デジタル証明書自体は信頼できないものであり得る(例えば、マルウェアと関連付けられて知られているデジタル証明書等)。デジタル証明書が信頼できないものである場合、306に示すとおり、その後ファイルは信頼できないものとして分類されてよい。デジタル証明書が信頼できるものである場合、308に示すとおり、その後ファイルは信頼できるものとして分類されてよい。
図4を参照すると、図4は、一実施形態による、ポイントツーポイント(PtP)構成で配置されるコンピューティングシステム400を示す。具体的には、図4は、プロセッサ、メモリ、および入力/出力デバイスが多数のポイントツーポイントインタフェースにより相互接続されたシステムを示している。概して、通信システム100のネットワーク要素のうち1または複数は、コンピューティングシステム400と同一または同様の方式で構成されてよい。
図4に示すとおり、システム400は、いくつかのプロセッサを含んでよいが、明確性のために、それらのうちの2つのプロセッサ470および480のみが示されている。2つのプロセッサ470および480が示されているが、システム400の一実施形態はまた、そのようなプロセッサを1つだけ含んでよいことを理解されたい。プロセッサ470および480はそれぞれ、プログラムの複数のスレッドを実行するべく、コアのセット(すなわち、プロセッサコア474Aおよび474B、ならびにプロセッサコア484Aおよび484B)を含んでよい。コアは、図1から図3を参照して上に述べられたものと同様の方式で命令コードを実行するべく構成されてよい。各プロセッサ470、480は、少なくとも1つの共有キャッシュ471、481を含んでよい。共有キャッシュ471、481は、プロセッサコア474および484のような、プロセッサ470、480の1または複数のコンポーネントにより利用されるデータ(例えば命令)を記憶してよい。
プロセッサ470および480はまたそれぞれ、メモリ素子432および434と通信するべく、統合メモリコントローラロジック(MC)472および482を含んでよい。メモリ素子432および/または434は、プロセッサ470および480により使用される様々なデータを記憶してよい。代替的な実施形態において、メモリコントローラロジック472および482は、プロセッサ470および480とは分離したディスクリートロジックであってよい。
プロセッサ470および480は、任意の種類のプロセッサであってよく、それぞれ、ポイントツーポイント(PtP)インタフェース回路478および488を使用して、ポイントツーポイントインタフェース450を介して、データを交換してよい。プロセッサ470および480はそれぞれ、ポイントツーポイントインタフェース回路476、486、494および498を使用して、個々のポイントツーポイントインタフェース452および454を介して、チップセット490とデータを交換してよい。チップセット490はまた、PtPインタフェース回路であり得るインタフェース回路492を使用して、高性能グラフィックスインタフェース439を介して、高性能グラフィックス回路438とデータを交換してよい。代替的な実施形態において、図4に示されているPtPリンクのいずれかまたは全ては、PtPリンクではなく、マルチドロップバスとして実装され得る。
チップセット490は、インタフェース回路496を介してバス420と通信してよい。バス420は、バスブリッジ418およびI/Oデバイス416のような、バスを介して通信する、1または複数のデバイスを有してよい。バス410を介して、バスブリッジ418は、キーボード/マウス412(またはタッチスクリーン、トラックボールのような他の入力デバイス等)、(モデム、ネットワークインタフェースデバイス、またはコンピュータネットワーク460を通じて通信してよい他の種類の通信デバイスのような)通信デバイス426、オーディオI/Oデバイス414、および/またはデータストレージデバイス428のような他のデバイスと通信してよい。データストレージデバイス428はコード430を記憶してよく、これはプロセッサ470および/または480により実行されてよい。代替的な実施形態において、バスアーキテクチャの任意の部分は、1または複数のPtPリンクで実装され得る。
図4に示されているコンピュータシステムは、本明細書で述べられている様々な実施形態を実施するべく利用されてよい、コンピューティングシステムの一実施形態の概略図である。図4に示されているシステムの様々なコンポーネントは、システムオンチップ(SoC)アーキテクチャで、または任意の他の好適な構成で組み合わされてよいことが理解されよう。例えば、本明細書に開示されている実施形態は、スマート携帯電話、タブレットコンピュータ、携帯情報端末、ポータブルゲームデバイス等のようなモバイルデバイスを含むシステム内に組み込まれ得る。これらのモバイルデバイスには、少なくともいくつかの実施形態においてSoCアーキテクチャが提供されてよいことが理解されよう。
図5を参照すると、図5は、本開示の例示的なARMエコシステムSOC500と関連付けられる簡略ブロック図である。本開示の少なくとも1つの実装例は、本明細書で述べられているデジタル証明書の特徴、およびARMコンポーネントを使用したマルウェア検出の判定を含み得る。例えば、図5の例は、任意のARMコア(例えばA−9、A−15等)と関連付けられ得る。さらに、アーキテクチャは、任意の種類のタブレット、(Android(登録商標) フォン、iPhone(登録商標)を含む)スマートフォン、iPad(登録商標)、Google Nexus(登録商標)、Microsoft Surface(登録商標)、パーソナルコンピュータ、サーバ、ビデオ処理コンポーネント、(任意の種類のノートブックを含む)ラップトップコンピュータ、Ultrabook(登録商標) システム、任意の種類のタッチ対応の入力デバイス等の一部であり得る。
図5の本例において、ARMエコシステムSOC500は、液晶ディスプレイ(LCD)と連結するモバイルインダストリプロセッサインタフェース(MIPI)/高精細度マルチメディアインタフェース(HDMI(登録商標))リンクと関連付けられてよく、複数のコア506−507、L2キャッシュ制御508、バスインタフェースユニット509、L2キャッシュ510、グラフィックス処理ユニット(GPU)515、相互接続502、ビデオコーデック520、およびLCD I/F525を含んでよい。
ARMエコシステムSOC500はまた、加入者識別モジュール(SIM)I/F530、ブートリードオンリメモリ(ROM)535、シンクロナスダイナミックランダムアクセスメモリ(SDRAM)コントローラ540、フラッシュコントローラ545、シリアルペリフェラルインタフェース(SPI)マスタ550、好適な電力制御555、ダイナミックRAM(DRAM)560、およびフラッシュ565を含んでよい。加えて、1または複数の例示的な実施形態は、Bluetooth(登録商標)570、3Gモデム575、グローバルポジショニングシステム(GPS)580、および802.11Wi−Fi(登録商標)585の例のような1または複数の通信能力、通信インタフェース、および通信機能を含む。
動作において、図5の例は、様々な種類のコンピューティング(例えば、モバイルコンピューティング、ハイエンドデジタルホーム、サーバ、無線インフラストラクチャ等)を可能にするべく、比較的低い電力消費と共に処理能力を提供し得る。加えて、このようなアーキテクチャは、あらゆるソフトウェアアプリケーション(例えば、Android(登録商標)、Adobe(登録商標) Flash(登録商標) プレーヤ、Java(登録商標) プラットフォームスタンダードエディション(Java(登録商標) SE)、Java(登録商標) FX、Linux(登録商標)、Microsoft Windows(登録商標) Embedded、SymbianおよびUbuntu等)を可能にし得る。少なくとも1つの例示的な実施形態において、コアプロセッサは、連結された低レイテンシレベル2キャッシュを有するアウトオブオーダスーパースカラパイプラインを実施してよい。
図6を参照すると、図6は、一実施形態によるプロセッサコア600を示す。プロセッサコア600は、マイクロプロセッサ、埋込みプロセッサ、デジタル信号プロセッサ(DSP)、ネットワークプロセッサ、または、コードを実行する他のデバイスのような、任意の種類のプロセッサ用のコアであってよい。図6において、1つのプロセッサコア600のみが示されているが、プロセッサは、図6に示されているプロセッサコア600の1つより多くを代替的に含んでよい。例えば、プロセッサコア600は、図4のプロセッサ470および480を参照して示され、かつ説明されているプロセッサコア474A、474B、484Aおよび484Bの1つの例示的な実施形態を表す。プロセッサコア600は、シングルスレッドコアであってよく、または、少なくとも1つの実施形態に関して、プロセッサコア600は、コアごとに1つより多くのハードウェアスレッドコンテキスト(もしくは「ロジックプロセッサ」)を含んでよいという点で、マルチスレッドコアであってよい。
図6はまた、一実施形態による、プロセッサコア600に連結されたメモリ602を示す。メモリ602は、既知またはそうでなければ当業者に利用可能な、多様なメモリ(メモリ階層の様々な層を含む)のいずれかであってよい。メモリ602は、コード604を含んでよく、これは、プロセッサコア600により実行されるべき1または複数の命令であってよい。プロセッサコア600は、コード604により示される命令のプログラムシーケンスに従い得る。各命令は、フロントエンドロジック606に入り、1または複数のデコーダ608により処理される。デコーダは、その出力として、予め定義されたフォーマットで固定幅マイクロオペレーションのようなマイクロオペレーションを生成してよく、または、元のコード命令を反映する他の命令、マイクロ命令、もしくは制御信号を生成してよい。フロントエンドロジック606はまた、レジスタリネーミングロジック610およびスケジューリングロジック612を含み、これらは概してリソースを割り当て、実行のための命令に対応する動作をキューに入れる。
プロセッサコア600はまた、実行ユニット616−1から616−Nのセットを有する実行ロジック614を含み得る。いくつかの実施形態は、特定の機能または機能のセット専用の複数の実行ユニットを含んでよい。他の実施形態は、1つの実行ユニットのみを含んでよく、または特定の機能を実行し得る1つの実行ユニットを含んでよい。実行ロジック614は、コード命令により規定された動作を実行する。
コード命令により規定された動作の実行完了後、バックエンドロジック618は、コード604の命令をリタイアし得る。一実施形態において、プロセッサコア600は、アウトオブオーダ実行を可能とするが、命令のインオーダリタイアメントを必要とする。リタイアメントロジック620は、様々な既知の形式(例えば、リオーダバッファ等)を取ってよい。このように、プロセッサコア600は、デコーダ、レジスタリネーミングロジック610により利用されるハードウェアレジスタおよびテーブル、ならびに実行ロジック614により変更される任意のレジスタ(不図示)により生成される出力に少なくとも関して、コード604の実行中に変換される。
図6には示されていないが、あるプロセッサは、プロセッサコア600と共に、チップ上に他の要素を含んでよく、少なくともそれらのうちのいくつかは、図4を参照して本明細書において示され、および説明されている。例えば、図4に示すように、あるプロセッサは、プロセッサコア600と共にメモリ制御ロジックを含んでよい。プロセッサは、I/O制御ロジックを含んでよく、および/または、メモリ制御ロジックと統合されたI/O制御ロジックを含んでよい。
本明細書で提供される例に関して、2つ、3つ、またはそれより多くのネットワーク要素に関してインタラクションが説明される場合があることに留意されたい。しかしながら、これは、明確性および例示のみを目的としてなさているものである。特定の場合には、限定的な数のネットワーク要素のみを参照することにより、フローの所与のセットの1または複数の機能を説明することがより容易になり得る。通信システム100、およびその教示は、容易に拡張可能であり、多数のコンポーネントにも、より複雑な/精巧な配置および構成にも適応できることが理解されるべきである。したがって、提供されている例は、無数の他のアーキテクチャに適用される可能性のある通信システム100の範囲を限定すべきでなく、またはその幅広い教示を妨げるべきではない。
前述のフロー図(すなわち図3)における動作は、通信システム100により実行されてよい、または通信システム100内で実行されてよい考えられる相関シナリオおよびパターンのうちのいくつかだけを示していることに留意することも重要である。これらの動作のうちのいくつかは、適宜削除もしくは除去されてよく、または、これらの動作は、本開示の範囲から逸脱することなく、大幅に変形もしくは変更されてよい。加えて、これらの動作の多数は、1または複数の追加的な動作と同時に、またはこれらと並列して実行されるものとして説明されている。しかしながら、これらの動作のタイミングは、大幅に変更されてよい。前述の動作のフローは、例示および説明目的のために提供されている。任意の好適な配置、時系列、構成、およびタイミングメカニズムが、本開示の教示から逸脱することなく提供されてよいという点において、かなりのフレキシビリティが通信システム100により提供される。
本開示は、特定の配置および構成を参照して詳細に説明されているが、これらの例示的な構成および配置は、本開示の範囲から逸脱することなく、大幅に変更されてよい。さらに、特定のコンポーネントが、特定の必要性および実施に基づいて、組み合わされ、分離され、削除され、または追加されてよい。さらに、通信システム100は、通信プロセスを容易にする特定の要素および動作を参照して示されているが、これらの要素および動作は、通信システム100の意図される機能を実現する任意の好適なアーキテクチャ、プロトコル、および/またはプロセスにより置換されてよい。
多数の他の変化、代替、バリエーション、変更、および変形が、当業者に確認されてよく、本開示は、全てのこのような変化、代替、バリエーション、変更、および変形を、添付の特許請求の範囲内に含まれるものとして包含することが意図されている。米国特許商標庁(USPTO)が、さらには本願に対して発行される特許の読み手が、特許請求の範囲を解釈する際に分かり易いように、出願人は、(a)特許請求の範囲の請求項がいずれも、「means for(の手段)」または「step for(のステップ)」という表現が特に特定の請求項で使用されていない限り、出願日時点に存在する米国特許法第112条第6項を適用することを意図しておらず、(b)本明細書のいずれの記載によっても、特許請求の範囲の記載されている内容以外で本開示を限定することを意図するものではない点について注意を喚起しておきたい。
[他の注記および例]
例C1は、少なくとも1つのプロセッサによって実行されることで、デジタル証明書に関するデータを分析することと、デジタル証明書にレピュテーションを割り当てさせることであって、レピュテーションは、デジタル証明書に関するデータが適切であるかどうかの指標を含む、割り当てさせることとを少なくとも1つのプロセッサに実行させる1または複数の命令を有する、少なくとも1つの機械可読媒体である。
例C2において、例C1の主題は、デジタル証明書に関するデータの分析は、デジタル証明書のためのコード署名がデジタル証明書のためのバイナリコードに一致するかどうかを判定することを含むことを任意で含み得る。
例C3において、例C1−C2のいずれか1つの主題は、コード署名はAuthenticodeであることを任意で含み得る。
例C4において、例C1−C3のいずれか1つの主題は、デジタル証明書に関するデータの分析はデジタル証明書がポータブルな実行可能ファイルヘッダを変更することにより、データに結び付けられているかどうかを判定することを含むことを任意で含み得る。
例C5において、例C1−C4のいずれか1つの主題は、デジタル証明書に関するデータの分析は、デジタル証明書が、異なるデータと関連付けられる別の信頼できるデジタル証明書と同一であると判定することを含むことを任意で含み得る。
例C6において、例C1−C5のいずれか1つの主題は、デジタル証明書に関するデータの分析がデータが不適切であると示す場合、デジタル証明書は信頼できないものとして分類されることを任意で含み得る。
例A1において、装置は、デジタル証明書およびデジタル証明書に関するデータを含むファイルを識別し、デジタル証明書に関するデータを分析し、ファイルへのレピュテーションを割り当てるべく構成されるデジタル証明書検証モジュールを含み、レピュテーションは、デジタル証明書に関するデータが適切であるかどうかの指標を含む。
例A2において、例A1の主題は、デジタル証明書に関するデータの分析は、デジタル証明書のためのコード署名がデジタル証明書のためのバイナリコードに一致するかどうかを判定することを含むことを任意で含み得る。
例A3において、例A1−A2のいずれか1つの主題は、コード署名はAuthenticodeであることを任意で含み得る。
例A4において、例A1−A3のいずれか1つの主題は、データの分析は、デジタル証明書がポータブルな実行可能ファイルヘッダを変更することにより、データに結び付けられているかどうかを判定することを含むことを任意で含み得る。
例A5において、例A1−A4のいずれか1つの主題は、デジタル証明書に関するデータの分析は、デジタル証明書が異なるデータと関連付けられる別の信頼できるデジタル証明書と同一であるかどうかを判定することを含むことを任意で含み得る。
例A6において、例A1−A5のいずれか1つの主題は、デジタル証明書に関するデータの分析が、データが不適切であると示す場合、ファイルは信頼できないものとして分類されることを任意で含み得る。
例M1は、デジタル証明書に関するデータを分析する段階と、デジタル証明書にレピュテーションを割り当てる段階とを含み、レピュテーションは、デジタル証明書に関するデータが適切であるかどうかの指標を含む、方法である。
例M2において、例M1の主題は、データの分析は、デジタル証明書のためのコード署名が、デジタル証明書のためのバイナリコードに一致するかどうかを判定することを含むことを任意で含み得る。
例M3において、例M1−M2のいずれか1つの主題は、コード署名はAuthenticodeであることを任意で含み得る。
例M4において、例M1−M3のいずれか1つの主題は、データの分析は、デジタル証明書がポータブルな実行可能ファイルヘッダを変更することにより、データに結び付けられているかどうかを判定することを含むことを任意で含み得る。
例M5において、例M1−M4のいずれか1つの主題は、データの分析は、デジタル証明書が異なるデータと関連付けられる別の信頼できるデジタル証明書と同一であるかどうかを判定することを含むことを任意で含み得る。
例S1は、デジタル証明書を使用したマルウェア検出のためのシステムであって、デジタル証明書に関するデータを識別し、デジタル証明書に関するデータを分析し、デジタル証明書にレピュテーションを割り当てるために構成されるデジタル証明書検証モジュールを含み、レピュテーションは、データが適切であるかどうかの指標を含む。
例S2において、例S1の主題は、データの分析は、デジタル証明書のためのコード署名が、デジタル証明書のためのバイナリコードに一致するかどうかを判定することを含むことを任意で含み得る。
例S3において、例S1およびS2のいずれか1つの主題は、データの分析は、デジタル証明書が、ポータブルな実行可能ファイルヘッダを変更することにより、データに結び付けられているかどうかを判定することを含むことを任意で含み得る。
例X1は、例A1−A8または例M1−M7のいずれか1つに示されるように、方法を実施するまたは装置を実現するための機械可読命令を含む機械可読ストレージ媒体である。例Y1は、例示的な方法M1−M7のいずれかを実行するための手段を備える装置である。例Y2において、例Y1の主題は、プロセッサおよびメモリを備える方法を実行する手段を任意で含み得る。例Y3において、例Y2の主題は、機械可読命令を備えるメモリを任意で含み得る。

Claims (20)

  1. 少なくとも1つのプロセッサによって実行されることで、
    デジタル証明書に関するデータを分析することと
    前記デジタル証明書にレピュテーションを割り当てさせることであって、前記レピュテーションは、前記デジタル証明書に関する前記データが適切であるかどうかの指標を含む、割り当てさせることと
    を前記少なくとも1つのプロセッサに実行させる1または複数の命令を備える
    プログラム。
  2. 前記データの前記分析は、前記デジタル証明書のためのコード署名が前記デジタル証明書のためのバイナリコードに一致するかどうかを判定することを含む、請求項1に記載のプログラム。
  3. 前記コード署名はAuthenticodeである、請求項2に記載のプログラム。
  4. 前記データの前記分析は、前記デジタル証明書がポータブルな実行可能ファイルヘッダを変更することにより、前記データに結び付けられているかどうかを判定することを含む、請求項1から3のいずれか一項に記載のプログラム。
  5. 前記データの前記分析は、前記デジタル証明書が、異なるデータと関連付けられる別の信頼できるデジタル証明書と同一であると判定することを含む、請求項1から4のいずれか一項に記載のプログラム。
  6. 前記デジタル証明書に関する前記データの前記分析が、前記デジタル証明書に関する前記データが不適切であると示す場合、ファイルは信頼できないものとして分類される、請求項1から5のいずれか一項に記載のプログラム。
  7. デジタル証明書および前記デジタル証明書に関するデータを含むファイルを識別し、
    前記デジタル証明書に関する前記データを分析し、
    前記ファイルへのレピュテーションを割り当てる、
    デジタル証明書検証モジュールを備え、
    前記レピュテーションは、前記デジタル証明書に関する前記データが適切であるかどうかの指標を含む、
    装置。
  8. 前記デジタル証明書に関する前記データの前記分析は、前記デジタル証明書のためのコード署名が前記デジタル証明書のためのバイナリコードに一致するかどうかを判定することを含む、請求項7に記載の装置。
  9. 前記コード署名はAuthenticodeである、請求項8に記載の装置。
  10. 前記デジタル証明書に関する前記データの前記分析は、前記デジタル証明書がポータブルな実行可能ファイルヘッダを変更することにより、前記データに結び付けられているかどうかを判定することを含む、請求項7から9のいずれか一項に記載の装置。
  11. 前記デジタル証明書に関する前記データの前記分析は、前記デジタル証明書が異なるデータと関連付けられる別の信頼できるデジタル証明書と同一であるかどうかを判定することを含む、請求項7から10のいずれか一項に記載の装置。
  12. 前記デジタル証明書に関する前記データの前記分析が、前記データが不適切であると示す場合、前記ファイルは信頼できないものとして分類される、請求項7から11のいずれか一項に記載の装置。
  13. デジタル証明書に関するデータを分析する段階と
    前記デジタル証明書にレピュテーションを割り当てる段階とを備え、
    前記レピュテーションは、前記デジタル証明書に関する前記データが適切であるかどうかの指標を含む、
    方法。
  14. 前記データの前記分析は、前記デジタル証明書のためのコード署名が、前記デジタル証明書のためのバイナリコードに一致するかどうかを判定することを含む、請求項13に記載の方法。
  15. 前記コード署名はAuthenticodeである、請求項14に記載の方法。
  16. 前記データの前記分析は、前記デジタル証明書がポータブルな実行可能ファイルヘッダを変更することにより、前記データに結び付けられているかどうかを判定することを含む、請求項13から15のいずれか一項に記載の方法。
  17. 前記データの前記分析は、前記デジタル証明書が異なるデータと関連付けられる別の信頼できるデジタル証明書と同一であるかどうかを判定することを含む、請求項13から16のいずれか一項に記載の方法。
  18. デジタル証明書を使用したマルウェア検出のためのシステムであって、
    デジタル証明書に関するデータを識別し、
    前記デジタル証明書に関する前記データを分析し、
    前記デジタル証明書にレピュテーションを割り当てる、
    デジタル証明書検証モジュールを備え、
    前記レピュテーションは、前記デジタル証明書に関する前記データが適切であるかどうかの指標を含む、
    システム。
  19. 前記データの前記分析は、前記デジタル証明書のためのコード署名が、前記デジタル証明書のためのバイナリコードに一致するかどうかを判定することを含む、請求項18に記載のシステム。
  20. 前記データの前記分析は、前記デジタル証明書が、ポータブルな実行可能ファイルヘッダを変更することにより、前記データに結び付けられているかどうかを判定することを含む、請求項18または19に記載のシステム。
JP2017567101A 2015-06-27 2016-05-26 デジタル証明書を使用したマルウェア検出 Pending JP2018520437A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/752,874 US10642976B2 (en) 2015-06-27 2015-06-27 Malware detection using a digital certificate
US14/752,874 2015-06-27
PCT/US2016/034218 WO2017003598A1 (en) 2015-06-27 2016-05-26 Malware detection using a digital certificate

Publications (1)

Publication Number Publication Date
JP2018520437A true JP2018520437A (ja) 2018-07-26

Family

ID=57602481

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017567101A Pending JP2018520437A (ja) 2015-06-27 2016-05-26 デジタル証明書を使用したマルウェア検出

Country Status (5)

Country Link
US (2) US10642976B2 (ja)
EP (1) EP3314512A4 (ja)
JP (1) JP2018520437A (ja)
CN (1) CN107873095B (ja)
WO (1) WO2017003598A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020113253A (ja) * 2018-12-28 2020-07-27 エーオー カスペルスキー ラブAo Kaspersky Lab ファイルのデジタル署名を検証するためのシステム及び方法
JP2020119503A (ja) * 2018-12-28 2020-08-06 エーオー カスペルスキー ラブAo Kaspersky Lab ファイルのデジタル署名の検証における攻撃に対するレジリエンスのためのシステム及び方法

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9672342B2 (en) * 2014-05-05 2017-06-06 Analog Devices, Inc. System and device binding metadata with hardware intrinsic properties
US10432409B2 (en) 2014-05-05 2019-10-01 Analog Devices, Inc. Authentication system and device including physical unclonable function and threshold cryptography
US10642976B2 (en) 2015-06-27 2020-05-05 Mcafee, Llc Malware detection using a digital certificate
US10425235B2 (en) 2017-06-02 2019-09-24 Analog Devices, Inc. Device and system with global tamper resistance
US10958452B2 (en) 2017-06-06 2021-03-23 Analog Devices, Inc. System and device including reconfigurable physical unclonable functions and threshold cryptography
CN108599959B (zh) * 2018-04-28 2021-08-24 深圳Tcl数字技术有限公司 授权证书校验方法、装置及可读存储介质、应用设备
US11245710B2 (en) * 2020-03-05 2022-02-08 Cloudflare, Inc. Determining an origin server is potentially compromised
CN113407386B (zh) * 2021-05-13 2022-08-23 福建升腾资讯有限公司 一种模拟测试居民证件的装置
US12039088B2 (en) 2021-06-29 2024-07-16 Hewlett Packard Enterprise Development Lp Signing files based on file security credentials
CN116401147B (zh) * 2023-02-08 2024-05-03 深圳开源互联网安全技术有限公司 一种函数库引用版本检测方法、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001216173A (ja) * 2000-01-06 2001-08-10 Internatl Business Mach Corp <Ibm> ウィルス・フリー・ファイル証明書を作成し使用するための方法及びシステム
JP2010535372A (ja) * 2007-07-31 2010-11-18 ロヴィ・ソリューションズ・コーポレーション 補助情報をデジタル署名付きコンテンツに埋め込み認証する、コンピュータにより実施される方法およびシステム
JP2012048729A (ja) * 1999-03-31 2012-03-08 British Telecommun Plc <Bt> ファイルの保全性を保証するサーバコンピュータ
JP2013062650A (ja) * 2011-09-13 2013-04-04 Mitsubishi Electric Corp データ検証装置、データ検証装置のデータ検証方法、データ検証プログラムおよびデータ検証システム
WO2014108993A1 (ja) * 2013-01-08 2014-07-17 三菱電機株式会社 認証処理装置、認証処理システム、認証処理方法および認証処理プログラム

Family Cites Families (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6367012B1 (en) * 1996-12-06 2002-04-02 Microsoft Corporation Embedding certifications in executable files for network transmission
US5892904A (en) * 1996-12-06 1999-04-06 Microsoft Corporation Code certification for network transmission
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
US6272631B1 (en) * 1997-06-30 2001-08-07 Microsoft Corporation Protected storage of core data secrets
US5987610A (en) 1998-02-12 1999-11-16 Ameritech Corporation Computer virus screening methods and systems
US6460050B1 (en) 1999-12-22 2002-10-01 Mark Raymond Pace Distributed content identification system
US6901519B1 (en) 2000-06-22 2005-05-31 Infobahn, Inc. E-mail virus protection system and method
CN1350258A (zh) * 2001-12-03 2002-05-22 上海电子商务安全证书管理中心有限公司 电子签名的校验方法及装置
WO2004004855A1 (en) * 2002-07-05 2004-01-15 Cyberscan Technology, Inc. Secure game download
US7921302B2 (en) * 2003-03-10 2011-04-05 Igt Universal game download methods and system for legacy gaming machines
US8356295B2 (en) * 2005-02-17 2013-01-15 Symantec Corporation Post-signing modification of software
US8397072B2 (en) * 2005-05-20 2013-03-12 Rovi Solutions Corporation Computer-implemented method and system for embedding ancillary information into the header of a digitally signed executable
GB2439574A (en) * 2006-06-29 2008-01-02 Symbian Software Ltd Detecting revoked certificates for downloaded software
CN101145906B (zh) * 2006-09-13 2010-10-06 北京邦天信息技术有限公司 对单向网络中的接收终端进行合法性认证的方法及系统
US9917844B2 (en) * 2006-12-17 2018-03-13 Fortinet, Inc. Detection of undesired computer files using digital certificates
CN101017544B (zh) * 2007-02-15 2010-12-01 江苏国盾科技实业有限责任公司 含电子印章数字证书的合体印章签署认证方法
US20090064134A1 (en) * 2007-08-30 2009-03-05 Citrix Systems,Inc. Systems and methods for creating and executing files
US8245296B2 (en) 2008-05-23 2012-08-14 Verizon Patent And Licensing Inc. Malware detection device
US10459711B2 (en) * 2008-08-12 2019-10-29 Adobe Inc. Updating applications using migration signatures
GB2463467B (en) 2008-09-11 2013-03-06 F Secure Oyj Malware detection method and apparatus
US8484739B1 (en) 2008-12-15 2013-07-09 Symantec Corporation Techniques for securely performing reputation based analysis using virtualization
US8181251B2 (en) * 2008-12-18 2012-05-15 Symantec Corporation Methods and systems for detecting malware
US9602499B2 (en) * 2009-04-07 2017-03-21 F-Secure Corporation Authenticating a node in a communication network
US8621591B2 (en) * 2010-10-19 2013-12-31 Symantec Corporation Software signing certificate reputation model
US8499150B1 (en) 2010-11-11 2013-07-30 Symantec Corporation Selectively trusting signed files
US8938809B2 (en) * 2011-06-24 2015-01-20 Google Technology Holdings LLC Retrieval of data across multiple partitions of a storage device using digital signatures
US8650649B1 (en) * 2011-08-22 2014-02-11 Symantec Corporation Systems and methods for determining whether to evaluate the trustworthiness of digitally signed files based on signer reputation
US8650638B2 (en) * 2011-10-18 2014-02-11 Mcafee, Inc. System and method for detecting a file embedded in an arbitrary location and determining the reputation of the file
US8776242B2 (en) 2011-11-29 2014-07-08 Raytheon Company Providing a malware analysis using a secure malware detection process
US9589129B2 (en) * 2012-06-05 2017-03-07 Lookout, Inc. Determining source of side-loaded software
US8966659B2 (en) * 2013-03-14 2015-02-24 Microsoft Technology Licensing, Llc Automatic fraudulent digital certificate detection
US9058504B1 (en) 2013-05-21 2015-06-16 Malwarebytes Corporation Anti-malware digital-signature verification
CN104283846B (zh) * 2013-07-03 2019-02-05 中国移动通信集团公司 诊断终端应用被篡改的方法、系统及服务器
US9338012B1 (en) * 2013-10-04 2016-05-10 Symantec Corporation Systems and methods for identifying code signing certificate misuse
GB2534556B (en) * 2015-01-21 2019-12-25 F Secure Corp Preventing misuse of code signing certificates
US9479338B2 (en) * 2015-03-17 2016-10-25 Digicert, Inc. Method and system for certificate discovery and ranking certificate authorities
US10642976B2 (en) 2015-06-27 2020-05-05 Mcafee, Llc Malware detection using a digital certificate

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012048729A (ja) * 1999-03-31 2012-03-08 British Telecommun Plc <Bt> ファイルの保全性を保証するサーバコンピュータ
JP2001216173A (ja) * 2000-01-06 2001-08-10 Internatl Business Mach Corp <Ibm> ウィルス・フリー・ファイル証明書を作成し使用するための方法及びシステム
JP2010535372A (ja) * 2007-07-31 2010-11-18 ロヴィ・ソリューションズ・コーポレーション 補助情報をデジタル署名付きコンテンツに埋め込み認証する、コンピュータにより実施される方法およびシステム
JP2013062650A (ja) * 2011-09-13 2013-04-04 Mitsubishi Electric Corp データ検証装置、データ検証装置のデータ検証方法、データ検証プログラムおよびデータ検証システム
WO2014108993A1 (ja) * 2013-01-08 2014-07-17 三菱電機株式会社 認証処理装置、認証処理システム、認証処理方法および認証処理プログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020113253A (ja) * 2018-12-28 2020-07-27 エーオー カスペルスキー ラブAo Kaspersky Lab ファイルのデジタル署名を検証するためのシステム及び方法
JP2020119503A (ja) * 2018-12-28 2020-08-06 エーオー カスペルスキー ラブAo Kaspersky Lab ファイルのデジタル署名の検証における攻撃に対するレジリエンスのためのシステム及び方法

Also Published As

Publication number Publication date
US11379583B2 (en) 2022-07-05
WO2017003598A1 (en) 2017-01-05
CN107873095B (zh) 2021-08-31
CN107873095A (zh) 2018-04-03
US20200272733A1 (en) 2020-08-27
US10642976B2 (en) 2020-05-05
EP3314512A4 (en) 2018-12-26
EP3314512A1 (en) 2018-05-02
US20160378983A1 (en) 2016-12-29

Similar Documents

Publication Publication Date Title
US11379583B2 (en) Malware detection using a digital certificate
US10176344B2 (en) Data verification using enclave attestation
US11328063B2 (en) Identification of malicious execution of a process
CN107409120B (zh) 检测恶意外设的装置、方法及系统
CN107980123B (zh) 敏感数据的保护
JP6526842B2 (ja) マルウェアの検出
US20170091453A1 (en) Enforcement of file characteristics
JP6583865B2 (ja) プロファイリングイベントに基づいたエクスプロイト検出
US20160180092A1 (en) Portable secure storage
US11032266B2 (en) Determining the reputation of a digital certificate
US20160094571A1 (en) Detection and mitigation of malicious invocation of sensitive code
JP6598221B2 (ja) マルウェアを特定するための変則検知
JP2018524716A5 (ja)

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180209

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20181228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190129

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20190910