JP6425816B2 - コンピュータ・ネットワーク・インフラストラクチャーにおいて外部コンピュータ・システムをブロック解除する方法、かかるコンピュータ・ネットワーク・インフラストラクチャーをもつ分散コンピュータ・ネットワークおよびコンピュータ・プログラム・プロダクト - Google Patents

コンピュータ・ネットワーク・インフラストラクチャーにおいて外部コンピュータ・システムをブロック解除する方法、かかるコンピュータ・ネットワーク・インフラストラクチャーをもつ分散コンピュータ・ネットワークおよびコンピュータ・プログラム・プロダクト Download PDF

Info

Publication number
JP6425816B2
JP6425816B2 JP2017526518A JP2017526518A JP6425816B2 JP 6425816 B2 JP6425816 B2 JP 6425816B2 JP 2017526518 A JP2017526518 A JP 2017526518A JP 2017526518 A JP2017526518 A JP 2017526518A JP 6425816 B2 JP6425816 B2 JP 6425816B2
Authority
JP
Japan
Prior art keywords
computer system
processing
external
processing computer
network
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.)
Expired - Fee Related
Application number
JP2017526518A
Other languages
English (en)
Other versions
JP2017537546A (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
Priority claimed from DE102015116601.1A external-priority patent/DE102015116601A1/de
Application filed by フジツウ テクノロジー ソリューションズ インタレクチュアル プロパティ ゲーエムベーハー, フジツウ テクノロジー ソリューションズ インタレクチュアル プロパティ ゲーエムベーハー filed Critical フジツウ テクノロジー ソリューションズ インタレクチュアル プロパティ ゲーエムベーハー
Publication of JP2017537546A publication Critical patent/JP2017537546A/ja
Application granted granted Critical
Publication of JP6425816B2 publication Critical patent/JP6425816B2/ja
Expired - Fee Related 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/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0236Filtering by address, protocol, port number or service, e.g. IP-address or URL
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/166Implementing security features at a particular protocol layer at the transport layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/161Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
    • H04L69/162Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields involving adaptations of sockets based mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2101Auditing as a secondary aspect
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/102Entity profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/145Countermeasures against malicious traffic the attack involving the propagation of malware through the network, e.g. viruses, trojans or worms

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Description

本発明は、コンピュータ・ネットワーク・インフラストラクチャーにおいてセキュリティ保護された処理コンピュータ・システムとの通信のために外部コンピュータ・システムをブロック解除する方法、コンピュータ・ネットワーク・インフラストラクチャーおよび少なくとも一つの外部コンピュータ・システムをもつ分散コンピュータ・ネットワークならびに対応する方法を実行するためのコンピュータ・プログラム・プロダクトに関する。
分散コンピュータ・システムは、組織化された仕方でコンピュータ・ネットワーク・インフラストラクチャーにおけるデータ接続を介して互いに通信できる複数のコンピュータ・システムをいう。たとえば、分散コンピュータ・ネットワークは、サーバー・クライアント・トポロジーを含むコンピュータ・ネットワーク・インフラストラクチャーにおいて適用される。ここでは、ある程度秘密のデータ、たとえば顧客データまたはユーザー・データがクライアントとサーバーの間で交換され、このデータへの第三者のアクセスを防ぐ必要がある。
セキュリティ保護されたコンピュータ・ネットワーク・インフラストラクチャーにおいて、(秘密)データが処理される処理コンピュータ・システムは特別な仕方でセキュリティ保護される。たとえば、処理コンピュータ・システムの所定のネットワーク・ポートは初期には閉じられていることができる。よって、対応する処理コンピュータ・システムへのアクセスや接続確立は可能ではない。
ここで、通常の解決策は、上述したように閉じられているネットワーク・ポートをもつ処理コンピュータ・システムにネットワークを介して所定のノック信号を送ること(いわゆるポート・ノック)を提供する。ここで、処理コンピュータ・システムの所定のネットワーク・ポートを所定のデータ・シーケンスがアドレッシングする。このデータ・シーケンスは、処理コンピュータ・システム内の所定のシーケンスと比較され、成功の場合には処理コンピュータ・システムは一つまたは複数のネットワーク・ポートを開き、ネットワークを介して外部と接続が確立されることを許可する。
こうした施策の一つのリスクは、対応するポート・ノック・プロセスを操作するクラッカーや権限のないコンピュータ・システムのために、処理コンピュータ・システムがこのように開かれるということにある。このようにして、開かれたネットワーク・ポートによる処理コンピュータ・システム内の秘密である可能性のあるデータへの(工作する)アクセスが、第三者にとって可能になる。さらに、開かれた処理コンピュータ・システムにおけるサービスのアドレッシング可能性のために、処理コンピュータ・システムの一つまたは複数のネットワーク・ポート上で、実行中のプログラムが要求される。この実行中のプログラムは、ネットワークを介した(たとえばバッファ・オーバーフローやいわゆるサービス拒否攻撃を介した)外部攻撃のための潜在的なセキュリティ・ギャップを呈する。
コンピュータ・ネットワーク・インフラストラクチャー内の処理コンピュータ・システムで直接的に、アクセスのために、外部コンピュータ・システムの明示的な認証をすることは、通常の解決策においては無視できる。上記のような処理コンピュータ・システムは、初期には、閉じられたネットワーク・ポートを介した外部接続確立は許可しないからである。
他方、処理コンピュータ・システムから、該処理コンピュータ・システムへのアクセスを要求する外部コンピュータ・システムへのアドレッシングは、しばしば非常に複雑であるか、さらには不可能である。外部コンピュータ・システム自身がセキュリティ保護されていることがあり、可能性としては、接続確立のためにアドレッシング可能ではないからである。
さらに、たいていの場合、コンピュータ・ネットワーク・インフラストラクチャー内の処理コンピュータ・システムへのアクセスは、インターネットまたは別個のイントラネットを介して実施される(たとえばアプリケーションのブロック解除のために)。そのようなアクセスはしばしば、コンピュータ・ネットワーク・インフラストラクチャー(たとえばコンピューティング・センター)にアクセスする外部コンピュータ・システムは、(曖昧さのない)公共IPアドレスを使わないプライベート・アクセスからくることを特徴とする。例は、プロキシを介した、あるいはいわゆるNAT/PATマスク方法によるカスケード化された接続を含む(NAT=network address translation[ネットワーク・アドレス変換]、PAT=port address translation[ポート・アドレス変換])。
この結果、基本的には、コンピュータ・ネットワーク・インフラストラクチャー内の処理コンピュータ・システムから対応する外部コンピュータ・システムに対して接続が開始できないという状況が生じる。処理コンピュータ・システムは、外部コンピュータ・システムの正確なIPアドレスもポートも、そのマスキングのために、知らないからである。さらに、IPアドレスは通例プライベートであり、ルーティング・プロセスにおいて直接使うことはできない。加えて、通信において、通例はファイアウォールの背後でセキュリティ保護される。
本発明の目的は、技術的施策により、コンピュータ・ネットワーク・インフラストラクチャー内のセキュリティ保護されたコンピュータ・システムとの通信のための外部コンピュータ・システムのセキュリティ保護されたブロック解除を可能にし、それでいて、コンピュータ・ネットワーク・インフラストラクチャーにおける対応するコンピュータ・システムへの攻撃からの保護を改善することである。
第一の側面では、この目的は、請求項1の方法によって達成される。
コンピュータ・ネットワーク・インフラストラクチャー内のセキュリティ保護された処理コンピュータ・システムとの通信のために外部コンピュータ・システムをブロック解除する方法において、以下のステップが提案される。
第一に、コンピュータ・ネットワーク・インフラストラクチャーの外部に構成された外部コンピュータ・システムから、命令パケットが、コンピュータ・ネットワーク・インフラストラクチャー内の仲介コンピュータ・システムに送信される。命令パケットは、コンピュータ・ネットワーク・インフラストラクチャー内の処理コンピュータ・システムとの所望される通信のための外部コンピュータ・システムの命令を、仲介コンピュータ・システムに示す。たとえば、命令パケットは、いわゆるトークンとして構成されることができ、該トークンが外部コンピュータ・システムによって、ある送信プロトコルに従って、仲介コンピュータ・システムに渡される。命令パケットは、外部コンピュータ・システムの認証のための(可能性としては署名された)情報をも含んでいてもよい。
命令パケットの送信を契機として、ネットワーク・ポートのランダムなポート番号が、仲介コンピュータ・システムによって生成される。こうして、ランダムなポート番号がランダムに選択されたネットワーク・ポートを、処理コンピュータ・システムの本方法に基づくさらなるブロック解除のために、提供する。ランダムなポート番号の決定は、当業者に既知の偶然性の方法によって実施できる。
ランダムなポート番号は、仲介コンピュータ・システムによって、自動的に、外部コンピュータ・システムおよびコンピュータ・ネットワーク・インフラストラクチャー内の少なくとも一つの処理コンピュータ・システムに送信される。処理コンピュータ・システムは、少なくとも一時的に、前記外部コンピュータ・システムに対して、所定のネットワーク・ポートを閉じたままにする。よって、前記外部コンピュータ・システムによる、これらのネットワーク・ポートによるネットワークを介した処理コンピュータ・システムへのアクセスは、防止される。しかしながら、ランダムなポート番号または他の情報が処理コンピュータ・システムと仲介コンピュータ・システムとの間で交換されることができる。このプロセスは、仲介コンピュータ・システムと処理コンピュータ・システムとの間の共通のアクセス・ネットワークを介して、あるいは仲介コンピュータ・システムと処理コンピュータ・システムとの間でその目的のために設けられている特別な接続ネットワークを介して実施できる。
さらに、本方法によれば、ランダムなポート番号に対応するネットワーク・ポートが、処理コンピュータ・システムによる外部コンピュータ・システムとの通信のためにブロック解除され、その後、処理コンピュータ・システムのブロック解除されたネットワーク・ポートへの接続が、外部コンピュータ・システムによって確立される。
初期には、記載される方法において、処理コンピュータ・システムのすべての所定のネットワーク・ポートは外部コンピュータ・システムに対して、外部コンピュータ・システムによるアクセスのためには閉じられている。こうして、処理コンピュータ・システムは外部コンピュータ・システムに対してはカプセル化された(特別にセキュリティ保護された)システムのように振る舞う。ネットワークを介した外部コンピュータ・システムの処理コンピュータ・システムへのアクセスは、少なくともある種の動作条件のもとでは(有利には、ターゲットを絞ったブロック解除なしの、ここに記載される方法を実行する間は恒久的に)、可能ではない、または著しくより困難である。外部コンピュータ・システムによる処理コンピュータ・システムへの接続を確立しようとする試みは、この場合、処理コンピュータ・システムによって無視されるまたは破棄される。これは、特定のポート・フィルタ、ポート・ブロックおよび/またはファイアウォール規則によって達成できる。
有利には、処理コンピュータ・システムは、所定のネットワーク・ポートを、仲介コンピュータ・システムに対しても、少なくとも一時的に閉じたままにする。よって、仲介コンピュータ・システムによる、ネットワークを介した処理コンピュータ・システムへのアクセスは、これらのネットワーク・ポートによって防止される。この場合、仲介コンピュータ・システムによる処理コンピュータ・システムへの接続を確立しようとする試みは、処理コンピュータ・システムによって無視されるまたは破棄される。これは、特定のポート・フィルタ、ポート・ブロックおよび/またはファイアウォール規則、たとえば仲介コンピュータ・システムのIPアドレスを指定してのもの、によって達成できる。しかしながら、処理コンピュータ・システムは、前記ランダムなポート番号または他の情報を仲介コンピュータ・システムから取ってくるためには、仲介コンピュータ・システムにアクセスできる。
用語「所定のネットワーク・ポート」は、処理コンピュータ・システムにおけるセキュリティが重要なネットワーク・ポートの全部または選択されたもののみ、たとえばこの方法のために使われるネットワーク・ポートが、恒久的に(ランダムなポート番号を生成するときにこれらのポートは考慮されず、よって記載される方法によってブロック解除されることはない)または一時的に(ランダムなポート番号を生成するときにこれらのポートは考慮され、記載される方法に従って選択的にブロック解除できる)閉じられることを意味する。
これは、初期には、外部コンピュータ・システムとの通信をブロック解除するために処理コンピュータ・システム上で構成されているまたは利用可能なプログラムやサービスが、アドレッシング可能性または接続確立の目的で外部の対応するネットワーク・ポートを傾聴し、それにより潜在的なセキュリティ・ギャップ(たとえば、バッファ・オーバーフローまたはサービス拒否攻撃およびいわゆる分散式DoS攻撃のためのセキュリティ・ギャップ)を呈することがないという利点を提供する。このように、このコンテキストにおける「閉じられたネットワーク・ポート」は、これらのポートが「傾聴しているポート」ではない、すなわち外部接続確立が(本方法に基づく正当なブロック解除なしには)許可されないことを意味する。この場合、第三者(クラッカー)はネットワークを介して、たとえばUNIX(登録商標)ベースのシステムではセキュア・シェル・デーモン(SSH)、httpサービスまたは他のサービス/アプリケーションを介して、外部から処理コンピュータ・システムに対してログオンしたり認証したりすることはできず、処理コンピュータ・システム上で特定のアクションを実行することもできない。
それにもかかわらず、所定のユーザー・グループ(たとえばセキュリティ人員)のために処理コンピュータ・システムへのローカルなアクセスが構成されてもよい。しかしながら、他の第三者が処理コンピュータ・システムへのローカルなアクセスをもつことは防止される。
このように、記載される型に基づく処理コンピュータ・システムの一般的なカプセル化のため、ネットワークを介した攻撃はより複雑になる。決定的な攻撃オプション、すなわちそれぞれのシステムの開かれた(「傾聴している」)ネットワーク・ポートでサービスやプログラムを走らせることが抑制されるからである。このように、説明される方法では、特に、処理コンピュータ・システムでローカルに処理されるセキュリティが重要なデータは、攻撃から保護される。
コンピュータ・ネットワーク・インフラストラクチャーの外部の外部コンピュータ・システムとコンピュータ・ネットワーク・インフラストラクチャーの内部の処理コンピュータ・システムとの間の通信をブロック解除するために、本方法は、コンピュータ・ネットワーク・インフラストラクチャーの外部からの、処理コンピュータ・システムではなくコンピュータ・ネットワーク・インフラストラクチャー内の前記少なくとも一つの仲介コンピュータ・システムへのアクセスを許可する。仲介コンピュータ・システムは、少なくとも一つのアドレッシング可能な開いた(「傾聴している」)ネットワーク・ポートをもつ「開いた」システムとして、ネットワークを介してアクセス可能である。たとえば、これは、コンピュータ・ネットワーク・インフラストラクチャー内の処理コンピュータ・システムおよびコンピュータ・ネットワーク・インフラストラクチャー外の外部コンピュータ・システムのそれぞれが、仲介コンピュータ・システムにデータ・パケットまたは他の情報を(その時に「確立」されている接続を介して)記憶したりそこから取り出したりするために、仲介コンピュータ・システムにアクセスし、仲介コンピュータ・システムへの接続を確立するよう、仲介コンピュータ・システム上でプログラムが実行されるおよび/またはアプリケーション(サービス)が用意されることを意味する。セキュリティに関しては、そのような「開いた」仲介コンピュータ・システムは、伝統的な、個別的にセキュリティ保護されたコンピュータ・システムのように評価される。
このように、仲介コンピュータ・システムは、処理コンピュータ・システムと外部コンピュータ・システムとの間の通信のための(セキュリティ保護されているが傾聴している)ブローカーのはたらきをする。
有利には、コンピュータ・ネットワーク・インフラストラクチャー内での処理コンピュータ・システムと仲介コンピュータ・システムとの間の接続確立は内部ネットワークを介して実施され、内部ネットワークはたとえば、「仮想閉域網」(VPN)またはセキュア・シェル・ネットワーク(SSH)として、あるいはそれらの組み合わせとして、セキュリティ保護されてもよい。
コンピュータ・ネットワーク・インフラストラクチャー外の外部コンピュータ・システムからコンピュータ・ネットワーク・インフラストラクチャー内の仲介コンピュータ・システムへの接続確立はたとえば、インターネットまたは別個のイントラネット(たとえばクライアント・イントラネット)からのルーティングを介して実施される。たとえば、外部コンピュータ・システムは、NATおよび/またはPATルーターの背後に位置するクライアントであることができる。ここで、仲介コンピュータ・システムへの接続確立は、ローカルなクライアント・イントラネットから、クライアントのプライベートなソースIPアドレスを介して実施される。プライベートなソースIPアドレスは、ルーターにおいて、ルーターの公共IPアドレスをもってマスクされる。
説明される方法によれば、コンピュータ・ネットワーク・インフラストラクチャー内の初期にセキュリティ保護されている処理コンピュータ・システムとの通信のために外部コンピュータ・システムをブロック解除するために、ネットワーク・ポートのランダムなポート番号が、仲介コンピュータ・システムによって生成される。この生成は、外部コンピュータ・システムから仲介コンピュータ・システムへの命令パケットの送信によって開始される。
有利には、命令パケットは、たとえば処理コンピュータ・システムにおけるサービスまたはアプリケーションにアクセスするための、外部コンピュータ・システムと専用の処理コンピュータ・システムとの間の通信接続をブロック解除し、確立するための命令またはコマンドを含む。命令パケットは、外部コンピュータ・システムについての署名された情報をも含んでいてもよい。この情報は、処理コンピュータ・システム上でアドレッシングされるべきサービスまたは一般にプロセスについての情報を含んでいてもよい。命令パケットにおいて、外部コンピュータ・システムの認証のための情報を提供することも考えられる。命令パケットにおける対応する情報に署名することは、命令パケットの工作が複雑にされるという利点を提供する。有利には、命令パケットは、仲介コンピュータ・システムに送信される前に外部コンピュータ・システムにおいて暗号化される。
ランダムなポート番号の生成は、外部コンピュータ・システムから仲介コンピュータ・システムに命令パケットを送信するための接続確立の間に早くも自動的に実施されることができる。あるいはまた、外部コンピュータ・システムと仲介コンピュータ・システムとの間の接続確立後、すなわち接続確立に成功したあとにはじめて、ランダムなポート番号の生成を実行することも考えられる。
生成されたランダムなポート番号は、処理コンピュータ・システムにおける特定のネットワーク・ポートを与える。これが、外部コンピュータ・システムから処理コンピュータ・システムへの接続確立のための宛先ポートとしてブロック解除されることになる。ランダムなポート番号は任意的に、仲介コンピュータ・システムにおいて生成された後に暗号化される。暗号化は有利には、値が外部コンピュータ・システムおよび処理コンピュータ・システムによって(のみ)、本方法に基づくランダムなポート番号のさらなる処理のために、解読されることができるような仕方で実施される。
有利には、生成されたランダムなポート番号は、仲介コンピュータ・システムには(よって処理コンピュータ・システムにも)可視である、外部コンピュータ・システムに割り当てられることのできるIPアドレスによって補足される。このIPアドレスは、仲介コンピュータ・システムが直接、前記命令パケットを受け取った元のNATルーターのアドレスであってもよい。ランダムなポート番号は外部コンピュータ・システムに割り当てられることのできる該IPアドレスと一緒に、データ・パケットにパックされることができる。そのデータ・パケットがその後、仲介コンピュータ・システムから処理コンピュータ・システムに送信される。該データ・パケットは任意的に、命令パケットからの前記情報をも含んでいてもよく、よって、命令パケットと一致してもよい。有利には、このデータ・パケットも暗号化される。
ランダムなポート番号および可能性としては外部コンピュータ・システムに割り当て可能なIPアドレスを処理コンピュータ・システムに送信するために、処理コンピュータ・システムと仲介コンピュータ・システムとの間でネットワークを介した接続が確立されるプロセスがトリガーされる。
処理コンピュータ・システムが仲介コンピュータ・システムに対しても関連するネットワーク・ポートを閉じたままにし、仲介コンピュータ・システムからの接続確立を許さない場合には、ランダムなポート番号および可能性としては外部コンピュータ・システムに割り当て可能なIPアドレスを処理コンピュータ・システムに送信するためのプロセスが開始される。ここで、処理コンピュータ・システム自身が仲介コンピュータ・システムをネットワークを介してアドレッシングし、仲介コンピュータ・システムへの接続を確立する。
上記の情報(ランダムなポート番号および可能性としてはIPアドレス)は、仲介コンピュータ・システムにおいて呼び出され、自動的に仲介コンピュータ・システムから処理コンピュータ・システムに「確立された」接続を介して自動的に送信されることができる。有利には、「自動化された」送信は、第三者がそれに対して影響するいかなるすべももたないまたは影響するオプションが非常に複雑であるような仕方で設計される。これにより、交換されるデータまたは関与するコンピュータ・システムの一つが工作されるリスクが排除されるまたは著しく軽減される。
ランダムなポート番号の送信成功後、処理コンピュータ・システムにおける該ランダムなポート番号に対応するネットワーク・ポートがブロック解除される。外部コンピュータ・システムに割り当てられたIPアドレスをソースIPアドレスとしての送信の場合、このコンテキストでの用語「ブロック解除」は、このソースIPアドレスが、処理コンピュータ・システムの、前記ランダムなポート番号に対応する宛先ネットワーク・ポートにおいて、処理コンピュータ・システムへのおよび処理コンピュータ・システムとの(前記ソースIPアドレスと組み合わされた複数のネットワーク・ポートのうちの一つを介した)通信のために、選択的にブロック解除されることを意味する。
有利には、前記ランダムなポート番号によって決定されたブロック解除されたネットワーク・ポートは、処理コンピュータ・システムにおいて、あるサービスまたはデーモンにデフォルトで割り当てられているポートに再ルーティングされる。このようにして、対応するサービスは、一つ一つのブロック解除手順のためにランダムなポート番号について該サービスを再構成することなく、ブロック解除されたそのネットワーク・ポートを介してアドレッシング可能である。この割り当ては、動的に実施されることができ、あるいは前もって静的に決定されることができる。
処理コンピュータ・システムによって前記ランダムなポート番号によって決定されたネットワーク・ポートをブロック解除した後、最後に、この選択的にブロック解除されたネットワーク・ポートへの接続(新たなセッション)が、外部コンピュータ・システムによって(ブロック解除されたIPアドレスおよび特定のソース・ネットワーク・ポートを介して)確立される。この新しい確立された接続は、SSH接続、VPN接続またはそれらの組み合わせであってもよい。たとえば、SSH接続を確立し、その中で次いでVPN接続が確立されることが考えられる。
対応する接続確立を、所定の時間枠においてのみ許可することが有利である。時間枠は、用途に依存して短くてもよい(それぞれネットワーク・スピードに依存して、数ミリ秒または数秒、たとえば20秒まで、またさらには数分でもよい)。所定の時間枠内で外部コンピュータ・システムによって接続が確立されない場合には、処理コンピュータ・システムの選択的にブロック解除されたネットワーク・ポートは、セキュリティ上の理由により閉じられる。乱用的な接続確立のリスクや、たとえば同じNATルーターの背後に位置する(たまたま)同じIPアドレスをもつコンピュータ・システムによる開かれたネットワーク・ポートの悪用(たとえばポート・スキャンによる)のリスクを低減するためである。
本方法の一つの用途は、たとえばコンピュータ・ネットワーク・インフラストラクチャー内の処理コンピュータ・システムのターゲットを絞った(とはいえ制約され、ある程度セキュリティ保護された)ブロック解除を要求する外部クライアントのために、処理コンピュータ・システム上のアプリケーションをブロック解除することにある。たとえば、コンピュータ・ネットワーク・インフラストラクチャーはVPNサーバーであることができ、ブロック解除後、それに対してVPN接続が確立されることができる。コンピュータ・ネットワーク・インフラストラクチャーのある種のサービス、たとえば別のサーバーへのアクセスは、このVPN接続を介して可能である。
本稿に記載される方法の一般的な利点は、外部コンピュータ・システムの(たとえばポート・ノックを介した)工作的な要求に続いての処理コンピュータ・システムでのネットワーク・ポートの、安全でない、攻撃できる開放が防止されることにある。さらに、処理コンピュータ・システムは、(初期に)未知のソースを認証するためにコンピュータ・ネットワーク・インフラストラクチャーの外部への接続を確立する必要がない、または確立することができない。さらに、処理コンピュータ・システムが、相手が信頼できるか否かを知ることなく外部接続を許可してしまうことが防止される。
外部コンピュータ・システムとの通信をブロック解除する前には、上記のように、単に、対応するネットワーク・ポートをブロック解除するために、生成されたランダムなポート番号および可能性としては外部コンピュータ・システムのソースIPアドレスについての情報を取ってくるために、コンピュータ・ネットワーク・インフラストラクチャー内の内部の仲介コンピュータ・システムとのセキュリティ保護された通信が、処理コンピュータ・システムの側で実施される。それより前には、対応するネットワーク・ポートおよび可能性としてはソースIPアドレスは、ターゲットを絞った仕方で外部コンピュータ・システムとの通信のためにブロック解除されない。
たとえば同じNATルーターの背後に位置しているために前記外部コンピュータ・システムと(たまたま)同じIPアドレスを使う攻撃者は、外部コンピュータ・システムのために処理コンピュータ・システムにおけるネットワーク・ポートをブロック解除する限られた時間内に、たとえば接続確立の初期化フェーズにおいて、処理コンピュータ・システムに対する工作を実行するオプションをもつ。たとえば、攻撃者は、処理コンピュータ・システムへの攻撃を開始するためにいわゆる「ゼロデイ攻撃」を使うことができる。そのような攻撃の確率および可能性は、そのために想定される条件(処理コンピュータ・システムに見える同じIPアドレス、好適な時間スロットおよびゼロデイ攻撃のような操作オプションの存在およびそれへのアクセス)を考えると、非常に低いと評価されるべきである。
(仲介コンピュータ・システムにおいてそれぞれ生成されるランダムなポート番号のため)外部接続ごとにランダムにブロック解除されるネットワーク・ポートを使うことによって、好適な時点におけるかつ好適なネットワーク・ポートにおける攻撃の確率は、通常の変種に比べ、著しく低下する。攻撃のために必要とされるポート・スキャンも、著しくより込み入ったものになる。このように、処理コンピュータ・システムに対する攻撃の確率は、上記の型の方法に基づく施策によって、特に対応するネットワーク・ポートをブロック解除するためのランダムなポート番号の生成によって、極端に低下する。
有利には、それを介して外部コンピュータ・システムとのその後の通信が実施される、処理コンピュータ・システムの選択的にブロック解除されたネットワーク・ポートへの接続を確立したのちに、以下の追加的なステップが実行される:
・処理コンピュータ・システムと外部コンピュータ・システムとの間の通信を、処理コンピュータ・システムのブロック解除されたネットワーク・ポートと、外部コンピュータ・システムのネットワーク・ポートであって、確立された接続を通じて処理コンピュータ・システムに(ソース・ネットワーク・ポートとして)知られているものとに制約する。この施策により、複数のコンピュータ・システムの可能性としては並列な接続確立が互いに干渉しないことを注意しておく。
外部コンピュータ・システムの選択的なソース・ネットワーク・ポートへの制約は、他の通信が抑制されるという利点を提供する。こうして、外部コンピュータ・システムが処理コンピュータ・システムと通信できるのは、(両方の側での)個々のネットワーク・ポート、すなわち外部コンピュータ・システムのソース・ネットワーク・ポートおよび処理コンピュータ・システムのブロック解除された宛先ネットワーク・ポートに制約された仕方でのみである。外部コンピュータ・システムの選択的なネットワーク・ポートは、たとえば確立された接続による最後の送信のソース・ネットワーク・ポートであることができる。たとえば外部コンピュータ・システムがNATルーターの背後に位置している場合、やはり該NATルーターの背後に位置している権限のないシステムまたは攻撃者が、外部コンピュータ・システムと処理コンピュータ・システムとの間のすでに確立された接続に加えて(同じソースIPアドレスおよびNATルーターの異なるソース・ネットワーク・ポートを介して)処理コンピュータ・システムへの接続を確立できることが防止される。このようにして、上記の施策は、許諾された(個々の)ネットワーク接続を介した処理コンピュータ・システムへのアクセスの、ターゲットを絞った制約を許容する。他の許諾されていない接続または接続を確立しようとするその試みは、処理コンピュータ・システムにおいて、無視されるまたは考慮されない。
有利には、記載される型の方法において、以下のさらなる施策が実行される:
・外部コンピュータ・システムによって確立された処理コンピュータ・システムの選択的にブロック解除されたネットワーク・ポートへの接続を、外部コンピュータ・システムと処理コンピュータ・システムとの間の認証情報の交換に制約する、
・外部コンピュータ・システムによって送信された認証情報を検証する、
・認証情報の検証が成功であった場合、外部コンピュータ・システムによって確立された処理コンピュータ・システムの選択的にブロック解除されたネットワーク・ポートへの接続を、前記処理コンピュータ・システムへの、またはコンピュータ・ネットワーク・インフラストラクチャー内のさらなる処理コンピュータ・システムへのさらなるアクセスのために、ブロック解除する。
これらの施策により、外部コンピュータ・システムによって確立された処理コンピュータ・システムの選択的にブロック解除されたネットワーク・ポートへの接続は、初期には、認証情報の交換に制約される。この状態では、コンピュータ・ネットワーク・インフラストラクチャー内の処理コンピュータ・システムへの外部コンピュータ・システムのアクセス、特にコンピュータ・ネットワーク・インフラストラクチャー内のある種の所望されるサービスへのアクセスは、ブロックされるまたは著しく制約される。こうして、外部コンピュータ・システムと処理コンピュータ・システムとの間の接続は実際に確立されるが、認証情報の交換のため以外では、外部コンピュータ・システムによってまだ利用されることができない。
むしろ、外部コンピュータ・システムによる認証情報の送信がまず要求される。この送信された認証情報がコンピュータ・ネットワーク・インフラストラクチャー内で、たとえば処理コンピュータ・システム、さらなる処理コンピュータ・システムおよび/または接続を検査する別の認証エンティティ(たとえばファイアウォール)によって検証される。さらなるデータ交換のための外部コンピュータ・システムと処理コンピュータ・システムとの間の接続は、認証情報の肯定的な検証に際してのみブロック解除される。
外部コンピュータ・システムと処理コンピュータ・システムとの間の接続は、たとえば(認証情報の交換のほかは)所定のファイアウォール規則によって制約またはブロックされることができる。こうして、ファイアウォール規則によって、認証情報の定義されたデータ交換のみが許可される。さらに、外部コンピュータ・システムの、コンピュータ・ネットワーク・インフラストラクチャー内のさらなる処理コンピュータ・システムへの接続が、(これらのシステムとの要求される認証情報の交換の可能性のほかは)ファイアウォール規則によって制約またはブロックされることができる。たとえば、コンピュータ・ネットワーク・インフラストラクチャー内のさらなる処理コンピュータ・システムへの単に制約された接続確立は、その目的のために特にブロック解除されているこれらのシステム上のポート(たとえば、SSH接続のためのポート22)を介した認証情報の交換のために許可されてもよい。
送信された認証情報の肯定的な検証後、ファイアウォール規則は部分的にまたは完全に覆されることができる。それにより、外部コンピュータ・システムは最終的に、確立された接続を介して、コンピュータ・ネットワーク・インフラストラクチャー内の処理コンピュータ・システムまたはさらなるシステムのサービスへのアクセスを得る。たとえば、これは、コンピュータ・ネットワーク・インフラストラクチャー内の処理コンピュータ・システムに接続されたシステムの所望されるIPアドレスまたはネットワーク・ポートをブロック解除することによって実施されることができる。
この点で言及した施策の一つの利点は、外部コンピュータ・システムから処理コンピュータ・システムへの接続の確立後、外部コンピュータ・システムの認証の検証の間の外部コンピュータ・システムからの指令に由来する攻撃オプションが可能ではないまたは有意に複雑にされるような仕方で、接続は初期に制約されるという事実にある。これは、インフラストラクチャーの一部(たとえば外部コンピュータ・システムと処理コンピュータ・システムとの間の接続経路上のルーター)が攻撃者の監督下にある場合に特に有用である。
代替的な実施形態では、外部コンピュータ・システムと処理コンピュータ・システムとの間のネストされた接続が提供されてもよい。たとえば、まずSSH接続が、外部コンピュータ・システムから処理コンピュータ・システムへの接続の確立のために実行されることができる。次いで、確立されたSSHトンネル内にVPN接続が生成される、すなわち確立されることができる。このVPN接続では、別の認証プロセス(たとえば「https」)による認証が実行されることができる。互いにネストされた複数のVPN接続をもつことも考えられる。この場合、有利には、異なるアルゴリズムが使用される必要があるであろう。
たとえば、認証情報はいわゆる検証パケットにおいて外部コンピュータ・システムから処理コンピュータ・システムに送信されることができる。検証パケットを送ることは、接続が、正しい、権限のあるエンティティから(たとえばNATルーターの背後に位置する同じIPアドレスをもつまたは工作されたIPアドレスをもつ、権限のない第三者によってではなく)確立されたことを確実にする。こうして、上記の施策は、処理コンピュータ・システムの選択的な宛先ネットワーク・ポートをブロック解除した後、以前に前記命令パケットを介して対応する接続を要求したエンティティが実際に、処理コンピュータ・システムへの接続を確立する外部エンティティであることを保証する。
認証情報は、ある種の許諾および外部コンピュータ・システムの素性属性を含んでいてもよい。これらは処理コンピュータ・システムまたは他の認証エンティティにおける記憶された比較情報によって検証および確認される。そのような許諾または素性属性は、たとえば、外部コンピュータ・システムのハードウェアの特徴、外部コンピュータ・システムのある種のユーザーのバイオメトリック特徴およびパスワード(パスフレーズまたはクレデンシャル、鍵など)などを含んでいてもよい。
好ましくは、記載される型の方法において以下の追加的なステップが実行される:
・第一の乱数を外部コンピュータ・システムから仲介コンピュータ・システムに送信する、
・第二の乱数を仲介コンピュータ・システムによって生成する、
・第二の乱数を仲介コンピュータ・システムから外部コンピュータ・システムに送信する、
・第一および第二の乱数を、仲介コンピュータ・システムから処理コンピュータ・システムに送信する。
処理コンピュータ・システムが、関連するネットワーク・ポートを、仲介コンピュータ・システムに対しても、閉じたままにし、仲介コンピュータ・システムからの接続確立を許可しない場合には、第一および第二の乱数の処理コンピュータ・システムへの送信のためのプロセスが開始される。ここで、処理コンピュータ・システムは、仲介コンピュータ・システムの第一および第二の乱数を取ってくるために仲介コンピュータ・システムにアクセスする。
関与するコンピュータ・システム(外部コンピュータ・システム、仲介コンピュータ・システムおよび処理コンピュータ・システム)の間での乱数の生成および送信は、上記の型の認証情報の交換とともに実施される、あるいは特別な種類の認証情報を形成することができ、有利には、仲介コンピュータ・システムにおいて、コンピュータ・ネットワーク・インフラストラクチャーに対する外部コンピュータ・システムの有効確認および工作の試みまたは記載されるプロセスの偽装の検証の両方の役に立つ。乱数は外部コンピュータ・システムを個々にブロック解除するためにランダムに生成されるので、このブロック解除についてのみ有効である。結果として、将来のブロック解除プロセスの工作のための乱数の再現される偽装は、きわめて複雑になるまたはほとんど不可能になる。外部コンピュータ・システムおよび仲介コンピュータ・システムの両方においてそれぞれの乱数を生成するため、関与するコンピュータ・システムの有効確認または個々のプロセス段階の検証が、処理コンピュータ・システムによって可能である。乱数の生成は、当業者に既知の偶然性の施策によって実施できる。
有利には、乱数は、それらが生成される関与するコンピュータ・システムによって、処理コンピュータ・システムのみが解読できるような仕方で、暗号化される。暗号化は、たとえば非対称暗号法(たとえば公開鍵および秘密鍵を含む方法)によって実施されることができる。これは、処理コンピュータ・システム以外のコンピュータ・システムがそれぞれの乱数を読むことまたさらには工作することを困難にする。その目的のためには、まず暗号を克服しなければならない。
以下では、乱数の機能を、例を参照して、より詳細に説明する。第一の乱数Z1は外部コンピュータ・システムによって生成され、仲介コンピュータ・システムに送信される。乱数Z1はたとえば命令パケットに含められることができる。ここで、Z1は、内容が処理コンピュータ・システムによってのみ読まれることができるような仕方で暗号化される。外部コンピュータ・システムから仲介コンピュータ・システムへの命令パケットの送信中または送信後、第二の乱数Z2が仲介コンピュータ・システムによって生成される。やはりZ2は、処理コンピュータ・システムだけが解読できるような仕方で暗号化される。Z2は、命令パケットの送信中または送信後、仲介コンピュータ・システムから外部コンピュータ・システムに送信される。こうして、外部コンピュータ・システムと仲介コンピュータ・システムとの間でのZ1およびZ2の交換後は、二つの乱数Z1およびZ2は両方のコンピュータ・システムに存在する。一つはそのコンピュータ・システム自身で生成されたものであり、もう一つは他方のコンピュータ・システムで生成されたものである。ここで、Z1およびZ2は暗号化されているので、Z1は仲介コンピュータ・システムが読むことはできず、Z2は外部コンピュータ・システムが読むことはできない。Z1およびZ2は、さらなるステップにおいて、仲介コンピュータ・システムから処理コンピュータ・システムに(他の情報と一緒に)送信される。処理コンピュータ・システムでは、乱数Z1およびZ2はその後、後述するように、検証されることができる。
有利には、第一の乱数Z1は外部コンピュータ・システムの署名で署名される。さらに、仲介コンピュータ・システムにおいて生成された第二の乱数Z2は、送信に先立って、仲介コンピュータ・システムの署名で署名される。生成するコンピュータ・システムにおける乱数のそれぞれの署名は、それらの乱数が、生成したコンピュータ・システムに関して検証できるという利点をもつ。結果として、他の、可能性としては信頼できないコンピュータ・システムによるそれらの乱数の偽装に対して一定のセキュリティが提供される。たとえば、署名は、対応するコンピュータ・システムの秘密鍵によって実施できる。
好ましくは、乱数の署名は、外部コンピュータ・システムから仲介コンピュータ・システムへの署名された第一の乱数Z1の送信後、第一の乱数Z1の署名が、仲介コンピュータ・システムの別の署名で署名されることにおいて、また仲介コンピュータ・システムから外部コンピュータ・システムへの署名された第二の乱数Z2の送信後、第二の乱数Z2の署名が、外部コンピュータ・システムの別の署名で署名されることにおいて、拡張される。このようにして、署名された乱数Z1およびZ2は、それぞれの他方のコンピュータ・システムによって今一度署名される。こうして、外部コンピュータ・システムと仲介コンピュータ・システムとの間での乱数Z1およびZ2の転送の順序が、たとえば処理コンピュータ・システムにおけるさらなる検証のために考慮されることができる。
有利には、外部コンピュータ・システムによって処理コンピュータ・システムの選択的にブロック解除されたネットワーク・ポートへの接続を確立した後、以下のステップが実行される:
・第一および第二の乱数を外部コンピュータ・システムから直接、処理コンピュータ・システムに、確立された接続によって送信する、
・仲介コンピュータ・システムによって処理コンピュータ・システムに送信された第一および第二の乱数と、外部コンピュータ・システムによって処理コンピュータ・システムに直接送信された第一および第二の乱数との間のそれぞれの一致を、処理コンピュータ・システムにおいて検証する。
こうして、記載される施策のため、最終的には、処理コンピュータ・システムにおいて、乱数(Z1およびZ2)の二つの対がある。一方の対は仲介コンピュータ・システムから処理コンピュータ・システムに送信されたものであり、他方の対は外部コンピュータ・システムから処理コンピュータ・システムに送信されたものである。乱数の二つの対の間の一致、具体的には二つの第一の乱数(Z1)の間の一致および二つの第二の乱数(Z2)の間の一致が、処理コンピュータ・システムにおいて検証されることができる。特に、乱数は処理コンピュータ・システムにおいて解読され、外部コンピュータ・システムと仲介コンピュータ・システムとの間での乱数の交換が(上記のような)乱数の複数の署名によって、処理コンピュータ・システムによって理解される。さらに、それぞれの乱数の値は互いに比較される。
有利には、処理コンピュータ・システムによる第一および第二の乱数(Z1およびZ2)のそれぞれの一致の上記の検証が否定的であるときは、対応するネットワーク・ポートをブロック解除した後に確立された外部コンピュータ・システムと処理コンピュータ・システムとの間の接続は、処理コンピュータ・システムによって切断される。この場合、処理コンピュータ・システムは、これが工作の試みであるという想定に立って行動し、安全性の理由により、外部コンピュータ・システムへの接続を中断する。
外部コンピュータ・システムをブロック解除することの工作は、関与するコンピュータ・システムの間で複数の乱数を生成し、交換し、検証するという記載される施策によって、きわめて複雑にされる。ここで、外部コンピュータ・システムによる工作の試みおよび仲介コンピュータ・システムによる工作の試みの両方が、処理コンピュータ・システムによって、乱数の検証によって検出され、対応する施策が講じられる(外部接続の中断)。
上記のように、処理コンピュータ・システムが、関連するネットワーク・ポートを、仲介コンピュータ・システムに対しても、閉じたままにし、仲介コンピュータ・システムからの接続確立を許可しない場合には、仲介コンピュータ・システムから処理コンピュータ・システムへのランダムなポート番号または他の情報の送信は有利には以下のステップを含む:
・仲介コンピュータ・システムからまたは外部コンピュータ・システムから処理コンピュータ・システムに所定のデータ・シーケンスを送る。ここで、処理コンピュータ・システムの所定のネットワーク・ポートは閉じられており、該シーケンスは、所定の順序で、処理コンピュータ・システムの一つまたは複数のネットワーク・ポートをアドレッシングする、
・送られたデータ・シーケンスが処理コンピュータ・システムにおけるあらかじめ定義されたシーケンスに一致するかどうかを検証する、
・送られたシーケンスの検証が肯定的であれば、処理コンピュータ・システムによるランダムなポート番号または他の情報の送信を引き起こし、処理コンピュータ・システム自身が仲介コンピュータ・システムへの接続を確立し、仲介コンピュータ・システムからランダムなポート番号または他の情報を取ってくる。
これらの施策は、基本的には、処理コンピュータ・システムのネットワーク・ポート(当該方法に関連するもの)が上記した意味で初期には閉じられており、外部からの処理コンピュータ・システムへの接続の確立をブロックするもしくは工作するアクセスを著しく複雑にするという利点をもつ。処理コンピュータ・システムは、すべての外部コンピュータ・システムについて(ある種のソースIPアドレスが上記の諸ステップに従ってブロック解除される短い期間を除いて)恒久的に閉じたネットワーク・ポートを有しており、あらゆる接続確立をブロックする。この場合、仲介コンピュータ・システムに対する接続確立もブロックされる。
ブロック解除されるべき外部コンピュータ・システムの認証のための処理コンピュータ・システムによるランダムなポート番号または他の情報の送信の開始は、ランダムなポート番号または他の情報を処理コンピュータ・システムに(たとえばUNIXベースのコマンド「Secure copy」〔安全なコピー〕scpを介して)送信するための自動化されたプロセスであることができる。該プロセスによれば、処理コンピュータ・システムは自身で仲介コンピュータ・システムへの接続を確立し、ランダムなポート番号または他の情報を取ってくる。このプロセスは、所定のデータ・シーケンスが処理コンピュータ・システムに送られた後に、このデータ・シーケンスがあらかじめ定義されているシーケンスに一致することを条件として、処理コンピュータ・システムによって開始されることができる。シーケンスを送るコンピュータ・システムは、仲介コンピュータ・システムまたは外部コンピュータ・システムであることができる。シーケンスを送るコンピュータ・システムのIPアドレスは、処理コンピュータ・システムにおいて静的に定義されていることができ、あるいは処理コンピュータ・システムのカーネルに対して既知である、潜在的なシーケンス送信元コンピュータ・システムの諸ソースIPアドレスから動的に取られることができる。
すでに上述したように、そのような方法は用語「ポート・ノック」のもとで知られている。上述した諸ステップは、いわゆるノック・デーモンによって実行されることができる。これは、たとえばポート・ノックを可能にするプログラムである。ノック・デーモンは、処理コンピュータ・システムのカーネルによって、カーネルではさらに評価されなかった到着するデータ・パケット(データ・シーケンス)について通知され、処理コンピュータ・システムに送られたデータ・シーケンスを検証し、送られたデータ・シーケンスがあらかじめ定義されたデータ・シーケンスに一致する場合に、(たとえばスクリプト/プログラムを開始することによって)仲介コンピュータ・システムからコンピュータ・システムへのランダムなポート番号または他の情報の制御された送信を開始する。このように、上記のプロセスは、処理コンピュータ・システムがアドレッシング可能なプログラムをもつ開いたネットワーク・ポートを利用可能に保持しておく必要なしに、ランダムなポート番号または他の情報を仲介コンピュータ・システムから処理コンピュータ・システムに送信する/コピーすること――ネットワークを介して仲介コンピュータ・システム上の対応するサービスをアドレッシングする処理コンピュータ・システムによってアクティブ化されるプロセス――を可能にする。
上記のポート・ノックの代替または追加として、処理コンピュータ・システム自身が、上記の意味での一つまたは複数の交換すべき情報が利用可能であるかどうかについて、仲介コンピュータ・システムを定期的にポーリングすることも考えられる。もしそうであれば、該情報の仲介コンピュータ・システムから処理コンピュータ・システムへの対応する送信が、上記のように開始されることができる。仲介コンピュータ・システムまたは外部コンピュータ・システムの側でポート・ノックが実行されなかったある時間期間を超えたら、処理コンピュータ・システムがポーリングを実行することも考えられる。それによりポート・ノック問題は検出されることができ、コンピュータ・ネットワーク・インフラストラクチャーの機能が維持される。
前述した解決策(ポート・ノック、ポーリング)への代替として、仲介コンピュータ・システムと処理コンピュータ・システムとの間に特別な接続ネットワークを設けることも考えられる。ここで、処理コンピュータ・システムが、この特別な接続ネットワークを介してアドレッシング可能であるために、少なくとも一つのネットワーク・ポートを開いておく。この場合、仲介コンピュータ・システムから処理コンピュータ・システムへの交換されるべき情報は、該接続ネットワークを介して送信されることができる。有利には、外部コンピュータ・システムと仲介コンピュータ・システムとの間の接続のために提供されるのとは異なるプロトコルがここで使われることができる。そのようなプロトコルの変化も、ネットワーク外部からの工作に対するセキュリティを高める。
もう一つの側面では、上記の目的は、請求項10の分散式コンピュータ・ネットワークによって達成される。分散式コンピュータ・ネットワークは、少なくとも一つの仲介コンピュータ・システムおよび少なくとも一つの処理コンピュータ・システムを含むコンピュータ・ネットワーク・インフラストラクチャーを有する。さらに、前記分散式コンピュータ・ネットワークにおいて、前記コンピュータ・ネットワーク・インフラストラクチャーの外部に位置する少なくとも一つの外部コンピュータ・システムが構成される。
外部コンピュータ・システムは、処理コンピュータ・システムとの通信を指令するために命令パケットを仲介コンピュータ・システムに送信するよう構成されている。仲介コンピュータ・システムは、自動化された仕方でネットワーク・ポートのランダムなポート番号を生成し、該ランダムなポート番号を処理コンピュータ・システムおよび外部コンピュータ・システムの両方に送信するよう構成されている。
処理コンピュータ・システムは、所定のネットワーク・ポートを、少なくとも一時的に閉じたままにするよう構成されているアクセス制御ユニットを有する。それにより、外部コンピュータ・システムによる、これらのネットワーク・ポートによるネットワークを介した処理コンピュータ・システムへのアクセスは、防止される。だが、ランダムなポート番号または他の情報を交換するためには、処理コンピュータ・システムと仲介コンピュータ・システムとの間の接続確立は許可される。
さらに、処理コンピュータ・システムのアクセス制御ユニットは、外部コンピュータ・システムとの通信のために、ランダムなポート番号に対応するネットワーク・ポートをブロック解除し、処理コンピュータ・システムの選択的にブロック解除されたネットワーク・ポートへの接続を確立した後、処理コンピュータ・システムと外部コンピュータ・システムとの間の通信を、処理コンピュータ・システムのブロック解除されたネットワーク・ポートおよび確立された接続によって処理コンピュータ・システムに知られた外部コンピュータ・システムのネットワーク・ポートに制約するよう構成される。
有利には、そのような分散式コンピュータ・ネットワークは、上記の型の方法を実行するよう構成される。
上記の方法のコンテキストにおいて述べた利点は、この型の分散式コンピュータ・ネットワークからも帰結する。上記の方法のコンテキストにおいて説明したすべての有利な施策は、分散式コンピュータ・ネットワークの対応する構造的特徴に当てはまり、逆も成り立つ。
さらなる側面では、上記の目的は、一つまたは複数のコンピュータ・システム上で実行されるよう構成されており、実行されたときに、上記の型の方法を行なう請求項12記載のコンピュータ・プログラム・プロダクトによって達成される。
さらなる有利な実施形態は従属請求項および以下の図面の記述において開示される。
外部コンピュータ・システムをブロック解除するための第一の構成に基づくコンピュータ・ネットワーク・インフラストラクチャーの少なくとも一部の概略図である。 外部コンピュータ・システムをブロック解除するための第二の構成に基づくコンピュータ・ネットワーク・インフラストラクチャーの少なくとも一部の概略図である。 外部コンピュータ・システムをブロック解除するための第三の構成に基づくコンピュータ・ネットワーク・インフラストラクチャーの少なくとも一部の概略図である。
図1は、図1ではタスク・サーバーとして宣言されている仲介コンピュータ・システムと、図1ではターゲット・サーバーとして宣言されている処理コンピュータ・システムとを有するコンピュータ・ネットワーク・インフラストラクチャーの少なくとも一部の概略図を示している。ターゲット・サーバーは、たとえば外部コンピュータ・システムからのVPN接続を選択的に確立するためのVPNサーバーであってもよい。タスク・サーバーおよびターゲット・サーバーはネットワークNを介して互いと通信するとともに、データを交換することができる。
図示したトポロジーでは、タスク・サーバーはいわゆる「オープンな」システムとして構成されている。つまり、タスク・サーバーは、このコンテキストにおいて記述される目的のために、インターネットまたは別個のイントラネット(図1ではクラウドとして示されている)からおよびネットワークNを介しての両方のアドレッシング可能性または接続確立を可能にするために、少なくとも一つのネットワーク・ポートを開いたままにする。タスク・サーバー上ではサービスまたはアプリケーションが実行される。たとえば、このコンピュータ・システムでは、ネットワーク接続はVPN(仮想閉域網)またはSSH(セキュア・シェル)またはそのようなセキュリティ施策の組み合わせを介して制約されることができ、それにより、専用のコンピュータ・システムとの所定の暗号化されたネットワーク接続のみが許可される。タスク・サーバーは、コンピュータ・ネットワーク・インフラストラクチャー内でターゲット・サーバーへのデータ・パケットの通信および転送のために仲介者のはたらきをする。
タスク・サーバーとは対照的に、ターゲット・サーバーは一般に、ネットワークNに対して閉じられたネットワーク・ポートをもち、特別にセキュリティ保護されたシステムとして振る舞う。これは、ターゲット・サーバーにおけるネットワークNに対するクロスハッチを付した入出力レベルによって概略的に示されている。つまり、ターゲット・サーバーへのアドレッシング可能性または接続確立のためのいかなる走っているプログラムまたはサービスも、ターゲット・サーバーのネットワークNに対するネットワーク・ポートにおいてネットワークNを介してでは、外部からは可視や利用可能でない。むしろ、ネットワークNを介したターゲット・サーバーへの不正なアクセスは、ターゲット・サーバーのそれぞれの閉じたネットワーク・ポートのため、可能ではない。認証されない接続は、たとえば好適なファイアウォール規則(たとえばiptables)によって――ターゲット・サーバー自身においてまたは上流のシステム(たとえばルーター)において――抑制される。しかしながら、ローカルに所定のアクションを実行するために、あるユーザー・グループがローカルにターゲット・サーバーにアクセスできることが考えられる。
ターゲット・サーバーは、インターネットまたは外部のイントラネットに対して初期に閉じられたネットワーク・ポートをも有する。これは、ターゲット・サーバーにおけるインターネットまたは外部のイントラネットに対するハッチを付した入出力レベルによって概略的に示されている。しかしながら、ターゲット・サーバーへの通信接続を確立するために外部のコンピュータ・システムをブロック解除するために、外部のコンピュータ・システムからターゲット・コンピュータ・システムへの接続を許可するために、ターゲット・サーバーにおける一つのネットワーク・ポートがインターネットまたは外部のイントラネットに対して選択的に開かれることができる。これは、下記でより詳細に説明する。
所定のプロセスが、タスク・サーバーとターゲット・サーバーとの間のコンピュータ・ネットワーク・インフラストラクチャー内の通信のために構成される。ターゲット・サーバーからタスク・サーバーに直接、確立された接続を介して命令が送信されることができる。上記のように、タスク・サーバーはネットワークNを介してターゲット・サーバーから直接、アドレッシング可能だからである。
タスク・サーバーまたはコンピュータ・ネットワーク・インフラストラクチャーの外側の外部コンピュータ・システムから始まってターゲット・サーバーに向かう方向において、まずポート・ノック・プロセスが実行される必要がある。その目的に向け、パケット・データの所定のシーケンスがタスク・サーバーからまたは外部コンピュータ・システムからターゲット・サーバーに送られる。ここで、ターゲット・サーバーのネットワーク・ポートは閉じられており、シーケンスは、一つまたは複数のネットワーク・ポートを所定の順序でアドレッシングする。その後、送られたシーケンスはターゲット・サーバーにおいて、あらかじめ定義されたシーケンスに一致するかどうかが検証される。検証が成功であれば、ターゲット・サーバーとタスク・サーバーとの間で、ターゲット・サーバーから始まりタスク・サーバーに向かう接続が確立され、対応するデータ・パケットおよび/または確立された接続についての命令の送信が開始される。
具体的には、ターゲット・サーバーは、タスク・サーバーから、送信されるべきデータ・パケット(そこに情報が含まれている)を取ってくるプロセスを開始する。そのようなプロセスは、たとえばUNIXベースの「安全なコピー」(scp)コマンドを介して実施できる。このようにして、コンピュータ・ネットワーク・インフラストラクチャー内のターゲット・コンピュータ・システムの閉じたネットワーク・ポートにもかかわらず、関与するコンピュータ・システムはネットワークNを介して互いと通信すること、データ・パケットを転送することおよび/または命令を出すことができる。
以下では、コンピュータ・ネットワーク・インフラストラクチャー内のセキュリティ保護されたターゲット・サーバーとコンピュータ・ネットワーク・インフラストラクチャー外の外部コンピュータ・システムとの間で通信をブロック解除する方法を、図面で参照符号1ないし3によって示されている複数の方法ステップによって説明する。
ステップ1では、外部コンピュータ・システムが、インターネットおよび/またはコンピュータ・ネットワーク・インフラストラクチャー(ネットワークN)から分離されているイントラネットを介して、ターゲット・サーバーとの通信がブロック解除されることを要求する。たとえば、外部コンピュータ・システムは、支部を接続する装置(企業ネットワークの接続)またはクライアントであって、コンピュータ・ネットワーク・インフラストラクチャー内のターゲット・サーバー上のアプリケーションをブロック解除することを意図しているものであることができる。しかしながら、この時点では、ターゲット・サーバーは、外部コンピュータ・システムのための開いたネットワーク・ポートをもたず、外部接続確立を許可しない。
たとえば、外部コンピュータ・システムは、NAT/PATルーター(図示せず)の背後に位置しており、該ルーターが、該ルーターの(曖昧さのない)公共IPアドレスをもって外部コンピュータ・システムのローカルなプライベートIPアドレスをマスクすることがある。しかしながら、このため、外部コンピュータ・システムは、ターゲット・サーバーによって直接アドレッシング可能ではない。ターゲット・サーバーは外部コンピュータ・システムの正確な(プライベート)IPアドレスを知らず、また外部コンピュータ・システムは典型的には一つまたは複数のファイアウォールによって保護されているからである。
ターゲット・サーバーとの通信をブロック解除するためには特別な方法が実行される必要がある。その目的に向け、外部コンピュータ・システムはステップ1で、インターネット/イントラネット(図1のクラウド記号を参照)を介してタスク・サーバーへの接続を確立し、こうして確立された接続を介して、命令パケットを、コンピュータ・ネットワーク・インフラストラクチャー内の外部からアドレッシング可能なタスク・サーバーに送る。タスク・サーバーでは、このパケットの送信のために、(たとえばVPNおよび/またはその他を介して)外部コンピュータ・システムの認証が必要とされることができる。
命令パケットは、ターゲット・サーバーとの通信のために外部コンピュータ・システムをブロック解除するための対応するプロセスを実行するための、仲介コンピュータ・システムへの命令を含んでいる。命令パケットは、外部コンピュータ・システムからタスク・サーバーに送られるトークンとして構成されることができる。命令パケットは、ターゲット・サーバーにおける外部コンピュータ・システムの認証のための署名された情報をも含んでいてもよい。この署名された情報はたとえば、外部コンピュータ・システムおよび/または別個のキー・コンピュータ・システム(図示せず)の署名を含むことができる。ここで、キー・コンピュータ・システムは、ターゲット・サーバーへのアクセスのために許可されたコンピュータ・システムとして外部コンピュータ・システムを判別し、署名するためのセキュリティ・エンティティを表わす。分離したセキュリティ・エンティティとしての別個のキー・コンピュータ・システムは、外部コンピュータ・システムだけでの認証が偽装されることができないまたはきわめて困難になるという利点をもつ。このことは、ターゲット・コンピュータを通信のために少なくとも部分的にブロック解除させることを意図する外部コンピュータ・システムが、そうすることを実際に許諾されていることを保証する。
さらに、命令パケット内の署名された情報は、外部コンピュータ・システムについての情報(たとえば外部コンピュータ・システムがどんなサービスにアドレッシングすることを意図しているか)および/または可能性としてはブロック解除または該ブロック解除後に実行されるべきターゲット・コンピュータ・システム内のプロセスを所定の仕方で実行するための実装パラメータをも含んでいてもよい。命令パケットは、(ユーザーの)パスワードから生成されたデータ、たとえばハッシュまたは署名をも含んでいてもよい。任意的に、ターゲット・サーバーにおけるさらなるまたは最終的な認証が可能である。
さらに、命令パケットは、外部コンピュータ・システムによって生成され、外部コンピュータ・システムの署名をもって署名された第一の乱数Z1(図示せず)を含んでいる。ここで、Z1は外部コンピュータ・システムにおいて、ターゲット・サーバーのみが内容を読むことができるような仕方で暗号化される。外部コンピュータ・システムからタスク・サーバーへの命令パケットの送信中または送信後、第二の乱数Z2(やはり図示せず)がタスク・サーバーによって生成され、タスク・サーバーの署名をもって署名される。やはりZ2は、ターゲット・サーバーのみが解読できるような仕方で暗号化される。Z2はタスク・サーバーから外部コンピュータ・システムに、確立された接続を介して、命令パケットの送信中または送信後に、送信される。こうして、外部コンピュータ・システムと仲介コンピュータ・システムとの間でのZ1およびZ2の交換後は、二つのコンピュータ・システムのそれぞれにおいて、二つの乱数Z1およびZ2が存在する。
乱数Z1およびZ2の署名は、それぞれ他方のコンピュータ・システム(それを生成したものではないほう)において今一度、署名をもって署名される。つまり、署名された乱数Z1はタスク・サーバーにおいてタスク・サーバーのさらなる署名をもって署名され、署名された乱数Z2は外部コンピュータ・システムにおいて外部コンピュータ・システムのさらなる署名をもって署名される。これは、外部コンピュータ・システムとタスク・サーバーとの間での乱数(Z1およびZ2)の転送の順序が、ターゲット・サーバーにおけるさらなる検証のために、理解されることができるようにする。
外部コンピュータ・システムからタスク・コンピュータ・システムに送信された命令パケットによって開始されて、タスク・サーバーは、外部コンピュータ・システムとの通信のためにターゲット・サーバーにおいて選択的にブロック解除されるべきネットワーク・ポートのランダムなポート番号を生成する。生成されたランダムなポート番号は、可視のソースIPアドレスによって補足される。該可視のソースIPアドレスは、外部コンピュータ・システムに割り当てられていることができ、たとえばタスク・サーバーに命令パケットを送ったNATルーターの公共IPアドレスである。このようにして、ターゲット・サーバーは、その後の方法において、この補足されたソースIPアドレスが一時的にブロック解除されるべきであることを知る。前記生成されたランダムなポート番号と、前記可視のソースIPアドレスと、タスク・サーバーにおいて存在する前記多重に署名された乱数Z1およびZ2の対が、ターゲット・サーバーへの送信のためにデータ・パケットにパックされる。
ステップ2では、タスク・サーバーは、(上記で何度か述べた)ポート・ノックの意味でのノック信号をターゲット・サーバーに、ネットワークNを介して送る。ノック信号の所定のデータ・シーケンスが、サービス(たとえばノック・デーモン)を介してターゲット・サーバーの閉じたネットワーク・ポートにおいて評価され、あらかじめ定義されたデータ・シーケンスと比較される。それらのシーケンスが一致すれば、タスク・サーバーにおいて存在する前記情報をさらに処理するために、ターゲット・サーバーにおいて、たとえばスクリプトまたはプログラムが開始される。ステップ2のこれらの施策(ターゲット・サーバーでのノック)は、さらなるアクションのための情報がタスク・サーバーにおいて利用可能であるという紹介をどうにかしてターゲット・サーバーに呈示する。
その後、ターゲット・サーバーは、タスク・サーバーへのネットワークNを介した接続確立を引き起こし、上記の情報からなるデータ・パケットをタスク・サーバーからターゲット・サーバーに、確立された接続を介して送信するためのプロセスを開始する。そのようなプロセスは、たとえばUNIXベースのscpコマンドを介して実施できる。次に、データ・パケットはタスク・サーバーからターゲット・サーバーにコンピュータ・ネットワーク・インフラストラクチャーのネットワークNを介して送信され、ターゲット・サーバーにおいて評価される。任意的に、データ・パケットは、ターゲット・サーバーにおいて、有効性に関して検証される。その目的に向け、所定の検証ステップが実行されることができる。
本方法のさらなる過程において、ターゲット・サーバーに知られているソースIPアドレスが、前記データ・パケットによって、(外部の要求元のコンピュータ・システムに割り当てられることのできる)外部ソースIPアドレスとしてブロック解除される(上記参照)。その目的に向け、ターゲット・コンピュータ・システムは、タスク・サーバーのデータ・パケット内の生成されたランダムなポート番号に対応する、インターネット/外部イントラネットに向かう方向の宛先ネットワーク・ポートをブロック解除する。ターゲット・サーバーの他のネットワーク・ポートは、外部コンピュータ・システムまたはNATの関連するIPアドレスについて恒久的に閉じたままであり、ターゲット・サーバーにおけるいかなる外部からのアドレッシング可能性も許可しない。こうして、この段階では、ターゲット・サーバーが、外部コンピュータ・システムの前記ソースIPアドレスから(ここからのみ)発する、タスク・サーバーにおいて生成されたランダムなポート番号によって決定される宛先ネットワーク・ポートにおける接続確立についてのみ、アドレッシング可能である。さらに、必要であれば、ブロック解除された宛先ネットワーク・ポートから、ターゲット・サーバーにおけるアドレッシング可能なサービスまたはアドレッシング可能なアプリケーションに割り当てられることのできるネットワーク・ポートへのポート転送(port forwarding)が行なわれる。
次のステップ3は、有利にはターゲット・サーバーにおいて選択的な宛先ネットワーク・ポートをブロック解除した後の固定的にあらかじめ定義された(短い)時間枠内で実施される必要がある。ステップ3では、インターネット/イントラネットからコンピュータ・ネットワーク・インフラストラクチャーにアクセスできる外部コンピュータ・システムは、ターゲット・サーバーの開かれた宛先ネットワーク・ポートへの新たな接続(「外部の既知のソースIPアドレス/選択されたソース・ネットワーク・ポートの組み合わせをもつ新たなセッション)を確立する。たとえばあらかじめ定義された時間枠内に外部コンピュータ・システムの側でそのような接続確立が実施されない場合には、ターゲット・サーバーの、本方法に従って選択的に開かれている宛先ネットワーク・ポートが、関連するIPアドレスについて、再び閉じられる(同じ時間枠内で要求している同じソースIPアドレスをもつ他の外部コンピュータ・システムがないとして)。それにより、ターゲット・サーバーは、同じソースIPアドレスをもつすべての外部コンピュータ・システムにとって、もはやアドレッシング可能ではない(初期状態)。それにかかわらず、異なるIPアドレスをもつ外部コンピュータ・システムは、本方法の過程全体にわたり、ターゲット・サーバーへの接続を確立することができない。
他方、時間内に新たなセッションが確立される場合には、外部コンピュータ・システムに存在している署名された乱数Z1およびZ2の対は再び、外部コンピュータ・システム(既知のIPアドレスによる)とターゲット・サーバーとの間のこうして確立された接続を介して、今や選択的に開かれたターゲット・サーバーに直接、(予備的に)開かれたデータ・チャネルによって送信される。こうして、この施策の実行後は、乱数Z1およびZ2の二つの対がターゲット・サーバーに存在する。タスク・サーバーから送信された一つの対と、外部コンピュータ・システムから送信された一つの対である。
二つの対のそれぞれの乱数Z1およびZ2は、ターゲット・サーバーにおいて検証される。検証は、予期されるシステムおよびユーザーに関する乱数の署名の検査および/または乱数Z1およびZ2の解読された値が一致するかどうかに関する検証を含んでいてもよい。検証は、確立された接続が実際に、ターゲット・サーバーをブロック解除するよう前に要求した外部コンピュータ・システムによって(かつ該システムによってのみ)確立されたのであり、(たたたま)同じソースIPアドレスをもつ攻撃者の、工作された可能性のある他の何らかのコンピュータ・システムによって確立されたのではないことに関するセキュリティ施策である。タスク・サーバーでの可能な工作の試みさえ、乱数の検証によって検出できる。上記したような乱数Z1およびZ2の多重署名のため、乱数のどの転送で工作がなされたかまたはエラーが発生したかを判別できる。
具体的には、検証は、ターゲット・サーバーにおいてブロック解除されたソースIPアドレスをもつNATルーターの背後に位置しており該ブロック解除を攻撃としてのターゲット・サーバーへの工作アクセスのために使うつもりでいる攻撃者または工作する仕方でタスク・サーバーをブロック解除するプロセスに干渉しようとしてタスク・サーバーを自らの制御下においている攻撃者に対するセキュリティ施策である。乱数Z1およびZ2の暗号化のため、乱数Z1およびZ2の正しい値は、ターゲット・サーバー以外の他のコンピュータ・システムにとっては、暗号化レベルを克服することなくしては、読むことができない。結果として、攻撃者は、乱数Z1およびZ2の正しい値を知ることはまずできない。たとえ攻撃者が、外部コンピュータ・システムによって生成された乱数Z1の値を見出したとしても、タスク・サーバーにおいて生成された乱数Z2の正しい値はわからない。他方、タスク・サーバーを工作した攻撃者は、外部コンピュータ・システムにおいて生成された乱数Z1の値がわからない。このように、攻撃者は、本方法に工作するために乱数Z1およびZ2の値を知るためには、外部コンピュータ・システムまたはさらにはタスク・サーバー(または両方)を自らの制御下において、乱数の暗号化を克服する、あるいは一般に乱数の生成を制御する必要があるであろう。
上記で詳細に説明したように、ターゲット・サーバー自身は、ネットワークNの方向で恒久的に閉じられているネットワーク・ポートのため、タスク・サーバーからの攻撃に対してセキュリティ保護されている。外部コンピュータ・システムがターゲット・サーバーへの接続を確立することができるインターネット/イントラネットの方向では、やはり上記したようなターゲット・サーバーへのアクセスが、前記所定のソースIPアドレス、可能性としてはあらかじめ定義された時間スロットおよびタスク・サーバーにおいて生成された前記ランダムなポート番号に対応する前記宛先ネットワーク・ポートに制約される。攻撃の確率は、これらの条件のため、すでに非常に低くなっている。関与するコンピュータ・システムの間での乱数Z1およびZ2を交換する記載されたプロセスにより、またターゲット・サーバーにおける乱数の検証のため、ターゲット・サーバーへの攻撃を達成するためのコンピュータ・ネットワーク・インフラストラクチャーにおけるプロセスの工作に成功する確率は、さらに低くなる。
乱数Z1およびZ2の対の検証が否定的であるときは、ターゲット・サーバーは、エラーまたは攻撃の試みを想定し、セキュリティの理由により外部コンピュータ・システムによって確立された選択的にブロック解除された宛先ネットワーク・ポートへの接続を自身で直接、中断し、ソースIP/ソース・ポート/宛先ポートの選択的にブロック解除された組み合わせおよびターゲット・サーバーのアドレッシングされるサービス(たとえばVPN)が実際に実行されているポートへのここに存在するポート転送(port forwarding)を閉じる。するとターゲット・サーバーは再び初期状態(ブロック解除前の記載された状態)になり、ネットワークを介したいかなるコンピュータ・システムについての接続確立も許可しない。
乱数Z1およびZ2の対の検証に成功したときは、確立された接続は、ブロック解除されたソースIPアドレスと、ターゲット・サーバーのブロック解除された宛先ネットワーク・ポートへの直接接続が外部コンピュータ・システムによって確立された起点となるソース・ネットワーク・ポートとの組み合わせのみに制約される。このようにして、ターゲット・サーバーは、確立された接続を、ソースIPアドレスに制約するのみならず、許諾された外部コンピュータ・システムの使用されるソース・ネットワーク・ポートを介した実際のソース接続にも制約する。それにより、同じソースIPアドレスを介しているがターゲット・サーバーにおける他のソース・ネットワーク・ポートを介したさらなる接続は、抑制される。このようにして、潜在的な攻撃シナリオは著しく複雑にされるまたは抑制される。これらの施策において、複数の外部コンピュータ・システムの、可能性としては並列に行なわれる接続確立は、互いに干渉しないことを注意しておくべきである。
このように、この手順後には、外部コンピュータ・システムのソース・ネットワーク・ポート(可能性としてはNATルーターのマスクされたネットワーク・ポートを介する)とターゲット・サーバーにおける選択的にブロック解除された宛先ネットワーク・ポートとの間には、単に、選択的に確立された接続がある。さらなる過程において、外部コンピュータ・システムとコンピュータ・ネットワーク・インフラストラクチャー内のターゲット・サーバーとの間のこの制約された接続によって、アプリケーション固有の通信が実施されることができる。
このようにして、外部コンピュータ・システムは、記載された方法を介して、特定の通信のために、ターゲット・サーバーの選択的なブロック解除を引き起こした。にもかかわらず、本方法は、通常の施策に比べて、外部からの攻撃に対して、著しく安全である。特に、たとえばゼロデイ攻撃によるターゲット・サーバーにおけるセキュリティ・ギャップの成功裏の使用は、ターゲット・サーバーにおける対応するネットワーク・ポートをブロック解除するためのランダムなポート番号が個々のブロック解除ごとに決定されるため、きわめて可能性が低い。つまり、記載されたコンピュータ・ネットワーク・インフラストラクチャーにおける個々のセキュリティ・ギャップはもはや、魅力的な攻撃オプションを呈さない。
図2は、第二の構成に基づくコンピュータ・ネットワーク・インフラストラクチャーの少なくとも一部の概略図である。図2のコンピュータ・ネットワーク・インフラストラクチャーは、ネットワークN1を介して接続されているタスク・サーバー1およびターゲット・サーバー1を有する。さらに、図2のコンピュータ・ネットワーク・インフラストラクチャーは、別個のネットワークN2を介して接続されているタスク・サーバー2およびターゲット・サーバー2を有する。ターゲット・サーバー1およびターゲット・サーバー2は、第三のネットワークN3を介して、バックグラウンドで動作するバックエンド・サーバー1および2に接続されている。たとえば、ターゲット・サーバー1および/またはターゲット・サーバー2は、それぞれ外部コンピュータ・システムへの選択的なVPN接続をブロック解除するVPNサーバーとして構成されることができる。たとえば、アプリケーション固有のサービスが、バックエンド・サーバー1および2上に構成されることができる。外部コンピュータ・システムがそのようなサービスにアクセスできるよう、そのようなサービスは、ターゲット・サーバー1および2のそれぞれによってアクセスされることができ、あるいはそのようなサービスに、ターゲット・サーバー1および2は外部コンピュータ・システムからの接続を転送することができる。
タスク・サーバーおよびターゲット・サーバーに関し、図2は図1の対応する要素のパラレルで冗長な構造を示している。つまり、タスク・サーバー1および2ならびにターゲット・サーバー1および2は本質的には、冗長な機能をもつよう構成される。外部コンピュータ・システムは、図1の配位と同様に、インターネット/外部イントラネットを介してタスク・サーバー1への接続を確立し、図1に記載された方法(上記のステップ1ないし3を参照)に従って対応する施策を開始することができる。それにより、最終的には、外部コンピュータ・システムとターゲット・サーバー1との間の接続が確立され、使用されることができる。これらの施策については、図1との関連での説明が参照される。
タスク・サーバー1および/またはターゲット・サーバー1への通信が、たとえばコンピュータ・ネットワーク・インフラストラクチャーへの攻撃のために、乱されるまたは抑制される場合には、外部コンピュータ・システムはタスク・サーバー2への接続を確立して、外部コンピュータ・システムとターゲット・サーバー2との間の接続をブロック解除するための対応する施策を開始することができる。これは、ステップ1’ないし3’を含むプロセスにおいて実施される。これらは本質的には、上記の方法に基づく、外部コンピュータ・システムのタスク・サーバー1およびターゲット・サーバー1との通信に関するステップ1ないし3に対応する。同様に、図1との関連での説明が参照される(プロセスが、外部コンピュータ・システム、タスク・サーバー2、ターゲット・サーバー2の間で実行されるという違いはある)。このようにして、図2の構成では、攻撃可能なシステム(たとえばタスク・サーバー1単独)に対する依存性が低くなっている。むしろ、図2のコンピュータ・ネットワーク・インフラストラクチャーの冗長な構造は、それぞれのターゲット・サーバーとの通信をブロック解除するための外部コンピュータ・システムの要求を柔軟に扱うことを許容する。
コンピュータ・ネットワーク・インフラストラクチャーの通常の動作では、外部コンピュータ・システムが、タスク・サーバー1または2の一方をランダムに決定し、次いで対応する接続経路1または1’を介してそれにアドレッシングすることも考えられる。さらに、図2の構成においては、高い可用性および負荷分散が、タスク・サーバー/ターゲット・サーバー対の二重または冗長な構造および割り当てられたタスク・サーバー1もしくは2またはその後の割り当てられたターゲット・サーバー1もしくは2の交互のアドレッシングを介して実現される。図2に示したトポロジーはもちろん、さらなるタスク・サーバーおよび/またはターゲット・サーバーによって拡張されることができ、および/または変更された通信関係によって変えられることができる。任意的に、バックエンド・サーバー1および2が省略されるトポロジーを構成することも考えられる。
図3は、第三の構成に基づくコンピュータ・ネットワーク・インフラストラクチャーの少なくとも一部の概略図である。これは、ある程度、図1に基づく構成および図2に基づく構成からの代替的な解決策をなす。図3に基づくコンピュータ・ネットワーク・インフラストラクチャーは、第一のタスク・サーバー1および第二のタスク・サーバー2を含んでいる。これら二つのタスク・サーバーは、それぞれ、上記で説明した方法にしたがって、外部コンピュータ・システムからインターネット/外部イントラネットからアドレッシングされることができる。さらに、コンピュータ・ネットワーク・インフラストラクチャーは、単一のターゲット・サーバーを有する。図1および図2と同様に、ターゲット・サーバーは、図3のトポロジーにおけるVPNサーバーであることもできる。タスク・サーバー1は第一のネットワークN1を介してターゲット・サーバーに接続される。タスク・サーバー2も第二のネットワークN2を介してターゲット・サーバーに接続される。
図2に基づくトポロジーと同様に、タスク・サーバー1および2は冗長に構成されている。外部コンピュータ・システムが、ターゲット・サーバーへの外部接続を確立するために、タスク・サーバー1によって、上記で説明したステップ1ないし3の施策を介して、ターゲット・サーバーにおける対応するネットワーク・ポートのブロック解除を達成することができる。あるいはまた、外部コンピュータ・システムは、ターゲット・サーバーへの外部接続を確立するために、タスク・サーバー2によって、上記で説明したステップ1’、2’、3’の施策を介して、ターゲット・サーバーにおける対応するネットワーク・ポートのブロック解除を達成することができる。対応する施策に関しては、図1および図2との関連での上記の説明が参照される。
図3のコンピュータ・ネットワーク・インフラストラクチャーは、前述した要素のほかにさらに、タスク・サーバー1および2とターゲット・サーバーとの間で、対応するネットワークN1およびN2において介在する任意的なパケット・フィルタFWを有している。パケット・フィルタFWは、コンピュータ・ネットワーク・インフラストラクチャー内での攻撃に対するセキュリティ施策として構成される。パケット・フィルタFWは実質的に、タスク・サーバー1および2の一方または両方からのターゲット・サーバーへの攻撃を防止するはたらきをする。タスク・サーバー1または2における対応する権限(たとえば管理者権限)を獲得した侵入者は、許諾された外部IPアドレスをもつ外部クライアントであるふりをするために(IPのなりすまし)、タスク・サーバー1または2からの偽装IPアドレスによってターゲット・サーバーに対して攻撃を仕掛けるオプションをもつであろう。こうして、ターゲット・サーバー上での任意的なポート・フィルタ(これは他のコンピュータ・システムからの接続確立を許可しない)が回避できる。このようにして、偽装IPアドレスを介してタスク・サーバー1または2からターゲット・サーバーへの許諾されたアクセスのふりができる。
パケット・フィルタFWが対策として構成される。これは、有利にはターゲット・サーバーによってすでに確立された、しかもそれぞれのタスク・サーバー1または2の正確なIPアドレスを使う接続の、データ・パケットのみを、タスク・サーバー1または2からターゲット・サーバーへの通信方向において許可する。それ以外のデータ・パケットは、対応する通信方向におけるパケット・フィルタFWにおいて破棄される、あるいは無視されて転送されない。こうして、タスク・サーバー1または2から発していることが信頼でき信用できるデータ・パケットのみがターゲット・サーバーに到達する。このように、IPのなりすましは、きわめて複雑にされるまたは抑制される。
ターゲット・サーバーからタスク・サーバー1および2への逆方向の通信では、パケット・フィルタFWは有利には、タスク・サーバー1および2の特定のサービス(たとえばscpまたはsshまたはそれらの組み合わせ)をアドレッシングするデータ・パケットのみを許可することができる。
このようにして、タスク・サーバー1および2は、ターゲット・サーバーの方向において完全に切断され、タスク・サーバーからターゲット・サーバーへのいかなる攻撃も成功しない。しかしながら、逆方向では、ターゲット・サーバーは、図1に基づいて説明したように、たとえば、生成されたランダムなポート番号および外部コンピュータ・システムのソースIPアドレスを含むデータ・パケットを対応するタスク・サーバー1または2からscpサービスを介して取ってくることができる。
図3に基づくパケット・フィルタFWは、たとえば、特定的にセキュリティで保護された1:1 NATルーター(IPアドレス変換装置)として実現されることができる。このルーターにおいて特定の検証機構を提供することも考えられる。1:1 NATルーティングでは、はいってくるパケットのIPアドレスは静的に他のIPアドレスに変換される。たとえば、例示的なアドレス10.10.10.10をもつはいってくるパケットはIPアドレス11.11.11.11に変換されることができる。
本稿で例解した方法は、コンピュータ・ネットワーク構造内のセキュリティ保護された処理コンピュータ・システムとの通信のための外部コンピュータ・システムのブロック解除が、外部または内部の攻撃者のために(も)処理コンピュータ・システムを開いてしまうことなく、安全な仕方で可能であるという利点を伴う。
本稿で記載した方法は、IPv4およびIPv6の両方について使用できる。他の送信プロトコルも同様にこの方法を用いて安全にできる。外部クライアント(外部コンピュータ・システム)上で本方法を実行するための対応するコンピュータ・プログラムのインストールは、「本物の」クライアントでもその目的のために特別に設けられる、対応するブロック解除を実施するシステムでも、実施できる。特別なシステムの使用は、この機能に限られる利点をもち、特に安全にされることができるという利点がある。このことは、セキュリティを高めることができる。
外部コンピュータ・システムから仲介コンピュータ・システム(タスク・サーバー)に送信される命令パケットのサイズは、有利には、制限されることができる。これは、命令パケットの暗号化の一般的な層を克服した攻撃者が、メモリ・オーバーフローによって仲介コンピュータ・システムの機能に干渉できないという利点を伴う。同じことは、それぞれ他の使用される送信方法または通信にも当てはまる。
本稿に示されない実施形態では、それぞれさらなるファイアウォールやパケット・フィルタを、外部コンピュータ・システムとそれぞれタスク・サーバーまたはターゲット・サーバーとの間の接続経路に(たとえばルーターに統合されて)確立することも考えられる。このファイアウォールまたはパケット・フィルタは、有利には、外部コンピュータ・システムからコンピュータ・ネットワーク・インフラストラクチャー内への接続確立の、対応するタスク・サーバーまたはターゲット・サーバーへのアドレス転送および/またはポート転送が実行されるような仕方で構成されることができる。これは、外部コンピュータ・システムが、対応するターゲット・サーバーへの接続の本方法に基づくブロック解除のために、タスク・サーバーの一つまたは複数のIPアドレスとターゲット・サーバーの一つまたは複数のIPアドレスとの間の区別をする必要なく、ファイアウォールのアドレッシング可能性のためのIPアドレスのみを使うことができるという利点を伴う。ここで、外部コンピュータ・システムからそれぞれタスク・サーバーまたはターゲット・サーバーへの接続確立のソース・ネットワーク・ポートおよびソースIPアドレスは、転写されず、両方のコンピュータ・システム上に存在していることを注意しておく必要がある。
コンピュータ・ネットワーク・インフラストラクチャーの図示した例示的実施形態は、単に例として選ばれたものである。たとえば、図示した例示的実施形態からの要素を組み合わせたコンピュータ・ネットワーク・インフラストラクチャーのトポロジーを提供することが考えられる。
いくつかの態様を記載しておく。
〔態様1〕
コンピュータ・ネットワーク・インフラストラクチャー内のセキュリティ保護された処理コンピュータ・システムとの通信のために外部コンピュータ・システムをブロック解除する方法であって:
・前記コンピュータ・ネットワーク・インフラストラクチャーの外部に構成された外部コンピュータ・システムから、命令パケットを、前記コンピュータ・ネットワーク・インフラストラクチャー内の仲介コンピュータ・システムに送信する段階と;
・ネットワーク・ポートのランダムなポート番号を、前記仲介コンピュータ・システムによって生成する段階と;
・前記ランダムなポート番号を、前記仲介コンピュータ・システムから前記外部コンピュータ・システムに、および前記コンピュータ・ネットワーク・インフラストラクチャー内の少なくとも一つの処理コンピュータ・システムに自動的に送信する段階であって、前記処理コンピュータ・システムは、少なくとも一時的に、前記外部コンピュータ・システムに対して、所定のネットワーク・ポートを閉じたままにし、よって、前記外部コンピュータ・システムによる、これらのネットワーク・ポートによるネットワークを介した前記処理コンピュータ・システムへのアクセスが防止される、段階と;
・前記ランダムなポート番号に対応するネットワーク・ポートが、前記処理コンピュータ・システムによって、前記外部コンピュータ・システムとの通信のためにブロック解除する段階と;
・前記処理コンピュータ・システムのブロック解除されたネットワーク・ポートへの接続を、前記外部コンピュータ・システムによって確立する段階とを含み、
前記処理コンピュータ・システムの選択的にブロック解除されたネットワーク・ポートへの接続を確立したのちに、次の追加的な段階、すなわち:
・前記処理コンピュータ・システムと前記外部コンピュータ・システムとの間の通信を、前記処理コンピュータ・システムのブロック解除されたネットワーク・ポートと、前記外部コンピュータ・システムのネットワーク・ポートであって、確立された接続により前記処理コンピュータ・システムに知られるものとに制約する段階が実行される、
方法。
〔態様2〕
前記処理コンピュータ・システムは、所定のネットワーク・ポートを、前記仲介コンピュータ・システムに対して、少なくとも一時的に閉じたままにし、よって、これらのネットワーク・ポートによる前記仲介コンピュータ・システムによるネットワークを介した前記処理コンピュータ・システムへのアクセスが防止され、ただし、前記処理コンピュータ・システムは、前記ランダムなポート番号および/または他の情報を前記仲介コンピュータ・システムから取得するために前記仲介コンピュータ・システムにアクセスできる、態様1記載の方法。
〔態様3〕
以下のさらなる施策、すなわち:
・前記外部コンピュータ・システムによって確立された前記選択的にブロック解除されたネットワーク・ポートへの接続を、前記外部コンピュータ・システムと前記処理コンピュータ・システムとの間の認証情報の交換に制約すること、
・外部コンピュータ・システムによって送信された認証情報を検証すること、
・前記認証情報の検証が成功であった場合、前記外部コンピュータ・システムによって確立された前記処理コンピュータ・システムの前記選択的にブロック解除されたネットワーク・ポートへの接続を、前記処理コンピュータ・システムへの、または前記コンピュータ・ネットワーク・インフラストラクチャー内のさらなる処理コンピュータ・システムへの拡張されたアクセスのために、ブロック解除すること、
を含む、態様1または2記載の方法。
〔態様4〕
追加的な段階、すなわち:
・第一の乱数を前記外部コンピュータ・システムから前記仲介コンピュータ・システムに送信する段階と、
・第二の乱数を前記仲介コンピュータ・システムによって生成する段階と、
・前記第二の乱数を前記仲介コンピュータ・システムから前記外部コンピュータ・システムに送信する段階と、
・前記第一の乱数および前記第二の乱数を、前記仲介コンピュータ・システムから前記処理コンピュータ・システムに送信する段階とを含む、
態様1ないし3のうちいずれか一項記載の方法。
〔態様5〕
前記第一の乱数は、送信される前に、前記外部コンピュータ・システムの署名で署名され、前記仲介コンピュータ・システムにおいて生成された前記第二の乱数は、送信される前に、前記仲介コンピュータ・システムの署名で署名される、態様4記載の方法。
〔態様6〕
前記外部コンピュータ・システムから前記仲介コンピュータ・システムへの署名された第一の乱数の送信後、前記第一の乱数の署名が、前記仲介コンピュータ・システムのさらなる署名で署名され、
前記仲介コンピュータ・システムから前記外部コンピュータ・システムへの署名された第二の乱数の送信後、前記第二の乱数の署名が、前記外部コンピュータ・システムのさらなる署名で署名される、
態様5記載の方法。
〔態様7〕
前記外部コンピュータ・システムによって前記処理コンピュータ・システムの前記選択的にブロック解除されたネットワーク・ポートへの接続を確立した後、以下の段階、すなわち:
・前記第一および第二の乱数を前記外部コンピュータ・システムから直接、前記処理コンピュータ・システムに、確立された接続によって送信する段階と、
・前記仲介コンピュータ・システムによって前記処理コンピュータ・システムに送信された前記第一および第二の乱数と、前記外部コンピュータ・システムによって前記処理コンピュータ・システムに直接送信された前記第一および第二の乱数との間のそれぞれの一致を、前記処理コンピュータ・システムにおいて検証する段階とが実行される、
態様4ないし6のうちいずれか一項記載の方法。
〔態様8〕
前記第一および第二の乱数のそれぞれの一致の前記検証が否定的であるときは、前記外部コンピュータ・システムと前記処理コンピュータ・システムとの間の前記接続は、前記処理コンピュータ・システムによって切断される、態様7記載の方法。
〔態様9〕
前記仲介コンピュータ・システムから前記処理コンピュータ・システムへの前記ランダムなポート番号または他の情報の前記送信は:
・前記仲介コンピュータ・システムからまたは前記外部コンピュータ・システムから前記処理コンピュータ・システムに所定のデータ・シーケンスを送る段階であって、前記処理コンピュータ・システムの前記所定のネットワーク・ポートは閉じられており、前記シーケンスは、所定の順序で、前記処理コンピュータ・システムの一つまたは複数のネットワーク・ポートをアドレッシングする、段階と、
・送られたデータ・シーケンスが前記処理コンピュータ・システムにおけるあらかじめ定義されたシーケンスに一致するかどうかを検証する段階と、
・前記送られたシーケンスの検証が肯定的である場合に、前記処理コンピュータ・システムによる前記ランダムなポート番号または他の情報の前記送信を引き起こす段階であって、前記処理コンピュータ・システム自身が前記仲介コンピュータ・システムへの接続を確立し、前記仲介コンピュータ・システムから前記ランダムなポート番号または他の情報を取得する、段階とを含む、
態様2ないし8のうちいずれか一項記載の方法。
〔態様10〕
・少なくとも一つの仲介コンピュータ・システムおよび少なくとも一つの処理コンピュータ・システムを含むコンピュータ・ネットワーク・インフラストラクチャーと、
・前記コンピュータ・ネットワーク・インフラストラクチャーの外部に位置する少なくとも一つの外部コンピュータ・システムとを有する分散式コンピュータ・ネットワークであって、
前記外部コンピュータ・システムは、前記処理コンピュータ・システムとの通信を指令するために命令パケットを前記仲介コンピュータ・システムに送信するよう構成されており、前記仲介コンピュータ・システムは、自動化された仕方でネットワーク・ポートのランダムなポート番号を生成し、該ランダムなポート番号を前記処理コンピュータ・システムおよび前記外部コンピュータ・システムの両方に送信するよう構成されており、
前記処理コンピュータ・システムは、所定のネットワーク・ポートを、少なくとも一時的に閉じたままにするよう構成されているアクセス制御ユニットを有し、それにより、前記外部コンピュータ・システムによる、これらのネットワーク・ポートによるネットワークを介した前記処理コンピュータ・システムへのアクセスが防止されるが、前記ランダムなポート番号または他の情報を交換するためには、前記処理コンピュータ・システムと前記仲介コンピュータ・システムとの間の接続確立は許可され、
前記アクセス制御ユニットは、前記外部コンピュータ・システムとの通信のために、前記ランダムなポート番号に対応するネットワーク・ポートをブロック解除し、前記処理コンピュータ・システムの選択的にブロック解除されたネットワーク・ポートへの接続の確立後、前記処理コンピュータ・システムと前記外部コンピュータ・システムとの間の通信を、前記処理コンピュータ・システムのブロック解除されたネットワーク・ポートおよび確立された接続によって前記処理コンピュータ・システムに知られる前記外部コンピュータ・システムのネットワーク・ポートに制約するようさらに構成される、
分散式コンピュータ・ネットワーク。
〔態様11〕
態様1ないし9のうちいずれか一項記載の方法を実行するよう構成された、態様10記載の分散式コンピュータ・ネットワーク。
〔態様12〕
一つまたは複数のコンピュータ・システム上で実行されるよう構成されており、実行されたときに態様1ないし9のうちいずれか一項記載の方法を実行するよう構成されている、コンピュータ・プログラム・プロダクト。
タスク・サーバー 仲介コンピュータ・システム
タスク・サーバー1 仲介コンピュータ・システム
タスク・サーバー2 仲介コンピュータ・システム
ターゲット・サーバー 処理コンピュータ・システム
ターゲット・サーバー1 処理コンピュータ・システム
ターゲット・サーバー2 処理コンピュータ・システム
N,N1,N2,N3 ネットワーク
FW パケット・フィルタ、ファイアウォール
1〜3 方法ステップ
1’〜3’ 方法ステップ

Claims (11)

  1. コンピュータ・ネットワーク・インフラストラクチャー内のセキュリティ保護された処理コンピュータ・システムとの通信のために外部コンピュータ・システムをブロック解除する方法であって:
    ・前記コンピュータ・ネットワーク・インフラストラクチャーの外部に構成された外部コンピュータ・システムから、命令パケットを、前記コンピュータ・ネットワーク・インフラストラクチャー内の仲介コンピュータ・システムに送信する段階と;
    ・ネットワーク・ポートのランダムなポート番号を、前記仲介コンピュータ・システムによって生成する段階と;
    ・前記ランダムなポート番号を、前記仲介コンピュータ・システムから前記外部コンピュータ・システムに、および前記コンピュータ・ネットワーク・インフラストラクチャー内の少なくとも一つの処理コンピュータ・システムに自動的に送信する段階であって、前記処理コンピュータ・システムは、少なくとも一時的に、前記外部コンピュータ・システムに対して、所定のネットワーク・ポートを閉じたままにし、よって、前記外部コンピュータ・システムによる、これらのネットワーク・ポートによるネットワークを介した前記処理コンピュータ・システムへのアクセスが防止される、段階と;
    ・前記外部コンピュータ・システムによって、第一の乱数を生成し、前記処理コンピュータ・システムのみが該第一の乱数を解読できるよう暗号化する段階と;
    ・前記暗号化された第一の乱数を前記外部コンピュータ・システムから前記仲介コンピュータ・システムに送信する段階と;
    ・前記仲介コンピュータ・システムによって第二の乱数を生成し、前記処理コンピュータ・システムのみが該第二の乱数を解読できるよう暗号化する段階と;
    ・前記暗号化された第二の乱数を前記仲介コンピュータ・システムから前記外部コンピュータ・システムに送信する段階と;
    ・前記暗号化された第一の乱数および前記第二の乱数を、前記仲介コンピュータ・システムから前記処理コンピュータ・システムに送信する段階と;
    ・前記ランダムなポート番号に対応するネットワーク・ポートが、前記処理コンピュータ・システムによって、前記外部コンピュータ・システムとの通信のためにブロック解除する段階と;
    ・前記処理コンピュータ・システムのブロック解除されたネットワーク・ポートへの接続を、前記外部コンピュータ・システムによって確立する段階と
    ・前記処理コンピュータ・システムと前記外部コンピュータ・システムとの間の通信を、前記処理コンピュータ・システムのブロック解除されたネットワーク・ポートと、前記外部コンピュータ・システムのネットワーク・ポートであって、確立された接続により前記処理コンピュータ・システムに知られるものとに制約する段階と:
    ・前記暗号化された第一の乱数および第二の乱数を前記外部コンピュータ・システムから直接、前記処理コンピュータ・システムに、確立された接続によって送信する段階と;
    ・前記仲介コンピュータ・システムによって前記処理コンピュータ・システムに送信された前記暗号化された第一の乱数および第二の乱数を前記処理コンピュータ・システムにおいて解読し、前記外部コンピュータ・システムによって前記処理コンピュータ・システムに直接送信された前記暗号化された第一の乱数および第二の乱数を前記処理コンピュータ・システムにおいて解読する段階と:
    ・前記仲介コンピュータ・システムによって前記処理コンピュータ・システムに送信された前記解読された第一および第二の乱数と、前記外部コンピュータ・システムによって前記処理コンピュータ・システムに直接送信された前記解読された第一および第二の乱数との間のそれぞれの一致を、前記処理コンピュータ・システムにおいて検証する段階とを含む
    方法。
  2. 前記処理コンピュータ・システムは、所定のネットワーク・ポートを、前記仲介コンピュータ・システムに対して、少なくとも一時的に閉じたままにし、よって、これらのネットワーク・ポートによる前記仲介コンピュータ・システムによるネットワークを介した前記処理コンピュータ・システムへのアクセスが防止され、ただし、前記処理コンピュータ・システムは、前記ランダムなポート番号および/または他の情報を前記仲介コンピュータ・システムから取得するために前記仲介コンピュータ・システムにアクセスできる、請求項1記載の方法。
  3. 以下のさらなる施策、すなわち:
    ・前記外部コンピュータ・システムによって確立された前記選択的にブロック解除されたネットワーク・ポートへの接続を、前記外部コンピュータ・システムと前記処理コンピュータ・システムとの間の認証情報の交換に制約すること、
    ・外部コンピュータ・システムによって送信された認証情報を検証すること、
    ・前記認証情報の検証が成功であった場合、前記外部コンピュータ・システムによって確立された前記処理コンピュータ・システムの前記選択的にブロック解除されたネットワーク・ポートへの接続を、前記処理コンピュータ・システムへの、または前記コンピュータ・ネットワーク・インフラストラクチャー内のさらなる処理コンピュータ・システムへの拡張されたアクセスのために、ブロック解除すること、
    を含む、請求項1または2記載の方法。
  4. 前記仲介コンピュータ・システムにおいて生成された後、前記ランダムなポート番号は、前記外部コンピュータ・システムによっておよび前記処理コンピュータ・システムによってのみ値が解読されることができるような仕方で暗号化される、請求項1ないし3のうちいずれか一項記載の方法。
  5. 前記第一の乱数は、送信される前に、前記外部コンピュータ・システムの署名で署名され、前記仲介コンピュータ・システムにおいて生成された前記第二の乱数は、送信される前に、前記仲介コンピュータ・システムの署名で署名される、請求項1ないし4のうちいずれか一項記載の方法。
  6. 前記外部コンピュータ・システムから前記仲介コンピュータ・システムへの署名された第一の乱数の送信後、前記第一の乱数の署名が、前記仲介コンピュータ・システムのさらなる署名で署名され、
    前記仲介コンピュータ・システムから前記外部コンピュータ・システムへの署名された第二の乱数の送信後、前記第二の乱数の署名が、前記外部コンピュータ・システムのさらなる署名で署名される、
    請求項5記載の方法。
  7. 前記第一および第二の乱数のそれぞれの一致の前記検証が否定的であるときは、前記外部コンピュータ・システムと前記処理コンピュータ・システムとの間の前記接続は、前記処理コンピュータ・システムによって切断される、請求項1ないし6のうちいずれか一項記載の方法。
  8. 前記仲介コンピュータ・システムから前記処理コンピュータ・システムへの前記ランダムなポート番号または他の情報の前記送信は:
    ・前記仲介コンピュータ・システムからまたは前記外部コンピュータ・システムから前記処理コンピュータ・システムに所定のデータ・シーケンスを送る段階であって、前記処理コンピュータ・システムの前記所定のネットワーク・ポートは閉じられており、前記シーケンスは、所定の順序で、前記処理コンピュータ・システムの一つまたは複数のネットワーク・ポートをアドレッシングする、段階と、
    ・送られたデータ・シーケンスが前記処理コンピュータ・システムにおけるあらかじめ定義されたシーケンスに一致するかどうかを検証する段階と、
    ・前記送られたシーケンスの検証が肯定的である場合に、前記処理コンピュータ・システムによる前記ランダムなポート番号または他の情報の前記送信を引き起こす段階であって、前記処理コンピュータ・システム自身が前記仲介コンピュータ・システムへの接続を確立し、前記仲介コンピュータ・システムから前記ランダムなポート番号または他の情報を取得する、段階とを含む、
    請求項2ないしのうちいずれか一項記載の方法。
  9. ・少なくとも一つの仲介コンピュータ・システムおよび少なくとも一つの処理コンピュータ・システムを含むコンピュータ・ネットワーク・インフラストラクチャーと、
    ・前記コンピュータ・ネットワーク・インフラストラクチャーの外部に位置する少なくとも一つの外部コンピュータ・システムとを有する分散式コンピュータ・ネットワークであって、
    前記外部コンピュータ・システムは、前記処理コンピュータ・システムとの通信を指令するために命令パケットを前記仲介コンピュータ・システムに送信するとともに、第一の乱数を生成し、前記処理コンピュータ・システムのみが該第一の乱数を解読できるよう暗号化して、前記暗号化された第一の乱数を前記仲介コンピュータ・システムに送信するよう構成されており、
    前記仲介コンピュータ・システムは、自動化された仕方でネットワーク・ポートのランダムなポート番号を生成し、該ランダムなポート番号を前記処理コンピュータ・システムおよび前記外部コンピュータ・システムの両方に送信し、第二の乱数を生成し、前記処理コンピュータ・システムのみが該第二の乱数を解読できるよう暗号化して、前記暗号化された第二の乱数を前記外部コンピュータ・システムに送信するよう構成されており、
    前記処理コンピュータ・システムは、所定のネットワーク・ポートを、少なくとも一時的に閉じたままにするよう構成されているアクセス制御ユニットを有し、それにより、前記外部コンピュータ・システムによる、これらのネットワーク・ポートによるネットワークを介した前記処理コンピュータ・システムへのアクセスが防止されるが、前記ランダムなポート番号または他の情報を交換するためには、前記処理コンピュータ・システムと前記仲介コンピュータ・システムとの間の接続確立は許可され、
    前記アクセス制御ユニットは、前記外部コンピュータ・システムとの通信のために、前記ランダムなポート番号に対応するネットワーク・ポートをブロック解除し、前記処理コンピュータ・システムの選択的にブロック解除されたネットワーク・ポートへの接続の確立後、前記処理コンピュータ・システムと前記外部コンピュータ・システムとの間の通信を、前記処理コンピュータ・システムのブロック解除されたネットワーク・ポートおよび確立された接続によって前記処理コンピュータ・システムに知られる前記外部コンピュータ・システムのネットワーク・ポートに制約するようさらに構成されており
    前記仲介コンピュータ・システムは、前記暗号化された第一の乱数および前記第二の乱数を前記処理コンピュータ・システムに送信するようさらに構成されており、
    前記外部コンピュータ・システムは、前記暗号化された第一の乱数および第二の乱数を直接、前記処理コンピュータ・システムに、確立された接続によって送信するようさらに構成されており、
    前記処理コンピュータ・システムは、前記仲介コンピュータ・システムおよび前記外部コンピュータ・システムによってそれぞれ前記処理コンピュータ・システムに送信された前記暗号化された第一の乱数および第二の乱数を解読し、前記仲介コンピュータ・システムおよび前記外部コンピュータ・システムによってそれぞれ前記処理コンピュータ・システムに送信された前記解読された第一および第二の乱数の間のそれぞれの一致を検証すようさらに構成されている、
    分散式コンピュータ・ネットワーク。
  10. 請求項1ないしのうちいずれか一項記載の方法を実行するよう構成された、請求項記載の分散式コンピュータ・ネットワーク。
  11. 一つまたは複数のコンピュータ・システム請求項1ないしのうちいずれか一項記載の方法を実行させるためのコンピュータ・プログラム。
JP2017526518A 2015-06-30 2016-06-27 コンピュータ・ネットワーク・インフラストラクチャーにおいて外部コンピュータ・システムをブロック解除する方法、かかるコンピュータ・ネットワーク・インフラストラクチャーをもつ分散コンピュータ・ネットワークおよびコンピュータ・プログラム・プロダクト Expired - Fee Related JP6425816B2 (ja)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
DE102015110501.2 2015-06-30
DE102015110501 2015-06-30
DE102015116601.1 2015-09-30
DE102015116601.1A DE102015116601A1 (de) 2015-06-30 2015-09-30 Verfahren zum Freischalten externer Computersysteme in einer Computernetz-Infrastruktur, verteiltes Rechnernetz mit einer solchen Computernetz-Infrastruktur sowie Computerprogramm-Produkt
DE102015119779.0 2015-11-16
DE102015119779 2015-11-16
PCT/EP2016/064862 WO2017001342A1 (de) 2015-06-30 2016-06-27 Verfahren zum freischalten externer computersysteme in einer computernetz-infrastruktur, verteiltes rechnernetz mit einer solchen computernetz-infrastruktur sowie computerprogramm-produkt

Publications (2)

Publication Number Publication Date
JP2017537546A JP2017537546A (ja) 2017-12-14
JP6425816B2 true JP6425816B2 (ja) 2018-11-21

Family

ID=57609434

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017526518A Expired - Fee Related JP6425816B2 (ja) 2015-06-30 2016-06-27 コンピュータ・ネットワーク・インフラストラクチャーにおいて外部コンピュータ・システムをブロック解除する方法、かかるコンピュータ・ネットワーク・インフラストラクチャーをもつ分散コンピュータ・ネットワークおよびコンピュータ・プログラム・プロダクト

Country Status (4)

Country Link
US (1) US10313305B2 (ja)
EP (1) EP3318033B1 (ja)
JP (1) JP6425816B2 (ja)
WO (1) WO2017001342A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102014107793B9 (de) * 2014-06-03 2018-05-09 Fujitsu Technology Solutions Intellectual Property Gmbh Verfahren zur Weiterleitung von Daten zwischen Computersystemen, Computernetz-Infrastruktur sowie Computerprogramm-Produkt
US11140212B2 (en) * 2019-01-24 2021-10-05 KLDiscovery Ontrack, LLC Monitoring and reporting usage of standalone e-discovery machine
US11190493B2 (en) * 2019-12-16 2021-11-30 Vmware, Inc. Concealing internal applications that are accessed over a network

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE50203928D1 (de) 2001-06-06 2005-09-22 Vodafone Holding Gmbh WAP-Telefonbuch für virtuelle private Netzwerke
US7111288B2 (en) * 2001-07-12 2006-09-19 International Business Machines Corporation Method and system for minimizing the cycle time when compiling a program in a processing system
JP2003091503A (ja) 2001-09-14 2003-03-28 Toshiba Corp ポートアクセスを利用した認証方法及び同方法を適用するサーバ機器
US8976798B2 (en) * 2002-01-28 2015-03-10 Hughes Network Systems, Llc Method and system for communicating over a segmented virtual private network (VPN)
US8572254B2 (en) 2004-04-08 2013-10-29 Worldextend, Llc Systems and methods for establishing and validating secure network sessions
GB2414627A (en) 2004-05-27 2005-11-30 Hewlett Packard Development Co Network administration
US20060122955A1 (en) 2004-12-02 2006-06-08 Alex Bethlehem System and method for launching a resource in a network
JP2006005947A (ja) * 2005-07-06 2006-01-05 Canon Inc 受信装置、認証サーバ、方法、及び、プログラム
US7698555B2 (en) * 2005-08-29 2010-04-13 Schweitzer Engineering Laboratories, Inc. System and method for enabling secure access to a program of a headless server device
JP4274184B2 (ja) 2006-01-30 2009-06-03 沖電気工業株式会社 通信システム、および通信方法
JP2007259384A (ja) * 2006-03-27 2007-10-04 Nec Corp 通信制御システム、通信制御装置、端末、通信制御方法、およびそのプログラム
US8266688B2 (en) * 2007-10-19 2012-09-11 Citrix Systems, Inc. Systems and methods for enhancing security by selectively opening a listening port when an incoming connection is expected
JP5440210B2 (ja) * 2010-01-28 2014-03-12 富士通株式会社 アクセス制御プログラム、アクセス制御方法およびアクセス制御装置
JP5764085B2 (ja) 2012-03-26 2015-08-12 西日本電信電話株式会社 ポート開閉制御システム
SG11201405282RA (en) * 2012-04-01 2014-09-26 Authentify Inc Secure authentication in a multi-party system
CA2893709C (en) * 2012-12-07 2020-07-28 Microsec Szamitastechnikai Fejleszto Zrt. Method and system for authenticating a user using a mobile device and by means of certificates
US9027086B2 (en) * 2013-02-01 2015-05-05 Vidder, Inc. Securing organizational computing assets over a network using virtual domains
US9154488B2 (en) * 2013-05-03 2015-10-06 Citrix Systems, Inc. Secured access to resources using a proxy
WO2015080731A1 (en) 2013-11-27 2015-06-04 Hewlett-Packard Development Company, L.P. Authorizing application access to virtual private network resource

Also Published As

Publication number Publication date
US10313305B2 (en) 2019-06-04
EP3318033B1 (de) 2020-05-13
WO2017001342A1 (de) 2017-01-05
EP3318033A1 (de) 2018-05-09
US20180109497A1 (en) 2018-04-19
JP2017537546A (ja) 2017-12-14

Similar Documents

Publication Publication Date Title
US11870809B2 (en) Systems and methods for reducing the number of open ports on a host computer
US10652210B2 (en) System and method for redirected firewall discovery in a network environment
JP6175520B2 (ja) コンピュータプログラム、処理方法及びネットワークゲートウェイ
US8800024B2 (en) System and method for host-initiated firewall discovery in a network environment
EP2850770B1 (en) Transport layer security traffic control using service name identification
US20020162026A1 (en) Apparatus and method for providing secure network communication
EP3461097B1 (en) Encrypted content detection method and apparatus
Degraaf et al. Improved port knocking with strong authentication
JP6425816B2 (ja) コンピュータ・ネットワーク・インフラストラクチャーにおいて外部コンピュータ・システムをブロック解除する方法、かかるコンピュータ・ネットワーク・インフラストラクチャーをもつ分散コンピュータ・ネットワークおよびコンピュータ・プログラム・プロダクト
JP6266170B2 (ja) 3層セキュリティおよび算出アーキテクチャ
US10425416B2 (en) Method of unblocking external computer systems in a computer network infrastructure, distributed computer network having such a computer network infrastructure as well as computer program product
Liu et al. Building generic scalable middlebox services over encrypted protocols
Hyppönen Securing a Linux Server Against Cyber Attacks
Balogun Distributed firewalls mechanism for the resolution of packets forwarding problems in computer networks using RSA-CRT technique
AU2002322451A1 (en) Apparatus and method for providing secure network communication

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180518

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180529

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180822

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181023

R150 Certificate of patent or registration of utility model

Ref document number: 6425816

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees