JP2019013009A - 不正デジタル証明書の自動検出 - Google Patents

不正デジタル証明書の自動検出 Download PDF

Info

Publication number
JP2019013009A
JP2019013009A JP2018152279A JP2018152279A JP2019013009A JP 2019013009 A JP2019013009 A JP 2019013009A JP 2018152279 A JP2018152279 A JP 2018152279A JP 2018152279 A JP2018152279 A JP 2018152279A JP 2019013009 A JP2019013009 A JP 2019013009A
Authority
JP
Japan
Prior art keywords
certificate
site
certificates
current
computing device
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
JP2018152279A
Other languages
English (en)
Other versions
JP6680840B2 (ja
Inventor
ジャンジュア,ムハンマド・ウマル
Umar Janjua Muhammad
メヘター,ヨゲシュ・エイ
A Mehta Yogesh
ヴァン・ホレンビーク,マールテン
Van Horenbeeck Maarten
サブーリ,アヌーシラヴァン
Saboori Anooshiravan
ポーター,ネリー
Porter Nelly
バカロフ,ヴァシリ・ディー
D Bakalov Vassil
ニッタ,ブライストン
Nitta Bryston
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
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 Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of JP2019013009A publication Critical patent/JP2019013009A/ja
Application granted granted Critical
Publication of JP6680840B2 publication Critical patent/JP6680840B2/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/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • 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/1483Countermeasures against malicious traffic service impersonation, e.g. phishing, pharming or web spoofing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/061Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • H04L9/3268Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements using certificate validation, registration, distribution or revocation, e.g. certificate revocation list [CRL]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/60Context-dependent security
    • H04W12/63Location-dependent; Proximity-dependent

Abstract

【課題】悪意のある利用者からの不正な証明書と信頼されたエンティティからの正当な証明書との区別をする装置および方法を提供する。【解決手段】コンピューティングデバイスは、様々な異なるサイトから受信したデジタル証明書を分析し、デジタル証明書の記録を保持する。コンピューティングデバイスから遠隔で動作する証明書審査サービスもまた、様々な異なるサイトにアクセスし、かつサービスがこれらのサイトから受信するデジタル証明書の記録を保持する。目的サイトへのアクセス要求に応答して、コンピューティングデバイスは、目的サイトから現在のデジタル証明書を受信する。コンピューティングデバイスは、目的サイトに関する以前に受信したデジタル証明書、証明書審査サービスから受信した確認証明書、ならびにデジタル証明書および/または目的サイトの付加的な特性に基づいて、現在のデジタル証明書が本物であるか不正なものであるかを判定する。【選択図】図5

Description

本願発明の一実施例は、例えば、不正デジタル証明書の自動検出に関する。
[0001]コンピュータ技術の進歩に伴い、コンピュータは、ますます人々の生活の中で一般的なものとなってきた。コンピュータを使用する場合、人々は、秘密の、または個人的な性質の情報を1つまたは複数の他の装置に伝達したくなることがある。しかしながら、このような通信を実行する場合、利用者は、通常、利用者が通信する1つまたは複数の他の装置が、利用者に信頼されているエンティティによって実際に運用されているという証明を望む。例えば、利用者が、製品を購入するために利用者のクレジットカード番号を他の装置に伝達している場合、利用者は、通常、他の装置が実際に、自分が信頼するエンティティ(例えば、製品が購入された会社、クレジットカード発行会社、など)により運用されているという証明を希望する。
[0002]このような証明が実行され得る1つの方法は、暗号化キーを特定のエンティティと関連付けることができるデジタル証明書の使用である。しかしながら、悪意のある利用者は、利用者が不正な証明書を受け入れさせようとする様々な異なる攻撃を実行して、その結果、悪意のある利用者により運用される装置と利用者が通信し、かつ秘密のあるいは個人的な情報を悪意のある利用者に提供させることができる。問題は、現在のコンピュータにとって、悪意のある利用者からの不正な証明書と信頼されたエンティティからの正当な証明書との区別をすることが利用者には難しいことにある。
[0003]本概要は、簡略化された形態で以下の詳細な説明でさらに説明される選択された概念を紹介するために提供される。本概要は、特許請求の範囲の主題の主要な特徴または本質的な特徴を特定することを意図するものではなく、特許請求された主題の範囲を制限するために使用されることを意図するものでもない。
[0004]1つまたは複数の態様によれば、デバイスは、サイト証明書マッピングストアおよび不正証明書検出モジュールを含む。不正証明書検出モジュールは、目的サイトから現在の証明書を取得し、かつ現在の証明書をサイト証明書マッピングストア内の目的サイトに関する証明書と比較するように構成される。現在の証明書が、サイト証明書マッピングストア内の証明書に合致している場合、現在の証明書は本物であると判定される。現在の証明書がサイト証明書マッピングストア内の証明書に合致していない場合、目的サイトに関する1つまたは複数の確認証明書が遠隔の証明書審査サービスから取得され、1つまたは複数の確認証明書が現在の証明書に合致する場合、現在の証明書の1つまたは複数の特性が、現在の証明書が不正であるか否かを判定するために分析される。
[0005]1つまたは複数の態様によれば、複数のサイトに対する証明書は、証明書審査サービスにおいて、それぞれが地理的に異なる地域に置かれている複数の証明書監視システムから受信される。複数の証明書監視システムから受信された証明書が格納される。複数サイト中の目的サイトに関する確認証明書の要求は、コンピューティングデバイスから受信される。複数の証明書監視システムから受信された目的サイトに関する証明書が取得され、目的サイトに関する証明書の表示が、目的サイトに関する1つまたは複数の確認証明書としてコンピューティングデバイスに返却される。
[0006]同一の番号が、同様の特徴を参照するために図面全体を通して使用される。
[0007]1つまたは複数の実施形態による、不正デジタル証明書自動検出を実装する例示的システムを示す図である。 [0008]1つまたは複数の実施形態による、サイト識別子をサイトに対する証明書に対応づける例示的レコードを示す図である。 [0009]1つまたは複数の実施形態による、証明書審査サービスにより実行される例示的プロセスを示す流れ図である。 [0010]1つまたは複数の実施形態による、現在の証明書とローカルなサイト証明書マッピングストアからの証明書が合致しない状況を示す例示的システムを示す図である。 [0011]1つまたは複数の実施形態による、不正な証明書を自動的に検出するための例示的プロセスを示す流れ図である。 [0012]本明細書に記載の様々な技術を実装することができる1つまたは複数のシステムおよび/またはデバイスを表している例示的システムを示す図である。
[0013]不正デジタル証明書自動検出が本明細書で説明される。コンピューティングデバイスは、自動的に不正なデジタル証明書を検出するために(例えば、インターネットまたは他のネットワークを介してアクセスされる)様々な異なるサイトから受信したデジタル証明書を分析する。コンピューティングデバイスは、これらの様々なサイトから受信するデジタル証明書の記録を保持する。コンピューティングデバイスから遠隔でかつ独立に動作する証明書審査サービスもまた、これらの様々な異なるサイトにアクセスし、かつ当該サービスがこれらのサイトから受信するデジタル証明書の記録を保持する。目的サイトへのアクセス要求に応答して、コンピューティングデバイスは、現在のデジタル証明書を目的サイトから受信する。コンピューティングデバイスは、現在のデジタル証明書を目的サイトから以前に受信した最後のデジタル証明書と比較し、現在のデジタル証明書が最後のデジタル証明書と合致するか否かを判定する。この照合は、様々な情報に基づくことができ、以下に説明するように厳密な照合から緩やかな照合に及ぶ。現在のデジタル証明書と最後のデジタル証明書が合致する場合、現在のデジタル証明書は本物であると判定される。
[0014]しかしながら、現在のデジタル証明書と最後のデジタル証明書が合致しない場合、コンピューティングデバイスは、証明書審査サービスから1つまたは複数の確認用デジタル証明書を取得する。これらの確認用デジタル証明書は、証明書審査サービスが様々な異なるサイトから受信し、かつ証明書審査サービスのデジタル証明書の記録中に保持している証明書である。コンピューティングデバイスは、現在のデジタル証明書を1つまたは複数の確認用デジタル証明書と比較する。現在のデジタル証明書が、1つまたは複数の確認用デジタル証明書に合致しない場合、現在のデジタル証明書は、不正なデジタル証明書であると判定される。一方、現在のデジタル証明書が、1つまたは複数の確認用デジタル署名に合致する場合、デジタル証明書および/またはサイトの付加的な特性が、現在のデジタル証明書が本物であるか不正なものであるかを判定するために分析される。
[0015]図1は、1つまたは複数の実施形態による、不正デジタル証明書自動検出を実装する例示的システム100を示す。システム100は、ネットワーク108を介して1つまたは複数(m)のサイト104および証明書審査サービス106と通信することができるコンピューティングデバイス102を含む。ネットワーク108は、インターネット、ローカルエリアネットワーク(LAN)、電話網、イントラネット、他の公衆および私設
ネットワーク、これらの組合せなどを含む、様々な異なるデータネットワークの1つまたは複数であり得る。
[0016]コンピューティングデバイス102は、物理的装置または仮想的装置など、様々な異なる種類の装置であり得る。例えば、コンピューティングデバイス102は、デスクトップコンピュータ、サーバーコンピュータ、ラップトップまたはネットブックコンピュータ、タブレットまたはノートパッドコンピュータ、移動局、娯楽機器、ディスプレイ装置に通信可能に接続されたセットトップボックス、テレビまたは他の表示装置、携帯電話または他の無線電話機、ゲームコンソール、車載コンピュータ、などのような物理的装置であり得る。コンピューティングデバイス102はまた、物理的装置上で走行する仮想マシンなどの仮想的装置でもあり得る。仮想マシンは、様々な異なる種類の物理的装置(例えば、上記の様々な種類のいずれか)上で走行し得る。したがって、コンピューティングデバイス102は、実体のあるメモリおよび処理資源を有する完全なリソースを備えた装置(例えば、パーソナルコンピュータ、ゲームコンソール)から限定されたメモリおよび/または処理資源を有する低リソースの装置(例えば、従来のセットトップボックス、携帯ゲームコンソール)に及び得る。
[0017]サイト104は、コンピューティングデバイス102によりアクセスされ得る様々な異なる装置または他の資源である。サイト104は、ユニフォームリソースロケータ(URL)または他のユニフォームリソース識別子(URI)を使用するなどの、様々な態様で識別され得る。1つまたは複数の実施形態では、サイト104は、インターネットおよび/または他のデータネットワークを介してアクセスされるWebページである。他の実施形態では、サイト104は、コンピューティングデバイス上で走行する他のプログラム、記憶装置、表示装置などのような、他の資源である。サイト104は、様々な異なるコンピューティングデバイスまたは他のハードウェア装置を使用して実装され得る。コンピューティングデバイス102の考察と同様に、サイト104は、実体のあるメモリおよび処理資源を有する完全なリソースを備えた装置から限定されたメモリおよび/または処理資源を有する低リソースの装置に及ぶ装置を使用して実装され得る。
[0018]本明細書に記載された技術は、デジタル証明書、または単に証明書と呼ばれる、について論じるものである。証明書は、暗号鍵(典型的には公開鍵/秘密鍵の対の公開鍵)および暗号鍵を特定のエンティティに関係付けるまたは結びつける特定のエンティティを識別する。以下により詳細に説明するように、証明書が本物であると判定される場合、コンピューティングデバイス102は、証明書内で識別された公開鍵が証明書内で識別された特定のエンティティと関連付けられているものと仮定することができる。証明書はまた、証明機関であり得る、信頼できる機関によりデジタル的に署名されている。コンピューティングデバイス102は、一般的には、1つまたは複数の信頼される機関の記録を保持し、かつ、証明書が改ざんされて(例えば、改変されて)いないことを、証明書がこれらの信頼の置ける機関の1つによりデジタル的に署名されていることを検証することにより確認することができる。
[0019]いくつかの状況では、証明書は、証明機関によりデジタル的に署名されたルート証明書までの1つまたは複数の追加的証明書によって連鎖されている。例えば、最後の証明書として参照された証明書は、関連した証明書を有するエンティティAによりデジタル的に署名され、エンティティAと関連した証明書は、関連した証明書を有するエンティティBによりデジタル的に署名され、エンティティBと関連した証明書は、関連した証明書を有するエンティティCによりデジタル的に署名され、かつエンティティCと関連した証明書は、ルート証明書と呼ばれる関連した証明書を有する証明機関によりデジタル的に署名され得る。エンティティA、BおよびCと関連した証明書は、中間証明書と呼ばれる。証明書チェーンが、コンピューティングデバイス102に信頼された証明機関によりデジ
タル的に署名されたルート証明書を含む場合、コンピューティングデバイス102は、証明書が改ざんされていないことを確認する。
[0020]証明書が改ざんされていないと証明され得たとしても、証明書が、依然として不正な証明書であり得ることに留意すべきである。例えば、悪意のある利用者は、コンピューティングデバイス102によって改ざんされていないと確認されているが、不正でもある証明書を提供することができる。本明細書で説明する技術は、不正な証明書を自動的に本物の証明書と区別することを可能とする。本物の証明書は、暗号鍵を、公開鍵が発行されていている、またはこの暗号鍵を使用することが認証されている特定のエンティティと関連付けている証明書を指す。不正な証明書は、暗号鍵を、認証されていないまたは不正な方法でエンティティと関連付けている証明書を指す。
[0021]コンピューティングデバイス102は、サイトアクセスモジュール112、不正証明書検出モジュール114、およびサイト証明書マッピングストア116を含む。サイトアクセスモジュール112は、コンピューティングデバイス102の利用者からの要求、コンピューティングデバイス102の別のコンポーネントまたはモジュールからの要求などに応答して、特定のサイト104にアクセスする。アクセスされたサイトはまた、目的サイトとも呼ばれる。
[0022]本明細書に記載された不正デジタル証明書自動検出技術は、サイト104にアクセスし、かつサイト識別子および証明書をサイト104から受信することに関連して説明される。証明書が、通常、暗号化された通信またはサイトが特定のエンティティにより運用されているといういくらかの保証が望まれる他の状況に関連して使用されることに留意すべきである。例えば、証明書は、通常、Secure Sockets Layer(SSL)プロトコルを実装しているサイトなどの、セキュリティで保護された通信をサポートしているサイトに対して使用される。サイトが特定のエンティティによって運用されているという相当の保証が望まれておらず、かつアクセスされた時に証明書を提供していない、コンピューティングデバイスにアクセス可能な多くのサイトが存在し得る。このようなサイトは、不正証明書検出モジュール114により無視され、このようなサイトのサイト識別子の記録は、受信も保持もされる必要がない。
[0023]不正証明書検出モジュール114は、サイト104に関する証明書に対するレコードマッピングサイト識別子である、サイト証明書マッピングストア116を維持する。マッピングストア116は、フラッシュメモリ、磁気ディスク、データベースなどといった、様々な種類の記憶装置を使用して実装され得る。不正証明書検出モジュール114は、サイト104から受信した証明書が本物であるか不正なものであるかを判定するためにマッピングストア116を使用する。不正証明書検出モジュール114はまた、証明書審査サービス106から受信した確認証明書および/または(例えば、サイト104から受信した証明書の)付加的特性を使用して、以下でより詳細に説明するように、このサイト104から受信した証明書が本物であるか不正なものであるかを判定することができる。
[0024]不正証明書検出モジュール114は、様々な異なる態様で実装され得る。1つまたは複数の実施形態では、モジュール114は、サイトアクセスモジュール112の一部として含まれる。例えば、モジュール112は、Webブラウザーであり、またモジュール114は、Webブラウザーのプラグインまたは拡張モジュールであり得る。あるいは、モジュール114は、コンピューティングデバイス102の証明書信頼性確認システムの一部である、コンピューティングデバイス102のオペレーティングシステムの一部に含まれる、コンピューティングデバイス102のWebクローラーまたはサーチエンジンの一部に含まれる、コンピューティングデバイス102上で独立して実行可能な、または解釈可能なプログラムである、などといった他の態様で実装されても良い。
[0025]サイト証明書マッピングストア116は、サイト104に関する証明書に対するレコードマッピングサイト識別子を保持する。サイト104がサイトアクセスモジュール112によりアクセスされる都度(例えば、要求がサイト104に送信される都度)、サイト識別子および証明書が、サイト104によりサイトアクセスモジュール112に返送される。マッピングストア116は、様々なサイト104から受信した証明書に対応づけるレコードを保持する。1つまたは複数の実施形態では、証明書が特定のサイト104から受信される都度、この証明書の表示がマッピングストア116に記録される。特定のサイト向けに受信した証明書は、証明書が本物であるか不正なものであるかに拘らずマッピングストア116に記録され得る、あるいは証明書が本物である場合にのみマッピングストア116に記録され得る。
[0026]サイト証明書マッピングストア116は、サイト104を識別するために様々な異なる識別子を使用することができる。サイト104が互いに区別されることを可能とする任意の様々な異なる識別子が、サイト104の識別子として使用され得る。1つまたは複数の実施形態では、サイト104の識別子は、サイト104のドメインネームサービス(DNS)名およびサイト104に関連付けられた1組の1つまたは複数のネットワークアドレス(例えば、インターネットプロトコル(IP)アドレス)である。あるいは、サイト104は、サイト104のDNS名のみを使用する、サイト104に関連付けられた1組のネットワークアドレスのみを使用するなどの、他の態様で識別されても良い。
[0027]各サイト識別子に対して、識別されたサイトに関する以前に受信された任意の数の証明書が、サイト証明書マッピングストア116内に保持され得る。マッピングストア116は、任意選択として、以前に受信された証明書を特定の時間の間(例えば、数ヶ月間、1年間)のみ格納する、かつ/または特定の数(例えば、50または100)の以前に受信された証明書のみを格納するように構成され得る。
[0028]1つまたは複数の実施形態では、それぞれの以前に受信された証明書に対して、最後の証明書ならびに証明書チェーン内の任意の他の証明書(中間およびルート証明書を含む)は、マッピングストア116内に格納される。あるいは、他の情報が、以前に受信された証明書に関してマッピングストア116内に格納され得る。例えば、最後の証明書のみが格納され得る、最後およびルート証明書のみが格納され得るなど。あるいは、証明書それ自体を格納するのではなく、最後の証明書(および任意選択で他の証明書および証明書チェーン)にハッシュ関数を適用することにより生成されたハッシュ値、最後の証明書(任意選択で他の証明書および証明書チェーンを含む)に含まれる公開鍵、最後の証明書(任意選択で他の証明書および証明書チェーンを含む)内の特定の領域の値、などといった、証明書を識別する情報が格納され得る。
[0029]特定のサイト104に関して以前に受信された複数の証明書は、マッピングストア116内に保持され得る。特定のサイト104に関してごく最近受信された証明書(サイト104がごく最近アクセスされた時に特定のサイト104から受信された証明書)はまた、この特定のサイト104に関する最後の証明書と呼ばれる。特定のサイト104に関して以前に受信された証明書の1つまたは複数は、特定のサイト104から受信された現在の証明書が、以下に詳細に説明するように、不正なものであるか否か決定するために使用され得る。
[0030]図2は、1つまたは複数の実施形態による、サイト識別子をサイトに関する証明書に対応づける例示的レコード200を示す。レコード200は、上述のように、様々な異なる任意の態様でサイトを識別するサイト識別子202を含む。レコード200はまた、以前に受信された複数の証明書204および206(1)、206(x)を含む。証明
書204は、サイトに関する最後の証明書であり、他の以前に受信された証明書が、複数(x)の以前に受信された証明書206(1)、・・・、206(x)である。
[0031]図2には示されていないが、様々な追加の情報が、任意選択でレコード200中に含まれ得ることに留意すべきである。例えば、各証明書204および206(1)、206(x)に対して、証明書が不正なものである、または本物であると判定されたかの表示が、レコード200中に含まれ得る。
[0032]図1に戻って、ストア116が、コンピューティングデバイス102により、目的サイト104から受信された証明書が不正なものであるか否かを判定することに使用されることから、サイト証明書マッピングストア116は、ローカルストアとも呼ばれることに留意すべきである。マッピングストア116は、コンピューティングデバイス102の一部として、あるいは外部記憶装置、ネットワーク108を介してアクセスされるネットワーク記憶装置などの、コンピューティングデバイス102と通信する別個の装置の一部として実装され得る。
[0033]証明書審査サービス106は、証明書監視システム122およびサイト証明書マッピングストア124を含む。証明書監視システム122は、証明書収集モジュール126および証明書マッピング検索モジュール128を含む。証明書収集モジュール126は、上述のサイトアクセスモジュール112と同様に、サイト104にアクセスし、かつサイト104からサイト識別子および証明書を受信する。モジュール126により受信されたサイト識別子および証明書は、サイト証明書マッピングストア124内に記録される。マッピングストア124は、マッピングストア116に類似しているが、サイトアクセスモジュール112ではなく、証明書監視システム122により維持されている。マッピングストア124は、任意選択で、証明書が最初に参照された日付および/または時刻、証明書が最後に参照された日付および/または時刻、サイトが証明書監視システム122または130によりアクセスされた回数などといった、各証明書および/またはサイトに関する付加的なフィールドを含む。マッピングストア124は、マッピングストア116と同様にサイト識別子および以前に受信された証明書を格納し、かつこれらのサイト識別子および以前に受信した証明書は、マッピングストア116に関連して上述のように様々な形態を取ることができる。
[0034]証明書収集モジュール126は、様々な時間にサイト104にアクセスすることができる。1つまたは複数の実施形態では、証明書収集モジュール126は、新しいサイト104を識別し、かつアクセスするために、ネットワーク108を介してアクセス可能なサイト104をクロールまたはスキャンする。証明書が以前に受信されている以前にアクセスしたサイトは、規則的にまたは不規則に証明書収集モジュール126により再度アクセスされ得る。したがって、サイト104は、サイト104の1つに関する確認証明書に対する要求とは独立にモジュール126によりアクセスされ得る。他の実施形態では、証明書収集モジュール126は、別のコンポーネントまたは装置からの要求に応答して特定のサイト104にアクセスする。例えば、証明書収集モジュール126は、コンピューティングデバイス102からの特定のサイト104に関する確認証明書の要求に応答して、特定のサイト104にアクセスすることができる。
[0035]証明書マッピング検索モジュール128は、サイト104に関する確認証明書についてのコンピューティングデバイス102(例えば、不正証明書検出モジュール114)から要求を受信する。特定のサイト104に関する確認証明書は、サイト104にアクセスする場合に証明書収集モジュール126により受信された特定のサイト104に関する証明書を指す。この確認証明書は、より詳細に以下に説明するように、コンピューティングデバイス102により当該サイト104から受信された現在の証明書が不正なもので
あるか否かを判定するために不正証明書検出モジュール114により使用され得る。
[0036]1つまたは複数の実施形態では、サイト104に関する確認証明書についてのコンピューティングデバイス102からの要求に応答して、証明書マッピング検索モジュール128は、サイト104に関する以前に受信された1つまたは複数の証明書をマッピングストア124から取得し、かつ取得した1つまたは複数の証明書をサイト104に関する1つまたは複数の確認証明書としてコンピューティングデバイス102に返送する。モジュール128は、サイト104に関するごく最近受信した証明書、あるいは1つまたは複数の他の証明書(例えば、サイト104に関する特定の数の証明書、特定の期間に受信したサイト104に対する証明書、など)を取得することができる。
[0037]あるいは、証明書収集モジュール126は、コンピューティングデバイス102からのサイト104に関する確認証明書についての要求に応答してサイト104にアクセスし(かつ任意選択でサイト104に関して新しく取得した証明書をマッピングストア124内に格納し)、かつモジュール128は、新しく取得した証明書をサイト104に関する確認証明書としてコンピューティングデバイス102に返却することができる。モジュール126が、マッピングストア124から1つまたは複数のサイト104に関する証明書、および/またはサイト104に関する確認証明書についてのコンピューティングデバイス102からの要求に応答して新しく取得した証明書は、証明書審査サービス106により、あるいはコンピューティングデバイス102により判定され得る(例えば、コンピューティングデバイス102から受信された要求は、いずれが返送されるべきであるかを表示することができる)。
[0038]証明書審査サービス106は、1つまたは複数の装置(例えば、コンピューティングデバイス102に関連して上述した任意の様々な異なる種類の装置)により実装される。証明書審査サービス106は、コンピューティングデバイス102から物理的に遠隔に位置しており、かつネットワーク108を介してコンピューティングデバイスにアクセス可能である。1つまたは複数の実施形態では、証明書審査サービス106は、ほぼ地理的に同一の領域内(例えば、同一のサーバーファームまたはデータ施設内)の1つまたは複数の装置により実装される。他の実施形態では、証明書審査サービス106は、1つまたは複数(n)の証明書監視システム130を活用する。このような実施形態では、証明書審査サービス106はまた、少なくとも部分的には1つまたは複数の証明書監視システム130により実装されると言及され得る。
[0039]監視システム130は、異なる都市、異なる州、異なる国、異なる大陸などといった、地理的に異なる領域に物理的に設置され得る。各監視システム130は、証明書収集モジュール126に類似した証明書収集モジュールを含む。したがって、各監視システム130は、様々な時間にサイト104にアクセスし、かつ各アクセスに応答してサイト104からサイト識別子および証明書を受信することができる。このようなアクセスで受信した証明書は、監視システム130により(例えば、サイト証明書マッピングストア124に類似した監視システム130自身のサイト証明書マッピングストア内に)保持される、あるいはサイト証明書マッピングストア124内に格納され得る。このような状況では、どの証明書をどの証明書審査サーバーが受信したかという表示もまた、マッピングストア124内に保持され得る。
[0040]複数の監視システム130を用いることにより、確認証明書は、異なる地理的場所内の異なるサーバーから受信され得る。これらの確認証明書は、すべて同一であり得る、またはある状況においては異なり得る。したがって、例えば、ある特定の監視システム130が、悪意のある利用者による攻撃の対象となっていたならば、この特定の監視システム130により提供された確認証明書は、他の監視システム130から提供される確認
証明書と異なることになるであろう。この相違は、不正証明書検出モジュール114により、以下でより詳細に説明するように、サイト104からコンピューティングデバイス102により受信した現在の証明書が不正なものであるか否かを判定することに使用され得る。
[0041]1つまたは複数の証明書監視システム130が用いられている状況では、確認証明書の要求に応答して、証明書マッピング検索モジュール128は、証明書監視システム122および監視システム130の1つまたは複数により1つまたは複数の証明書(例えば、ごく最近受信した証明書)の表示をコンピューティングデバイス102に返送する。この表示は、例えば、返送される確認証明書の数、ならびに確認証明書自体であり得る。あるいは、この表示は、証明書自体を返送するのではなく、以下でより詳細に説明するように証明書の比較においてコンピューティングデバイス102により使用された情報が返送され得るというような、他の形態を取ることができる。複数の証明書監視システム122が同一の証明書を受信した場合は、これらの証明書の1つのコピーのみが、コンピューティングデバイス102に返送されればよい。各証明書監視システム122および130の識別子(例えば、名称または他の表示)ならびに各証明書監視システムが受信した証明書の表示もまた、コンピューティングデバイス102に返送され得る。あるいは、証明書監視システム122および130の各々によりごく最近受信された証明書の表示は、各証明書監視システムの表示およびこれらの監視システムの各々に対するごく最近受信した証明書などの、他の形態を取ることができる。
[0042]確認証明書の要求は、様々な態様で受信され得る。1つまたは複数の実施形態では、証明書マッピング検索モジュール128は、以下のアプリケーション・プログラミング・インターフェイス・メソッドを公開している。
getCertificateforSite(sslSite,Location)
ここで、サイトパラメータ「sslSite」は、確認証明書が要求される目的サイトを特定し、ロケーションパラメータ「Location」は、1つまたは複数の証明書監視システムを特定する。ロケーションパラメータは、証明書が1つまたは複数の確認証明書に含まれるかについて証明書監視システムをコンピューティングデバイス102が特定することを可能とする。証明書マッピング検索モジュール128は、1つまたは複数の確認証明書として、識別された証明書監視システムにより受信された証明書のみを返送する。ロケーションパラメータは、アプリケーション・プログラミング・インタフェース・メソッドのデフォルト値であり得る、すべてのロケーション値を持つことができ、証明書監視システムのすべてによって受信された証明書が、1つまたは複数の確認証明書として返送されるべきであることを示す。
[0043]1つまたは複数の実施形態では、コンピューティングデバイス102は、複数の証明書監視システム130から証明書を順次受信することができる、証明書審査サービス106と通信する。したがって、サービス106は、すべての証明書監視システム122および130へのアクセスの中心をコンピューティングデバイス102に提供する。あるいは、各証明書監視システム130は、証明書審査サービス106として実装され得る。このような状況では、コンピューティングデバイス102は、複数の異なる証明書審査サービスの各々に個別にアクセスすることができ、かつ複数の異なる証明書審査サービスの各々から別々の確認証明書を取得することができる。
[0044]図3は、1つまたは複数の実施形態に従って、証明書審査サービスにより実行される例示的プロセス300を示す流れ図である。プロセス300は、証明書審査サービスの1つまたは複数の装置により実施され、かつソフトウェア、ファームウェア、ハードウェア、またはこれらの組合せの中に実装され得る。プロセス300は、1組の行為として
示され、かつ様々な行為の動作を実行するために示された順序に限定されない。プロセス300は、証明書審査サービスにより実行される例示的プロセスであり、証明書審査サービスにより実行されるプロセスについての付加的な考察は、異なる図を参照して本明細書に含まれる。
[0045]プロセス300において、証明書監視システムは、サイトに関する証明書を取得する(行為302)。図1を参照して上記で上述した証明書監視システム122および130などの、1つまたは複数の異なる証明書監視システムが使用され得る。
[0046]サイトに関する証明書を取得するために、証明書監視システムは、サイトにアクセスし、かつサイトから識別子および証明書を受信する(行為304)。証明書は、サイト識別子に対応づけてサイト証明書マッピングストアに追加される(行為306)。
[0047]証明書監視システムは、上述のように行為302において様々な時点でサイトに関する証明書を取得することができる。証明書を取得すると同時に、証明書審査サービスは、要求者に確認証明書を提供することができる(行為308)。これらの要求者は、図1のコンピューティングデバイス102などのコンピューティングデバイスである。
[0048]要求者に確認証明書を提供するために、サービスは、目的サイトと呼ばれる特定のサイトに関する証明書の要求を受信する(行為310)。証明書審査サービスは、目的サイトに関する確認証明書をサイト証明書マッピングストアから取得する(行為312)。審査サービスは、上述のように、各証明書監視システムにより受信された1つまたは複数の証明書の表示を取得することができる。取得された証明書それ自体などの、目的サイトに関する取得された証明書の表示は、1つまたは複数の確認証明書として要求者に返送される(行為314)。あるいは、証明書審査サービスは、目的サイトにアクセスし、かつ確認証明書の少なくとも1つとして新規に取得した証明書を返送することができる。
[0049]図1に戻って、サイトアクセスモジュール112が、目的サイト104にアクセスすると、目的サイト104に関するサイト識別子および証明書が、上述のように、サイトアクセスモジュール112に返送される。この返送された証明書は、現在の証明書とも呼ばれる。不正証明書検出モジュール114は、目的サイトに関する証明書をサイト証明書マッピングストア116から取得し、かつ現在の証明書を目的サイトに関して取得した証明書と比較して、現在の証明書と取得した証明書が合致するか否かを判定する。多くの本明細書中の考察において、サイト証明書マッピングストア116から取得した証明書は、目的サイトに関する最後の証明書である、あるいは、サイト証明書マッピングストア116から取得した証明書は、他の以前に受信した証明書でもあり得る。加えて、1つまたは複数の付加的な証明書もまた、サイト証明書マッピングストア116から取得され得て、かつ最後の証明書に類似した1つまたは複数の付加的な証明書の各々に対して、比較がなされることに留意されるべきである。
[0050]不正証明書検出モジュール114は、2つの証明書が、様々な異なる態様において合致するか否かを判定することができる。比較は、単に最後の証明書に基づく、単に最後の証明書およびルート証明書に基づく、証明書チェーン全体に基づくなどであり得る。比較される情報(比較基準とも呼ばれる)は、証明書自体、証明書の特徴およびフィールド、証明書から得られた他の情報、証明書外の文脈上の情報、などであり得る。例えば、比較される情報は、1つまたは複数のハッシュ関数を証明書に適用することにより生成されたハッシュ値であり得る、証明書の特徴またはフィールドの値であり得る、証明書の特徴またはフィールドの値に対して1つまたは複数のハッシュ関数を適用することにより生成されたハッシュ値であり得る、などであり得る。さらなる例として、比較される情報は、コンピューティングデバイスにより参照されるIPアドレス、証明書が取得された目的
サイトアドレス、サイトおよびコンピューティングデバイスの地理、目的サイトそれ自身の知名度、などであり得る。この情報の任意の組合せが、比較基準として使用され得る。
[0051]2つの証明書が合致するか否かは、厳密な照合から緩やかな照合までの、様々な態様で判定され得る。厳密な照合とは、2つの証明書について比較される情報が同じ(同一)であるか否かという2つの証明書照合を指す。緩やかな照合とは、証明書について比較される情報が同じではない可能性があるかも知れない2つの証明書の照合を指す。例えば、緩やかな照合は、少なくとも比較される情報の閾値(例えば、80%)が同じ(同一)であるか否かという2つの証明書の照合、または両証明書が、特定の証明書の種類または証明書の集団の一員であるか否かという2つの証明書の照合を指すことができる。証明書の種類または集団の成員であることは、証明書の1つまたは複数の特徴またはフィールドに基づき判定され得る(例えば、証明書の特定の1つまたは複数の特徴またはフィールドが特定の1つまたは複数の値を有する場合に、証明書は特定の証明書の種類または集団の一員である)。
[0052]1つまたは複数の実施形態では、2つの証明書が合致するか否かを判定するために比較される情報は、時間に順応して、様々な事象または状態に応答して変化し得る。例えば、比較により、例え現在の証明書が不正なものではなくても2つの証明書が合致しないことが判定される状況を指す、誤警報の数が、(例えば、(複数のコンピューティングデバイス102からの誤警報の表示を受信することができる)コンピューティングデバイス102または証明書審査サービス106によって)監視され得る。誤警報は、コンピューティングデバイス102の利用者または管理者、証明書審査サービス106の管理者などによるといった、異なる態様で識別され得る。どの情報が比較され、かつ2つの証明書が合致しないという結果になったという表示が保持され、少なくとも誤警報の閾値の数が、特定の情報が比較された結果である場合、比較される情報は、この特定の情報を除外するために変更することができる。
[0053]現在の証明書と最後の証明書が合致する場合、不正証明書検出モジュール114は、現在の証明書が本物であると判定する。モジュール114はまた、目的サイトに関するサイト識別子に対応付けられて、現在の証明書をマッピングストア116に追加する。したがって、目的サイトがアクセスされる次回には、現在、現在の証明書である証明書が、目的サイトに関する最後の証明書となることになる。
[0054]しかしながら、現在の証明書と最後の証明書が合致しない場合、不正証明書検出モジュール114は、目的サイトに関する確認証明書を証明書審査サービス106から要求する。目的サイトに関する1つまたは複数の確認証明書が、この要求に応答してサービス106から受信され、かつモジュール114は、目的サイトに関する現在の証明書を目的サイトに関する1つまたは複数の確認証明書と比較する。目的サイトに関する少なくとも1つの確認証明書が目的サイトに関する現在の証明書に合致しない場合、モジュール114は、現在の証明書が不正なものであると判定する。一方、目的サイトに関する1つまたは複数の確認証明書のすべてが、目的サイトに関する現在の証明書に合致する場合、現在のデジタル証明書が確認されるか、または不正なものであるかを判定するために証明書および/または目的サイトの追加の特性が、分析される。
[0055]本明細書中のいくつかの説明は、コンピューティングデバイス102上で実行される証明書の比較に言及しているが、代替として、比較が1つまたは複数の他の装置上で実行され得ることに留意されるべきである。例えば、不正証明書検出モジュール114は、目的サイトに関する現在の証明書を証明書審査サービス106に提供することができ、かつサービス106は、目的サイトに関する現在の証明書を目的サイトに関する1つまたは複数の確認証明書と比較することができる。サービス106は、比較のために同一の基
準、または代替として異なる基準を使用することができる(例えば、コンピューティングデバイス102およびサービス106の一方は、厳密な照合を使用し、他方は緩やかな照合を使用することができる)。
[0056]一例として、不正証明書検出モジュール114は、目的サイトに関する現在の証明書を証明書審査サービス106に提供することができ、かつサービス106は、目的サイトに関する現在の証明書を緩やかな照合を使用して目的サイトに関する1つまたは複数の確認証明書と比較することができる。サービス106は、サービス106により実行された比較の結果の表示(例えば、証明書合致、証明書合致せず、証明書は合致している可能性がある、サービスでは、証明書が合致しているか否か判定することができない、など)、ならびに、任意選択として、1つまたは複数の確認証明書をモジュール114に返送することができ、かつ、モジュール114は、任意選択で、現在の証明書を厳密な照合を使用して1つまたは複数の確認証明書と比較することができる。モジュール114は、現在の証明書を1つまたは複数の確認証明書と比較するか否かをサービス106からの結果に基づいて決定することができる。例えば、証明書が合致しないことを、結果が示している場合、モジュール114は比較を実行せず、そうでなければ、(例えば、結果が、証明書が合致している、または合致している可能性があることを示している場合)、モジュール114は比較を実行することになろう。モジュール114が返送された結果に起因して比較を実行しないであろうとサービス106が認識する状況においてなど、サービス106は、モジュール114に結果は返送するが、1つまたは複数の確認証明書は返送しないことに留意すべきである。
[0057]図4は、1つまたは複数の実施形態による、現在の証明書およびローカルなサイト証明書マッピングストアからの証明書が合致しない状況を示す例示的システム400を示す。システム400は、コンピューティングデバイス102、目的サイト104、および証明書審査サービス106を含む。示された例示的システム400では、悪意のある利用者が、コンピューティングデバイス102を攻撃し、かつコンピューティングデバイス102に目的サイト104に関する不正な証明書を提供している。しかしながら、証明書審査サービス106は、この攻撃に影響されていない。したがって、サービス106からのアクセス要求404に応答して、目的サイト104は、証明書406を返送する。
[0058]しかしながら、コンピューティングデバイス102が、アクセス要求410を提出することにより目的サイト104にアクセスしようと試みる場合、悪意のある利用者による攻撃の結果として、アクセス要求410は、悪意のあるサイト402の経路付される。悪意のあるサイト402は、アクセス要求410に応答して現在の証明書412を返送する。コンピューティングデバイス102は、現在の証明書412をコンピューティングデバイス102のマッピングストア内の最後の証明書と比較し、最後の証明書と不正な証明書が合致しないと判定する。次いで、コンピューティングデバイス102は、証明書審査サービス106に確認証明書の要求414を送信し、応答の中で1つまたは複数の確認証明書416を受信する。コンピューティングデバイス102は、現在の証明書412と確認証明書416を比較し、不正な証明書と確認証明書が合致しないと判定する。したがって、コンピューティングデバイス102は、現在の証明書412が不正なものであると判定する。
[0059]図5は、1つまたは複数の実施形態に従って不正な証明書を自動的に検出するための例示的プロセス500を示す流れ図である。プロセス500は、図1のコンピューティングデバイス102の不正証明書検出モジュール114などの、コンピューティングデバイスにより実行され、ソフトウェア、ファームウェア、ハードウェア、またはこれらの組合せの中に実装され得る。プロセス500は、1組の行為として示されるが、様々な行為の動作を実行するために示された順序に制限を加えるものではない。プロセス500は
、不正な証明書を自動的に検出するための例示的プロセスであり、不正な証明書の自動的に検出についての付加的な考察は、異なる図を参照して本明細書に含まれる。
[0060]プロセス500では、証明書は、目的サイトから取得される(行為502)。
この証明書は、上述のように現在の証明書と呼ばれる。
[0061]ローカルなサイト証明書マッピングストアが目的サイトから受信した以前の証明書を含んでいるかどうかに関して、検査がなされる(504)。プロセス500を実装しているコンピューティングデバイスが以前に目的サイトにアクセスしていない状況では、ローカルのサイト証明書マッピングストアは、目的サイトから受信した以前の証明書をなんら含んでいないことになる。
[0062]プロセス500は、目的サイトの識別子と合致する証明書が、ローカルなサイト証明書マッピングストア中に発見されるか否かに基づき進行する(行為506)。目的サイト識別子に合致する証明書がローカルなサイト証明書マッピングストア内に発見されれば、目的サイトに関する最後の証明書が目的サイトに関する現在の証明書に合致するか否かに関して検査がなされる(行為508)。
[0063]目的サイトに関する最後の証明書が、目的サイトに関する現在の証明書に合致する場合、現在の証明書は、本物であると判定される(行為510)。現在の証明書は、目的サイト識別子に対応付けられて、ローカルなサイト証明書マッピングストアに格納される(行為512)。次いで、目的サイトに関する現在の証明書が本物であると判定されたことから、処理は、正常であるとして(例えば、現在の証明書が確認された場合に目的サイトと通信することを含めて)進行することができる。
[0064]しかしながら、行為506において目的サイトの識別子と合致する証明書がローカルなサイト証明書マッピングストア内に発見されない場合、または最後の証明書が行為508において現在の証明書と合致しない場合、目的サイトに関する確認証明書が証明書審査サービスに要求される(行為514)。プロセス500は、現在の証明書が証明書審査サービスから受信した確認証明書に合致するか否かに基づき進行する(行為516)。
[0065]1つまたは複数の確認証明書が、上述のように、証明書審査サービスから受信され得る。現在の証明書が1つまたは複数の確認証明書のすべてに合致しない場合、現在の証明書は、不正なものであると判定される(行為518)。しかしながら、現在の証明書が、1つまたは複数の確認証明書のすべてに合致している場合、現在の証明書は、本物でも、または不正なものでもあり得る。そこで、証明書および/または目的サイトの1つまたは複数の付加的な特性が、現在の証明書が本物であるか否かを判定するために分析される(行為520)。
[0066]現在の証明書が目的サイトに関する最後の証明書に合致していないことに基づき、目的サイトが合法的に目的サイトの証明書を変更しているか否か、または現在の証明書が、不正な証明書であるか否かが判定できないことから、証明書および/または目的サイトの付加的な特性が行為520において分析される。例えば、目的サイトは、期限切れまたはほぼ期限切れの証明書を更新する場合、目的サイトの暗号鍵を変更する場合、証明書にデジタル的に署名するために使用される証明機関を変更する場合、などといった、様々な理由のために目的サイトの証明書を合法的に変更することができる。これらの合法的変更は、現在の証明書が目的サイトの最後の証明書に合致しないが、確認証明書と合致する(例えば、証明書監視システムが変更された証明書をすべて受信している場合)という結果をもたらし得る。しかしながら、コンピューティングデバイスおよび証明書審査サービス両者を攻撃している悪意のある利用者はまた、現在の証明書が目的サイトに関する最後の証明書と合致しないが確認証明書と合致するという結果をもたらし得る。
[0067]現在の証明書、以前に受信した証明書、目的サイトなどの様々な異なる特性が分析され得る。一般に、不正な証明書を本物の証明書と区別するために使用され得る任意の特性が、分析され得る。これらの特性は、目的サイトに関する1つまたは複数の以前に受信した証明書に関連して、目的サイトに関する現在の証明書に対して不正な変更がなされているか否かを判定するために分析される。1つまたは複数の実施形態では、分析は、証明書のフィールドの不一致、証明書発行者の変更、特定の証明書のフィールドの欠落、ネットワークアドレスの異常、トップレベルのドメインの異常、および/または証明書ライフサイクルの異常を識別することである。分析は、これらの様々な特性の任意の組合せに基づくことができる。例えば、分析は、証明書フィールドの不一致および証明書発行者の変更を識別するが、ネットワークアドレスの異常を識別しないことであり得る。別な例として、分析は、1つまたは複数の証明書フィールドの不一致、1つまたは複数の証明書発行者の変更、1つまたは複数の特定の証明書フィールドの欠落、1つまたは複数のネットワークアドレスの異常、1つまたは複数のトップレベルのドメインの異常、および/または1つまたは複数の証明書ライフサイクルの異常を識別することであり得る。
[0068]証明書フィールドの不一致を識別するための分析は、証明書の1つまたは複数のフィールド内のデータが証明書の1つまたは複数の他のフィールド内のデータと矛盾しているか否かを検査することを指す。証明書が矛盾するデータを持つフィールドを含む場合、分析では、不正な変更が証明書になされていると判定する。例えば、証明書は、項目名フィールドおよびネットワークアドレスフィールドを含むことができる。証明書のネットワークアドレスフィールド内で識別されたネットワークアドレスが、証明書の項目名フィールド内で識別された名称と矛盾がないか(期待されたネットワークアドレスである)否かに関する検査がなされ得る。特定の名称に対する期待されたネットワークアドレスは、インターネットまたは他のネットワークを介して信頼されるサービスにアクセスすることによる、サイト証明書マッピングストア(コンピューティングデバイスのローカルストアまたは証明書審査サービスのストア)内の目的サイトに関する以前に受信した証明書にアクセスすることによる、などといった、様々な態様で判定され得る。証明書のネットワークアドレスフィールド内で識別されたネットワークアドレスが、証明書の項目名フィールド内で識別された名称と一致していない場合、不正な変更が証明書に対してなされていると判定される。
[0069]証明書発行者の変更を識別するための分析は、証明書にデジタル的に署名した(または証明書チェーン内のルート証明書と関連している)証明機関の種別が、変更されているか否かを検査することを指す。証明機関の種別は、証明機関である組織の種別(例えば、政府機関、民間の機関)、証明機関の利用率(例えば、証明機関が評判よく、かつ多数のサイトにより一般的に使用されているか否か、証明機関が、ほとんど使用されないか否か)などを指す。証明機関の種別は、インターネットまたは他のネットワークを介して信頼されるサービスにアクセスすることによる、証明書のフィールドから、などといった、様々な態様で判定され得る。
[0070]証明機関の種別が変更されているか否かは、サイト証明書マッピングストア(コンピューティングデバイスのローカルストアまたは証明書審査サービスのストア)内の目的サイトに関する以前に受信した証明書中の証明機関を検査して、証明機関が変更されているか否かを判定することによるなどの、異なる態様で判定され得る。証明機関が変更されている場合、証明機関の種別が疑わしい態様に変更されているか否かに関して検査がなされる。変更の疑わしい態様は、様々な方法で識別され、例えば、民間の機関から政府機関への変更、大きな政府機関から小さな政府機関への変更、一般的に使用される証明機関からほとんど使用されない証明機関への変更、ある国の政府機関から別の国の政府機関への変更、特定の政府機関への変更、などであり得る。証明機関の種別が疑わしい態様に変
更されている場合、不正な変更が証明書に対してなされていると判定される。
[0071]特定の証明書フィールドの欠落を識別するための分析は、証明書の特定の1つまたは複数のフィールドが有効なデータを設定されているか否かを検査することを指す。有効なデーは、フィールド用に正しく書式設定されているデータ、(例えば、URIの場合の)有効な資源または場所にリンクするまたは識別するデータ、などを指す。証明書が、有効なデータが設定されていない特定の1つまたは複数のフィールドを含む場合、分析では、不正な変更が証明書になされていると判定する。例えば、特定のフィールドは、証明書失効リストフィールドおよびオンライン証明書ステータスプロトコルフィールドを含むことができる。証明書が、有効なデータ設定されたこれらのフィールドの両者を含んでいない場合、不正な変更が証明書に対してなされていると判定される。
[0072]ネットワークアドレスの異常を識別するための分析は、ネットワークアドレス(例えば、IPアドレス)が変更されているか否かを検査することを指す。上述のように、サイト識別子は、目的サイトに関する1組のネットワークアドレスを含むことができ、1組のネットワークアドレスは、サイト証明書マッピングストア(コンピューティングデバイスのローカルストアまたは証明書審査サービスのストア)内に保持される。現在の証明書が受信されるネットワークアドレスが、本物であると判定されている目的サイトに関する以前に受信した証明書に対する1組のネットワークアドレスに含まれていない場合、分析は、不正な変更が証明書に対してなされていると判定する。
[0073]トップレベルドメインの異常を識別するための分析は、目的サイトに関するトップレベルドメインが、証明機関に合致するか否かを検査することを指す。特定の証明機関は、特定のトップレベルドメインに対して証明書にデジタル的に署名する(または証明書チェーン内のルート証明書に関連付けられている)ことを期待されている。例えば、特定の国を指定している(例えば、「.uk」または「.ca」で終わっている)トップレベルドメインを有する目的サイトに対して、証明書にデジタル的に署名した(または証明書チェーン内のルート証明書に関連付けられている)証明機関は、同一の国からであることを期待されている。証明書にデジタル的に署名する(または証明書チェーン内のルート証明書に関連付けられている)ことを期待されている特定の証明機関が、デジタル的に署名した(または証明書チェーン内のルート証明書に関連付けられている)ことを期待されている証明機関ではない場合、分析は、不正な変更が証明書に対してなされていると判定する。
[0074]証明書のライフサイクルの異常を識別する分析は、目的サイトに関する最後の証明書が期限切れとなっている、または期限切れに近づいているか(例えば、日数または週数の閾値内)否かを検査することを指す。最後の証明書は、上述のようにコンピューティングデバイスのローカルなマッピングストアから取得される。最後の証明書の満了日が過ぎておらず、かつ近づいて(例えば、日数または週数の閾値内)もいない場合、分析は、不正な変更が証明書に対してなされていると判定する。
[0075]これらの異なる特性は、現在の証明書が本物であるか不正なものであるかを判定するために様々な異なる態様で使用され得る。1つまたは複数の実施形態では、少なくとも1つの特性が不正な変更を示す場合、現在の証明書は、不正なものであると判定される。他の実施形態では、少なくとも上述の特性の閾値の数(1より大きい)が不正な変更を示している場合、現在の証明書は、不正なものであると判定される。他の実施形態では、異なる特性は、異なる値が割り当てられ、かつこれらの値は、現在の証明書に対する点数を生成するために結合される(例えば、加算され、または平均化される)。このような実施形態では、現在の証明書に対する点数が、閾値の点数を満足する(より大きいかまたは等しい)場合、現在の証明書は、不正なものであると判定される。
[0076]証明書が不正なものであると判定された場合、様々な異なる応答性処置が取られる。1つまたは複数の実施形態では、目的サイトに関する不正な証明書が識別されてたという通知が、プロセス500を実装しているコンピューティングデバイスの利用者に表示されるか、または提示される。このことは、利用者が、例えば、目的サイトにアクセスしようとする試みを中止させることを可能とする。あるいは、コンピューティングデバイスの管理者に通知する、不正な証明書の通知を別のコンポーネントまたは装置に送信する、目的サイトにアクセスするために使用されるプログラムを終了させるなどといった、他の処置が取られ得る。さらに、現在の証明書が不正なものであると判定される態様に基づき、異なる処置が取られ得る。例えば、現在の証明書のある特定の特性が、現在の証明書が不正なものであることを示している場合、不正な証明書の通知が、利用者に表示され得るが、一方、現在の証明書の別の特定の特性が、現在の証明書が不正であることを示している場合、目的サイトにアクセスするために使用されるプログラムが停止され得る。
[0077]プロセス500は、コンピューティングデバイス102が目的サイトとの秘話通信のための証明書を信用する以前に実装され得ることに留意されるべきである。証明書が、不正なものであると判定された場合、コンピューティングデバイスが通信のために証明書を信頼する以前に、応答性処置が取られる。したがって、コンピューティングデバイス102の利用者は、サイト104にアクセスしている間、および機密の、そうでなければ私的な情報が不正な証明書を信頼したために暴露される以前に保護される。
[0078]さらに、証明書が本物であると判定された場合、このような判定の通知が、プロセス500を実装しているコンピューティングデバイスの利用者に対して(例えば、利用者に信用される証明書を表示する他の方法を補足するために)表示されるか、そうでなければ提示され得ることに留意されるべきである。例えば、ポップアップウインドウが表示されて、目的サイトに関する証明書が本物であることを示すことができる、緑のライトが(例えば、Webブラウザーウインドウの一部に)表示されて、目的サイトに関する証明書が本物であると判定されたことを示すことができる、など。
[0079]本明細書で説明した不正デジタル証明書自動検出技術が使用される場合、従来のデジタル証明書および/または証明機関により実行される処理に対して、変更がなされる必要はないことに留意されるべきである。むしろ、本明細書で説明した不正デジタル証明書自動検出技術は、従来のデジタル証明書を活用して自動的に不正な証明書を検出する。デジタル証明書および/または証明機関により実行される処理は本明細書で説明した技術の実装を容易にするために変更され得るが、このような変更は必要ではない。
[0080]本明細書で説明した不正デジタル証明書自動検出技術が使用される場合、証明書が本物であるか否かの判定が、任意のクォーラム持続原則と独立になされ得ることにもまた留意されるべきである。判定は、特定の証明書がどの程度長い時間受信されているかを示す任意の時間間隔、および/または異なる証明書監視システムまたはコンピューティングデバイスが同一の証明書を受信している数と独立になされる。むしろ、証明書が本物であることは、上述のように、特定の証明書がコンピューティングデバイスにより受信されている時間量、または少なくともいくつかの閾値の数(すべてではなく)の証明書監視サービスが同一の証明書を受信しているか、に何ら依存することなく決定される。
[0081]1つまたは複数の実施形態では、不正証明書検出モジュール114および証明書審査サービス106それぞれは、様々なストア(例えば、図1のマッピングストア116および124)内にある基準データを確立するためにウォームアップまたは構成モードで動作する。このウォームアップまたは構成モードで動作している間は、不正なデジタル証明書は検出されない。基準データが取得された後、不正なデジタル証明書の検出が、本明
細書で説明したように実行される。このウォームアップまたは構成モードで動作することにより、不正な証明書に関する誤った警告が削減され得る。
[0082]さらに、不正証明書検出モジュール114は、任意選択で、様々な異なる態様で承認された証明書リストを保持またはアクセスすることができる。例えば、承認された証明書リストは、コンピューティングデバイス102の利用者または管理者により保持され得る、証明書審査サービス106から取得され得る、信頼されるサイト104または他の信頼されるサービスから取得され得る、などであり得る。承認された証明書リストは、実行される任意の他の照合または特性分析に拘わらず、本物であると看做される証明書を識別する。したがって、不正証明書検出モジュール114は、サイト証明書マッピングストア116内の証明書または確認証明書との比較を実行する必要がないが、現在の証明書が、承認された証明書リスト内の証明書に合致する場合、現在の証明書が本物であると判定する。
[0083]さらに、本明細書中の考察では、サイトに関する証明書を記録し、かつ証明書審査サービスからコンピューティングデバイスに確認証明書を返送するサイト証明書マッピングストアに対する参照がなされる。あるいは、証明書自身よりも、様々なサイトから受信した証明書の他の表示が、サイト証明書マッピングストア内に記録され、かつ/または証明書審査サービスによりコンピューティングデバイスに返送され得る。この表示は、例えば、証明書の比較において(例えば、現在の証明書とサイト証明書マッピングストア内の目的サイトに関する証明書との比較において、または現在の証明書と確認証明書との比較において)コンピューティングデバイス102により使用される情報であり得る。
[0084]さらに、本明細書で説明した不正デジタル証明書自動検出技術は、様々な異なる使用シナリオをサポートする。コンピューティングデバイスが悪意のある利用者による攻撃の主題ではなく、かつ証明書に対する合法的変更がなされていない状況では、目的サイトに関する現在の証明書は、目的サイトに関する最後の証明書に合致し、かつ現在の証明書は、本物であると判定される。コンピューティングデバイスが悪意のある利用者による攻撃を受けているが、証明書審査サービスは攻撃を受けていない状況では、(コンピューティングデバイスにより保持されている)目的サイトに関する最後の証明書にも、目的サイトに関する確認証明書にも合致しない目的サイトに関する現在の証明書は、現在の証明書が不正なものとして検出されるという結果となる。したがって、利用者は、攻撃について、および利用者が目的サイトであると主張しているサイトを信用すべきでないことを警告され得る。
[0085]コンピューティングデバイスおよび証明書審査サービスの両者が悪意のある利用者による攻撃を受けている状況では、付加的な特性の分析が、現在の証明書が不正なものとして検出されるという結果をもたらす。したがって、利用者は、攻撃および利用者が目的サイトであると主張しているサイトを信用すべきでないことを警告され得る。目的サイトに関する証明書が合法的に変更されている状況では、目的サイトに関する現在の証明書が目的サイトに関する最後の証明書に合致しないとしても、付加的な特性の分析は、現在の証明書が本物として検出されているという結果をもたらす。
[0086]特定の機能が、特定のモジュールを参照して本明細書で説明されるが、本明細書で説明される個々のモジュールの機能が複数のモジュールに分割され、かつ/または複数のモジュールの少なくともいくつかの機能が、単一のモジュールに結合され得ることに留意されるべきである。さらに、動作を実行する本明細書で説明される特定のモジュールは、特定のモジュールそれ自体が動作を実行すること、あるいは特定のモジュールが、動作を実行する(またはその特定のモジュールと共同して動作を実行する)別のコンポーネントまたはモジュールを呼び出す、またはアクセスすることを含む。したがって、動作を実
行する特定のモジュールは、動作を実行するこの特定のモジュールそれ自体、および/または動作を実行するこの特定のモジュールにより呼び出される、またはアクセスされる別のモジュールを含む。
[0087]図6は、本明細書に記載した様々な技術を実装することができる1つまたは複数のシステムおよび/または装置を表している例示的コンピューティングデバイス602を含む、例示的システムを600において一般的に示す。コンピューティングデバイス602は、例えば、サービスプロバイダーのサーバー、クライアントに関連した装置(例えば、クライアント装置)、オンチップシステム、および/または任意の他の適切なコンピューティングデバイスまたはコンピューティングシステムであり得る。
[0088]図示された例示的コンピューティングデバイス602は、処理システム604、1つまたは複数のコンピュータ読み取り可能な媒体606、相互に、通信可能に結合される1つまたは複数のI/Oインターフェイス608を含む。示されてはいないが、コンピューティングデバイス602はさらに、様々なコンポーネントを相互に結合するシステムバス、または他のデータおよびコマンド伝送システムを含む。システムバスは、メモリバスまたはメモリコントローラー、周辺バス、ユニバーサルシリアルバス、および/または任意の様々なバスアーキテクチャを利用するプロセッサーまたはローカルバスなどの、異なるバス構造の任意の1つまたは組合せを含むことができる。制御およびデータ線などの、様々な他の例もまた、考慮される。
[0089]処理システム604は、ハードウェアを使用して1つまたは複数の動作を実行するための機能を表している。したがって、処理システム604は、処理装置、機能ブロックなどとして構成され得るハードウェア要素610含むように示されている。このことは、特定用途向け集積回路、あるいは1つまたは複数の半導体を使用して形成された他の論理デバイスのようなハードウェア内の実装を含む。ハードウェア要素610は、ハードウェア要素610が形成されている材料、またはハードウェア要素610内に用いられている処理機構によって限定されるものではない。例えば、処理装置は、半導体および/またはトランジスタ(例えば、電子的な集積回路(IC))で構成され得る。このような文脈において、処理装置実行可能な命令は、電子的に実行可能な命令であり得る。
[0090]コンピュータ読み取り可能な媒体606は、メモリ/記憶装置612を含むように示されている。メモリ/記憶装置612は、1つまたは複数のコンピュータ読み取り可能な媒体に関連したメモリ/記憶装置能力を表す。メモリ/記憶装置612は、(ランダムアクセスメモリ(RAM)などの)揮発性媒体および/または(リードオンリーメモリ(ROM)、フラッシュメモリ、光ディスク、磁気ディスクなどの)不揮発性媒体を含むことができる。メモリ/記憶装置612は、固定された媒体(例えば、RAM、ROM、固定ハードドライブなど)、ならびに可換型媒体(例えば、フラッシュメモリ、可換型ハードドライブ、光ディスクなど)を含むことができる。コンピュータ読み取り可能な媒体606は、さらに以下に説明されるように様々な他の方法で構成され得る。
[0091]入出力インターフェイス608は、利用者がコマンドおよび情報をコンピューティングデバイス602に入力することを可能とし、また様々な入出力装置を使用して情報が利用者および/または他のコンポーネントまたは装置に表示されることを可能とする機能を表している。入力装置の例は、キーボード、カーソル制御装置(例えば、マウス)、(例えば、音声入力用の)マイクロフォン、スキャナー、タッチ機能(例えば、物理的な接触を検出するように構成された容量性または他のセンサー)、(例えば、可視または赤外線周波数などの非可視波長を用いて、ジェスチャーのような接触を伴わない動きを検出することができる)カメラ、などを含む。出力装置の例は、ディスプレイ装置(例えば、モニターまたはプロジェクター)、スピーカー、プリンター、ネットワークカード、触覚
応答装置などを含む。したがって、コンピューティングデバイス602は、利用者との対話をサポートするために以下でさらに説明される様々な方法で構成され得る。
[0092]コンピューティングデバイス602はまた、証明書使用法モジュール614を含む。証明書使用法モジュール614は、上述のように様々な不正証明書検出機能を提供する。証明書使用法モジュール614は、例えば、図1の不正証明書検出モジュール114、図1の証明書審査サービス106、または図1の証明書監視システム130を実装することができる。
[0093]様々な技術が、ソフトウェア、ハードウェア要素、またはプログラムモジュールの一般的な文脈で本明細書に記載され得る。一般的に、このようなモジュールは、特定のタスクを実行する、または特定のデータ形式を実装する、ルーチン、プログラム、オブジェクト、要素、コンポーネント、データ構造などを含む。本明細書で使用されるように用語「モジュール」、「機能」、および「コンポーネント」は、一般的にソフトウェア、ファームウェア、ハードウェアまたはこれらの組合せを表す。本明細書に記載された技術の特徴は、プラットフォーム非依存であり、技術が様々な処理装置を有する様々なコンピューティングプラットフォーム上に実装され得ることを意味する。
[0094]記載されたモジュールおよび技術の実装は、いくつかの形態のコンピュータ読み取り可能な媒体上に格納され、または送信され得る。コンピュータ読み取り可能な媒体は、コンピューティングデバイス602によりアクセスされ得る様々な媒体を含むことができる。例として、限定するものではなく、コンピュータ読み取り可能な媒体は、「コンピュータ読み取り可能な記録媒体」および「コンピュータ読み取り可能な信号媒体」を含むことができる。
[0095]「コンピュータ読み取り可能な記録媒体」は、単なる信号伝送、搬送波または信号それ自体とは対照的に、情報の永続的格納を可能とする媒体および/または装置、あるいは/または有形の記憶装置を指す。したがって、コンピュータ読み取り可能な記録媒体は、非信号担持媒体を指す。コンピュータ読み取り可能な記録媒体は、揮発性および不揮発性、可換型および非可換型媒体、ならびに/またはコンピュータ読み取り可能な命令、データ構造、プログラムモジュール、論理素子/回路、または他のデータなどの情報を格納するための適切な方法または技術で実装される記憶装置などのハードウェアを含む。コンピュータ読み取り可能な記録媒体の例は、RAM、ROM、EEPROM、フラッシュメモリまたは他のメモリ技術、CD−ROM、デジタルバーサタイルディスク(DVD)または他の光記憶装置、ハードディスク、磁気カセット、磁気テープ、磁気ディスク記憶装置または他の磁気記憶装置、あるいは所望の情報を格納することに適し、かつコンピュータによりアクセスされ得る記憶装置、有形の媒体、製品を含むが、限定はされない。
[0096]「コンピュータ読み取り可能な信号媒体」は、ネットワークを介してなど、コンピューティングデバイス602のハードウェアに命令を送信するように構成されている信号担持媒体を指す。信号媒体は、一般的には、コンピュータ読み取り可能な命令、データ構造、プログラムモジュール、あるいは搬送波、データ信号、または他の伝送機構などの変調されたデータ信号中の他のデータを収録することができる。信号媒体はまた、任意の情報配送媒体を含む。用語「変調されたデータ信号」は、信号の特性集合の1つまたは複数を有する、または信号中の情報を符号化するというような態様で変更した信号を意味する。例として、限定しないが、通信媒体は、有線ネットワークまたは直接有線接続などの有線媒体、ならびに音響、RF、赤外線および他の無線媒体などの無線媒体を含む。
[0097]上述のように、ハードウェア要素610およびコンピュータ読み取り可能な媒体606は、本明細書に記載された技術の少なくともいくつかの態様を実装するために、い
くつかの実施形態で具現化され得る、命令、モジュール、プログラム可能なデバイスロジックおよび/またはハードウェア形態で実装された固定的デバイスロジックを表す。ハードウェア要素は、集積回路またはオンチップシステムのコンポーネント、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、コンプレックスプログラマブルロジックデバイス(CPLD)、およびシリコンまたは他ハードウェアデバイス中の実装を含むことができる。この文脈において、ハードウェア要素は、命令、モジュール、および/またはハードウェア要素により具現化されたロジックにより定義されたプログラムタスクを実行する処理装置、ならびに実行するための命令を格納するために利用されるハードウェア装置、例えば、前述のコンピュータ読み取り可能な記録媒体として動作することができる。
[0098]前述の組合せはまた、本明細書に記載された様々な技術およびモジュールを実装するために用いられ得る。したがって、ソフトウェア、ハードウェアまたはプログラムモジュールおよび他のプログラムモジュールは、いくつかの形態のコンピュータ読み取り可能な記録媒体上に、および/または1つまたは複数のハードウェア要素610により具現化された1つまたは複数の命令および/またはロジックとして実装され得る。コンピューティングデバイス602は、ソフトウェアおよび/またはハードウェアモジュールに対応した特定の命令および/または関数を実装するように構成され得る。したがって、コンピューティングデバイス602によりソフトウェアとして実行可能なモジュールとしてのモジュールの実装は、少なくとも部分的には、ハードウェアで、例えばコンピュータ読み取り可能な記録媒体および/または処理システムのハードウェア要素610の使用を通して、達成され得る。命令および/または関数は、本明細書に記載の技術、モジュールおよび例を実装するために、1つまたは複数の製品(例えば、1つまたは複数のコンピューティングデバイス602および/または処理システム604)により実行可能/動作可能であり得る。
[0099]図6にさらに示されるように、例示的システム600は、パーソナルコンピュータ(PC)、テレビ装置、および/または移動体装置上でアプリケーションを走行させるシームレスな利用者体験のための遍在する環境を可能とする。サービスおよびアプリケーションは、アプリケーションを利用する、ビデオゲームで遊ぶ、ビデオを試聴するなどをしながら、ある装置から次の装置に移行する場合、共通した利用者体験のためにすべての3つの環境において実質的に同じように走行する。
[00100]例示的システム600では、複数の装置が、中央コンピューティングデバイス
を通じて相互接続される。中央コンピューティングデバイスは、複数の装置と同じ場所にあっても、または複数の装置と離れて配置されていてもよい。1つまたは複数の実施形態では、中央コンピューティングデバイスは、ネットワーク、インターネット、または他のデータ通信リンクを介して複数の装置に接続される1つまたは複数のサーバーコンピュータのクラウドであり得る。
[00101]1つまたは複数の実施形態では、この相互接続アーキテクチャは、共通のかつ
シームレスな体験を複数の装置の利用者に提供するために、複数の装置にまたがって配送される機能を可能とする。各複数の装置は、異なる物理的要件および能力を有することができ、かつ中央コンピューティングデバイスは、装置に適合されるのみならず、すべての装置に共通でもある、体験の装置への配送を可能とするためのプラットフォームを使用する。1つまたは複数の実施形態では、対象装置のクラスが生成され、体験は、装置の一般的なクラスに適合される。装置のクラスは、物理的特徴、利用種別、または装置の他の共通の特性により定義され得る。
[00102]様々な実装において、コンピューティングデバイス602は、コンピュータ6
16、移動体618、テレビ620使用のためなどの、様々な異なる構成を仮定することができる。これらの構成のそれぞれは、一般に異なる構成物および能力を有することができる装置を含み、したがって、コンピューティングデバイス602は、異なる装置クラスの1つまたは複数に従って構成され得る。例えば、コンピューティングデバイス602は、パーソナルコンピュータ、デスクトップコンピュータ、マルチスクリーンコンピュータ、ラップトップコンピュータ、ネットブックなどを含むコンピュータ616クラスの装置として実装され得る。
[00103]コンピューティングデバイス602はまた、携帯電話、ポータブル音楽プレー
ヤー、ポータブルゲーム装置、タブレットコンピュータ、マルチスクリーンコンピュータなどの、移動体装置を含む移動体618クラスの装置として実装され得る。コンピューティングデバイス602はまた、普通の視聴環境で一般的な大型スクリーンを有する、または大型スクリーンに接続された装置を含むテレビ620クラスの装置として実装され得る。これらの装置は、テレビ、セットトップボックス、ゲーム装置などを含む。
[00104]本明細書に記載された技術は、これらの様々な構成のコンピューティングデバ
イス602によりサポートされ得るが、本明細書に記載された特定の技術例に限定されない。この機能はまた、以下に説明されるようなプラットフォーム624を介して「クラウド」622を越えてなど、分散システムの使用を通じて、すべてまたは部分的に実装され得る。
[00105]クラウド622は、資源626に対するプラットフォーム624を含み、かつ
/またはプラットフォーム624を表す。プラットフォーム624は、ハードウェア(例えば、サーバー)の基礎となる機能およびクラウド622のソフトウェア資源を抽象化している。資源626は、利用され得るアプリケーションおよび/またはデータを含むとともに、コンピュータ処理は、コンピューティングデバイス602から遠隔にあるサーバー上で実行され得る。資源626はまた、インターネットを介しておよび/または携帯またはWi−Fiネットワークなどの、加入者ネットワークを通じて提供されるサービスを含む。
[00106]プラットフォーム624は、コンピューティングデバイス602を他のコンピ
ューティングデバイスに接続するための資源および機能を抽象化することができる。プラットフォーム624はまた、プラットフォーム624を介して実装される資源626に対して遭遇した要求に対応したレベルのスケールを提供するために資源のスケーリングを抽象化することを助ける。したがって、相互接続された装置の実施形態において、本明細書に記載された機能の実装は、システム600を通じて配布され得る。例えば、機能は、部分的には、コンピューティングデバイス602上に、ならびにクラウド622の機能を抽象化するプラットフォーム624を介して実装され得る。
[00107]主題は、構造的特徴および/または方法論的動作に特有の言語で説明されてき
たが、添付の特許請求の範囲で定義される主題が、上記の特定の特徴および動作に限定される必要がないことが理解されるべきである。むしろ、上記の特定の特徴および動作は、特許請求の範囲を実装する例示的形態として開示されている。

Claims (10)

  1. 1つ又は複数の目的サイトについての、以前に受信された証明書を、特定の時間の間のみ記憶するように構成されたサイト証明書(certificate)マッピングストア(mapping store)と、
    目的(target)サイトから現在の証明書を取得し、
    前記現在の証明書を前記サイト証明書マッピングストア内の前記目的サイトに関する証明書と比較し、
    前記現在の証明書が前記サイト証明書マッピングストア内の前記証明書に合致することに応答して、前記現在の証明書が本物であると判定し、かつ
    前記現在の証明書が前記サイト証明書マッピングストア内の前記証明書に合致しないことに応答して、遠隔の証明書審査(screening)サービスから前記目的サイトに関する1つまたは複数の確認(confirmation)証明書を取得し、かつ前記1つまたは複数の確認証明書が現在の証明書に合致することに応答して、前記現在の証明書が不正(fraudulent)なものであるか否かを判定するために前記現在の証明書の1つまたは複数の特性を分析する、
    ように構成された、不正証明書検出(fraudulent certificate detection)モジュールと、
    を含み、
    前記遠隔の証明書審査サービスからの前記目的サイトに関する前記1つ又は複数の確認証明書が、受信されたか否かに関わらず、前記以前に受信された証明書が、所定の時間の間のみ記憶される、
    装置。
  2. 前記サイト証明書マッピングストア内の前記目的サイトに関する前記証明書が、前記目的サイトに関する、直も最近に受信した証明書を含む、請求項1に記載の装置。
  3. 前記目的サイトに関する前記1つまたは複数の確認証明書が、前記目的サイトに関する複数の確認証明書を含み、前記複数の確認証明書のそれぞれが、複数の証明書監視(monitoring)システムの異なる1つから取得されており、複数の証明書監視システムの各々が、互いに、遠隔の、地理的に異なる領域に位置する、請求項1に記載の装置。
  4. 前記複数の確認証明書のそれぞれが前記現在の証明書に合致する場合にのみ、前記現在の証明書が不正なものであるか否かを判定するために前記現在の証明書の1つまたは複数の特性を分析する、請求項3に記載の装置。
  5. 前記現在の証明書の前記1つまたは複数の特性が、現在の証明書のフィールドの不一致、現在の証明書の発行者変更、特定の現在の証明書のフィールドの欠落、ネットワークアドレスの異常、トップレベルドメインの異常、および証明書ライフサイクルの異常を含む、請求項1に記載の装置。
  6. 前記不正証明書検出モジュールがさらに、前記1つまたは複数の特性に基づき、前記目的サイトに関する1つまたは複数の以前に受信した証明書と比較して不正な変更が前記現在の証明書に対してなされているか否かを判定するように構成されている、請求項1に記載の装置。
  7. 証明書審査サービスにおいて複数の証明書監視システムから複数のサイトに対する証明書を受信するステップであって、前記複数の証明書監視システムのそれぞれが地理的に異なる領域に物理的に配置されている、ステップと、
    前記複数の証明書監視システムから以前に受信した前記証明書を特定の時間の間のみ格納するステップと、
    コンピューティングデバイスから、前記複数のサイトの目的サイトに関する確認証明書(confirmation certificate)の要求を受信するステップと、
    前記複数の証明書監視システムから受信した前記目的サイトに関する前記証明書を取得するステップと、
    前記コンピューティングデバイスに前記証明書審査サービスから、前記目的サイトに関する1つまたは複数の確認証明書として前記目的サイトに関する証明書の表示を返送するステップと、を含み、
    前記遠隔の証明書審査サービスからの前記目的サイトに関する前記1つ又は複数の確認証明書が、受信されたか否かに関わらず、前記以前に受信された証明書が、所定の時間の間のみ記憶される、
    方法。
  8. 前記複数のサイトに関する前記証明書を受信する前記ステップが、前記確認証明書に対する前記要求と独立に前記複数の証明書監視システムから前記証明書を受信するステップと、前記証明書審査サービスのサイト証明書マッピングストア内に前記証明書を格納するステップを含む前記証明書を格納する前記ステップと、前記要求に応答して前記証明書を前記証明書審査サービスの前記サイト証明書マッピングストアから前記証明書を取得するステップを含む前記証明書を取得する前記ステップと、を含む、請求項7に記載の方法。
  9. 前記目的サイトに関する前記確認証明書の前記要求に応答して前記目的サイトに関する前記証明書を前記複数の証明書監視システムから要求するステップと、
    前記証明書を前記複数の証明書監視システムから要求するステップに応答して前記証明書を受信するステップを含む前記受信ステップと、をさらに含む、請求項7に記載の方法。
  10. 前記複数のサイトのそれぞれがWebページを含む、請求項7に記載の方法。
JP2018152279A 2013-03-14 2018-08-13 不正デジタル証明書の自動検出 Active JP6680840B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/831,338 US8966659B2 (en) 2013-03-14 2013-03-14 Automatic fraudulent digital certificate detection
US13/831,338 2013-03-14

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2016500692A Division JP2016512411A (ja) 2013-03-14 2014-03-06 不正デジタル証明書の自動検出

Publications (2)

Publication Number Publication Date
JP2019013009A true JP2019013009A (ja) 2019-01-24
JP6680840B2 JP6680840B2 (ja) 2020-04-15

Family

ID=50390238

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2016500692A Pending JP2016512411A (ja) 2013-03-14 2014-03-06 不正デジタル証明書の自動検出
JP2018152279A Active JP6680840B2 (ja) 2013-03-14 2018-08-13 不正デジタル証明書の自動検出

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2016500692A Pending JP2016512411A (ja) 2013-03-14 2014-03-06 不正デジタル証明書の自動検出

Country Status (6)

Country Link
US (1) US8966659B2 (ja)
EP (1) EP2974204B1 (ja)
JP (2) JP2016512411A (ja)
KR (1) KR102150742B1 (ja)
CN (1) CN105052108B (ja)
WO (1) WO2014158924A1 (ja)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9407644B1 (en) * 2013-11-26 2016-08-02 Symantec Corporation Systems and methods for detecting malicious use of digital certificates
CN105981326B (zh) * 2014-02-26 2019-05-14 三菱电机株式会社 证书管理装置和证书管理方法
US10313324B2 (en) * 2014-12-02 2019-06-04 AO Kaspersky Lab System and method for antivirus checking of files based on level of trust of their digital certificates
WO2016170222A1 (en) * 2015-04-21 2016-10-27 Nokia Technologies Oy Certificate verification
EP3295644B1 (en) * 2015-05-08 2021-06-30 Citrix Systems Inc. Systems and methods for improving security of secure socket layer (ssl) communications
US9699202B2 (en) 2015-05-20 2017-07-04 Cisco Technology, Inc. Intrusion detection to prevent impersonation attacks in computer networks
US10771260B2 (en) * 2015-06-16 2020-09-08 Vellitas Llc Systems and methods for digital certificate security
US10642976B2 (en) 2015-06-27 2020-05-05 Mcafee, Llc Malware detection using a digital certificate
US20170063841A1 (en) * 2015-08-27 2017-03-02 Sony Corporation Trusting intermediate certificate authorities
US10402549B1 (en) * 2015-12-17 2019-09-03 Symantec Corporation Systems and methods for creating validated identities for dependent users
US10091006B2 (en) 2016-02-09 2018-10-02 Citrix Systems, Inc. Certificate pinning using a directory service
US10250587B2 (en) 2016-09-30 2019-04-02 Microsoft Technology Licensing, Llc Detecting malicious usage of certificates
US10721079B2 (en) * 2017-04-05 2020-07-21 Venafi, Inc. Detection of anomalous key material
US10089801B1 (en) 2017-05-15 2018-10-02 Amazon Technologies, Inc. Universal access control device
US10587605B2 (en) 2017-06-20 2020-03-10 Citrix Systems, Inc. Certificate pinning in highly secure network environments using public key certificates obtained from a DHCP (dynamic host configuration protocol) server
US20190044950A1 (en) * 2017-08-02 2019-02-07 Qualcomm Incorporated Detection of Compromised Access Points
US10498538B2 (en) * 2017-09-25 2019-12-03 Amazon Technologies, Inc. Time-bound secure access
EP3484097A1 (de) * 2017-11-08 2019-05-15 Siemens Aktiengesellschaft Verfahren und validierungseinrichtung zum validieren eines digitalen zertifikats
US10783338B2 (en) 2018-03-08 2020-09-22 Amazon Technologies, Inc. Integrated access control system
KR102086739B1 (ko) * 2018-06-27 2020-03-09 주식회사 수산아이앤티 보안 소켓 계층 복호화 장치에서 다양한 전자 서명 알고리즘을 지원하기 위한 전자 재서명 방법
RU2715027C2 (ru) * 2018-06-29 2020-02-21 Акционерное общество "Лаборатория Касперского" Способ обнаружения несанкционированного изменения в отношении хранилища сертификатов
RU2702080C1 (ru) * 2018-06-29 2019-10-03 Акционерное общество "Лаборатория Касперского" Способ блокировки сетевых соединений с ресурсами из запрещенных категорий
RU2728506C2 (ru) * 2018-06-29 2020-07-29 Акционерное общество "Лаборатория Касперского" Способ блокировки сетевых соединений
US11017076B2 (en) * 2018-08-08 2021-05-25 Microsoft Technology Licensing, Llc Enhancing security using anomaly detection
US10958676B2 (en) * 2018-11-20 2021-03-23 Easy Solutions Enterprises Corp. Classification of transport layer security certificates using artificial neural networks
US11483164B2 (en) * 2019-06-19 2022-10-25 Citrix Systems, Inc. Dynamic certificate pinning systems and methods
CN112152961B (zh) * 2019-06-26 2023-01-31 北京观成科技有限公司 一种恶意加密流量的识别方法及装置
US20200412552A1 (en) * 2019-06-28 2020-12-31 Zebra Technologies Corporation Methods and Apparatus to Renew Digital Certificates
CN114268431B (zh) * 2021-12-16 2023-06-16 统信软件技术有限公司 浏览器证书转码方法及装置、计算设备、可读存储介质
US20230214822A1 (en) * 2022-01-05 2023-07-06 Mastercard International Incorporated Computer-implemented methods and systems for authentic user-merchant association and services

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020116647A1 (en) * 2001-02-20 2002-08-22 Hewlett Packard Company Digital credential monitoring
JP2005509366A (ja) * 2001-11-06 2005-04-07 インターナショナル・ビジネス・マシーンズ・コーポレーション データ供給のための方法およびシステム、電子財産の所有権移転のための方法およびシステム、および電子投票のための方法およびシステム
JP2008009924A (ja) * 2006-06-30 2008-01-17 Mitsubishi Electric Corp Cpa管理装置およびcpa管理システム
JP2009038797A (ja) * 2007-07-31 2009-02-19 Symantec Corp ファーミング・フィッシング攻撃で用いられる不正なssl証明書・dnsリダイレクトの検出方法
US20090319783A1 (en) * 2003-08-15 2009-12-24 Thornton Russell S Method of Aggregating Multiple Certificate Authority Services

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69533328T2 (de) * 1994-08-30 2005-02-10 Kokusai Denshin Denwa Co., Ltd. Beglaubigungseinrichtung
US6965881B1 (en) * 2000-04-24 2005-11-15 Intel Corporation Digital credential usage reporting
US20020078347A1 (en) 2000-12-20 2002-06-20 International Business Machines Corporation Method and system for using with confidence certificates issued from certificate authorities
US7181017B1 (en) * 2001-03-23 2007-02-20 David Felsher System and method for secure three-party communications
US7130999B2 (en) * 2002-03-27 2006-10-31 Intel Corporation Using authentication certificates for authorization
JP2003296250A (ja) 2002-03-29 2003-10-17 Fuji Xerox Co Ltd メーリングリストサーバおよびそのメール送信方法
US7596692B2 (en) * 2002-06-05 2009-09-29 Microsoft Corporation Cryptographic audit
US7770204B2 (en) * 2003-09-30 2010-08-03 Novell, Inc. Techniques for securing electronic identities
GB0407335D0 (en) * 2004-03-31 2004-05-05 British Telecomm Authorisation
US7802722B1 (en) * 2004-12-31 2010-09-28 Teradata Us, Inc. Techniques for managing fraud information
US7519825B2 (en) * 2005-01-17 2009-04-14 House Of Development Llc Electronic certification and authentication system
US20070162761A1 (en) * 2005-12-23 2007-07-12 Davis Bruce L Methods and Systems to Help Detect Identity Fraud
US7912773B1 (en) * 2006-03-24 2011-03-22 Sas Institute Inc. Computer-implemented data storage systems and methods for use with predictive model systems
US7657626B1 (en) * 2006-09-19 2010-02-02 Enquisite, Inc. Click fraud detection
US20080047016A1 (en) * 2006-08-16 2008-02-21 Cybrinth, Llc CCLIF: A quantified methodology system to assess risk of IT architectures and cyber operations
CN101141447B (zh) * 2006-09-08 2010-08-18 飞塔公司 Https通信隧道安全检查和内容过滤系统和方法
US8683195B2 (en) * 2006-12-19 2014-03-25 Sandisk Technologies Inc. System and method for reducing fraud
US8307414B2 (en) * 2007-09-07 2012-11-06 Deutsche Telekom Ag Method and system for distributed, localized authentication in the framework of 802.11
US20090089859A1 (en) * 2007-09-28 2009-04-02 Cook Debra L Method and apparatus for detecting phishing attempts solicited by electronic mail
US8516259B2 (en) * 2008-09-03 2013-08-20 Alcatel Lucent Verifying authenticity of voice mail participants in telephony networks
US8285985B2 (en) * 2008-12-15 2012-10-09 Sap Ag Systems and methods for detecting exposure of private keys
US8146159B2 (en) * 2009-01-20 2012-03-27 Check Point Software Technologies, Ltd. Methods for inspecting security certificates by network security devices to detect and prevent the use of invalid certificates
GB2469287B (en) * 2009-04-07 2013-08-21 F Secure Oyj Authenticating a node in a communication network
US8776214B1 (en) * 2009-08-12 2014-07-08 Amazon Technologies, Inc. Authentication manager
US8484460B1 (en) * 2010-12-29 2013-07-09 Amazon Technologies, Inc. Post attack man-in-the-middle detection
US20120173874A1 (en) 2011-01-04 2012-07-05 Qualcomm Incorporated Method And Apparatus For Protecting Against A Rogue Certificate

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020116647A1 (en) * 2001-02-20 2002-08-22 Hewlett Packard Company Digital credential monitoring
JP2005509366A (ja) * 2001-11-06 2005-04-07 インターナショナル・ビジネス・マシーンズ・コーポレーション データ供給のための方法およびシステム、電子財産の所有権移転のための方法およびシステム、および電子投票のための方法およびシステム
US20090319783A1 (en) * 2003-08-15 2009-12-24 Thornton Russell S Method of Aggregating Multiple Certificate Authority Services
JP2008009924A (ja) * 2006-06-30 2008-01-17 Mitsubishi Electric Corp Cpa管理装置およびcpa管理システム
JP2009038797A (ja) * 2007-07-31 2009-02-19 Symantec Corp ファーミング・フィッシング攻撃で用いられる不正なssl証明書・dnsリダイレクトの検出方法

Also Published As

Publication number Publication date
JP2016512411A (ja) 2016-04-25
CN105052108B (zh) 2018-10-26
KR102150742B1 (ko) 2020-09-01
EP2974204B1 (en) 2021-07-28
US8966659B2 (en) 2015-02-24
KR20150129739A (ko) 2015-11-20
US20140283054A1 (en) 2014-09-18
EP2974204A1 (en) 2016-01-20
CN105052108A (zh) 2015-11-11
JP6680840B2 (ja) 2020-04-15
WO2014158924A1 (en) 2014-10-02

Similar Documents

Publication Publication Date Title
JP6680840B2 (ja) 不正デジタル証明書の自動検出
US11757641B2 (en) Decentralized data authentication
JP6556840B2 (ja) 共有されるネットワーク化された環境においてデータを記憶するための方法、ストレージ・サブシステム、クラウド・ストレージ・システム、データ処理プログラム、およびコンピュータ・プログラム製品(クラウド環境における機密データの自動化された管理)
JP5598828B2 (ja) ソフトウェア署名証明書評判モデル
JP4939851B2 (ja) 情報処理端末、セキュアデバイスおよび状態処理方法
KR101948721B1 (ko) 파일 해시 값을 이용한 파일 위변조 검사 방법 및 단말 장치
US9235732B2 (en) Secure communication methods
AU2017404207A1 (en) Information processing device and information processing method
US10769045B1 (en) Measuring effectiveness of intrusion detection systems using cloned computing resources
US20090204542A1 (en) Privately sharing relying party reputation with information card selectors
US9356787B2 (en) Secure communication architecture including sniffer
US9369474B2 (en) Analytics data validation
TW201939922A (zh) 可信伺服器的策略部署方法、裝置、系統及計算系統
WO2021169382A1 (zh) 链接检测方法、装置、电子设备及存储介质
JP2006174466A (ja) データ処理における暗号化技術の信用できる信頼性の高い実施
WO2019011187A1 (zh) 电子账户的挂失、解挂、业务管理方法、装置及设备
US20230362142A1 (en) Network action classification and analysis using widely distributed and selectively attributed sensor nodes and cloud-based processing
US10931650B1 (en) Apparatus and method for building, extending and managing interactions between digital identities and digital identity applications
CN114207613A (zh) 用于激励式入侵检测系统的技术
CN117751551A (zh) 用于安全互联网通信的系统和方法
JP2020129166A (ja) 計算機システム、インシデントによる業務システムへの影響の分析方法、及び分析装置
Ulybyshev Data Protection in Transit and at Rest with Leakage Detection
JP2006107387A (ja) オンラインサービスのリアルタイムセキュリティ証明のための方法および装置
Danyeko et al. IoT Vulnerabilities

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180813

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190530

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190617

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190903

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200319

R150 Certificate of patent or registration of utility model

Ref document number: 6680840

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250