JP2008527761A - リレー通信を検知する方法、システム及びソフトウェア - Google Patents

リレー通信を検知する方法、システム及びソフトウェア Download PDF

Info

Publication number
JP2008527761A
JP2008527761A JP2006548578A JP2006548578A JP2008527761A JP 2008527761 A JP2008527761 A JP 2008527761A JP 2006548578 A JP2006548578 A JP 2006548578A JP 2006548578 A JP2006548578 A JP 2006548578A JP 2008527761 A JP2008527761 A JP 2008527761A
Authority
JP
Japan
Prior art keywords
relay device
information element
communication
potential relay
feature
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
JP2006548578A
Other languages
English (en)
Other versions
JP4596275B2 (ja
Inventor
ウィルフ サアル
シャケド シュヴァト
Original Assignee
エヌピーエックス テクノロジーズ リミテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by エヌピーエックス テクノロジーズ リミテッド filed Critical エヌピーエックス テクノロジーズ リミテッド
Publication of JP2008527761A publication Critical patent/JP2008527761A/ja
Application granted granted Critical
Publication of JP4596275B2 publication Critical patent/JP4596275B2/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
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/256NAT traversal
    • H04L61/2589NAT traversal over a relay server, e.g. traversal using relay for network address translation [TURN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0281Proxies
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • 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
    • 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
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/563Data redirection of data network streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/126Applying verification of the received information the source of the received data

Abstract

潜在的リレー・デバイスがリレー・デバイスであるか否かを決定するための方法、装置、及びコンピュータにより読取り可能なコードを提供する。いくつかの実施形態において、第1情報エレメントと第2情報エレメントは、潜在的リレー・デバイスにより受信される。潜在的リレー・デバイスは第2情報エレメントのオリジナル・ソースである。潜在的リレー・デバイスがリレー・デバイスであるか否かを決定するためには、第1情報エレメントのオリジナル・ソースの特徴と、潜在的リレー・デバイスの特徴が、単一のデバイスに関連する可能性の低い特徴であるか否かが決定される必要がある。一実施形態において、本発明のシステムは、情報エレメント・レシーバと特徴不適合性解析器を備える。或いは、本発明のシステムは、特徴発見モジュール、パラメータ取得器、及び特徴データベースを備える。

Description

本発明は、リレー通信を検知するための方法、装置及びコンピュータにより読み取り可能なコードに関する。
リレー・デバイスは一般的に多くの通信メディアや通信環境に用いられる。特に、インターネット上で用いられることが多い。リレー・デバイスは、送信側から通信情報を受け取り受信側へその通信情報を送信する通信デバイスである。
リレー・デバイスは、送信側と受信側とが直接的に通信できない場合に用いられることがある。或いは、通信性能を高めるために或いは様々な用途におけるセキュリティ保持機能を向上させるために用いられる。
例えば、機密性を保持する必要のある環境(例えば、プライベート・コーポレート・データ・ネットワーク)にいるユーザは、公衆に利用可能なインターネット上のHTTPサーバへ直接的に接続することを禁止されていることがある(文書のRFCシリーズについての情報について、RFC2616を参照のこと。また、http://www.rfc-editor.orgのRFCエディタのウェブサイトを参照のこと)。
このような場合、HTTPプロキシサーバがセキュアネットワークにインストールされ、外部のHTTPサーバに接続可能とされる。ユーザは、プロキシを用いて、HTTPリクエスト及びHTTPレスポンスを外部のHTTPサーバから中継若しくは外部のHTTPサーバへ向けて中継する。
この実施例において、HTTPプロキシサーバがリレー・デバイスになる。
他の実施形態において、小さなネットワーク(例えばホーム・ネットワーク)上のユーザは、SOCKSプロキシ(RFC1928を参照)を用いて、多数のパーソナル・コンピュータからインターネットに接続する。パーソナル・コンピュータは、単一のIPアドレス(RFC791を参照)で1つのネットワーク接続を利用する。
この実施例においてSOCKSプロキシがリレー・デバイスになる。
他の実施形態において、いくつかのHTTPプロキシがキャッシュ・プロキシとして働く。これは、HTTPプロキシが受け取った内容のローカルコピーを格納し、ローカル・ストレージから同一の内容に対するリクエストを提供することにより行われる。このようにして、キャッシュ・プロキシはリモート・サーバへ送信されたリクエストの数を低減させる。
他の実施例において、HTTPプロキシが、コンテント・フィルタリング・プロキシとして働く。これは、好ましくないコンテンツへのユーザのアクセスを拒否することにより行われる。
これらの通常の使用に加えて、リレー・デバイスはしばしば、悪用の目的で用いられる。
例えば、悪意のユーザ(アタッカ)は、リレー・デバイスを用いて、アタッカ自身の真のIPアドレスを隠蔽する。IPアドレスは、インターネット・サービス・プロバイダ(ISP: Internet Service Provider)の記録を調べることにより、アタッカの識別情報を曝すために用いられる。これにより、アタックがあった時間に誰がIPアドレスを用いたか明らかになる。アタックされたインターネット利用者が通信記録を見ても、リレー・デバイスのIPアドレスから通信記録が生じているので、アタッカは匿名性を維持し続け、アタックに対する罰(例えば、アタッカがISPアカウントを失うことや逮捕されること)を受けることはほとんどない。このような技術は、ハッカ、詐欺師やペテン師により、しばしば用いられる。
アタッカは一度にいくつかのリレー・デバイスを用いることもある。これは、1つのリレー・デバイスに、他のもう1つのリレー・デバイスなどを接続するように指示し、最後のリレー・デバイスに目標に接続するように指示することにより行われる。これにより、最後のリレー・デバイスの操作者がアタック時に用いられたIPアドレスを提供することを求められたときに、アタッカ自身は保護されることになる。
他の実施例において、アタッカは、多数のリレー・デバイスを用いて、多数の異なるユーザにより通信が行われたような錯覚状態を作り出す。アタッカはこの技術を用いて、悪用防止システム(Anti-Abuseシステム)を回避する。悪用防止システムは、アタッカが行う潜在的に悪用の可能性が高い動作の速度(例えば、一定時間に生じた動作回数)に基づいてIPアドレスをブロックする。
例えば、多くのオンライン・サービスはパスワードを用いてユーザ識別を行う。このようなオンライン・サービスは、何度かのログイン動作が失敗した後にIPアドレスをブロックする。これにより、ブルートフォース攻撃を防ぐ。ブルートフォース攻撃の間、アタッカは、成功裏にログインできるまで異なる数多くのパスワードを試しパスワードを復活させようと試みる。
他の実施例において、多くのオンライン・サービスが、個人情報へのディレクトリへのアクセスを提供する。クエリの速度が一定量を超えるならば、このようなオンライン・サービスはIPアドレスをブロックする。これにより、アタッカが大量の個人情報を入手しようとする試みを妨げる。このような技術は、スパム(非請求電子メッセージ)を送りつける悪用的操作に対しても用いられる。
他の実施例において、高いボリュームのメッセージを送信するIPアドレスをアンチスパム・システムがブロックする。
他の実施例において、ユーザがオンライン広告を見るたびに(或いはクリックするたびに)支払いを受けるウェブサイトが存在する。このような場合に、オンライン広告を出す企業は、同一のIPアドレスからの広告視聴(或いは広告へのクリック)を無視する。これにより、詐欺師が見せかけの広告視聴或いはクリックをすることを防止する。
多数のリレー・デバイスを用いることで、詐欺師はこれらの防御策を回避することが可能である。
他の実施例において、アタッカは、リレー・デバイスを用いて、アタッカ自身が異なる地理的位置に存在するかのような錯覚状態を作り出す。オンライン・クレジットカードの関連詐欺の試みが、多くの場合、米国以外の国からのものであるので、多くの米国のオンライン取引者は外国のクレジットカードの使用を受け付けない。或いは外国への製品の輸送を認めない。
詐欺師は、米国のクレジットカードを用いて、米国内の共犯者に商品を輸送させることで上記の防御策を打ち破る。
IPアドレスの地理的位置は、IP geo-locationサービスにより報告される。例えば、このようなサービスは、Quova, Inc.(米国カリフォルニア州マウンテンビュー)により提供されるGeoPointといったものを例示できる(米国特許第6,684,250号明細書及び米国特許第6,757,740号明細書参照)。このIPアドレスの地理的位置がオーダにおける1つの住所或いは複数の住所と一致しない場合(例えば、IPアドレスがインドネシアであるにもかかわらず、クレジットカードの請求書送付先住所が米国である場合)には、取引者はオーダを拒絶することが可能である。
詐欺師は、許容される地理的位置に存するリレー・デバイスを用いることで、上記の防御策を打ち破ることができる。
適切に設計されたリレー・デバイスは、アクセス制御機構を実装することができ、これにより、認証されたユーザにのみアクセス可能となるが、多くのリレー・デバイスは地球規模でアクセス可能であり(オープンプロキシとしてこのようなリレー・デバイスは知られている)、アタッカにより悪用される。
ある場面においては、オープンプロキシがハードウェア・デバイスの一部として出荷されたり、ソフトウェアの一部として出荷されたり或いはオーナが知らないうちにインストールされることに起因して作り出される。或いは、アドミニストレータが誤った仕様で或いは不注意にリレー・デバイスを設計し、認証を受けていないソースからの通信情報を中継するようにしてしまうことにより作り出されることもある。
他の場面においては、コンピュータのオーナの認可を受けることなく、オープンプロキシが悪意を持ってインストールされることもある。例えば、コンピュータのオーナに「トロイの木馬」を送りつけること、コンピュータウィルスによるものやコンピュータ内を手動でハッキングすることを例示できる(ハッキングは、誤作動やコンピュータを制御するための設計のミスを利用する操作である)。
リレー・デバイス、特に、地球規模でアクセス可能なリレー・デバイスはしばしば悪意の目的で用いられるので、多くのオンライン・サービス・プロバイダ及びオンライン取引者は、悪意を持ったものとしてリレー・デバイスを介した通信情報を取扱う。
例えば、多くのSMTPサーバ(RFC821を参照)は、リレー・デバイスを介したEメールを拒否する。また多くのIRCサーバ(RFC2810を参照)は、リレー・デバイスを介して接続するユーザを拒否する。またいくつかのインターネット取引者は、リレー・デバイスを介したオーダを受け付けない。
米国特許第6,684,250号明細書 米国特許第6,757,740号明細書
リレー・デバイスを介して通信が中継されたものであるか否かを決定する現状における方法は、通信のソースIPアドレスがリレー・デバイスに特有のものであるか否かを調査することに基づく(リレー・デバイスが、中継された通信において、リレー・デバイス自身のIPアドレスを報告することを仮定している)。
このような方法の1つが、HTTP通信がリレー・デバイスに特有のHTTPヘッダを含むか否かを調査することである。このようなヘッダの例として、「X-Forwarded-For」、「X-Originating-IP」、「Via」、「X-Cache」及び「Client-IP」を挙げることができる。この方法は、中継されたプロトコルがHTTPでないときに用いることが出来ないという点で限界がある。また、全てのリレー・デバイスがこのようなヘッダを報告するわけではないという点でも限界がある。特に、中継がHTTPより下の水準で実行される場合(SOCKSプロキシを用いた場合や、HTTP CONNECTメソッド(RFC2817を参照)を用いる場合には、リレー・デバイスはヘッダを報告しない)。
他の方法は、ソースIPアドレスへ戻る接続を試みることである(逆方向の接続を作り出す)。この方法は、合意されたプロトコル(Agreed Upon Protocol)を用いる。このプロトコルはリレー・デバイスにはほとんどの場合実装されない。例えば、多くのIRCサーバは、識別プロトコル(RFC1413を参照)を用いてソースIPアドレスへ戻る接続を構築しようとする。ほとんどのIRCクライアントは識別プロトコルを実装している。リレー・デバイスは識別プロトコルを実装していないので、ソースIPアドレスへ戻る接続が成功したとの表示をソースIPアドレスから受け取った場合には(例えば、SYN及びACKコントロール・フラグを備えるTCPセグメントを例示することができる。TCPの説明については、RFC793を参照)、通信が中継されていないものであることを意味するものとなる。
この方法では、プロバイダ及びユーザが逆方向の接続を用いるプロトコルについて合意をしなければならない点で限界がある。したがって、サービス・プロバイダは、全てのユーザに対して、合意されたプロトコルを用いて接続を作り出さなければならず、全てのユーザはそのような接続を可能とするサーバを操作しなければならない。
他の方法として、プロトコル及びリレー・デバイスに一般的に用いられているポート・ナンバ(例えば、SOCKS on TCP port 1080やHTTP on TCP port 8080)を用いて、逆方向の接続を作り出し、通信の中継を試みる手法を挙げることができる。ほとんどのユーザは、地球規模でアクセス可能な通信リレーをユーザのコンピュータ上で操作していないので、中継の試みが成功した場合には、ユーザがリレー・デバイスを使用している可能性が高いことが分かる。
この方法は、サービス・プロバイダが全てのユーザに対して逆方向の接続を作り出さなければならない点で限界がある。また、多数の逆方向の接続を行うために、出来る限りのリレー・デバイス設計の重要な部分(ポート)を網羅する必要があるという点でも限界がある。またこの方法では、多数の逆方向の接続を作り出す必要があることからリソースを浪費する操作を要し、またこのような操作は非倫理的、悪用的或いは問題の多い手法となる可能性がある。
現状の手法の限界を軽減する試みとして、オンライン・サービス・プロバイダは互いに、リレー・デバイスに関する情報を分かち合っている。例えば、サービス・プロバイダは、しばしばデータベース(ブラックリストとして知られる)を検索する。このデータベースには、地球規模でアクセス可能な通信リレーの様々な通信パラメータが載せられている。このパラメータは他のサービス・プロバイダにより発見されたものや、データベースのオペレータにより発見されたものが含まれる。サービス・プロバイダは、任意のソースIPアドレスがリストに載っているか否かをチェックすることが可能である。このようなデータベースとして、Mail Abuse Prevention System LLC(米国カリフォルニア州サンノゼ)が管理するMAPS Open Proxy Stopperを例示することができる。これらデータベースは、通信パラメータをリストアップするための方法に限界があり、また、常に最新の情報であるとは限らないという点で限界がある。
したがって、通信がリレー・デバイスを介して行われたものであるか否かを決定する効率的な方法の必要性は明らかである。
本出願は、まず、潜在的リレー・デバイスから受け取った情報エレメントがリレー・デバイスを介して中継されたものであるか否かを決定する方法を開示する。開示される方法、即ち、潜在的リレー・デバイスがリレー・デバイスであるか否かを決定する方法は、潜在的リレー・デバイスから第1の情報エレメントと第2の情報エレメントを受け取る段階を備える。潜在的リレー・デバイスは、第2の情報エレメントのオリジナル・ソースである。
いくつかの実施形態において、開示される方法は、第1の情報エレメントのオリジナル・ソースの特徴と潜在的リレー・デバイスの情報が単一のデバイスに関連しない特徴であるか否かを決定する段階を更に備える。
いくつかの実施形態において、開示される方法は更に、第1の情報エレメントのオリジナル・ソースの特徴と潜在的リレー・デバイスの特徴が単一のデバイスを現わすものでないことの特徴であるか否かを決定する段階を備える。
受け取った情報エレメントが中継されたものであるか否かを決定することに対してトランスミッタと情報エレメントのオリジナル・ソースのいくつかの特徴が非常に有用であることが本明細書に開示される。受け取った情報エレメントが中継されたものであるか否かを検知するのに有用なトランスミッタ及び情報エレメントのオリジナル・ソースの特徴は、デバイスのコンフィギュレーションの状態、デバイスの通信性能、関連するDNSリクエストの特徴及びレイテンシ・パラメータ、例えば、トランスミッタ及び/又は情報エレメントのオリジナル・ソースへのラウンド・トリップ・タイムを挙げることができるがこれに限られるものではない。
ある実施形態において、第2の情報エレメントは、リレー・デバイスのうち1つのクラスにあるリレー・デバイスが中継しない種類の情報エレメントである。
ある実施形態において、第1の情報エレメントは、リレー・デバイスのうち1つのクラスにあるリレー・デバイスが中継しない種類の情報エレメントである。
本発明の実施形態に関連するリレー・デバイスのクラスの例として、SOCKSプロキシ、GETメソッド及び/又はCONNECTメソッドを用いたHTTPプロキシを含むHTTPプロキシ、IPルータ及びネットワーク・アドレス・トランスレーション・デバイスを挙げることができるが、これに限られるものではない。
第1の情報エレメント及び/又は第2の情報エレメントが通信の一部であり、通信が、IP、TCP、ICMP、DNS、HTTP、SMTP、TLS及びSSLからなる群から選択される。
いくつかの実施形態においては、第1の情報エレメント及び第2の情報エレメントが単一の通信の一部である。
いくつかの実施形態において、第1の情報エレメント及び第2の情報エレメントが、プロトコル・スタックの互いに異なる2つの層内に送信される。
いくつかの実施形態において、潜在的リレー・デバイスの特徴が単一のデバイスに関連するものでないことの特徴であるか否かを決定する段階が、第1の情報エレメントのオリジナル・ソースの特徴を発見する段階と、潜在的リレー・デバイスの特徴を発見する段階からなる。
いくつかの実施形態において、潜在的リレー・デバイスの特徴が単一のデバイスに関連するものでないことの特徴であるか否かを決定する段階が更に、第1の情報エレメントのオリジナル・ソースの特徴を潜在的リレー・デバイスの特徴と比較する段階を備える。
このようにして、本明細書で説明される実施形態において、オペレーティング・システムといったコンフィギュレーションの状態のパラメータが、第1の情報エレメント及び潜在的リレー・デバイス両方に対して決定される。情報パケットのオリジナル・ソースと潜在的リレー・デバイスの間でコンフィギュレーションの状態のパラメータに不一致が発見されると、このことは、単一の装置でないことを表し、潜在的リレー・デバイスがオリジナル・ソースのデバイスと同一のデバイスでないということが推定される。これにより、潜在的リレー・デバイスが、オリジナル・ソースのデバイスと別個のリレー・デバイスであることが推定される。
いくつかの実施形態において、本発明に係る方法は、第1の情報エレメントのオリジナル・ソースの特徴を指し示すパラメータを得る段階と、潜在的リレー・デバイスの特徴を指し示すパラメータを得る段階を備える。
このようにして、第1の情報エレメントのソースと潜在的リレー・デバイスの特徴の知識を得る必要性がなくなる。特定の実施形態において、潜在的リレー・デバイスと第1の情報エレメントのソースの間の潜在時間の差(Differential Latency)が得られ、個々のレイテンシを得る必要性を生じない。
いくつかの実施形態において、本発明に係る方法は、第1の情報エレメントのオリジナル・ソースの特徴と潜在的リレー・デバイスの特徴との間の関係を指し示すパラメータを得る段階を備える。
いくつかの実施形態において、潜在的リレー・デバイスの特徴が単一のデバイスに関連するものでないことの特徴であるか否かを決定する段階が更に、第1の情報エレメントのオリジナル・ソースの特徴と潜在的リレー・デバイスの特徴の間の関係を指し示すパラメータの解析を行う段階を備える。
いくつかの実施形態において、パラメータが、第1の情報エレメントと第2の情報エレメントのうち少なくとも一方から得られる。
いくつかの実施形態において、本発明に係る方法は更に、第1の情報エレメントのオリジナル・ソースとリレー・デバイスのうち少なくとも一方へ送出方向の通信を送る段階と、第1の情報エレメントのオリジナル・ソースと潜在的リレー・デバイスのうち少なくとも一方から第3の情報エレメントを受け取る段階を備える。
いくつかの実施形態において、本発明に係る方法は更に、第3の情報エレメントから、第1の情報エレメントのオリジナル・ソースと潜在的リレー・デバイスのうち少なくとも一方の特徴に関連した情報を引き出す。
いくつかの実施形態において、本発明に係る方法は更に、第3の情報エレメントのオリジナル・ソースが第1の情報エレメントのオリジナル・ソースであることを確認する段階を備える。
いくつかの実施形態において、本発明に係る方法は更に、第3の情報エレメントのオリジナル・ソースが潜在的リレー・デバイスであることを確認する段階を備える。
一実施形態の例において、第1の情報エレメントと第2の情報エレメントを受け取った後に、HTTPレスポンスとピングが通信のソースであると主張されるソースに戻される。直前にリレー・デバイスが存するか否かにかかわらず、HTTPレスポンスは、リレー・デバイスにより中継され、通信のオリジナル・ソースへ向かい、第3の情報エレメントに戻る。対照的に、リレー・デバイスは、ピングに応答し、ピングを第1情報エレメントのオリジナル・ソースに送ることはない。このようにして、広範囲のレイテンシの差異がリレー・デバイスの存在を指し示すことになる。
いくつかの実施形態において、本発明に係る方法は更に、潜在的リレー・デバイスから第3の情報エレメントを受け取る段階と、第3の情報エレメントから潜在的リレー・デバイスに関連する情報を引き出す段階を備える。
いくつかの実施形態において、本発明に係る方法は更に、第1の情報エレメントのソースから第3の情報エレメントを受け取る段階と、第3の情報エレメントから第1の情報エレメントのソースの特徴に関連する情報を引き出す段階を備える。
いくつかの実施形態において、第1の通信のソースの特徴と潜在的リレー・デバイスの特徴のうち少なくとも一方が、コンフィギュレーションの状態に関連した特徴である。
一例として、コンフィギュレーションの状態に関連する特徴は、オペレーティング・システムの種別、オペレーティング・システムのバージョン、ソフトウェアの種別、HTTPクライアントの種別、HTTPサーバの種別、SMTPクライアントの種別、SMTPサーバの種別、時間設定、クロック設定及びタイムゾーンの設定を挙げることができるが、これに限られるものではない。
いくつかの実施形態において、第1の情報エレメントのオリジナル・ソースの特徴と、前記潜在的リレー・デバイスの特徴が単一のデバイスに関連するものでないことの特徴であるか否かを決定する段階が、コンフィギュレーションの状態に関連する前記特徴を指し示すパラメータを調査する段階を備える。
一例として、このようなパラメータに、HTTPユーザ・エージェント・ヘッダ、RFC822・Xメイラ・ヘッダ、RFC822レシーブド・ヘッダ、RFC822日付ヘッダ、プロトコル実装様式、TCP/IPスタック・フィンガプリント、IPアドレス、TCPポート、TCPイニシャル・シーケンス・ナンバ及びTCPイニシャル・ウィンドウ、WHOISレコード、リバースDNSレコード及び肯定応答情報のレイトを挙げることができるが、これに限られるものではない。
いくつかの実施形態において、第1の情報エレメントのソースの特徴と潜在的リレー・デバイスの特徴のうち少なくとも一方が通信性能に関連する。
いくつかの実施形態において、通信性能に関連する特徴が、測定された通信性能、測定された相対的通信性能及び推定される通信性能からなる群から選択される。
いくつかの実施形態において、通信性能に関連する特徴が、通信のレイテンシ、受入方向の通信のレイテンシ、送出方向の通信のレイテンシ、通信レイト、受入方向の通信レイト、送出方向の通信レイト、受入方向の最大通信レイト及び送出方向の最大通信レイトからなる群から選択される。
いくつかの実施形態において、第1の情報エレメントのオリジナル・ソースの特徴と、潜在的リレー・デバイスの特徴が単一のデバイスに関連するものでないことの特徴であるか否かを決定する段階が、通信性能に関連する特徴を指し示すパラメータを調査する段階を備える。
いくつかの実施形態において、パラメータが、情報エレメントの受領時間、情報エレメントの送信時間、ラウンド・トリップ・タイム、ラウンド・トリップ・タイムのギャップ、IPアドレス、WHOISレコード、リバースDNSレコード及び肯定応答情報のレイトからなる群から選択される。
いくつかの実施形態において、ラウンド・トリップ・タイムのギャップが大きければ大きいほど、リレー・デバイスが悪意の目的で使用されている可能性が高いことを指し示すものとされる。
いくつかの実施形態において、第1の情報エレメントのソースの特徴と、潜在的リレー・デバイスの特徴のうち少なくとも一方がサブ・ネットワーク、ネットワーク・アドミニストレータ及び地理的位置からなる群から選択される。
いくつかの実施形態において、第1の情報エレメントのオリジナル・ソースの特徴と、潜在的リレー・デバイスの特徴が単一のデバイスに関連するものでないことの特徴であるか否かを決定する段階が、第1の通信のソースの特徴と、第2の通信のソースの特徴のうち少なくとも一方を指し示すパラメータを調査する段階を備え、パラメータが、HTTPユーザ・エージェント・ヘッダ、RFC822・Xメイラ・ヘッダ、RFC822レシーブド・ヘッダ、RFC822日付ヘッダ、IPアドレス、WHOISレコード及びリバースDNSレコードからなる群から選択される。
本出願は、更に、潜在的リレー・デバイスがリレー・デバイスであるか否かを決定する方法を開示する。開示される方法は、潜在的リレー・デバイスから第1の情報エレメントと第2の情報エレメントを受け取る段階を備え、潜在的リレー・デバイスは第2の情報エレメントのオリジナル・ソースである。更に、第1の情報エレメントと第2の情報エレメントのうち少なくとも一方のコンフィギュレーションの状態を解析する段階を備え、このコンフィギュレーションの状態が、オペレーティング・システムの種別、オペレーティング・システムのバージョン、ソフトウェアの種別、HTTPクライアントの種別、HTTPサーバの種別、SMTPクライアントの種別、SMTPサーバの種別、時間設定、クロック設定及びタイムゾーンの設定からなる群から選択される。
本出願は更に、潜在的リレー・デバイスがリレー・デバイスであるか否かを決定する方法を開示する。開示される方法は、潜在的リレー・デバイスから第1の情報エレメントと第2の情報エレメントを受け取る段階を備え、潜在的リレー・デバイスは第2の情報エレメントのオリジナル・ソースである。更に、この方法は、第1の情報エレメントと第2の情報エレメントのうち少なくとも一方のオリジナル・ソースの通信性能に関連する特徴を解析する段階を備える。
いくつかの実施形態において、通信性能に関連する特徴が、通信のレイテンシ、受入方向の通信のレイテンシ、送出方向の通信のレイテンシ、通信のラウンド・トリップ・タイム、通信レイト、受入方向の通信レイト、送出方向の通信レイト、受入方向の最大通信レイト及び送出方向の最大通信レイトからなる群から選択される。
本出願は更に、潜在的リレー・デバイスがリレー・デバイスであるか否かを決定する方法を開示する。開示される方法は、メッセージを潜在的リレー・デバイスに送り、メッセージを最終的に受領する潜在的リレー・デバイスが送出方向のDNSリクエストを送信し、送出方向のDNSリクエストから、潜在的リレー・デバイスがリレー・デバイスであるか否かを決定する段階を備える。
本出願は更に、潜在的リレー・デバイスがリレー・デバイスであるか否かを決定する方法を開示する。開示される方法は、潜在的リレー・デバイスから第1の情報エレメントと第2の情報エレメントを受け取る段階を備え、潜在的リレー・デバイスが、第2の情報エレメントのオリジナル・ソースである。更にこの方法は、潜在的リレー・デバイスへのラウンド・トリップ・タイムが、第1の情報エレメントのオリジナル・ソースへのラウンド・トリップ・タイムと比べて有意な差異が存するか否かをチェックする段階を備える。
本出願は更に、潜在的リレー・デバイスがリレー・デバイスであるか否かを決定する方法を開示する。開示される方法は、潜在的リレー・デバイスから第1の情報エレメントと第2の情報エレメントを受け取る段階を備え、潜在的リレー・デバイスが、第2の情報エレメントのオリジナル・ソースである。この方法は更に、潜在的リレー・デバイスのオペレーティング・システムが第1の情報エレメントのオリジナル・ソースのオペレーティング・システムと相違するか否かをチェックする段階を備える。
本出願は更に、潜在的リレー・デバイスがリレー・デバイスであるか否かを決定する方法を開示する。開示される方法は、潜在的リレー・デバイスから第1の情報エレメントと第2の情報エレメントを受け取る段階を備え、潜在的リレー・デバイスが、第2の情報エレメントのオリジナル・ソースである。この方法は更に、潜在的リレー・デバイスの位置が第1の情報エレメントの位置と相違するか否かをチェックする段階を備える。
本出願は更に、潜在的リレー・デバイスがリレー・デバイスであるか否かを決定する方法を開示する。開示される方法は、潜在的リレー・デバイスから第1の情報エレメントと第2の情報エレメントを受け取る段階を備え、潜在的リレー・デバイスが、第2の情報エレメントのオリジナル・ソースである。この方法は更に、潜在的リレー・デバイスのアドミニストレータが第1の情報エレメントのオリジナル・ソースのアドミニストレータと相違するか否かをチェックする段階を備える。
本出願は更に、潜在的リレー・デバイスがリレー・デバイスであるか否かを決定する方法を開示する。開示される方法は、第1の情報エレメントのオリジナル・ソースの特徴と潜在的リレー・デバイスの特徴が単一のデバイスに関連しないことを示す特徴であるか否かをチェックする段階を備える。潜在的リレー・デバイスは、第1の情報エレメント及び第2の情報エレメントのトランスミッタである。潜在的リレー・デバイスは第2の情報エレメントのオリジナル・ソースである。単一のデバイスに関連しないことを示す特徴であると決定された場合には、潜在的リレー・デバイスはリレー・デバイスである。
本発明は、受け取った情報がリレー・デバイスにより中継されたものであるか否かを決定する方法を開示する。開示される方法は、受信した情報エレメントから、通信性能測定方法を決定する段階と、この決定する段階の結果から、受け取った情報がリレー・デバイスにより中継されたものであるか否かを指し示す出力を作り出す段階を備える。
本発明は、受け取った情報がリレー・デバイスにより中継されたものであるか否かを決定する方法を開示する。開示される方法は、受け取った情報エレメントから通信性能を指し示すパラメータを決定する段階と、この決定する段階の結果から、受信した情報がリレー・デバイスにより中継されたか否かを指し示す出力を作り出す段階を備える。
決定された通信性能測定方法の一例として、モニタされるホストとの通信のレイテンシ、モニタされるホストとの通信の受入方向のレイテンシ、モニタされるホストとの通信の送出方向のレイテンシ、通信レイト、受入方向の通信レイト、送出方向の通信レイト、受入方向の最大通信レイト及び送出方向の最大通信レイトを挙げることができるが、これに限られるものではない。
本出願は更に、潜在的リレー・デバイスがリレー・デバイスであるか否かを決定するシステムを開示する。
いくつかの実施形態において、開示されるシステムは、情報エレメント・レシーバを備え、情報エレメント・レシーバは、情報ソース・デバイス及び潜在的リレー・デバイスを含む複数のデバイスから情報エレメントを受け取る。更にこのシステムは、特徴不適合性解析器を備え、特徴不適合性解析器は、情報ソース・デバイスの特徴と潜在的リレー・デバイスの特徴が単一のデバイスに関連しない特徴であるか否かを決定する。
いくつかの実施形態において、開示されるシステムは更に、特徴発見モジュールを更に備え、特徴発見モジュールが、情報ソース・デバイスの特徴と潜在的リレー・デバイスの特徴からなる群から選択される少なくとも1つの特徴を発見する。
必要に応じて、情報エレメント・レシーバが、更に、モニタされるホストから情報エレメントを受け取るように形成される。
必要に応じて、送出方向の情報エレメント用の送受信端末を更に備える。
いくつかの実施形態において、システムは、パラメータ取得器を更に備え、パラメータ取得器が、情報ソース・デバイスの特徴を指し示すパラメータ、潜在的リレー・デバイスの特徴を指し示すパラメータ及び情報ソース・デバイスの特徴とリレー・デバイスの特徴が単一のデバイスに関連しないことを示す特徴であるか否かを指し示すパラメータからなる群から選択される少なくとも1つのパラメータを取得することを特徴とする。
いくつかの実施形態において、特徴データベースを更に備え、特徴データベースが特徴の対とデータのマップを格納し、データが、特徴の対が不適合性を示す特徴であるか否かを指し示す。
これらの実施形態及び更なる実施形態が以下に示す説明並びに実施形態から明らかになる。
以下、本発明並びに本発明を実用化する方法を理解するために、好適な実施形態が以下に図面を参照しつつ示されるが、以下に示す例は本発明を何ら限定するものではない。
本発明について説明する前に、本明細書中で用いる用語の定義を明らかにすることが本発明を理解するために役立つと思われる。
本明細書中において、「通信(communication)」とは、少なくとも1つの情報エレメントを2つのデバイス間で転送することを示す。例えば、1つのデバイスから別のデバイスにインターネット上で転送されるIPパケットは1つの通信である。他の例としては、インターネット上でHTTPクライアントからHTTPサーバに転送されるHTTPリクエストは1つの通信である。1若しくはそれ以上の通信が1若しくはそれ以上の他の通信に転送される。一方の情報がもう一方の情報を包含してなる通信の群は、「プロトコル・スタック(Protocol Stack)」と呼ばれる。例えば、HTTPプロトコルによる通信(すなわち、HTTPリクエスト或いはレスポンス)は、TCPプロトコルによる通信(すなわち、TCP接続)に包含され、更にTCPプロトコルによる通信がIPプロトコルによる通信(すなわち、1もしくはそれ以上のIPデータグラム)に包含される。
本明細書中において、「情報エレメントのオリジナル・ソース(original source)」とは、情報エレメントを送信したデバイスを示すのであって、他のデバイスからの情報エレメントを中継するデバイスを示すものではない。
本明細書において、「トランスミッタ(transmitter)」とは、情報エレメントを送信したデバイスを示す。トランスミッタが送信する情報エレメントは、他のデバイスから中継された情報エレメントを含む。情報エレメントがデバイスから受信されるとき、このデバイスは該情報エレメントのトランスミッタである。
本明細書中において、「特徴(feature)」とは、デバイスに関する任意の情報であって、2つの異なるデバイス間で異なる情報を示す。
本発明の実施形態として、データネットワークを介して「情報エレメント」を受信及び/又は送信する例を説明する。いくつかの実施形態において、情報エレメントは通信プロトコルを用いて伝達される。データネットワークを介して情報エレメントを伝達するための通信プロトコルとして、例えばHTTP、SMTP、DNS(RFC 1034を参照)、SSL/TLS(RFC 2246を参照)、TCP、UDP(RFC 768を参照)、IP、及びICMP(RFC 792を参照)が挙げられるが、これらには限定されない。
図1は、本発明のいくつかの実施形態にしたがって、リレー検知システム(102)が動作する環境を示す。いくつかの実施形態においては、リレー検知システム(Relay Detection System RDS)(102)は、インターネット(100)を介して情報ソース・デバイス(Information Source Device ISD)(104)から伝達される情報エレメントを受信する。
いくつかの例において、モニタされるホスト(Monitored Host MH)(110)に情報エレメントを送信するために、ISD(104)はまずリレー・デバイス(Relay Device RD)(108)に情報エレメントを送信する。RD(108)は、情報エレメントを受信した後、受信した情報エレメントをMH(110)に中継する。これらの例では、中継される情報エレメントは、パス(122)として示されるように、情報ソース・デバイス(104)からモニタされるホスト(110)に中継される。
若しくは、ISD(104)はリレー・デバイス(108)を用いずに、モニタされるホスト(110)に情報エレメントを送信する。この場合、パス(120)に示されるように、情報エレメントはRD(108)を通過することがない。
MH(110)に送信される情報エレメントが、RD(108)を介して送信されるか否かを特定することが望ましい。
本発明の発明者は、MH(110)に送信される情報エレメントがRD(108)を介して送信されるか否かを決定するための改良された方法、装置、及びコンピュータにより読取り可能なソフトウェアを考案した。いくつかの実施形態において、この決定する段階は、RDS(102)により実行される。RDS(102)は、MH(110)により受信される少なくとも1つの通信をモニタするとともに、通信がRD(108)を用いてMH(110)に送信されるか否かについての決定を試みる。本明細書中において、「モニタ」とは、通信を受信する行為をさす。このとき、受信される通信はモニタを行うデバイスから送信されるか、或いは該デバイスに送信される。
本発明においては任意の種類のリレー・デバイスを使用可能である。リレー・デバイスの種類の例としては、SOCKSプロキシ(RFC 1928参照)、GETメソッドとともに用いられるHTTPプロキシ(RFC 2616参照)、CONNECTメソッドとともに用いられるHTTPプロキシ(RFC 2817参照)、IPルータ(RFC 1812参照)、NATデバイス(RFC 2663参照)が挙げられるがこれらには限定されない。
ISD(104)は任意のデータネットワーク(例えばインターネット(100))を介して他のデバイスと通信するデバイスである。いくつかの実施形態において、ISD(104)は一人の人間、或いは複数の人間により操作される。いくつかの実施形態において、ISD(104)は自動的に動作する。いくつかの実施形態において、ISD(104)は人間の行動を模擬しながら自動的に動作する。ISDの例としては、HTMLブラウザ(例えばMicrosoft Internet Explorer)を実行するコンピュータ(HTMLについての説明は、W3Cウェブサイト(http://www.w3.org/TR/html)のHTMLSpecificationを参照。)、IRCクライアントを実行するコンピュータ、SMTPクライアントを実行するコンピュータ、XHTMLブラウザを実行する携帯電話が挙げられるが、これらには限定されない。MH(110)は任意のデータネットワーク(例えば、インターネット(100))を介して他のデバイスと通信するデバイスである。一つの実施形態においては、モニタされるホスト(110)はサーバである。適切なモニタされるホスト(110)の例として、HTTPサーバ、SSL/TLSサーバ、SMTPサーバ、ファイル・サーバ、テルネット・サーバ、FTPサーバ、SSHサーバ、DNSサーバ、及びIRCサーバが挙げられるがこれらには限定されない。MH(110)の用途の例として、オンライン取引者をホストする、オンライン広告サービスを実行する、及び電子メールを受信するなどの用途が挙げられるがこれらには限定されない。
いくつかの実施形態において、RDS(102)はMH(110)から送信される情報エレメント及び/又はMH(110)に送信される情報エレメントをモニタする。RDS(102)が更に、RD(108)及び/又はISD(104)と通信してもよい。或いはRDS(102)は更にRDS(102)から送信される情報エレメント及び/又はRDS(102)に送信される情報エレメントをモニタしてもよい。
RDS(102)、ISD(104)、RD(108)、及びMH(110)のそれぞれは、ハードウェア、ソフトウェア、或いはこれらの組み合わせのいずれであってもよい。RDS(102)、ISD(104)、RD(108)、及びMH(110)は、同一のチリ的位置又は異なる地理的位置に位置しても、或いは同一デバイスの構成要素であってもよい。
説明を簡単にするために、本明細書中で説明される環境は1つの情報ソース・デバイスと、1つのリレー・デバイスを含む。実際には、インターネット(100)に接続された多くの情報ソース・デバイスが存在する。これら情報ソース・デバイスは、同じくインターネット(100)に接続された複数のリレー・デバイスの1つのリレー・デバイスを使用してもよいし、使用しなくてもよい。本発明の目的は、情報ソース・デバイスがリレー・デバイスを使用しない一般的な場合と、情報ソース・デバイスがリレー・デバイスを使用する一般的な場合を区別することである。本明細書中で説明される環境の実際の環境(例えば、インターネット或いはその他のネットワーク)への外挿は、当業者の技術範囲内であることが理解できる。
図2Aを参照する。本発明のいくつかの実施形態にしたがうと、RDS(102)はMH(110)へ送信される情報エレメントを受信する。この場合の潜在的リレー・デバイス(150)(Potential Relay Device PRD)は情報エレメントのトランスミッタであってよく、必ずしも全ての或いは特定の情報エレメントのオリジナル・ソースである必要はない。いくつかの実施形態によると、潜在的リレー・デバイス(Potential Relay Device PRD)(150)がどのようなデバイスであるかは不明であり、RD(108)又はISD(104)のいずれであってもよい。
本発明のいくつかの実施形態によると、PRD(150)がRD(108)或いはID(104)のいずれであるかを決定するための方法、装置、コンピュータ可読ソフトウェアが提供される。
図2Bは、本発明のいくつかの実施形態においてRDS(102)により受信される情報エレメントのオリジナル・ソースを示す図である。第1情報エレメントと第2情報エレメントがRDS(102)により受信される。いくつかの実施形態によると、PR(150)は第2情報エレメントのオリジナル・ソースである。したがって第2情報エレメントを非リレー情報エレメント(Non-relayed Information Element NRIE)と呼ぶこともできる。一方で、ISD(104)は第1情報エレメントのオリジナル・ソースであるから、第1情報エレメントを潜在的リレー情報エレメント(Potentially Relayed Information Element PRIE)と呼ぶこともできる。したがって、PRD(150)がID(104)であるならば、PRD(150)はPRIEのオリジナル・ソースである。PRD(150)がRD(108)であるならば、PRD(150)はPRIEのオリジナル・ソースではない。
例えば、NRIEはある特定の種類のリレー・デバイスにより中継されない種類の情報エレメントである。したがって、第2情報エレメントがその種類のリレー・デバイスにより実際に中継されないことが確認される。例えば、標準的なHTTPプロキシ(CONNECT或いはGETメソッドのいずれかを用いる)はICMPメッセージを中継しない。よって、RD(108)がその種類のプロキシであるならば、RD(108)はICMPメッセージのトランスミッタであり、ICMPメッセージはNRIEであることが確認される。
本発明のいくつかの実施形態によると、ISD(104)の特徴とPRD(150)の特徴は、同一のデバイスに関連付けにくい特徴である(不適合性特徴)。或る特徴がデバイスに関連付けられているというためには、その特徴がその特定のデバイスに関する情報でなければならない。
いくつかの実施形態においては、ISD(104)の特徴はPRIEのコンテンツに由来する。或いは、ISD(104)の特徴は、下記の他の特徴に由来する。いくつかの実施形態においては、PRD(150)の特徴はNRIEのコンテンツに由来する。或いは、PRD(150)の特徴は、下記の他の特徴に由来する。
本発明において、PRD(150)の特徴、或いはISD(104)の特徴を実際に取得することは必ずしも必要ではない。以下で説明するいくつかの実施形態においては、RDS(102)は、或る複数の特徴のうちいずれかの特徴或いは全ての特徴を探し出すことなく、これら特徴が不適合性特徴であるか否かを決定できる。不適合性特徴が存在するならば、ISD(104)とPRD(150)が異なるデバイスである(即ちPRD(150)がRD(108)である)可能性が増大する。一方で、不適合性特徴が存在しないならば、ISD(104)とPRD(150)が同一のデバイスである(即ちPRD(150)がRD(108)ではない)可能性が増大する。
図2CはPRD(150)がISD(104)である場合を示す図である。この場合、第1情報エレメント(ISD(104))のオリジナル・ソースが第2情報エレメント(PRD(150))のオリジナル・ソースと同一のデバイスであることがわかる。よって、潜在的リレー・デバイス(150)がISD(104)であって、リレー・デバイス(108)ではないと結論される。また、PRIEがリレー・デバイス(108)により中継されなかったと結論される。
図2DはPRD(150)とISD(104)が異なるデバイスである別の場合を示す図である。この場合、第1情報エレメント(ISD(104))のオリジナル・ソースが第2情報エレメント(PRD(150))のオリジナル・ソースと異なるデバイスであることがわかる。したがってPRIEはPRD(150)とは異なるオリジナル・ソースを有し、PRIEはPRD(150)により中継されていないと結論される。即ち、PRD(150)がリレー・デバイス(108)であると結論される。
本明細書中において、「特徴」とは少なくとも1つの特徴を示す。よって2つ以上の特徴の組み合わせは特徴として定義される。
本明細書中において、「ISD特徴」は第1情報エレメントのオリジナル・ソース(即ちPRIEのソース。この場合ISD(104))の特徴である。一方で、「PRD特徴」は第2情報エレメントのオリジナル・ソース(即ちNRIEのソース。この場合PRD(150))の特徴である。ISD特徴、PRD特徴、これら特徴の発見方法、これら特徴を用いてID(104)がPRD(150)と異なるデバイスであるか否かを決定する方法を以下で説明する。
上述のごとく、NRIEがRD(108)により中継されなかったことを確認するための1つの方法は、NRIEとして、RD(108)が属する特定種類のリレー・デバイスにより中継されないことが分かっている種類の情報エレメントを選択することである。例えば、特定のSOCKSプロキシは、HTTP通信を中継するが、TCP通信は中継しない。RD(108)がSOCKSプロキシである場合、RD(108)はISD(104)と一のTCP接続を維持し、MH(110)と別の異なる一のTCP接続を維持するとともに、一のTCP接続から他のTCP接続へHTTP通信を中継する。したがっていくつかの実施形態においては、PRIEは中継される可能性のあるHTTP通信の一部をなし、NRIEは中継されないTCP通信の一部をなす。
いくつかの実施形態において、第1及び第2情報エレメント(NRIE及びPRIE)は、1つの通信のプロトコル・スタック上の2つの異なるレイヤの一部をなす。したがって、或る特定の場合では、1つのHTTPがTCP通信を介して送信され、第1非リレー情報エレメントはこの通信TCPレイヤの一部をなす一方で、第2の中継される可能性のある情報エレメントはこの通信のHTTPレイヤの一部をなす。若しくは、第1及び第2エレメントは2つの異なる通信の一部をなす。
しかしながら、或る場合には、リレー・デバイス(108)の種類が、リレー検知システム(102)に必ずしも知られている必要はない。いくつかの実施形態において、本発明の方法は、特定の種類のリレー・デバイスを評価する或いはターゲットにする選択的段階と、リレー・デバイスの潜在的な種別が、ターゲットとされるリレー・デバイスの種別であるという仮定に基づいてこの方法を実行する段階とを明白に必要とする。
いくつかの実施形態においては、本発明の方法は、異なる組のNRIE及びPRIEに対して繰り返される。このとき各組は、少なくとも1種類のリレー・デバイスを検知するために役立つ。
一般的に、いくつかの実施形態においては、本発明の方法が連続して或いは並行して複数回繰り返されてもよい。この場合、潜在的リレー・デバイスがリレー・デバイスである最終的な確率は、この方法を繰り返し実行した結果を何らかの方法で総計したものから求められる。いくつかの実施形態においては、総計を求める段階は、平均、加重平均、最小値、最大値、或いは総計結果を特徴付けるための任意の他の方法を得る段階からなる。
(通信レイテンシの利用)
本発明の一つの実施形態において、ISD特徴はISD(104)とMH(110)との間の通信におけるレイテンシとなるように選択される。一方でPRD特徴はPRD(150)とMH(110)との間の通信におけるレイテンシである。一つのデバイスから他のデバイスまでのレイテンシは通常比較的一定であるから、同一のデバイスが著しく異なる2つのレイテンシを示す可能性は低い。したがって、ISD(104)のレイテンシと、PRD(150)のレイテンシが著しく異なるならば、PRD(150)とISD(104)は異なるデバイスである可能性が比較的高い(即ちPRD(150)がリレー・デバイス(108)であり、PRIEは中継される)。同様にISD(104)のレイテンシとPRD(150)のレイテンシが類似しているならば、PRD(150)とISD(104)は同一のデバイスである(即ちPRIEは中継されなかった)。
本明細書中において「レイテンシ(latency)」とは、通信の送信と受信の間の時差を示す。
レイテンシは、様々な原因から生じる。1つの原因は電気信号或いは電磁波が通信のパス上の2点間の距離を伝達するために必要な時間である(例えば、電気ケーブル内の電気信号、光ファイバ内の光、マイクロ波中継装置内のマイクロ波など)。別の原因としては、情報が通信回線上を伝達するために必要な時間である(例えば1500バイトが480キロバイト/秒(kbps)の通信回線を介して完全に伝達されるには、25ミリ秒(ms)必要である。更に別の原因としては、多くのデータネットワークで用いられる蓄積転送方式である。蓄積転送方式では、通信の単位(例えば、パケット或いはセル)は、一の中間ネットワーク・エレメントに完全に受信された後にのみ、このエレメントから次のエレメントへ転送される。更に別の原因として、ネットワーク内のスイッチング・エレメントのバッファでの通信における遅延である(例えば、通信回線が通信を伝送する過程にあるとき、回線が開くまでの間、新たな通信はバッファ内に記憶される)。更に別の原因は、特定の通信の処理(例えばルーティング決定、暗号化、解読、圧縮、或いは再圧縮)に掛かる時間である。
通信は1つのデバイスから送信され、異なるデバイスにより受信されるから、通常レイテンシを測定するより、ラウンド・トリップ・タイム(RoundTrip Time RTT)を測定するほうが容易である。RTTはMH(110)から送出方向の通信(outgoing communication OC)が送信されてから、MH(110)により受入方向の通信(incoming communication IC)が受信されるまでに経過する時間である。ICはOCが受信された直後に送信される。したがってRTTはOCのレイテンシと、ICのレイテンシの合計となる。例えば、ICMPエコー・メカニズムを用いるとき(RFC792を参照)、RTTはエコー・メッセージの送信か、エコー・リプライ・メッセージの受信までに経過する時間である。
図4Aは、RD(108)が用いられる場合のISD(104)とMH(110)の間の通信のレイテンシを示す。
T1はMH(110)からRD(108)までの通信のレイテンシである。
T2はRD(108)からISD(104)までの通信のレイテンシである。
T3はISD(104)からRD(108)までの通信のレイテンシである。
T4はRD(108)からMH(110)までの通信のレイテンシである。
図4Bは、RD(108)が用いられない場合のISD(104)とMH(110)の間の通信のレイテンシを示す。
T5はMH(110)からISD(104)までの通信のレイテンシである。
T6はISD(104)からMH(110)までの通信のレイテンシである。
本明細書中において、「ISD RTT」とは、MH(110)とISD(104)の間の通信のラウンド・トリップ・タイムを示す。
本明細書中において、「PRD RTT」とは、MH(110)とPRD(150)の間の通信のラウンド・トリップ・タイムを示す。
本明細書中において、「RTTギャップ(RTT gap)」とは、ISD RTTとPRD RTTの間の差を示す。
PRD(150)がRD(108)であるとき(即ち、PRIEが中継されるとき)、ISD RTTのラウンド・トリップ・タイムは、PRD RTTよりも長くなければならない。特に、PRD RTTがT1+T4(MH(110)とRD(108)の間のRTT)に等しく、ISD RTTはT1+T2+T3+T4(MH(110)とRD(108)の間のRTTとRD(108)とISD(104)の間のRTTの合計)に等しい。RTTギャップはPRD(150)(即ちRD(108))とISD(104)の間のRTT(即ちT2+T3)と等しい。
しかしながら、PRD(150)がISD(104)である(即ちPRIEが中継されない)ならば、ISD RTTとPRD RTTはいずれも、T5+T6(MH(110)とISD(104)の間のRTT)に等しい。したがってRTTギャップは0に近い値をとる。
例えば、ISD RTTが640ミリ秒でPRD RTTが130ミリ秒である場合、ISD RTTが133ミリ秒であり、PRD(150)がリレー・デバイス(108)でPRD RTTが130ミリ秒である場合より、PRIEが中継されている可能性が高い。
PRD(150)がISD(104)である場合においても、ISD RTTとPRD RTTの間に幾分の差が生じる。これは、それぞれの通信が異なるネットワーク遅延を受けるからである。しかしながら、実際には多くの場合、リレー・デバイスを用いるときのRTTギャップは、リレー・デバイスを用いない場合のRTTギャップよりも顕著に大きい。
RTTギャップを測定しているとき、RDS(102)は2つの特徴比較を効果的に実行している。第1の比較では、ISD(104)からMH(110)への通信のレイテンシを、PRD(150)からMH(110)への通信のレイテンシと比較する。第2の比較では、MH(110)からID(104)への通信のレイテンシを、MH(110)からPRD(150)への通信と比較する。どちらのレイテンシも、中継された通信の場合のほうが、中継されない通信の場合よりも大きい。即ちRTTギャップ(2つのレイテンシの差の合計)は中継された通信の場合のほうが、中継されない通信の場合より大きくなるはずである。
一つの実施形態において、RD(108)はSOCKSプロキシであり、ISD(104)はHTTPクライアントであり、MH(110)はHTTPサーバである。この場合、RDS(102)は、HTTP通信(PRIE)のRTTを測定することにより、ISD RTTを取得し、TCP通信(NRIE)のRTTを測定することにより、PRD RTTを取得する。
別の実施形態において、RD(108)はCONNECTメソッドを用いるHTTPプロキシであり、ISD(104)はSMTPクライアントであり、MH(110)はSMTPサーバである。この場合、RDS(102)は、SMTP通信(PRIE)のRTTを測定することにより、ISD RTTを取得する。RDS(102)はその後ICMPエコー・メッセージを、TCP接続(NRIE)のソースIPアドレスに送信する。TCP接続において、SMTP通信が受信される。RDS(102)は次に、ICMPエコー・リプライ・メッセージを受信する。PRD RTTは2つのICMPメッセージ(下記で説明するように、ICMPエコー・リプライ・メッセージのオリジナル・ソースはPRD(150)である)の間の時間間隔である。
以下、様々な種類の通信のRTTを測定する方法を説明する。
RTTギャップはリレー・デバイスの様々な利用法を識別する上でも便利である。性能やセキュリティー上の理由から、正規のユーザは通常、近接するリレー・デバイス(例えば同一のコーポレート・ネットワーク上のデバイス)を使用する。この場合、RTTギャップは小さくなる。一方で、悪意のユーザはしばしば、遠隔のリレー・デバイス(例えば他の国のデバイス)を使用する。この場合、RTTギャップは大きくなる。したがってRTTギャップが大きいことは、リレー・デバイスが悪意の目的で使用されていることを指し示す。この方法は、悪意のユーザが遠隔のリレー・デバイスを使用することを回避できない場合に、特に効果的である。例えば、インドネシアの詐欺師が、自分が米国にいるように見せかけたいと思えば、遠隔のリレー・デバイスを使用しなければならない。他にも、全てのリレーのRTTギャップが短くなければならないならば、スパムする者が多数のリレーを使用することは非常に難しくなる。
(RTTの測定)
正確にRTTを測定するためには、OCの受信と同時に直ちにICが送信されなければならない。このことはいくつかの方法で実行できる。
いくつかのプロトコルを実装することにより、いくつかの通信における即時のレスポンスが可能になる。例えば、TCP3方向ハンドシェイク(TCP three-way handshake)において、SYNコントロール・フラッグを含む関連するセグメント(SYNセグメント)を受信すると同時に、SYN及びACKコントロール・フラッグを含むセグメント(SYN−ACKセグメント)が、直ちに送信されなければならない。このような場合のRTTは、SYNセグメント(OC)の送信とSYN−ACKセグメント(IC)の受信の間の時間間隔である。
他の場合には、プロトコルの実装により即時レスポンスが可能にならないこともある。しかしながらこの場合、通信をハンドルするプリケーションが即時のレスポンスを生み出すことが期待できる。例えば、HTTPクライアントは通常、HTTP「302」レスポンスを受信すると同時に直ちにHTTPリクエストを生み出す。他の実施例では、HTMLブラウザは通常、HTMLページ内に(例えばHTML<img>タグを用いて)第1の埋め込みイメージを受信すると同時に、HTTPリクエストを生み出す。他の実施例では、SSL/TLSレイヤが、TCP SYN−ACKセグメントを受信すると同時に直ちにClientHelloメッセージを送信する。このメッセージはTCP接続が確立されたことを指し示す。他の実施例では、SMTPクライアントは通常、以前の「MAIL」コマンド(RFC821を参照)に対する「250」レスポンスを受信すると同時に直ちに「RCPT」コマンドを送信する。他の実施例では、IRCクライアントは通常、IRCサーバから「PING」メッセージを受信すると同時に直ちに「PONG」メッセージを送信する。
他の場合には、即時レスポンスを生み出すために、人的相互作用が用いられる。例えば、ユーザはゲームを提供され、そのゲームにおいてユーザは、スクリーン上に信号が見えると同時に直ちにキーボードのキーを押す。信号はOCが受信されたときに表示され、ユーザが応答したときにICが送信される。
短期間にRTT測定を複数回行うと、互いに異なる結果が出ることがある。これには、ネットワーク輻輳の相違とその他のパラメータの相違が原因となっている。したがって、可能ならば複数回のRTT測定を行うことが推奨される。更に、RTTが電気信号又は電磁信号が全ルートを伝達するのに必要な時間を下回ることはないから、通常、複数のRTT測定値のうち最も低い値を使用すると、正確且つ信頼できる結果が得られる。
悪意のユーザは、OCを受信する前にICを送信することがある。このようにするとRDS(102)がRTTを誤って短く計算する。したがって、OC内に機密情報(機密情報とは、その機密を事前に知らない人或いはデバイスには、容易に取得できない情報である)を挿入し、この機密情報(或いはこれから派生した情報)がICに含まれることを要求することが推奨される。このようにすると、OCに含まれる機密情報を受信する前にICを送信することを防止できる。例えば上記したHTTP「302」レスポンスは、HTTPクライアントを、機密を含むURLにリダイレクトする。HTTPクライアントはその後、そのURLに対するHTTPリクエストを生み出し、それによりこの同一の機密を送信し返す。他の実施例では、TCP SYN−ACKセグメント(OC)が機密のイニシャル・シーケンス・ナンバ(Initial Sequence Number)を含み、ACKコントロール・フラグを含むTCPセグメント(TCP ACKセグメント、IC)が肯定応答ナンバ(Acknowledgement Number)を含む。肯定応答ナンバは、イニシャル・シーケンス・ナンバから派生したナンバである。他の実施例では、ICMPエコー・メッセージ(OC)が機密識別子、シーケンス・ナンバ、或いはシーケンス・データを含み、ICMPエコー・リプライ・メッセージ(IC)は同一の機密を含む。
RTTを計算するとき、RDS(102)はMH(110)から送信される通信もモニタしなければならない(MH(110)により受信される通信に限らない)。これにより、OCのそれぞれが送信される時間を検知する。しかしながら、ISD(104)へのOCとPRD(150)へのOCが同時に送信されることが分かっている場合、この要件を無視してもよい。このような場合、RTTは不明であるが、RTTギャップは計算可能である。このときのRTTギャップは、それぞれのICが到着する時間の時差に等しい。例えば、PRIEがSSL/TLSで、NRIEがTCPであるならば、MH(110)により送信されるTCP SYN−ACKセグメントはこのようなOCであり、RTTギャップは対応するTCP ACKセグメントの受信と、SSL/TLSClient Hello メッセージの受信との間の時間間隔である。
MH(110)がOCを送信しないならば、OCはRDS(102)によっても送信可能であるから、RDS(102)が自らOCを送信する必要がある。例えば、RDS(102)は、ウェブサイト(MH(110))からのHTTP通信及びウェブサイトへのHTTP通信をモニタしている。PRIEのRTTを測定するためには、上述のように、RDS(102)はMH(110)により受信されるHTTPリクエストのいくつかに対して、HTTP「302」レスポンスを提供する。この例では、RDS(102)がMH(110)にインストールされたソフトウェア・モジュールであって、MH(110)に送信されたHTTP通信に応答可能でなければならない。
レイテンシ或いはRTTの測定を行う実施形態において、ISD RTTとPRD RTTの間に有意な差異が存することをチェックすることが推奨される。これらRTTの間に有意な差異が存するといえるのは、これらRTTの間の差異が同一のデバイスを用いた通信に対するRTT測定を行うときに滅多に起こることがない差異であるときである。この文書を作成している時点では、適度に安定したインターネット環境における2つのデバイスの間のRTTの差は、数秒のタイム・フレーム内では50ミリ秒以下である。一方、中継される通信のRTTギャップは通常、100ミリ秒を超える。したがって、いくつかの実施形態において、「有意な差異が存する」とは、「60ミリ秒以上」の差異が存することを示す。別のいくつかの実施形態において、「有意な差異が存する」とは、「80ミリ秒以上」の差異が存することを示す。別のいくつかの実施形態において、「有意な差異が存する」とは、例えば「100ミリ秒以上」の差異が存することを示す。
いくつかの実施形態において、デバイスへのRTTを直接測定することはできないが、そのデバイスについて既知の他の情報に基づいてRTTを見積ることができる。このような情報として、地理的位置、IPアドレスのリバースDNSレコード(即ちホスト・ネーム・トランスレーションに対するホスト・アドレス)、及び/又はそのIPアドレスのWHOISレコード(WHOISサービスに関する情報については、http://www.arin.netのAmerica Registry for internet Numbersウェブサイトを参照。)が挙げられる。例えば、MH(110)が米国ニューヨーク州ニューヨーク市に位置し、IP geo-location サービスがPRD(150)が米国カリフォルニア州ロサンゼルスに位置することを指し示しており、且つテキスト「dsl」がPRD(150)のIPアドレスのリバースDNSレコード内に存在して、このテキスト「dsl」がデジタル・サブスクライバ・ライン(Digital Subscriber Line DSL)(DSLに関する情報については、http://www.dslforum.org)DSL Forumウェブサイトを参照。)であることを示すならば、RDS(102)はMH(110)とPRD(150)の間のRTTが65乃至85ミリ秒の範囲内であると見積もることができる。これは、ニューヨーク市とロサンゼルスの間のインターネット上のRTTが通常55ミリ秒であることが分かっており、DSLが通常RTTに10乃至30ミリ秒付加することが分かっているからである。
(デバイスのコンフィギュレーション状態の利用)
本発明の別の実施形態において、ISD特徴とPRD特徴のそれぞれは、ISD(104)とPRD(150)のコンフィギュレーションの状態である。本明細書中において、「コンフィギュレーションの状態」とは、デバイスのハードウェアとソフトウェア、及びこれらハードウェア及びソフトウェアがカスタマイズされる方法を示す。
ISD特徴とPRD特徴が、単一のデバイスに関連するものでないコンフィギュレーションの状態であるならば、PRD(150)とISD(104)が互いに異なるデバイスである(即ち、PRD(150)がリレー・デバイス(108)であり、PRIEは中継される)可能性が比較的高い。
同様に、ISD特徴とPRD特徴が単一のデバイスに関連するコンフィギュレーションの状態であるならば、PRD(150)とISD(104)は同一のデバイスである(即ち、PRIEは中継されなかった)可能性が比較的高い。
デバイスのコンフィギュレーション状態を通信から検知する方法としていくつかの方法が知られている。1つの方法は、通信内においてデバイスにより提供された明示的コンフィギュレーション情報を使用する方法である。例えば、HTTPクライアントは通常、HTTPリクエストのそれぞれに、「ユーザ・エージェント(User-Agent)」ヘッダを備える。このヘッダは、オペレーティング・システムの種別やバージョン、HTTPクライアントの種別やバージョン、及びデバイスにインストールされた追加的ソフトウェアに関する情報を提供する。電子メールアプリケーションはRFC822「Xメイラ」ヘッダ内に同様の情報をもたらし、電子メールサーバはこのような情報をRFC822「レシーブド」ヘッダ内にもたらし、HTTPサーバは通常、HTTPレスポンス内に「サーバ」ヘッダを備える。このヘッダは、HTTPサーバの種別及びバージョンに関する情報をもたらす。
別の方法は、デバイスのコンフィギュレーション状態を、デバイスが様々な通信プロトコルを実装する方法から推測する方法である。一般に普及したネットワーク・アドミニストレーション・ツール「Nmap」として、この方法を実施する多数の実施方法が利用できる。Nmapについては、「Remote OS detection via TCP/IP Stack Fingerprinting」(Nmapのデベロッパによる記事。http://www.insecure.org/nmap/nmap-fingerprinting-article.htmlにおいて利用可能)に詳述されている。例えば、この記事は、TCP実装により選択されたイニシャル・ウィンドウを検査することを提案している。これは互いに異なるオペレーティング・システムは異なる数字を選ぶからである。この記事は調査されたデバイスが通信に応答していることを仮定しているが、この方法はデバイスにより開始される通信にも適用可能である(具体的な内容は異なることもある)。
この実施形態の一実施例として、RD(108)がSOCKSプロキシであるならば、RDS(102)はHTTPリクエスト(PRIE)をモニタし、このHTTPリクエストは、「ユーザ・エージェント:Mozilla/4.0(適合性。MSIE6.0、WindowsNT5.0)」とのヘッダを備える。このヘッダはオペレーティング・システムがMicrosoft Windows(登録商標) 2000であることを指し示す。HTTPリクエストは、イニシャル・ウィンドウ5840を備えていたTCP接続(NRIE)を介して送信される。このことは、他のオペレーティング・システム(特にRed Hat Enterprise Linux)に典型的にみられる。1つのデバイスが同時に2つのオペレーティング・システムを実行することはできないから、RDS(102)はISD(104)とPRD(150)が互いに異なるデバイスである(即ち、PRD(150)がリレー・デバイス(108)であり、HTTPリクエストはリレーされていた)ことを決定する。この例において、ISD特徴は、ISD(104)がMicrosoft Windows(登録商標) 2000オペレーティング・システムであるという情報であり、PRD特徴は、PRD(150)がRed Hat Enterprise Linuxオペレーティング・システムを実行するという情報である。
この実施形態の別の例において、RD(108)はCONNECTメソッドを用いたHTTPプロキシであり、RDS(102)は「Mozilla/5.0(Macintosh; U; PPC Mac OS X; en)AppleWebKit/124(GeckoのようなKHTML)Safari/125」とのヘッダを備えるHTTPリクエスト(PRIE)をモニタする。このヘッダは、オペレーティング・システムがApple Mac OS Xであることを指し示す。HTTPリクエストはTCP接続(NRIE)を介して送信される。RDS(102)はTCP接続のソースIPアドレスのポート(80)と接続し、HTTPリクエストを送信する。RDS(102)はその後、「Sever: Microsoft-IIS/5.0」とのヘッダを含むHTTPレスポンスを受信する(上述のごとく、このHTTPレスポンスのオリジナル・ソースはPRD(150)である)。Microsoft IISサーバは、Apple Mac OS Xオペレーティング・システムを実行しないことが分かっているから、RDS(102)はISD(104)とPRD(150)が互いに異なるデバイスである(即ち、PRD(150)がリレー・デバイス(108)であり、ISD(104)からのHTTPリクエストは中継されていなかった)ことを決定する。この例において、ISD特徴はISD(104)がApple Mac OS Xオペレーティング・システムを実行するという情報であり、PRD特徴はPRD(150)がMicrosoft IISサーバを実行するという情報である。
いくつかの場合、情報エレメントのオリジナル・ソースにOCを送信することが必要である。OCはオリジナル・ソースにICを返信させる。このICはオリジナル・ソースのコンフィギュレーションの決定に用いられる。上記したHTTP「サーバ」ヘッダが用いられる例において、RDS(102)からPRD(150)へ送信されるHTTPリクエストはOCであり、HTTPレスポンスはICである。OCが情報エレメントのオリジナル・ソースへ送信されることされることを確認する方法と、情報エレメントのオリジナル・ソースによりICが受信されることを確認する方法は、以下で説明する。
(位置、サブネットワーク、或いはアドミニストレータに関する情報の利用)
本発明の別の実施形態において、ISD特徴とPRD特徴はそれぞれ、ISD(104)とPRD(150)の位置、サブネットワーク、及び/又はアドミニストレータである。本明細書中において、「位置(location)」とは、デバイスの地理的位置を示す。「サブネットワーク(sub−network)」とは、ネットワーク・トポロジにおいてこのデバイスに近接するデバイスのグループを示す。「アドミニストレータ(administrator)」とはこのデバイスをネットワーク(例えばインターネット)に接続するオーガニゼーションを示す。デバイスの位置の例として、「米国ニューヨーク州ニューヨーク市」或いは「北緯32度5分、東経34度46分」が挙げられる。デバイスのサブネットワークの例として、「IPアドレスが1.2.3.4であるデバイスと同一のローカル・エリア・ネットワーク・セグメント上にある全てのデバイス」が挙げられる。デバイスのアドミニストレータの例として、「米国ジョージア州アトランタのEarthloink, Inc.」が挙げられる。Earthlink, Inc.は、インターネット・サービス・プロバイダで、ユーザをインターネットに有料で接続する。アドミニストレータの別の例として、米国ニュージャージー州プリンストンのGeneral Electric Companyが挙げられる。この企業では、業務上必要なときに従業員の一部をインターネットに接続する。
単一のデバイスが同時に2つの互いに異なる位置、サブネットワーク、或いはアドミニストレータを有する可能性は低い。したがってISD(104)はPRD(150)と異なる位置及び/又は異なるサブネットワーク上にあり、及び/又は異なるアドミニストレータを備えることがあかる。よってISD(104)とPRD(150)は互いに異なるデバイスである(PRIEが中継されていた)可能性が比較的高い。同様にISD(104)とPRD(150)が同一の位置及び/又は同一のサブネットワーク上にあり、及び/又は同一のアドミニストレータを備えるならば、PRD(150)とISD(104)は同一のデバイスである(即ちPRIEは中継されていなかった)可能性が比較的高い。
一実施例において、RD(108)はSOCKSプロキシであり、ISD(104)はSMTPクライアントであり、MH(110)はSMTPサーバである。この場合、RDS(102)は、TCPセッション(NRIE)のソースIPアドレスと、IPgeo-locationサービスを用いて、PRD(150)の位置を見積る。RDS(102)はその後、SMTP通信(PRIE)内でレポートされるRFC822「日付(Date)」ヘッダを用いて、ISD(104)の位置を見積る。「日付」ヘッダは、時間(「wall clock」)とISD(104)の時間帯状態を指し示す。したがって「日付」ヘッダは、RDS(102)の位置を指し示す(何故ならば、デバイスは通常、現地時間と現地の時間帯に合わされているからである)。2つの位置が一致しない場合(例えばgeo-locationサービスが、PRD(102)がニューヨーク市に位置することを指し示し、ISD(104)の時間帯がGMT+7であるとき)、RDS(102)は、PRD(150)とISD(150)が互いに異なるデバイスである(即ち、PRD(150)がリレー・デバイス(108)であり、SMTP通信が中継されていた)と決定する。
SMTP通信の「日付」ヘッダを利用する方法以外に、PRD(150)の位置を見積る方法として、以下の方法が挙げられるが、これらには限定されない。(a)IPアドレスのWHOISレコードをチェックする方法。WHOISレコード内に与えられたアドレスはPRD(150)の位置に比較的近い可能性がある(b)IPアドレスのリバースDNSレコードをチェックする方法。例えば、レコードが「.fr」で終わるならばPRD(150)はフランスにある可能性が高い。
SMTP通信の「日付」ヘッダを利用する方法以外に、ISD(104)の位置を見積る別の方法として、以下の方法が挙げられるが、これらには限定されない。(a)(PRIEがSMTPである場合)SMTP内でレポートされた最新のRFC「レシーブド」ヘッダをチェックする。このヘッダは、ISD(104)により使用されたSMTPサーバの時間帯状態を含み、この時間帯はISD(104)自体の時間帯としばしば同一である。(b)(PRIEがHTTPである場合)「Accept-Language」HTTPヘッダをチェックする。このヘッダはISD(104)によりサポートされる言語を指し示す(例えば、「Accept-Language: ru」とのヘッダは、ISD(104)がロシア語のコンテンツをサポートすることを指し示す。したがって、ISD(104)がロシアにある可能性が比較的高い。(c)ISD(104)におけるイベントによりトリガされた別の通信(以下ISDトリガ通信という)のソースの位置をチェックする。この方法については以下で詳しく説明するが、この方法には、上記したPRD(150)の位置を見積もる方法を適宜用いる。
他の実施形態において、RD(108)はTCPを中継しない(即ち、TCPがNRIE)種類のリレー・デバイスに属し、RD(102)はTCPセッションのソースIPアドレスを用いてPRD(150)のサブネットワークを見積る。このことは、IPアドレスに関連付けられたWHOISレコード、リバースDNSレコード、或いはルーティング・データベース・レコードを検索することにより行われる(ルーティング・データベースに関する情報については、http://www.radb.netのRADbウェブサイトを参照)。また、同一のサブネットワーク内のデバイスは通常、同一のルータを介してインターネット(100)に接続するから、このことは「Time Exceeded」ICMPメッセージを用いて、PRD(150)に近接するルータを探し出すことにより行われてもよい。このメッセージは、Unix(登録商標) utility traceroute(或いは同様のMicrosoft Windows(登録商標) utility tracert)より行われるように、IPパケットに応じて小さなTime-to-Live値とともに送信される。RDS(102)はその後、ISD(104)のサブネットワークを見積る。以下で詳しく説明するように、このことは、ISDトリガ通信のソースのサブネットワークをチェックすることにより行われる。このとき、PRD(150)のサブネットワークを見積るために用られる上記した方法を用いる。2つのサブネットワークが一致しない(例えば、デバイスのWHOISレコードにおけるサブネットワークの名前が互いに異なるか、或いはデバイスが共通の近接するルータを持たない)ならば、RDS(102)は、PRD(150)とISD(104)が互いに異なるデバイスである(即ち、PRD(150)はリレー・デバイス(108)であり、PRIEは中継されていた)と決定する。
別の実施形態においては、RD(108)はTCPをリレーしない(即ち、TCPはNRIE)種類のリレー・デバイスであり、RDS(102)はTCPセッションのソースIPアドレスを用いてPRD(150)のアドミニストレータを見積る。アドミニストレータを見積る方法の例として以下の方法が挙げられるが、これらには限定されない。(a)このIPアドレスに関連するWHOISレコードを検索する。(このレコード内に与えられるオーガニゼーション・ネームがアドミニストレータである可能性が高い)(b)このIPアドレスに関連するリバースDNSレコードを検索する。(例えば、レコードが「cox.net」で終わるならば、アドミニストレータは「米国ジョージア州アトランタのCox Communications」である可能性が高い。(c)このIPアドレスに関連するリバースDNSレコード内の第2レベル・ドメインと関連したWHOISレコードを検索する(d)このIPアドレスと関連するルーティング・データベース・レコードを検索する。
RDS(102)はその後、ISD(104)のアドミニストレータを見積る。ISD(104)のアドミニストレータを見積る方法の例として以下の方法が挙げられるが、これらには限定されない。(a)(PRIEがHTTPである場合)HTTPヘッダ「ユーザ・エージェント」をチェックする。このヘッダはアドミニストレータに関する情報を含むことがある。例えば、「AOL 9.0」とのテキストを含む「ユーザ・エージェント」ヘッダは、ISD(104)にインストールされたHTMLブラウザが米国バージニア州ダレスのAmerica Online, Inc.(AOL)により提供されたものであることを指し示す。多くのインターネット・ユーザは、それを介してインターネットに接続しているオーガニゼーションと同一のオーガニゼーションから、HTMLブラウザを受け取る。このことにより、ISD(104)がAOLを介してインターネットに接続している(即ち、AOLがアドミニストレータである)可能性が高まる。別の例として、「Cox High Speed Internet Customer」とのテキストは、ブラウザが米国ジョージア州アトランタのCox Communications, Incにより提供されたことを示す。(b)(PRIEがSMTPである場合)RFC822「オーガニゼーション」ヘッダをチェックする。このヘッダは、アドミニストレータに関する情報を含むことがある。(c)ISDトリガ通信のソースIPアドレスのアドミニストレータをチェックする。以下で詳しく説明するように、このとき、上記したPRD(150)のアドミニストレータを見積るための方法を適宜用いる。
(ISDトリガ通信)
ISD(104)に関する情報はISD(104)に対して通信を送信するようにトリガすることにより発見される。このような通信を「ISDトリガ通信(ISD Triggered Communication)」という。
ISD(104)のIPアドレスを明らかにするISDトリガ通信の例は、国際公開第WO02/08853号公報に開示される。この公報の開示内容は参照により本明細書中に組み込まれる。ISD(104)のIPアドレスを受信した後、RDS(102)は上記した方法を用いて、ISD(104)の位置、サブネットワーク、及びアドミニストレータを探し出す。RDS(102)はその後、ISD(104)の位置、サブネットワーク、及びアドミニストレータと、PRD(150)の位置、サブネットワーク、及びアドミニストレータを比較して、ISD(104)とPRD(150)が互いに異なるデバイスであるか否かを決定する。若しくは、RDS(102)は、ISD(104)のIPアドレスとPRD(150)のIPアドレスを直接比較する。ISD(104)のIPアドレスとPRD(150)のIPアドレスが異なるならば、ISD(104)がPRD(150)と異なるデバイスである(即ち、PRD(150)がリレー・デバイス(108)であり、PRIEは中継されていた)可能性が比較的高い。
他のトリガ通信の例として、DNSリクエストが挙げられる。いくつかの場合、ISD(104)は、PRIEと関連したDNSリクエストを送信して、ホストネームをIPアドレスに変換する。ISD(104)はDNSリクエストを、DNSサーバに送信する。このサーバは、ISD(104)がこのサーバを使用するように定められているサーバである。ISD(104)のDNSサーバはその後、DNSリクエストを上記の所定のホストネームのための信頼のあるDNSサーバに送信する。RDS(102)がモニタするDNSリクエストは、ISD(104)がこのサーバを使用するように定められているDNSサーバから受信されるが、ISD(104)はDNSリクエストに含まれる情報エレメントのうち少なくとも1つの情報エレメントのオリジナル・ソースである。米国特許出願第US2002016831号は、参照により本明細書中に組み込まれるが、この出願は、デバイスにDNSリクエストを生み出させる方法と、そのDNSリクエストを、該DNSリクエストを生み出したデバイスの特徴と関連付ける方法を開示している。DNSリクエストを、関連するPRIEと関連付ける1つの方法は、信頼のあるDNSサーバにホストネームの変換のためのリクエストごとに異なるIPアドレスで応答させるとともに、どのDNSリクエストがどのIPアドレスを応答として受け取ったかについてのレコードを保持させる方法である。PRIEがIPアドレスのうち1つのアドレスで受信されると、関連するDNSリクエストがレコードから検索される。
DNSリクエストをISD(104)のDNSサーバから受信した後、RDS(102)は上記の方法を用いてRDS(102)の位置、サブネットワーク、アドミニストレータを探し出す。性能と経済上の理由から、インターネットに接続される多くのデバイスは、同様の位置にあるとともに同一のサブネットワーク上にあり、或いは同一のアドミニストレータにより運営されるDNSサーバを使用するように設定される。したがって、RDS(102)はPRD(150)の位置、サブネットワーク、或いはアドミニストレータと、ISD(104)のDNSサーバの位置、サブネットワーク、或いはアドミニストレータをそれぞれ比較できる。これらが一致しないならば、PRD(150)はISD(104)と異なるデバイスである(即ち、PRIEは中継されている)可能性が高い。
(最大通信レイトの使用)
本発明の別の実施形態において、PRD(150)とISD(104)の最大通信レイト(maximum communication rate MCR)を用いて、PRD(150)とISD(104)が同一のデバイスであるか否かを決定する。MCRとは、一定期間内にデバイスが受信可能な最大情報量(受入方向のMCR)或いは送信可能な最大情報量(送出方向のMCR)のことをいう。「1秒当たりのビット数(Bits per Second(bps))」がMCRを測定する一般的な単位である。例えば、いくつかのDSL回線では、受入方向のMCRは150万bps(Mbps)であり、送出方向のMCRは9万6千bps(kbps)である。
PRD(150)のMCRがISD(104)のMCRと異なるならば、ISD(104)がPRD(150)と異なるデバイスである(即ちPRIEが中継されている)可能性が高い。
この実施形態の一つの例において、RD(108)はインターネット(100)に、受入方向のMCRが1.5Mbps、送出方向のMCRが96kbpsのDSL回線上で接続する。MH(110)からISD(104)に中継される通信は、RD(108)の受入方向のインターフェースを通った後、RD(108)の送出方向のインターフェースを通って伝送される。よって、ISD(104)の受入方向のMCRが、RD(108)の送出方向のMCR(96kbps)を超えることはない。したがって、PRD(150)の受入方向のMCRは1.5Mbpsであるのに対して、ISD(104)の受入方向のMCRは96kbps以下である。
この実施形態の別の例において、RD(108)はインターネット(100)に、受入方向と送出方向の両方向において20Mbpsで接続する。ISD(104)はインターネット(100)に、受入方向のMCRが1.5Mbps、送出方向のMCRが96kbpsのDSL回線を介して接続する。したがって、PRD(150)の受入方向のMCRは20Mbpsであるのに対してISD(104)の受入方向のMCRは1.5Mbpsであり、PRD(150)の送出方向のMCRは20Mbpsであるのに対してISD(104)の送出方向のMCRは96kbpsである。
(MCRの検知)
本発明のいくつかの実施形態によると、ISD(104)のMCRがPRD(150)のMCRと異なるか否かについてのチェックは、それぞれのMCRを検知してそれらを比較することにより行われる。MCRを検知する一つの方法は、自動的に最大可能な通信レイトに調節するプロトコル(例えばTCP)を用いてデバイスへ情報を送信する或いはデバイスから情報を受信し、このときの通信レイトを観察することである。MCRを調節するためのTCPに用いられるメカニズムの一部については、「JACOBSON, V. Congestion avoidance and control. In Proceedings of SIGCOMM '88 (Stanford, CA, 1988年8月), ACM」とこの記事の参考文献に説明されている。
デバイスの受入方向の通信レイトを観察する別の方法は、このデバイスから受信される受信確認をモニタする段階を備える。例えば、デバイスはTCP接続上で情報を受信し、このデバイスが成功裡に受信した情報の量を適宜送信する。3,000,000バイトを受信したとの確認を受取り、その20秒後に3,250,000バイトを受信したとの確認を受取ったとすると、このデバイスが12,500バイト/秒(100,000ビット/秒と等しい)で情報を受取ることを示す。別の例において、上記のごとく、HTMLブラウザは、HTMLページ内に(例えばHTML<img>tagを用いて)第1の埋め込みイメージを受取ると同時に直ちに通常HTTPリクエストを生み出す。埋め込みイメージのタグが1,000,000バイトのオフセットに位置するHTMLページを送信開始してから40秒後にHTTPリクエストを受取ると、デバイスは25,000バイト/秒の速度で情報を受信している。25,000バイト/秒は、200,000ビット/秒に等しく、このデバイスの受入方向のMCRは200kbpsである。この測定ではHTMLページの頭の送信と、HTTPリクエストの受信を比較するから、少なくとも1ラウンド・トリップ・タイムが測定値に加わる。よって測定が不正確となる可能性がある。ラウンド・トリップ・タイムを測定して、計測された時間からこのラウンド・トリップ・タイムを減ずることにより、更に正確な結果が得られる。
RD(108)は通常、MH(110)とISD(104)の間の中継された通信をバッファリングする。バッファとは一時的なストレージであり、RD(108)は、受信する通信をこのバッファに書き込み、送信する通信をこのバッファから読み取る。バッファに空き容量があるとき、RD(108)は、その受入方向のMCRレイトで通信を受取ることができる。バッファが一杯であるとき、RD(108)はバッファを空にできる速度(即ちRD(108)がバッファから通信を送信できる速度)で、通信を受取ることができる。したがって、バッファに空き容量があるときには、MH(110)からRD(108)への通信レイトの測定値はRD(108)の受入方向のMCRを示し、バッファが一杯であるときには、MH(110)からRD(108)への通信レイトの測定値はISD(104)の受入方向のMCRを示す。ISD(104)の受入方向のMCRがRD(108)の受入方向のMCRより小さいと、バッファが一杯になる。例えば、RD(108)が100,000バイトのサイズのバッファを備え、RD(108)の受入方向MCRが1.5Mbps、ISD(104)の受入方向MCRが96kbpsであるならば、バッファは1.404Mbpsの速度で埋められていく。この速度では、約0.57秒でバッファが一杯になる。この例では、最初の0.57秒間は通信速度の測定値は1.5Mbpsである。この速度は、RD(108)の受入方向MCRを示す。最初の0.57秒を経過後には、通信速度の測定値は96kbpsとなる。この速度はISD(104)の受入方向MCRを示す。
したがって、PRD(150)がRD(108)である場合、バッファが一杯になる前には、PRD(150)の受入方向MCRがPRD(150)の受入方向の通信速度により示され、バッファが一杯になった後には、ISD(104)の受入方向MCRがPRD(150)の受入方向の通信速度により示される。
PRD(150)がISD(104)であるとき、このバッファは存在しないから、PRD(150)の受入方向の通信速度は変化せず、ISD(104)の受入方向MCRに等しい速度を維持する。
したがって、RD(108)のバッファが一杯になるまでは、PRD(150)の受入方向MCRはPRD(150)の受入方向の通信速度と等しい。RD(108)のバッファが一杯になった後は、ISD(104)の受入方向MCRはPRD(150)の受入方向の通信速度と等しい。
したがって、RDS(102)は、RD(108)のバッファが一杯になる前後のPRD(150)の受入方向の通信速度を比較することにより、PRD(150)がリレー・デバイス(108)であるか否かを決定できる。
多くの場合、RD(108)からMH(110)までの通信速度は、ID(104)の送出方向MCRを超えることはない。これは、RD(108)はISD(104)から受信した情報のみをMH(110)に送信するのであって、RD(108)が独自に有意な量の情報を生み出すことが通常ないからである。しかしながら上述のごとく、RD(108)はSD(104)とMH(110)の間の通信をバッファリングするから、RD(108)の送出方向MCRを以下のように計測することが可能である。いくつかのプロトコルは「フロー制御(flow control)」メカニズムを含む。このメカニズムは、情報を受信するデバイスが、情報を送信するデバイスに、いつ新たな情報の送信を停止し、いつ送信を再開するかについて信号を送ることを可能にする。例えば、TCPにおいて、受信側デバイスが「ウィンドウ」値ゼロのACKセグメントを送信すると、受信側デバイスは通常、新たな情報の送信を停止する。送信側デバイスが、正の「ウィンドウ」値を有するACKセグメントを受取るまで、新たな情報の送信は停止される。「フロー制御」メカニズムが、MH(110)或いはRDS(102)により、RD(108)に対して信号を送り、新たな情報の送信を停止させるために用いられてもよい。このようにすると、RD(108)がISD(104)から情報を受信し続ける一方で、MH(110)に対して情報を送信することがないから、RD(108)のバッファは情報により埋められることになる。その後、MH(110)或いはRDS(102)は「フロー制御」メカニズムを用いてRD(108)に信号を送り、新たな情報の送信を再開させる。このときRD(108)は、そのローカル・バッファが空になるまでこのバッファから情報を送信するから、通信速度の測定値はRD(108)の送出方向MCRを示す。
本発明のいくつかの実施形態によると、ISD(104)のMCRがPRD(150)のMCRと異なるか否かのチェックは、PRD(150)内のバッファが一杯か空かいずれの状態であるかを示す指標を検知することにより行われる。例えば上述のごとく、ISD(104)の受入方向MCRがPRD(150)の受入方向MCRより小さいと、RD(108)内のバッファは一杯になる。他の例では、上述のごとく、ISD(104)の送出方向MCRがPRD(150)の送出方向MCRより小さいと、RD(108)のバッファは空となる。いくつかのプロトコルは、デバイスがそのデバイスのバッファの容量、或いはその派生値を、他のデバイスに対して知らせることを可能にする。この情報はデバイスのバッファが一杯になる途中或いは空になる途中のいずれであるかを推定するために用いられる。例えば、TCPにおいて、デバイスは、送信するACKセグメント全ての「ウィンドウ」ヘッダ内において、受取る予定の情報量を通知する。「ウィンドウ」ヘッダの値の変化は、デバイスのバッファの容量の変化を反映している。「ウィンドウ」値の増加は、バッファが空にされる途中であることを示し、「ウィンドウ」値の減少はバッファが一杯にされる途中であることを示す。
したがって、「ウィンドウ」値の減少は、PRD(150)の受入方向MCRがISD(104)の受入方向MCRより大きいこと、つまりPRD(150)とISD(104)が互いに異なるデバイスである(即ち、PRD(150)がリレー・デバイス(108)である)ことを直接的に示す。
MCRを検知する別の方法は、含まれる情報量のみが異なる2つの通信のレイテンシを測定して、2つのレイテンシ間の差からMCRを計算する方法である。上述のごとく、通信が通信回線を介して伝達するために必要な時間は、その通信に含まれる情報量に比例する。したがって、MCRはこれら2つの通信の情報量の間の差を、これら2つの通信のレイテンシの差で除算した値に等しい。
この方法を、レイテンシではなくRTTの測定とともに用いてもよい。例えば、ショート・エコー・メッセージ(例えば64バイト)を備えるICMPエコー・メカニズムのRTTと、ロング・エコー・メッセージ(例えば1500バイト)のRTTを用いてデバイスのMCRを検知する。ICMPエコーの例におけるように、受入方向及び送出方向の通信が同じ量の情報を含むならば、RTTメソッドはデバイスの受入方向MCRと送出方向のMCRの結合した測定値を提供する。この限界を克服する1つの方法は、ただ1つの受入方向及び送出方向の通信が大量の情報を含むプロトコルを用いてRTTを測定することである。これにより、他の通信のレイテンシがRTTに占める割合が減少し、第1の通信のレイテンシにより近い測定値が得られる。例えば、閉じられたポートに送信されたTCP SYNセグメントは通常、RSTフラッグを含むセグメント(RSTセグメント)をトリガする。一方で、SYN セグメントのサイズはこのセグメントのセンダにより選択される。RSTセグメントのサイズは一般的に小さい(例えば40バイト)。
MCRを検知する別の方法は、MCRをそのデバイスについて既知の他の情報から推定する方法である。例えば、デバイスのIPアドレスのリバースDNS内にテキスト「dsl」が発見されれば、そのデバイスはDSL回線である可能性が高い。DSL回線は通常、受入方向のMCRが500乃至2500kbps、送出方向のMCRが64乃至256kbpsである。別の例では、PRD(150)のアドミニストレータがAOLであると分かれば、PRD(150)はボイス・モデム・ダイアルアップ(voice modem dial-up)回線を介して接続されている可能性が高い。これは、ボイス・モデム・ダイアルアップ回線が、AOLにより提示される接続のうち主要な接続であるからである。ボイス・モデム・ダイアルアップ回線は一般的に、受入方向MCRが56kbps以下、送出方向MCRが33kbps以下である。
(2つのデバイスによる同一のリレー・デバイスの使用)
本発明の他の実施形態において、RDS(102)は、2つの情報エレメントのオリジナル・ソースが2つの互いに異なるデバイスであることを決定することにより、PRD(150)がリレー・デバイス(108)であることを検知する。このとき、オリジナル・ソースのうち一方が、PRD(150)である必要はない。
この実施形態において、RDS(102)は次の2つの場合を区別することを試みる。
図5Aは第1の場合を表すダイアグラムを示す。第1の場合において、ISD(104)は2つの情報エレメントPRIE1及びPRIE2を、RD(108)を用いることなく直接MH(110)へ送信する。これら2つの情報エレメントは、RD(108)が中継可能な種類の情報エレメントである。
図5Bは第2の場合を表すダイアグラムを示す。第2の場合において、2つの互いに異なるデバイスISD(104)及びISD2(106)のそれぞれは、情報エレメントをMH(110)へ送信する。これら情報エレメントは、RD(108)により中継される情報エレメントである。
RDS(102)は次の2つの場合を区別する。
RDS(102)はMH(110)の通信をモニタし、したがってRD(108)から2つの潜在的に中継された情報エレメント(PRIE1及びPRIE2)を受信する。RDS(102)はその後、PRIE1のオリジナル・ソース(PRIE1−ソース)の特徴(PRIE1−特徴)と、PRIE2のオリジナル・ソース(PRIE2−ソース)の特徴(PRIE2−特徴)が、不適合性の特徴であるか否かをチェックする。PRIE1−特徴とPRIE2−特徴が不適合性特徴であるならば、PRIE1のオリジナル・ソースと、PRIE2のオリジナル・ソースが互いに異なるデバイスである可能性が高い。即ち、PRIE1とPRIE2が中継された第2の場合である可能性が高い。
説明を簡潔にするために、この実施形態を3つのデバイスを用いて説明する。3つのデバイスのうち2つのデバイスは、リレー・デバイスを用いる。実際には、多数のデバイスがインターネット(100)に接続し、それらデバイスには、複数のリレー・デバイスを用いるデバイスと、用いないデバイスがある。これら複数のリレー・デバイスもまた、インターネット(100)に接続する。より一般的にいうと、この実施形態では、潜在的リレー・デバイスから受信される少なくとも2つの潜在的に中継された情報エレメントの少なくとも2つのオリジナル・ソースが、不適合性特徴を有すると決定することにより、潜在的リレー・デバイスがリレー・デバイスであることを検知する。定義上、単一のデバイスが不適合性特徴を有する可能性は低いから、2つのオリジナル・ソースは互いに異なるデバイスである可能性が高い。したがって、少なくとも1つのオリジナル・ソースが潜在的リレー・デバイスではない。つまり、この情報ソースからの情報エレメントは、中継されており、潜在的リレー・デバイスはリレー・デバイスである。
特徴が不適合性特徴であるか否かを決定するための上記した方法は全て、必要な変更を加えた上で、この実施形態にも適用できる。例えば、RDS(102)は、PRIE1とPRIE2に提供されるHTTP「ユーザ・エージェント」ヘッダを比較する。これらのヘッダが異なるオペレーティング・システムを指し示しているならば、RDS(102)はISD(104)とISD2(106)が互いに異なるデバイスであり、したがってPRD(150)がリレー・デバイス(108)であると決定する。他の例では、RDS(102)はPRIE1−ソースとの通信のRTTと、PRIE2−ソースとの通信のRTTの間に有意な差異が存することを検知する。この場合RTTのそれぞれは、(a)RD(108)とMH(110)の間のRTTと、(b)それぞれのオリジナル・ソースとRD(108)の間のRTTの合計と等しい。したがって、この場合のRTTギャップは(c)PRIE1−ソースとRD(108)の間のRTTと、(d)PRIE2−ソースとRD(108)の間のRTTの差となる。2つのRTTの間に有意な差異が存在しない場合にも、RDS(102)がRTTギャップを検知できる場合もある。
(オリジナル・ソースとの通信の確認)
本発明のいくつかの実施形態において、デバイスの特徴に関する情報は、1若しくはそれ以上の新たな通信から取得されるのであって、オリジナルの通信或いはNRIE及び/又はPRIEに含まれる通信から取得されるのではない。このような新たな通信を使用可能とするためには、これら通信がPRIE及び/又はNRIEのオリジナル・ソースとの通信であることを確認しなければならない。
米国特許出願第20040243832号公報は、その内容の全てが参照として本明細書中に組み込まれるが、この公報は、2つのネットワーク・メッセージが同一の送信元から発信されたと決定するためのいくつかの方法を開示している。これら方法は、情報エレメント或いは通信ではなくメッセージを参照し、オリジナル・ソースではなく送信元を参照するが、当業者であれば、この公報に開示される方法の大部分が、同一のオリジナル・ソースから送信された2つの情報エレメントの検知にも適用可能であることが理解できる。
一つの実施形態において、同一のソースIPアドレスとともに受信された、或いは同一の目的地IPアドレスに送信されたICMPパケット及びTCP/IPパケットは、同一のデバイスとの通信とみなすことができる。
他の実施形態において、1つのTCP接続に属する受入方向のTCP/IPパケットは、同一のデバイスからのパケットとみなすことができる。
他の実施形態において、HTTPプロトコルにしたがってHTTPリクエストに続いて送信されたHTTPレスポンスは、HTTPリクエストのソースとの通信とみなすことができる。
(システム)
図3は、本発明の一実施形態に係るリレー検知システム(102)のコンポーネントを示す。
情報エレメント・レシーバ(30)はMH(110)が受信する通信をモニタする。情報エレメント・レシーバ(30)はまた、MH(110)が送信する通信も潜在的にモニタする。情報エレメント・レシーバ(30)はまた、送出方向の通信センダ(36)が送信する通信も潜在的にモニタする。
特徴不適合性解析器(34)はISD特徴とPRD特徴が不適合性特徴であるか否かを決定する。
選択的な構成である特徴発見モジュール(32)はISD特徴及び/又はPRD特徴を発見する。
選択的な構成である送出方向通信センダ(36)は1若しくはそれ以上の送出方向の通信を送信する。
選択的な構成であるパラメータ解析器(38)は1若しくはそれ以上のパラメータを取得する。これらパラメータは、(a)ISD特徴、(b)PRD特徴、及び/又は(c)ISD特徴とPRD特徴が不適合性特徴であるか否かを指し示す。
選択的な構成である特徴データベース(40)は、特徴の対のリストと、それら特徴が不適合性特徴であるか否かに関する情報を含む。例えば、特徴データベース(40)は、HTMLクライアントが各オペレーティング・システムによりサポートされているディスクリプションを含む。
(その他の雑多な事項)
いくつかの実施形態において、本発明は、本明細書中に開示される特徴或いはパラメータを任意の組み合わせで用いて、潜在的リレー・デバイスがリレー・デバイスであるか否か、及び/又は受信された情報エレメントがリレー・デバイスにより中継されているか否かを決定する。
上記のいくつかの実施形態において、ISD特徴及び/又はPRD特徴は、レイテンシ及び/又は通信速度に関連付けられた。当業者であれば、このような場合は、ISD特徴及び/又はPRD特徴が通信速度に関連付けられるようなより一般的な場合を特殊化したものであることが理解できる。
通信性能とは、通信のスピード(speed)、速度(rate)、時間、効率などを表す全てのパラメータのことをいう。
2つの特徴が不適合性特徴であるか否かを決定する過程において、RDS(102)はそれぞれの特徴が発見された時間を考慮しなければならない。例えば、2つの特徴が午前9:05と午前10:05に等しいウォール・クロック・コンフィギュレーションであり、第2の特徴は第1の特徴からちょうど1時間後に発見されたならば、2つの特徴を不適合性特徴とみなすことができない。これは、発見時間の差が直接特徴の差を説明しているからである。しかしながら、この2つの特徴がほぼ同時刻に発見された場合にも、これら特徴が不適合性特徴とみなされることがある。他の例において、第1の特徴が900ミリ秒というRTT測定値で、第2の特徴が940ミリ秒というRTTであり、第1の特徴が第2の特徴から24時間後に発見されたならば、これら特徴は必ずしも不適合性特徴とはいえない。これは、ネットワーク・トポロジの変化によりこの差が生じたかもしれないからである。しかしながら、これら2つの特徴が同じ100ミリ秒間に発見されたならば、トポロジの変化の可能性は低く、これら特徴が不適合性特徴である可能性が高い。
特徴がほぼ同時に発見されたならば、RDS(102)はこれらの特徴が同時に同一のデバイスに関連している可能性が低いものとみなす。
本発明の新規な開示事項の多くが、本明細書中に開示された実施形態を参照して説明されてきた。しかしながら、この種の実施形態は、本明細書中で開示される新規な事項の多くの利点の一部の例を示すにすぎない。一般的に、本明細書中の記載事項は、本発明の請求の範囲に記載の発明を必ずしも限定するものではない。更に、いくつかの記載は、本発明の一部の特徴には該当するが、その他の特徴には該当しない。
本発明の特定の実施形態を説明してきたが、当業者であれば、広い意味で本発明の範囲を離れることなく変更や改変を行うことが可能であることが理解できる。したがって、本発明の請求の範囲には、本発明の要旨及び範囲内にあるこれらの変更や改変が含まれるものとする。
いくつかの実施形態において、「可能性が低い(unlikely)」とは、最大40%の可能性があることをいう。
他の実施形態において、この可能性は最大30%である。
他の実施形態において、この可能性は最大20%である。
他の実施形態において、この可能性は最大10%である。
他の実施形態において、この可能性は最大5%である。
他の実施形態において、この可能性は最大1%である。
他の実施形態において、この可能性は最大1/2%である。
同様に、「可能性の高い(likely)」イベントとは、確率100%から、「可能性の低い」イベントが起こる可能性を差し引いた確率で起こるイベントをいう。
いくつかの実施形態において、「単一の(single)」デバイスとは、物理的に1つであるデバイスのことをいう。しかしながら、当該技術分野において、データネットワークに接続された電子デバイス(例えば、リレー・デバイス、モニタされるホスト、及び情報ソース・デバイス)はしばしば、複数の物理的に別個のデバイスの集合からなる。このようなデバイスの集合は、データネットワーク及び/又はデータネットワーク上のデバイスに対して、自らを「単一の」デバイスとして提示する。したがって、本明細書中において、「単一の」デバイスとは、物理的に1つのデバイスと、自らを単一のデバイスとして提示するように論理的に設定された物理的に複数のデバイスの両方を示す。
いくつかの実施形態において、本明細書中の「異なる(different)」位置とは、異なる国に位置する場所を示す。
いくつかの実施形態において、本明細書中の「異なる(different)」位置とは、異なる州に位置する場所を示す。
いくつかの実施形態において、本明細書中の「異なる(different)」位置とは、異なる地域(province)に位置する場所を示す。
いくつかの実施形態において、本明細書中の「異なる(different)」位置とは、異なる大陸に位置する場所を示す。
いくつかの実施形態において、本明細書中の「異なる(different)」位置とは、異なる時間帯に位置する場所を示す。
いくつかの実施形態において、本明細書中の「異なる(different)」位置とは、100キロメートル以上、200キロメートル以上、1000キロメートル以上、或いは2500キロメートル以上離れた場所を示す。
本発明の実施形態に従ってリレー検知システムを操作する環境を示す図である。 情報エレメントをリレー検知システムに送る潜在的リレー・デバイスのダイアグラムを示す。 本発明のいくつかの実施形態に従うダイアグラムであり、リレー検知システムにより受信された情報エレメントのオリジナル・ソースのダイアグラムを示す。 潜在的リレー・デバイスが情報ソース・デバイスである場合のダイアグラムを示す。 潜在的リレー・デバイスと情報ソース・デバイスが別個のデバイスである場合のダイアグラムを示す。 本発明のいくつかの実施形態に従うシステムを示す図である。 リレー・デバイスが用いられる場合において、情報ソース・デバイス及びモニタされるホストの間の通信のレイテンシを示す図である。 リレー・デバイスが用いられない場合において、情報ソース・デバイス及びモニタされるホストの間の通信のレイテンシを示す図である。 情報ソース・デバイスが2つの情報エレメント(潜在的に中継された情報エレメント1及び潜在的に中継された情報エレメント2)を、リレー・デバイスを用いることなしに、直接にモニタされるホストへ送る場合を示すダイアグラムである。 2つの異なるデバイス(情報ソース・デバイス及び情報ソース・デバイス2)それぞれが情報エレメントをモニタされるホストに送り、両情報エレメントがリレー・デバイスにより中継される場合のダイアグラムを示す。

Claims (50)

  1. 潜在的リレー・デバイスがリレー・デバイスであるか否かを決定する方法であって、該方法は、
    (a)前記潜在的リレー・デバイスからの第1の情報エレメントと第2の情報エレメントを受け取る段階を備え、前記潜在的リレー・デバイスが前記第2情報エレメントのオリジナル・ソースであり、
    (b)更に、前記第1の情報エレメントのオリジナル・ソースの特徴と、前記潜在的リレー・デバイスの特徴が単一のデバイスに関連するものでないことの特徴であるか否かを決定する段階を備え、
    前記決定する段階において、単一のデバイスに関連するものでないとの結果が指し示されると、前記潜在的リレー・デバイスがリレー・デバイスであるという決定をすることを特徴とする方法。
  2. 前記第2の情報エレメントが、リレー・デバイスのうち1つのクラスにあるリレー・デバイスが中継しない種類の情報エレメントであることを特徴とする請求項1記載の方法。
  3. リレー・デバイスの前記クラスが、SOCKSプロキシ、GETメソッドを用いたHTTPプロキシ、CONNECTメソッドを用いたHTTPプロキシ、IPルータ及びネットワーク・アドレス・トランスレーション・デバイスからなる群から選択されることを特徴とする請求項2記載の方法。
  4. 前記第2の情報エレメントが通信の一部であり、該通信が、IP、TCP、ICMP、DNS、HTTP、SMTP、TLS及びSSLからなる群から選択される種類の通信であることを特徴とする請求項1記載の方法。
  5. 前記第1の情報エレメントが通信の一部であり、該通信が、IP、TCP、ICMP、DNS、HTTP、SMTP、TLS及びSSLからなる群から選択される種類の通信であることを特徴とする請求項1記載の方法。
  6. 前記第1の情報エレメント及び前記第2の情報エレメントが単一の通信の一部であることを特徴とする請求項1記載の方法。
  7. 前記第1の情報エレメント及び前記第2の情報エレメントが、プロトコル・スタックの互いに異なる2つの層内に送信されることを特徴とする請求項6記載の方法。
  8. 前記潜在的リレー・デバイスの特徴が単一のデバイスに関連するものでないことの特徴であるか否かを決定する段階が、
    (i)前記第1の情報エレメントのオリジナル・ソースの特徴を発見する段階と、
    (ii)前記潜在的リレー・デバイスの特徴を発見する段階からなることを特徴とする請求項1記載の方法。
  9. 前記潜在的リレー・デバイスの特徴が単一のデバイスに関連するものでないことの特徴であるか否かを決定する段階が更に、
    (iii)前記第1の情報エレメントのオリジナル・ソースの特徴を前記潜在的リレー・デバイスの特徴と比較する段階を備えることを特徴とする請求項8記載の方法。
  10. (c)前記第1の情報エレメントのオリジナル・ソースの前記特徴を指し示すパラメータを得る段階と、
    (d)前記潜在的リレー・デバイスの前記特徴を指し示すパラメータを得る段階を備えることを特徴とする請求項8記載の方法。
  11. 前記潜在的リレー・デバイスの特徴が単一のデバイスに関連するものでないことの特徴であるか否かを決定する段階が更に、
    (iii)前記第1の情報エレメントのオリジナル・ソースの前記特徴と前記潜在的リレー・デバイスの前記特徴のうち少なくとも一方を発見する時間を考慮する段階を備えることを特徴とする請求項8記載の方法。
  12. (c)前記第1の情報エレメントの前記オリジナル・ソースの前記特徴と前記潜在的リレー・デバイスの特徴との間の関係を指し示すパラメータを得る段階を備えることを特徴とする請求項1記載の方法。
  13. 前記潜在的リレー・デバイスの特徴が単一のデバイスに関連するものでないことの特徴であるか否かを決定する段階が更に、前記第1の情報エレメントの前記オリジナル・ソースの前記特徴と前記潜在的リレー・デバイスの前記特徴の間の関係を指し示す前記パラメータの解析を行う段階を備えることを特徴とする請求項12記載の方法。
  14. 前記パラメータが、前記第1の情報エレメントと前記第2の情報エレメントのうち少なくとも一方から得られることを特徴とする請求項12記載の方法。
  15. (c)前記第1の情報エレメントの前記オリジナル・ソースと前記リレー・デバイスのうち少なくとも一方へ送出方向の通信を送る段階と、
    (d)前記第1の情報エレメントの前記オリジナル・ソースと前記潜在的リレー・デバイスのうち前記少なくとも一方から第3の情報エレメントを受け取る段階を備えることを特徴とする請求項1記載の方法。
  16. 前記第3の情報エレメントから、前記第1の情報エレメントの前記オリジナル・ソースと前記潜在的リレー・デバイスのうち前記少なくとも一方の特徴に関連した情報を引き出すことを特徴とする請求項15記載の方法。
  17. (iii)前記第3の情報エレメントのオリジナル・ソースが前記第1の情報エレメントの前記オリジナル・ソースであることを確認する段階を備えることを特徴とする請求項15記載の方法。
  18. 前記第3の情報エレメントのオリジナル・ソースが前記潜在的リレー・デバイスであることを確認する段階を備えることを特徴とする請求項15記載の方法。
  19. 前記第3の情報エレメントが、ICMPメッセージ、ICMPエコー・リプライ・メッセージ、DNSクエリ、HTTPリクエスト、HTTPレスポンス、HTTPサーバヘッダ、IPアドレス、TCPポート、TCPイニシャル・シーケンス・ナンバ、TCPイニシャル・ウィンドウ、WHOISレコード及びリバースDNSレコードからなる群から選択されることを特徴とする請求項15記載の方法。
  20. 前記第1の情報エレメントのオリジナル・ソースの前記特徴と前記潜在的リレー・デバイスの前記特徴のうち少なくとも一方がコンフィギュレーションの状態に関連した特徴であることを特徴とする請求項1記載の方法。
  21. 前記コンフィギュレーションの状態に関連した特徴が、オペレーティング・システムの種別、オペレーティング・システムのバージョン、ソフトウェアの種別、HTTPクライアントの種別、HTTPサーバの種別、SMTPクライアントの種別、SMTPサーバの種別、時間設定、クロック設定及びタイムゾーンの設定からなる群から選択されることを特徴とする請求項20記載の方法。
  22. 前記第1の情報エレメントのオリジナル・ソースの特徴と、前記潜在的リレー・デバイスの特徴が単一のデバイスに関連するものでないことの特徴であるか否かを決定する段階が、コンフィギュレーションの状態に関連する前記特徴を指し示すパラメータを調査する段階を備えることを特徴とする請求項21記載の方法。
  23. 前記パラメータが、HTTPユーザ・エージェント・ヘッダ、RFC822・Xメイラ・ヘッダ、RFC822レシーブド・ヘッダ、RFC822日付ヘッダ、プロトコル実装様式、TCP/IPスタック・フィンガプリント、IPアドレス、TCPポート、TCPイニシャル・シーケンス・ナンバ及びTCPイニシャル・ウィンドウからなる群から選択されることを特徴とする請求項21記載の方法。
  24. 前記第1の情報エレメントのソースの前記特徴と前記潜在的リレー・デバイスの前記特徴のうち少なくとも一方が通信性能に関連する特徴であることを特徴とする請求項1記載の方法。
  25. 通信性能に関連する前記特徴が、測定された通信性能、測定された相対的通信性能及び推定される通信性能からなる群から選択されることを特徴とする請求項24記載の方法。
  26. 通信性能に関連する前記特徴が、通信のレイテンシ、受入方向の通信のレイテンシ、送出方向の通信のレイテンシ、通信のラウンド・トリップ・タイム、通信レイト、受入方向の通信レイト、送出方向の通信レイト、最大通信レイト、受入方向の最大通信レイト及び送出方向の最大通信レイトからなる群から選択されることを特徴とする請求項24記載の方法。
  27. 前記第1の情報エレメントのオリジナル・ソースの特徴と、前記潜在的リレー・デバイスの特徴が単一のデバイスに関連するものでないことの特徴であるか否かを決定する段階が、通信性能に関連する特徴を指し示すパラメータを調査する段階を備えることを特徴とする請求項24記載の方法。
  28. 前記パラメータが、情報エレメントの受領時間、情報エレメントの送信時間、ラウンド・トリップ・タイム、ラウンド・トリップ・タイムのギャップ、IPアドレス、WHOISレコード、リバースDNSレコード及び肯定応答情報のレイトからなる群から選択されることを特徴とする請求項27記載の方法。
  29. ラウンド・トリップ・タイムのギャップが大きければ大きいほど、リレー・デバイスが悪意の目的で使用されている可能性が高いことを指し示すことを特徴とする請求項28記載の方法。
  30. 通信性能に関連する前記特徴が、前記第1の通信の前記オリジナル・ソースと前記潜在的リレー・デバイスのうち少なくとも一方についての情報から見積もられることを特徴とする請求項24記載の方法。
  31. 前記第1の通信の前記オリジナル・ソースと前記潜在的リレー・デバイスのうち少なくとも一方についての前記情報がデバイスの位置、デバイスのホスト・ネーム及びデバイスのアドミニストレータからなる群から選択されることを特徴とする請求項30記載の方法。
  32. 前記第1の情報エレメントの前記オリジナル・ソースの前記特徴と、前記潜在的リレー・デバイスの前記特徴のうち少なくとも一方がサブ・ネットワーク、アドミニストレータ及び位置からなる群から選択されることを特徴とする請求項1記載の方法。
  33. 前記第1の情報エレメントのオリジナル・ソースの特徴と、前記潜在的リレー・デバイスの特徴が単一のデバイスに関連するものでないことの特徴であるか否かを決定する段階が、前記第1の通信のソースの前記特徴と、前記第2の通信のソースの前記特徴のうち少なくとも一方を指し示すパラメータを調査する段階を備え、
    該パラメータが、HTTPユーザ・エージェント・ヘッダ、RFC822・Xメイラ・ヘッダ、RFC822レシーブド・ヘッダ、RFC822日付ヘッダ、IPアドレス、WHOISレコード及びリバースDNSレコードからなる群から選択されることを特徴とする請求項32記載の方法。
  34. 潜在的リレー・デバイスがリレー・デバイスであるか否かを決定する方法であって、
    (a)前記潜在的リレー・デバイスから第1の情報エレメントと第2の情報エレメントを受け取る段階を備え、前記潜在的リレー・デバイスは前記第2の情報エレメントのオリジナル・ソースであり、
    (b)更に、前記第1の情報エレメントと前記第2の情報エレメントのうち少なくとも一方のコンフィギュレーションの状態を解析する段階を備え、該コンフィギュレーションの状態が、オペレーティング・システムの種別、オペレーティング・システムのバージョン、ソフトウェアの種別、HTTPクライアントの種別、HTTPサーバの種別、SMTPクライアントの種別、SMTPサーバの種別、時間設定、クロック設定及びタイムゾーンの設定からなる群から選択されることを特徴とする方法。
  35. 潜在的リレー・デバイスがリレー・デバイスであるか否かを決定する方法であって、
    (a)前記潜在的リレー・デバイスから第1の情報エレメントと第2の情報エレメントを受け取る段階を備え、前記潜在的リレー・デバイスは前記第2の情報エレメントのオリジナル・ソースであり、
    (b)更に、前記第1の情報エレメントと前記第2の情報エレメントのうち少なくとも一方のオリジナル・ソースの通信性能の関連する特徴を解析する段階を備えることを特徴とする方法。
  36. 通信性能に関連する前記特徴が、通信のレイテンシ、受入方向の通信のレイテンシ、送出方向の通信のレイテンシ、通信のラウンド・トリップ・タイム、通信レイト、受入方向の通信レイト、送出方向の通信レイト、最大通信レイト、受入方向の最大通信レイト及び送出方向の最大通信レイトからなる群から選択されることを特徴とする請求項35記載の方法。
  37. 潜在的リレー・デバイスがリレー・デバイスであるか否かを決定する方法であって、
    (a)情報ソース・デバイスにメッセージを送信するとともに、前記情報ソース・デバイスにDNSリクエストを送信させる段階と、
    (b)前記DNSリクエストから、前記潜在的リレー・デバイスがリレー・デバイスであるか否かを決定する段階からなることを特徴とする方法。
  38. 潜在的リレー・デバイスがリレー・デバイスであるか否かを決定する方法であって、
    (a)前記潜在的リレー・デバイスから第1の情報エレメントと第2の情報エレメントを受け取る段階と、
    (b)前記第1の情報エレメントのオリジナル・ソースの特徴と、前記第2の情報エレメントのオリジナル・ソースの特徴が単一のデバイスに関連しない特徴であるか否かを決定する段階からなり、
    前記決定する段階において、単一のデバイスに関連しない特徴であると決定された場合には前記潜在的リレー・デバイスがリレー・デバイスであることを意味することを特徴とする方法。
  39. 潜在的リレー・デバイスがリレー・デバイスであるか否かを決定する方法であって、
    (a)前記潜在的リレー・デバイスから第1の情報エレメントと第2の情報エレメントを受け取る段階を備え、前記潜在的リレー・デバイスが、前記第2の情報エレメントのオリジナル・ソースであり、
    (b)更に、前記潜在的リレー・デバイスへのラウンド・トリップ・タイムが、前記第1の情報エレメントのオリジナル・ソースへのラウンド・トリップ・タイムと比べて有意な差異が存するか否かをチェックする段階を備えることを特徴とする方法。
  40. 潜在的リレー・デバイスがリレー・デバイスであるか否かを決定する方法であって、
    (a)前記潜在的リレー・デバイスから第1の情報エレメントと第2の情報エレメントを受け取る段階を備え、前記潜在的リレー・デバイスが、前記第2の情報エレメントのオリジナル・ソースであり、
    (b)更に、前記潜在的リレー・デバイスのオペレーティング・システムが前記第1の情報エレメントのオリジナル・ソースのオペレーティング・システムと相違するか否かをチェックする段階を備えることを特徴とする方法。
  41. 潜在的リレー・デバイスがリレー・デバイスであるか否かを決定する方法であって、
    (a)前記潜在的リレー・デバイスから第1の情報エレメントと第2の情報エレメントを受け取る段階を備え、前記潜在的リレー・デバイスが、前記第2の情報エレメントのオリジナル・ソースであり、
    (b)更に、前記潜在的リレー・デバイスの位置が前記第1の情報エレメントの位置と相違するか否かをチェックする段階を備えることを特徴とする方法。
  42. 潜在的リレー・デバイスがリレー・デバイスであるか否かを決定する方法であって、
    (a)前記潜在的リレー・デバイスから第1の情報エレメントと第2の情報エレメントを受け取る段階を備え、前記潜在的リレー・デバイスが、前記第2の情報エレメントのオリジナル・ソースであり、
    (b)更に、前記潜在的リレー・デバイスのアドミニストレータが前記第1の情報エレメントのオリジナル・ソースのアドミニストレータと相違するか否かをチェックする段階を備えることを特徴とする方法。
  43. 潜在的リレー・デバイスがリレー・デバイスであるか否かを決定する方法であって、
    (a)第1の情報エレメントのオリジナル・ソースの特徴と前記潜在的リレー・デバイスの特徴が単一のデバイスに関連しない特徴であるか否かを決定する段階を備え、
    前記潜在的リレー・デバイスが、前記第2の情報エレメントのトランスミッタであり、
    前記決定する段階の結果が単一のデバイスに関連しない特徴であるというものであるならば、前記潜在的リレー・デバイスがリレー・デバイスを指し示しているものとすることを特徴とする方法。
  44. 潜在的リレー・デバイスがリレー・デバイスであるか否かを決定するシステムであって、該システムは、
    (a)情報エレメント・レシーバを備え、該情報エレメント・レシーバは、情報ソース・デバイス及び潜在的リレー・デバイスを含む複数のデバイスから情報エレメントを受け取り、
    (b)前記システムは、特徴不適合性解析器を備え、該特徴不適合性解析器は、前記情報ソース・デバイスの特徴と前記潜在的リレー・デバイスの特徴が単一のデバイスに関連しない特徴であるか否かを決定することを特徴とするシステム。
  45. (c)特徴発見モジュールを更に備え、該特徴発見モジュールが、前記情報ソース・デバイスの特徴と前記潜在的リレー・デバイスの特徴からなる群から選択される少なくとも1つの特徴を発見することを特徴とする請求項44記載のシステム。
  46. 前記情報エレメント・レシーバが、更に、モニタされるホストから情報エレメントを受け取るように形成されることを特徴とする請求項44記載のシステム。
  47. (c)送出方向の情報エレメント用の送受信端末を更に備えることを特徴とする請求項44記載のシステム。
  48. (c)パラメータ取得器を更に備え、該パラメータ取得器が、情報ソース・デバイスの特徴を指し示すパラメータ、前記潜在的リレー・デバイスの特徴を指し示すパラメータ、及び情報ソース・デバイスの特徴と前記リレー・デバイスの特徴が単一のデバイスに関連しないことを示す特徴であるか否かを指し示すパラメータからなる群から選択される少なくとも1つのパラメータを取得することを特徴とする請求項44記載のシステム。
  49. (c)特徴データベースを更に備え、該特徴データベースが特徴の対とデータのマップを格納し、該データが、前記特徴の対が不適合性を示す特徴であるか否かを指し示すことを特徴とする請求項44記載のシステム。
  50. コンピュータにより読み取り可能な記録メディアに記録されるコンピュータ・ソフトウェアであって、該ソフトウェアが、
    (a)潜在的リレー・デバイスから第1の情報エレメントと第2の情報エレメントを受け取る段階をコンピュータに指示し、前記潜在的リレー・デバイスは前記第2の情報エレメントのオリジナル・ソースであり、
    (b)前記ソフトウェアは更に、前記第1の情報エレメントのオリジナル・ソースの特徴と前記潜在的リレー・デバイスの特徴が単一のデバイスに関連しない特徴であるか否かを決定する段階をコンピュータに指示し、
    前記決定する段階において、単一のデバイスに関連しない特徴であるとの決定がなされるならば、前記潜在的リレー・デバイスがリレー・デバイスであることを指し示すことを特徴とするソフトウェア。
JP2006548578A 2004-01-09 2005-01-09 リレー通信を検知する方法、システム及びソフトウェア Active JP4596275B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US53492704P 2004-01-09 2004-01-09
PCT/IL2005/000033 WO2005065038A2 (en) 2004-01-09 2005-01-09 Detecting relayed communications

Publications (2)

Publication Number Publication Date
JP2008527761A true JP2008527761A (ja) 2008-07-24
JP4596275B2 JP4596275B2 (ja) 2010-12-08

Family

ID=34749015

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006548578A Active JP4596275B2 (ja) 2004-01-09 2005-01-09 リレー通信を検知する方法、システム及びソフトウェア

Country Status (9)

Country Link
US (4) US8966088B2 (ja)
EP (1) EP1702429B1 (ja)
JP (1) JP4596275B2 (ja)
CN (1) CN1965309B (ja)
AU (1) AU2005203856B2 (ja)
BR (1) BRPI0506963A2 (ja)
CA (1) CA2552481C (ja)
IL (2) IL176697A (ja)
WO (1) WO2005065038A2 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011150494A (ja) * 2010-01-20 2011-08-04 Katsuyoshi Nagashima Ipアクセスログ解析装置およびその方法
JP2012515956A (ja) * 2009-01-16 2012-07-12 デバイススケープ・ソフトウェア・インコーポレーテッド 強化されたスマートクライアントサポートのためのシステム及びその方法
JP2014529806A (ja) * 2011-09-26 2014-11-13 アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited クライアントの物理的な位置の決定
JP2015536593A (ja) * 2012-10-09 2015-12-21 アダプティブ スペクトラム アンド シグナル アラインメント インコーポレイテッド 通信システムにおけるレイテンシ測定のための方法及びシステム
JP2016533569A (ja) * 2013-06-28 2016-10-27 トムソン ライセンシングThomson Licensing マルチメディア・コンテンツを受信するように構成されたクライアント端末のダウンロード動作を適応させる方法および対応する端末
JP2017502605A (ja) * 2014-01-08 2017-01-19 アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited プロキシipアドレスの識別方法及び装置

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1702429B1 (en) 2004-01-09 2017-05-10 PayPal Israel Ltd Detecting relayed communications
US8782393B1 (en) 2006-03-23 2014-07-15 F5 Networks, Inc. Accessing SSL connection data by a third-party
US8099329B2 (en) 2006-04-25 2012-01-17 Uc Group Limited Systems and methods for determining taxes owed for financial transactions conducted over a network
US8301703B2 (en) * 2006-06-28 2012-10-30 International Business Machines Corporation Systems and methods for alerting administrators about suspect communications
JP4731428B2 (ja) * 2006-08-28 2011-07-27 セコム株式会社 監視装置、及び受信装置
US9326138B2 (en) 2006-09-06 2016-04-26 Devicescape Software, Inc. Systems and methods for determining location over a network
US8743778B2 (en) 2006-09-06 2014-06-03 Devicescape Software, Inc. Systems and methods for obtaining network credentials
US8000283B2 (en) * 2007-03-07 2011-08-16 Motorola Solutions, Inc. Method and apparatus for relay station neighbor discovery
US20090284600A1 (en) * 2008-05-14 2009-11-19 Chuan Wang Remote-control door viewer surveillance system
US20100106611A1 (en) * 2008-10-24 2010-04-29 Uc Group Ltd. Financial transactions systems and methods
US8489732B1 (en) * 2009-08-07 2013-07-16 Google Inc. System and method of using spatial and temporal signals to identify and prevent attacks
US8423791B1 (en) 2009-08-07 2013-04-16 Google Inc. Location data quarantine system
KR101167938B1 (ko) * 2009-09-22 2012-08-03 엘지전자 주식회사 컨텐츠에 대한 권리 이용 방법
US8700892B2 (en) 2010-03-19 2014-04-15 F5 Networks, Inc. Proxy SSL authentication in split SSL for client-side proxy agent resources with content insertion
US8407341B2 (en) * 2010-07-09 2013-03-26 Bank Of America Corporation Monitoring communications
WO2012112607A1 (en) 2011-02-14 2012-08-23 Devicescape Software, Inc. Systems and methods for network curation
US20120272314A1 (en) * 2011-04-21 2012-10-25 Cybyl Technologies, Inc. Data collection system
EP3439267A1 (en) 2011-06-03 2019-02-06 UC Group Limited Systems and methods for managing chargeback requests
US20120317172A1 (en) * 2011-06-13 2012-12-13 International Business Machines Corporation Mobile web app infrastructure
WO2014207262A1 (es) * 2013-06-24 2014-12-31 Telefonica Digital España, S.L.U. Un método para comunicaciones seguras a través de redes diferentes usando el protocolo socks
KR101548210B1 (ko) * 2014-01-06 2015-08-31 고려대학교 산학협력단 왕복 시간 변화를 이용하여 익명 네트워크를 통한 우회 접속을 탐지하는 방법
US9628512B2 (en) * 2014-03-11 2017-04-18 Vectra Networks, Inc. Malicious relay detection on networks
CN105338126B (zh) * 2014-07-17 2018-10-23 阿里巴巴集团控股有限公司 远程查询信息的方法及服务器
US9721253B2 (en) 2015-05-06 2017-08-01 Forter Ltd. Gating decision system and methods for determining whether to allow material implications to result from online activities
CN107222503B (zh) * 2017-07-10 2020-08-11 北京知道未来信息技术有限公司 一种探测流加密代理服务器的方法
US10789301B1 (en) * 2017-07-12 2020-09-29 Groupon, Inc. Method, apparatus, and computer program product for inferring device rendered object interaction behavior
CN110022334B (zh) * 2018-01-09 2022-01-11 香港理工大学深圳研究院 一种代理服务器的检测方法、检测装置及终端设备
EP3607700B1 (en) * 2018-05-07 2023-04-05 Google LLC Verifying operational statuses of agents interfacing with digital assistant applications
CN110839017B (zh) * 2019-10-21 2022-02-08 腾讯科技(深圳)有限公司 代理ip地址识别方法、装置、电子设备及存储介质
CN110830454B (zh) * 2019-10-22 2020-11-17 远江盛邦(北京)网络安全科技股份有限公司 基于alg协议实现tcp协议栈信息泄露的安防设备检测方法
CN112787975B (zh) * 2019-11-05 2022-06-10 华为技术有限公司 一种接入设备类型确定方法、设备及系统
US20230067897A1 (en) * 2021-08-25 2023-03-02 Paypal, Inc. Automatic detection of proxy-based phishing sites
CN114143807B (zh) * 2021-10-27 2023-08-08 中盈优创资讯科技有限公司 一种路由注册完整率评价方法及装置
US11888730B1 (en) 2022-09-20 2024-01-30 Block, Inc. Dynamically optimizing routing within a decentralized network

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020112039A1 (en) * 2000-12-15 2002-08-15 Ibm Corporation Method and system for network management with backup status gathering
US20030026268A1 (en) * 2000-11-28 2003-02-06 Siemens Technology-To-Business Center, Llc Characteristic routing
US20040052257A1 (en) * 2002-06-24 2004-03-18 Miguel Abdo Automatic discovery of network core type
US6832253B1 (en) * 1999-04-01 2004-12-14 Cisco Technologies, Inc. Proximity as an aid to caching and secondary serving of data
JP2005287071A (ja) * 2005-04-26 2005-10-13 Canon Inc 無線通信装置および無線通信方法

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5892903A (en) * 1996-09-12 1999-04-06 Internet Security Systems, Inc. Method and apparatus for detecting and identifying security vulnerabilities in an open network computer communication system
US20020007411A1 (en) 1998-08-10 2002-01-17 Shvat Shaked Automatic network user identification
US6452915B1 (en) 1998-07-10 2002-09-17 Malibu Networks, Inc. IP-flow classification in a wireless point to multi-point (PTMP) transmission system
US6496824B1 (en) * 1999-02-19 2002-12-17 Saar Wilf Session management over a stateless protocol
DE69934871T2 (de) * 1999-03-05 2007-07-05 International Business Machines Corp. Verfahren und System zur optimalen Auswahl eines Webfirewalls in einem TCP/IP Netzwerk
US6757740B1 (en) * 1999-05-03 2004-06-29 Digital Envoy, Inc. Systems and methods for determining collecting and using geographic locations of internet users
US6519568B1 (en) * 1999-06-15 2003-02-11 Schlumberger Technology Corporation System and method for electronic data delivery
AU782333B2 (en) * 1999-11-23 2005-07-21 Escom Corporation Electronic message filter having a whitelist database and a quarantining mechanism
CN1158612C (zh) * 1999-12-16 2004-07-21 华为技术有限公司 用于帧中继网络和异步传输模式网络互通的方法以及装置
US6684250B2 (en) * 2000-04-03 2004-01-27 Quova, Inc. Method and apparatus for estimating a geographic location of a networked entity
US7200673B1 (en) * 2000-06-09 2007-04-03 Steven Augart Determining the geographic location of a network device
US20020016831A1 (en) * 2000-08-07 2002-02-07 Vidius Inc. Apparatus and method for locating of an internet user
US20020035698A1 (en) 2000-09-08 2002-03-21 The Regents Of The University Of Michigan Method and system for protecting publicly accessible network computer services from undesirable network traffic in real-time
US7360245B1 (en) * 2001-07-18 2008-04-15 Novell, Inc. Method and system for filtering spoofed packets in a network
US6907525B2 (en) * 2001-08-14 2005-06-14 Riverhead Networks Inc. Protecting against spoofed DNS messages
US7171683B2 (en) * 2001-08-30 2007-01-30 Riverhead Networks Inc. Protecting against distributed denial of service attacks
AU2002326635A1 (en) * 2001-08-15 2003-03-03 Shea Writer Methods for verifying cardholder authenticity and for creating billing address database
JP2003099381A (ja) 2001-09-21 2003-04-04 Kddi Corp メール発信用リンクを含むページを送信するwwwサーバ及びプログラム
CN1666205A (zh) * 2001-10-17 2005-09-07 Npx科技有限公司 在线接收的个人标识的验证
FI116017B (fi) * 2002-01-22 2005-08-31 Netseal Mobility Technologies Menetelmä viestien lähettämiseksi turvallisten mobiiliviestintäyhteyksien läpi
US7444428B1 (en) * 2002-08-26 2008-10-28 Netapp, Inc. Method and apparatus for estimating relative network proximity in the presence of a network filter
CN102611596B (zh) * 2002-11-29 2015-02-11 飞比特网络股份有限公司 网络对应家电
EP1702429B1 (en) 2004-01-09 2017-05-10 PayPal Israel Ltd Detecting relayed communications
US7685279B2 (en) * 2004-03-04 2010-03-23 Quova, Inc. Geo-location and geo-compliance utilizing a client agent

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6832253B1 (en) * 1999-04-01 2004-12-14 Cisco Technologies, Inc. Proximity as an aid to caching and secondary serving of data
US20030026268A1 (en) * 2000-11-28 2003-02-06 Siemens Technology-To-Business Center, Llc Characteristic routing
US20020112039A1 (en) * 2000-12-15 2002-08-15 Ibm Corporation Method and system for network management with backup status gathering
US20040052257A1 (en) * 2002-06-24 2004-03-18 Miguel Abdo Automatic discovery of network core type
JP2005287071A (ja) * 2005-04-26 2005-10-13 Canon Inc 無線通信装置および無線通信方法

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012515956A (ja) * 2009-01-16 2012-07-12 デバイススケープ・ソフトウェア・インコーポレーテッド 強化されたスマートクライアントサポートのためのシステム及びその方法
JP2011150494A (ja) * 2010-01-20 2011-08-04 Katsuyoshi Nagashima Ipアクセスログ解析装置およびその方法
JP2014529806A (ja) * 2011-09-26 2014-11-13 アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited クライアントの物理的な位置の決定
JP2015536593A (ja) * 2012-10-09 2015-12-21 アダプティブ スペクトラム アンド シグナル アラインメント インコーポレイテッド 通信システムにおけるレイテンシ測定のための方法及びシステム
JP2016533569A (ja) * 2013-06-28 2016-10-27 トムソン ライセンシングThomson Licensing マルチメディア・コンテンツを受信するように構成されたクライアント端末のダウンロード動作を適応させる方法および対応する端末
US11057445B2 (en) 2013-06-28 2021-07-06 Interdigital Vc Holdings, Inc. Method for adapting the downloading behavior of a client terminal configured, to receive multimedia content, and corresponding terminal
JP2017502605A (ja) * 2014-01-08 2017-01-19 アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited プロキシipアドレスの識別方法及び装置

Also Published As

Publication number Publication date
JP4596275B2 (ja) 2010-12-08
IL176697A (en) 2015-02-26
AU2005203856A1 (en) 2005-07-21
CN1965309A (zh) 2007-05-16
EP1702429B1 (en) 2017-05-10
US20150172253A1 (en) 2015-06-18
IL176697A0 (en) 2006-10-31
CA2552481C (en) 2016-08-02
IL237152B (en) 2018-02-28
EP1702429A2 (en) 2006-09-20
EP1702429A4 (en) 2011-08-03
US10798055B2 (en) 2020-10-06
US11522827B2 (en) 2022-12-06
US20210126899A1 (en) 2021-04-29
WO2005065038A3 (en) 2006-11-16
US10122683B2 (en) 2018-11-06
BRPI0506963A2 (pt) 2011-11-16
CN1965309B (zh) 2010-11-17
AU2005203856B2 (en) 2009-07-30
US20090144408A1 (en) 2009-06-04
US8966088B2 (en) 2015-02-24
CA2552481A1 (en) 2005-07-21
WO2005065038A2 (en) 2005-07-21
US20190182210A1 (en) 2019-06-13

Similar Documents

Publication Publication Date Title
US11522827B2 (en) Detecting relayed communications
US7926108B2 (en) SMTP network security processing in a transparent relay in a computer network
CN100471104C (zh) 非法通信检测装置
Gadge et al. Port scan detection
WO2005015871A1 (en) Method, program and system for automatically detecting malicius computer network reconnaissance
Parsons Deep Packet Inspection in Perspective: Tracing its lineage and surveillance potentials
Alotaibi et al. Security issues in protocols of TCP/IP model at layers level
Peuhkuri Internet traffic measurements–aims, methodology, and discoveries
WO2008005188A2 (en) Message control system in a shared hosting environment
CN111431942B (zh) 一种cc攻击的检测方法、装置及网络设备
Jin et al. A detour strategy for visiting phishing URLs based on dynamic DNS response policy zone
Jin et al. Trigger-based Blocking Mechanism for Access to Email-derived Phishing URLs with User Alert
Hunter A framework for Malicious Host Fingerprinting Using Distributed Network Sensors
Jiang et al. Real-Time Identification of Users under the New Structure of Skype
Bisen et al. Countermeasure tool-Carapace for Network Security
Natale TCP/IP and security software applications
Suzuki et al. A scheme of secret communication using Internet control message protocol
Casey et al. Network investigations
Mutaf An approch to the security problems in the TCP/IP protocol suite for a network security monitor design
Conorich Internet Security: Securing the Perimeter
Fahmy et al. Balancing Privacy and Fidelity in Packet Traces for Security Evaluation
Harris Firewalls and virtual private networks
Casey Digital Evidence at the Network and Transport Layers
Christopher Deep Packet Inspection in Perspective: Tracing its lineage and surveillance potentials
Esposito OIF Control Plane Logging and Auditing with Syslog

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20090428

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20090430

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20090430

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20090512

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090512

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100405

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100908

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4596275

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20131001

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250