JP6433865B2 - 通信装置 - Google Patents

通信装置 Download PDF

Info

Publication number
JP6433865B2
JP6433865B2 JP2015166671A JP2015166671A JP6433865B2 JP 6433865 B2 JP6433865 B2 JP 6433865B2 JP 2015166671 A JP2015166671 A JP 2015166671A JP 2015166671 A JP2015166671 A JP 2015166671A JP 6433865 B2 JP6433865 B2 JP 6433865B2
Authority
JP
Japan
Prior art keywords
white list
data
packet
memory
entries
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.)
Active
Application number
JP2015166671A
Other languages
English (en)
Other versions
JP2017046149A (ja
Inventor
圭吾 内住
圭吾 内住
大機 矢野
大機 矢野
善文 新
善文 新
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alaxala Networks Corp
Original Assignee
Alaxala Networks Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alaxala Networks Corp filed Critical Alaxala Networks Corp
Priority to JP2015166671A priority Critical patent/JP6433865B2/ja
Priority to US15/230,511 priority patent/US10193890B2/en
Publication of JP2017046149A publication Critical patent/JP2017046149A/ja
Application granted granted Critical
Publication of JP6433865B2 publication Critical patent/JP6433865B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/101Access control lists [ACL]
    • 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
    • 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/0245Filtering by information in the payload
    • 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
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers

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)
  • Telephonic Communication Services (AREA)
  • Computer And Data Communications (AREA)
  • Communication Control (AREA)

Description

本発明は、通信装置に関する。
近年、発電所などの重要インフラ内のネットワークに攻撃者が侵入し、システムの制御を奪うといった事件が多発している。重要インフラのネットワークにおいては、ファイアウォール装置、及びパーソナルコンピュータ等の端末に搭載されているウィルスソフト等による防御対策は実施されているが、システム制御を奪おうとする攻撃者の侵入を防ぎきれていない。攻撃者に侵入された際のリスクを軽減する手法として、ホワイトリスト機能を利用する方法がある。ホワイトリスト機能は、ネットワークを流れる正規通信内情報に含まれる正規端末情報をホワイトリスト収容装置に登録し、ホワイトリスト収容装置に登録された正規端末以外からの非正規通信を遮断することでセキュリティレベルを高める機能である。
本技術の背景分野として、特開2009−239525号公報(特許文献1)、及び特開2015−050767号公報(特許文献2)がある。特許文献1には、「パケットフィルタリング装置は、SIPサーバから送信されたパケットを受信し、受信したパケットが、SIPクライアントから所定の間隔で送信される認証要求に対する応答であるか否かを判定し、認証要求に対する応答であると判定され、当該パケットの送信元情報がホワイトリストに記憶されていない場合に、当該パケットの送信元情報を取得してホワイトリストに格納する。そして、パケットフィルタリング装置は、ネットワークに輻輳が発生していると検出した場合に、ネットワーク上のパケットを受信し、当該受信されたパケットのうち、ホワイトリストに送信元が記憶されているパケットを、ホワイトリストに送信元が記憶されていないパケットよりも優先して送信先に転送する。」と記載されている(要約参照)。
特許文献2には、「ネットワークスイッチは、許容された通信規則を含むホワイトリストが予め格納され、ホワイトリストを基盤として、複数のスイッチインタフェースを介して入力された1つ以上のパケットを監視し、ホワイトリストに従うパケットに対しては通信を許容するホワイトリスト監視部と、ホワイトリストをアップデートさせてホワイトリスト監視部に送るホワイトリスト管理部とを含む。」と記載されている(要約参照)。
特開2009−239525号公報 特開2015−050767号公報
特許文献1に記載の技術において、パケットフィルタリング装置はパケットの送信元を示す情報のみからなるエントリをホワイトリストに登録する。従って、特許文献1に記載の技術は、登録された送信元である正規端末がマルウェアに感染し悪意ある通信を実施した場合や、悪意あるユーザが当該正規端末を操作できる場合においては攻撃を阻止することができない。
特許文献2に記載の技術において、ネットワークスイッチは、前述した場合における攻撃を阻止するために、送信元、送信先、及びプロトコル等の複数種類の情報からなるエントリが登録されたホワイトリストを保持する。しかし、各エントリに含まれる情報の種類数が増大すると、ホワイトリストのエントリ数も増大する可能性が高い。
また、一般的なパケット中継装置に搭載されているメモリの容量は有限であるため、当該メモリに格納することができるホワイトリストのエントリ数(以下、収容条件と呼ぶ)も有限である。従って、特許文献2に記載の技術において、ホワイトリストのエントリ数が収容条件に達し、当該ホワイトリストが所望のセキュリティレベルと一致しない可能性がある。
そこで本発明の一態様は、収容条件と通信のセキュリティレベルとに応じた、セキュリティレベルの高いホワイトリストを生成する通信装置を提供する。
上記課題を解決するために、本発明の一態様は以下の構成を採用する。ネットワークに接続され、前記ネットワークからデータを受信する、複数のデータ受信部を含む通信装置であって、前記複数のデータ受信部それぞれは、1以上のデータ受信部からなるデータ受信部群に所属し、前記受信したデータに、当該データ受信部が所属するデータ受信部群を示す制御情報を付加し、前記通信装置は、前記複数のデータ受信部それぞれが受信したデータに基づいて、ホワイトリストを生成する制御部と、前記データ受信部群それぞれの優先度を示す優先度情報と、前記ホワイトリストを記憶するホワイトリスト格納第1メモリと、を含み、前記制御部は、第1データ受信部が受信した第1データの制御情報及び前記第1データの複数種類のヘッダ情報を受信し、前記優先度情報が示す前記第1データ受信部が所属する第1データ受信部群の優先度と、前記ホワイトリスト格納第1メモリが格納することができるホワイトリストのエントリ数を示す収容条件と、に基づいて、前記第1データの複数種類のヘッダ情報から、パラメータを選択し、前記第1データの制御情報と、前記選択した1以上のパラメータと、を含むエントリを、前記ホワイトリストに追加する、通信装置。
本発明の一態様によれば、収容条件と通信のセキュリティレベルとに応じた、セキュリティレベルの高いホワイトリストを生成することができる。
実施例1におけるパケット中継装置の構成例を示すブロック図である。 実施例1におけるホワイトリストの一例である。 実施例1におけるホワイトリストのエントリの集約アルゴリズムの一例を示す説明図である。 実施例1における優先度格納S/Wメモリ領域が保持する優先度情報の一例である。 実施例1におけるパケット受信部番号別ホワイトリスト生成数カウンタが保持するカウンタ値の一例である。 実施例1における転送設定メモリが保持する転送設定情報の一例である。 実施例1における転送設定プログラムが入出力装置から入力を受け付ける転送設定に関する命令の一覧の一例である。 実施例1におけるホワイトリスト登録外パケット受信時ログの一例である。 実施例1におけるエントリ集約時ログの一例である。 実施例1におけるホワイトリストログの一例である。 実施例1における、パケット中継装置の生成状態に移行するまでの動作例、及び生成状態中のパケット転送部の動作例を示すフローチャートである。 ホワイトリスト生成プログラムによるホワイトリスト生成処理の一例を示すフローチャートである。 実施例1における生成状態から運用状態に至るパケット中継装置の処理の一例を示すフローチャートである。 実施例1における転送先決定部が生成したパケット情報の一例である。
図1は、データの一例であるパケットを中継する、パケット中継装置の構成例を示すブロック図である。パケット中継装置100は、通信装置の一例である。パケット中継装置100は、パケットの中継、及びホワイトリストの生成を実行する。ホワイトリストとは、パケット中継装置100による中継(転送)・通信が許可されたパケットの一覧(許可リスト)を示す。
パケット中継装置100は、例えば、複数のパケット受信部200、パケット転送部300、S/W(SoftWare)制御部400、複数のパケット送信部500、及び入出力インタフェース600を含み、それぞれ内部バスによって接続される。
パケット受信部200それぞれは、例えば、端末や他のパケット中継装置等の外部装置と、メタルケーブルや光ケーブル等の回線で接続され、接続された外部装置からパケットを受信する。パケット受信部200それぞれは、パケット受信部200を一意に識別する受信部番号を有する。
パケット受信部200それぞれは、パケットを受信した際に、当該パケットに当該パケット受信部200に対応する制御情報を付加する。制御情報は、1以上のパケット受信部200からなるパケット受信部群を示す情報である。パケット受信部200のパケット受信部番号、及び当該パケット受信部200が所属するVLAN(Virtual LAN)の識別子であるVLAN番号は、それぞれ当該パケット受信部200が付加する制御情報の一例である。
パケット転送部300は、パケット受信部200からパケットを受信し、S/W制御部400が生成したホワイトリストに従って、受信したパケットの転送、又は廃棄等を行う。S/W制御部400は、ホワイトリストを生成する。パケット送信部500それぞれは、端末や他のパケット中継装置等の外部装置と、メタルケーブルや光ケーブル等の回線で接続され、パケット転送部300から受信したパケットを、接続された外部装置へと送信する。
パケット受信部200及びパケット送信部500は、通常、ハードウェアで構成される。また、パケット受信部200及びパケット送信部500は、図1では説明のため別の部として記載しているが、パケット受信部200とパケット送信部500が一体化したパケット送受信部であってもよい。
入出力インタフェース600は、入出力装置610が接続される。入出力インタフェース600は、入出力装置610を介して、利用者からの入力を受け付ける。また、入出力インタフェース600は、プログラムの実行結果等を入出力装置610に出力する。入出力装置610は、例えば、キーボードやマウス等の利用者からの入力を受ける入力装置、及びディスプレイ装置やプリンタ等のパケット中継装置100の処理結果を利用者が視認可能な形式で出力する出力装置を含む。
なお、図1では入出力装置610は、パケット中継装置100と独立した装置として記載されているが、パケット中継装置100にディスプレイや操作ボタン等の入出力装置610が備え付けられていてもよい。
パケット転送部300は、ホワイトリスト格納H/W(HardWare)メモリ310と、転送先決定部320と、転送テーブルメモリ330と、転送設定メモリ340と、を含む。ホワイトリスト格納H/Wメモリ310は、例えば、CAM(Content Addressable Memory)やDRAM(Dynamic Random Access Memory)等であり、S/W制御部400が生成したホワイトリストを格納する。ホワイトリスト格納H/Wメモリ310は有限なメモリであるため、保持できるホワイトリストのエントリ数に上限がある。以下、当該上限を収容条件と呼ぶ。
転送テーブルメモリ330は、例えば、CAMやDRAM等であり、パケットのヘッダ情報と、パケットの転送先即ちパケット送信部500と、の対応を示す情報を格納する。当該情報は管理者等によって作成され、予め転送テーブルメモリ330に格納されている。OSI(Open Systems Interconnection)参照モデルのレイヤ2の通信に用いられるMac Address Tableや、OSI参照モデルのレイヤ3の通信に用いられるRouting Tableは、当該対応を示す情報の一例である。
転送設定メモリ340は、例えば、DRAM等であり、後述するパケット中継装置100のモードや状態、ホワイトリスト登録外パケット受信時の動作等の設定情報を格納する。転送設定メモリ340に格納される設定情報は、入出力装置610を介して、管理者等により設定される。
転送先決定部320は、パケット受信部200からパケットを受信し、受信したパケットのヘッダ情報をキーに転送テーブルメモリ330内を検索することにより、受信したパケットの転送先を決定する。
また、転送先決定部320は、後述するホワイトリスト運用状態中にパケットを受信した場合、ホワイトリスト格納H/Wメモリ310に格納されたホワイトリストを検索し、受信したパケットがホワイトリスト対象パケットであるか否かを判定する。転送先決定部320は、受信したパケットがホワイトリスト登録外パケットであると判定した場合、転送設定メモリ340が保持するホワイトリスト登録外パケット受信時動作設定が示す処理を、当該パケットに対して行う。なお、ホワイトリスト運用状態を単に運用状態とも呼ぶ。
転送先決定部320は、後述するホワイトリスト生成状態中にパケットを受信すると、受信したパケットから所定のヘッダ情報及び所定の制御情報を抽出し、S/W制御部400へと送信する。転送先決定部320は、転送設定メモリ340の設定内容に従い、ホワイトリストを利用した通信を実施するか否かなどの判別を行う。なお、ホワイトリスト生成状態を単に生成状態とも呼ぶ。
パケット転送部300は、ホワイトリストの高速検索、パケットのワイヤレートでの通信など、単純で高速な命令を実行するため、通常、ハードウェアで構成される。パケット転送部300は、例えば、FPGA(Field Programmable Gate Array)等で構成されてもよい。
S/W制御部400は、CPU(Control Processing Unit)410と、S/Wメモリ420と、を含む。CPU410は、S/Wメモリ420に格納されたプログラムを実行するプロセッサを含む。S/Wメモリ420は、不揮発性の記憶素子であるROM(Read Only Memory)及び揮発性の記憶素子であるRAM(Random Access Memory)を含む。ROMは、不変のプログラム(例えば、BIOS(Basic Input/Output System))などを格納する。RAMは、DRAMのような高速かつ揮発性の記憶素子であり、プロセッサが実行するプログラム及びプログラムの実行時に使用されるデータを一時的に格納する。
S/Wメモリ420は、ホワイトリスト生成プログラム421、転送設定プログラム425、優先度格納S/Wメモリ領域422、ホワイトリスト格納S/Wメモリ領域423、及びパケット受信部番号別ホワイトリスト生成数カウンタ424を含む。
S/Wメモリ420に格納されたプログラムはプロセッサによって実行されることで、定められた処理を記憶装置及び通信ポート(通信デバイス)等を用いながら行う。従って、本実施例及び他の実施例においてプログラムを主語とする説明は、プロセッサを主語とした説明でもよい。若しくは、プログラムが実行する処理は、そのプログラムが動作する計算機及び計算機システムが行う処理である。
プロセッサは、プログラムに従って動作することによって、所定の機能を実現する機能部として動作する。例えば、プロセッサは、ホワイトリスト生成プログラム421に従って動作することでホワイトリスト生成部として機能し、転送設定プログラム425に従って動作することで転送設定部として機能する。さらに、プロセッサは、各プログラムが実行する複数の処理のそれぞれを実現する機能部としても動作する。計算機及び計算機システムは、これらの機能部を含む装置及びシステムである。
ホワイトリスト生成プログラム421は、転送先決定部320から受信した制御情報及びヘッダ情報から、ホワイトリストを生成する。ホワイトリスト格納H/Wメモリ310の収容条件は、例えば、予めホワイトリスト生成プログラム421に予め記述されている。また、例えば、パケット中継装置100の起動時に、ホワイトリスト生成プログラム421が、ホワイトリスト格納H/Wメモリ310の容量を取得し収容条件を算出してもよい。
また、ホワイトリスト生成プログラム421は、ホワイトリスト格納S/Wメモリ領域423の使用量を監視し、必要に応じてホワイトリスト格納S/Wメモリ領域423に格納されたホワイトリストのエントリの集約を所定のアルゴリズムに従って実施する。集約とは、ホワイトリストの1以上のエントリを1つのエントリにまとめることである。なお、集約を実施するための所定のアルゴリズムは、ホワイトリスト生成プログラム421に予め記述されている。
転送設定プログラム425は、入出力装置610から入力された転送設定を転送設定メモリ340及び/又はホワイトリスト生成プログラム421に書き込む。また、転送設定プログラム425は、入出力装置610から入力された後述する優先度情報を優先度格納S/Wメモリ領域422に格納する。
優先度格納S/Wメモリ領域422は、優先度情報を格納する。ホワイトリスト格納S/Wメモリ領域423は、ホワイトリスト生成プログラム421が生成したホワイトリストを一時的に格納する。なお、ホワイトリスト格納S/Wメモリ領域423は、ホワイトリスト格納H/Wメモリ310の持つメモリ領域より大きい。
パケット受信部番号別ホワイトリスト生成数カウンタ424は、ホワイトリストS/Wメモリ領域423に格納されたホワイトリストのエントリ数を、当該エントリに対応するパケットを受信したパケット受信部200ごとにカウントする。
図2は、ホワイトリスト格納H/Wメモリ310及びホワイトリスト格納S/Wメモリ領域423に格納されるホワイトリストの一例である。図2の例ではホワイトリストはn個のエントリを含む。ホワイトリストの各エントリは、複数のパラメータを含む。当該複数のパラメータそれぞれは、パケット受信部200から受信したパケットから転送先決定部320が抽出した制御情報又はヘッダ情報である。
エントリ700は、ホワイトリストに含まれるエントリの一例である。エントリ700は、例えば、それぞれパケットの制御情報を示すパラメータである、パケット受信部番号701、及びVLAN番号702を含む。エントリ700は、例えば、それぞれパケットのヘッダ情報を示すパラメータである、Souce Mac Address703、Destination Mac Address704、Protocol705、Source IP Address706、Destination IP Address707、Source port番号708、及びDestination Port番号を含む。
パケット受信部番号701は、パケット受信部200それぞれを一意に識別する番号である。パケット受信部番号701により、パケットを受信したパケット受信部200が特定される。なお、パケット受信部200とパケット送信部500が一体化したパケット送受信部の場合、パケット受信部番号701は、パケット送受信部それぞれを一意に識別する番号であるパケット送受信部番号である。VLAN番号702は、パケット受信部200が所属するVLANを一意に識別する番号である。
Source Mac Address703は、パケットの送信元Macアドレスを示す。Destination Mac Address704は、パケットの宛先Macアドレスを示す。protocol705は、プロトコルの種類を示す。Source IP Address706は、パケットの送信元IPアドレスを示す。Destination IP Address707は、パケットの宛先IPアドレスを示す。Source port番号708は、パケットの送信元ポート番号を示す。Destination port番号709は、パケットの宛先ポート番号を示す。ここで、ポート番号とは、パケットを送受信する際のプログラム(アプリケーション、ソフトウェア)を識別する番号である。
なお、エントリ700は、図2の例に限らず、1種類以上の制御情報を示すパラメータと、複数種類のヘッダ情報を示すパラメータと、を含めばよい。エントリ700は、例えば、前述したヘッダ情報を示すパラメータに加えて又は代えて、TOS(Type Of Service)、フラグ、TTL(Time To Live)、ID、バージョン、及びヘッダ値等のヘッダ情報を含んでもよい。
図3は、図2に例示したホワイトリストのエントリの集約アルゴリズムの一例を示す説明図である。本実施例において、ホワイトリスト生成プログラム421は、パケット受信部番号が同値の1以上のエントリに対して集約を実施する。ホワイトリスト生成プログラム421が、エントリの集約を実施する契機については後述する。
ホワイトリスト生成プログラム421は、例えば、集約対象のパケット受信部番号を有するエントリに含まれるヘッダ情報を示す一部のパラメータをマスクし、マスク後の全てのパラメータが同一のエントリを1つのエントリにまとめることにより集約を行う。パラメータのマスクとは、当該パラメータをDon’t Care情報に置換することである。
エントリ形態711は、集約が一度も行われていないエントリの形態を示す。集約対象のパケット受信部番号を有する1以上のエントリがエントリ形態711で表される場合、ホワイトリスト生成プログラム421は、当該エントリのSource port番号とDestination port番号のうち、当該エントリにおいて出現する値の種類数が多いほうをマスクすることにより集約を行う。
Source port番号とDestination port番号の一方のマスクによる集約が実施された後、さらに集約が必要な場合、ホワイトリスト生成プログラム421は、他方をマスクすることにより集約を行う。エントリ形態712は、Source port番号とDestination port番号の双方がマスクされ、Don’t Care情報に置換されたエントリの形態を示す。
さらに集約が必要な場合、ホワイトリスト生成プログラム421は、protocol、Destination IP Address、Destination Mac Address、Source IP Addressの順にパラメータをマスクする。集約対象のパケット受信部番号を有する全てのエントリに対して、集約アルゴリズムが示す集約が全て実施された場合(図3の集約アルゴリズムの例において、当該エントリがエントリ形態716で表される場合)、当該エントリは集約限界であるという。
なお、集約処理において、制御情報をマスクするパラメータとしてもよい。また、集約処理における制御情報又はヘッダ情報を示すパラメータのマスク順序に制限はないが、図3の集約アルゴリズムのように、エントリの集約によるセキュリティレベルの低下への影響が少ないパラメータから順にマスクが実施されることが好ましい。また、図3の集約アルゴリズムのように、ホワイトリスト生成プログラム421は、エントリの集約によるセキュリティレベルの低下への影響が同等であるパラメータ(例えば、Source port番号とDestination port番号)については、出現する値の種類数が多いパラメータをマスクすることにより、エントリ数をより削減することができる。
また、図3では、ヘッダ情報を示すパラメータのうち1種類のヘッダ情報を示すパラメータのみがマスクされていないエントリ形態を集約限界としているが、複数種類のヘッダ情報を示すパラメータがマスクされていないエントリ形態を集約限界としてもよい。また、ホワイトリスト生成プログラム421は、一度に複数種類のパラメータをマスクしてもよい。また、ホワイトリスト生成プログラム421は、パラメータをマスクする代わりに、例えば、当該パラメータの値を、集約対象のパケット受信部番号を有するエントリの全ての当該パラメータの値を含む区間に変更してもよい。
図4Aは、優先度格納S/Wメモリ領域422が保持する優先度情報の一例である。優先度格納S/Wメモリ領域422は優先度フィールド4221、4222を含む。優先度フィールド4221、4222は、パケット受信部番号(1〜n)をインデックスとしたエントリをもち、各インデックスに対応するパケット受信部200の優先度を格納する。
優先度フィールド4221は、入出力装置610から管理者等によって入力された優先度の値を格納する。優先度フィールド4222は、転送設定プログラム425が、ホワイトリスト機能状態が生成状態から運用状態への移行するホワイトリスト機能状態設定命令を受け付けた時点における、優先度フィールド4221の値を格納する。
図4Aの優先度フィールド4221、4222は、パケット受信部番号が1であるパケット受信部200の優先度が1、パケット受信部番号が2であるパケット受信部200の優先度が2、パケット受信部番号が3であるパケット受信部200の優先度が10、パケット受信部番号がnであるパケット受信部200の優先度が1、である状態を示す。なお、本実施例において、優先度は1〜10の10段階で表されているが、優先度の段階数に制限はない。なお、優先度の値が大きいパケット受信部200ほど高優先である、即ちセキュリティレベルが高いものとする。また、優先度の値が小さいパケット受信部200ほど高優先であるとしてもよい。また、異なるパケット受信部200の優先度が同じであってもよい。
例えば、重要な通信を担う端末(例えば制御ネットワークにおけるPLC(Programmable Logic Controller)など)が接続されているパケット受信部200の優先度を高く設定し、その他の端末(例えば制御ネットワークにおける一般的なPC(Personal Computer))が接続されているパケット受信部200の優先度を低く設定しておくとよい。
このように優先度が設定されることにより、ホワイトリスト生成プログラム421は、ホワイトリストのエントリ数が収容条件を超過した場合に、低優先の端末が接続されているパケット受信部200に対応するエントリを先に集約するため、重要な通信を担う端末のセキュリティレベルが保たれる。
図4Bは、パケット受信部番号別ホワイトリスト生成数カウンタ424が保持するカウンタ値の一例である。パケット受信部番号別ホワイトリスト生成数カウンタ424は、パケット受信部番号をインデックスとしたエントリをもち、各インデックスに対応するホワイトリストのエントリ数を格納する。図4Bは、パケット受信部番号が1であるパケット受信部200に対応するエントリ数が100、パケット受信部番号が2であるパケット受信部200に対応するエントリ数が520、パケット受信部番号が3であるパケット受信部200に対応するエントリ数が45、パケット受信部番号がnであるパケット受信部200に対応するエントリ数が602、である状態を示す。
図5は、転送設定メモリ340が保持する転送設定情報の一例である。なお、転送設定情報は、ホワイトリスト生成プログラム421中に記述されていてもよい。転送設定情報は、例えば、転送設定の種別を示す保持情報501、保持情報501の状態を示す保持内容502、及び保持内容502の初期状態を示す初期状態503を含む。図5において、保持内容502を示す各セルには「/」で区切られた複数の値が記載されているが、実際には当該複数の値のいずれか1つが格納される。初期状態503は、対応する保持内容502に記載されている複数の値のいずれか1つを格納する。以下、転送設定情報に従ったパケット中継装置100の動作の概略の一例を説明する。
転送先決定部320はパケットを受信すると、レコード504の保持内容502が、ホワイトリスト機能が有効であるホワイトリストスイッチモードであるか、ホワイトリスト機能が無効であるノーマルスイッチモードであるかを判定する。
レコード504の保持内容502がノーマルスイッチモードである場合、転送先決定部320は、受信したパケットのヘッダ情報をキーに転送テーブルメモリ330を検索する。転送先決定部320は、検索結果に従い転送先を決定し、パケットを転送する。
レコード504の保持内容502がホワイトリストスイッチモードである場合、転送先決定部320はレコード505の保持内容502が、ホワイトリストを生成する生成状態であるか、ホワイトリストを用いた転送を行う運用状態であるかを判定する。
以下、レコード505の保持内容502が生成状態である場合の動作例を説明する。転送先決定部320は、受信したパケットに対して、ノーマルスイッチモードのパケット転送と同様の処理を行いながら、受信したパケットの所定のヘッダ情報及び所定の制御情報をホワイトリスト生成プログラム421に送信する。ホワイトリスト生成プログラム421は、転送先決定部320から受信したヘッダ情報及び制御情報からホワイトリストを生成する。
ホワイトリスト生成プログラム421は、必要に応じて、生成中のホワイトリストのエントリの集約を行う。ホワイトリスト生成プログラム421は、エントリの集約を行った際、レコード509の保持内容502を参照する。レコード509の保持内容502が「有効」である場合、ホワイトリスト生成プログラム421は、例えば、エントリの集約を実施したことを示すログを入出力装置610に出力する。
以下、レコード505の保持内容502が運用状態である場合の動作例を説明する。転送先決定部320は、パケット受信部200から受信したパケットが、ホワイトリスト格納H/Wメモリ310に格納されたホワイトリストに登録済みか否かを判定する。当該パケットが当該ホワイトリストに登録済みである場合、転送先決定部320は、受信したパケットに対して、ノーマルスイッチモードのパケット転送と同様の処理を行う。
当該パケットが当該ホワイトリストに登録済みでない場合、転送先決定部320は、レコード506の保持内容502が示す処理を当該パケットに対して行う。レコードの保持内容502が示す処理は、例えば、当該パケットの廃棄、当該パケットの通過即ち当該パケットに対するノーマルスイッチモードと同様のパケット転送、又は当該パケットの特定のパケット送信部500への転送等を含む。
また、このとき、転送先決定部320は、レコード507の保持内容502を参照する。レコード507の保持内容502が「有効」である場合、転送先決定部320は、当該パケットの所定の制御情報及び所定のヘッダ情報を転送設定プログラム425に送信する。転送設定プログラム425は、入出力装置610に当該制御情報及び当該ヘッダ情報をログとして出力する。
なお、転送先決定部320は、パケット受信部200からパケットを受信したときに、レコード508の保持内容502を参照し、受信したパケットに含まれるパケット受信部番号に対応する値が「対象」であるか「対象外」であるか判定してもよい。受信したパケットに含まれるパケット受信部番号に対応する値が「対象外」である場合、転送先決定部320は、その他の設定情報に関わらず、当該パケットに対して、ノーマルスイッチモードと同様の処理をする。
なお、例えば、レコード507の保持内容502が「有効」であり、パケット送信部500にSyslogサーバ又はSNMP(Simple Network Management Protocol)サーバが接続されている場合を考える。このとき、転送先決定部320は、ホワイトリスト登録外パケットを当該パケット送信部500にパケットを送信し、SyslogサーバがSyslog機能を使用することにより、又はSNMPサーバがTrap機能を使用することにより、ホワイトリスト登録外パケットを受信時ログの出力を行ってもよい。
図6は、転送設定プログラム425が入出力装置610から入力を受け付ける転送設定に関する命令の一覧の一例である。転送設定に関する命令一覧は、例えば、命令の種別を示す命令種別1101、命令種別1101が示す命令による設定内容を示す設定内容1102、及び設定内容1102の初期状態を示す初期状態1103を含む。
レコード1104〜1109が示す命令それぞれは、レコード504〜509それぞれが示す転送設定を変更する命令である。レコード1104〜1108の命令種別1101、設定内容1102、及び初期状態1103それぞれは、レコード504〜509の保持情報501、保持内容502、及び初期状態503に対応する。
レコード1110が示す命令は、転送設定プログラム425が優先度フィールド4221の各セルに優先度を設定する命令である。レコード1111が示す命令は、ホワイトリスト生成プログラム421が、生成したホワイトリストを入出力装置610に表示する命令である。
図7Aは、ホワイトリスト登録外パケット受信時ログの一例である。ホワイトリスト登録外パケット受信時ログ1201は、例えば、転送先決定部320がホワイトリスト登録外パケットを受信した旨を示す情報、当該パケットの制御情報、及び当該パケットのヘッダ情報等を含む。
図7Bは、エントリ集約時ログの一例である。エントリ集約時ログ1202は、例えば、ホワイトリスト生成プログラム421が集約を実施したことを示す情報、集約対象となったパケット受信部番号、及び集約後のホワイトリストのエントリ数等を含む。
図7Cは、ホワイトリスト生成プログラム421が、入出力装置610に表示するホワイトリストログの一例である。ホワイトリストログ1203は、ホワイトリストの各エントリのパラメータを含む。なお、ホワイトリストログ1203において、「D」と表示されているパラメータはDon’t Careを示し、当該パラメータはマスクが実施され、集約された状態である。
また、matched packets列に表示されている数字は、生成状態中に転送先決定部320が受信した、当該エントリに対応するパケットの数を示す。ホワイトリストログ1203において、例えば#1と#4のエントリは、同一のパケット受信部番号が1であるパケット受信部200が受信したパケットから生成されたエントリであり、さらにSMAC(Source Mac Address)、DMAC(Destination Mac Address)、SIP(Source IP Address)、及びDIP(Destination IP Address)が同値である。
ホワイトリスト生成プログラム421が、パケット受信部番号が1であるパケット受信部200に対応するエントリを集約する場合、例えば、Sport(Source Port番号)をマスクすることにより、#1と#4は全く同一のエントリとなる。従ってホワイトリスト生成プログラム421は、このような場合に#1又は#4の一方のエントリを、不要なエントリとして削除することにより、集約が行われる。
以下、本実施例のパケット中継装置100がホワイトリストを生成する詳細な処理の一例を説明する。また、前述の通り、転送先決定部320、ホワイトリスト生成プログラム421、及び転送設定プログラム425は、必要に応じて、転送設定メモリ340の保持内容502に格納された設定を確認しながら処理を行うが、以下の説明において確認処理を割愛して記載する。
また、保持内容502は、ホワイトリスト生成プログラム421に記述されていてもよいが、転送設定プログラム425は受け付けた転送設定を転送設定メモリ340に格納し、転送先決定部320、ホワイトリスト生成プログラム421、及び転送設定プログラム425は、転送設定メモリ340に格納されている保持内容502を参照するものとして説明する。
図8は、本実施例のパケット中継装置100の生成状態に移行するまでの動作例、及び生成状態中のパケット転送部300の動作例を示すフローチャートである。なお、図8の例においては、全てのパケット受信部200がホワイトリスト生成の対象であるものとする。
転送設定プログラム425は、入出力装置610から各パケット受信部優先度設定命令を受け付け、各パケット受信部優先度設定命令が示す各パケット受信部200の優先度を優先度フィールド4221に格納して、各パケット受信部200のホワイトリスト生成の優先度を設定する。また、転送設定プログラム425は、入出力装置610からホワイトリスト登録外パケット受信時動作設定命令及びホワイトリスト登録外パケット受信時ログ出力設定命令を受け付け、ホワイトリスト登録外パケット受信時動作設定命令及びホワイトリスト登録外パケット受信時ログ出力設定命令が示す設定内容を転送設定メモリ340に格納して、ホワイトリスト登録外パケット受信時の動作を設定する(ステップ901)。
転送設定プログラム425は、入出力装置610からホワイトリスト機能をホワイトリストスイッチモードに変更するホワイトリスト機能設定命令を受け付け、ホワイトリスト機能設定命令が示す設定内容を転送設定メモリ340に格納して、ホワイトリスト機能をホワイトリストスイッチモードに設定する(ステップ902)。転送設定プログラム425は、入出力装置610から状態を生成状態に変更するホワイトリスト機能状態設定命令を受け付け、ホワイトリスト機能状態設定命令が示す設定内容を転送設定メモリ340に格納して、ホワイトリスト機能状態を生成状態に変更する(ステップ903)。
なお、ステップ902の処理が実施されてからステップ903の処理が実施されるまでの間、ホワイトリスト機能状態は運用状態である。従って、ホワイトリスト格納H/Wメモリ310が既にホワイトリストを保持している場合、転送先決定部320はこの間、当該ホワイトリストに従って、受信したパケットに対する処理を決定する。ホワイトリスト格納H/Wメモリ310にホワイトリストが存在しない場合、転送先決定部320はこの間、受信したパケットをホワイトリスト登録外パケットとして転送する。
転送設定プログラム425は、優先度フィールド4221内の情報を優先度フィールド4222にコピーして、優先度情報を保存する(ステップ904)。パケット受信部200のいずれかがパケットを受信する、又は転送設定プログラム425が入出力装置610からのホワイトリスト機能状態を運用状態に変更するホワイトリスト機能状態設定命令を受信するまで処理が待ち状態になる(ステップ905)。
転送設定プログラム425が入出力装置610からホワイトリスト機能状態を運用状態に変更するホワイトリスト機能状態設定命令を受信した場合(ステップ906:運用状態への変更)、図10の処理へ移行する。また、パケット受信部200のいずれかがパケットを受信した場合(ステップ906:パケット受信)、当該パケット受信部200は受信したパケットをパケット転送部300に送信する(ステップ907)。
パケット転送部300の転送先決定部320は、受信したパケットの所定のヘッダ情報及び所定の制御情報をキーにし、ホワイトリスト格納H/Wメモリ310内のホワイトリストを検索する(ステップ908)。転送先決定部320は、当該ヘッダ情報及び当該制御情報を含むエントリが既にホワイトリストに登録済みか否かを判定する(ステップ909)。
当該ヘッダ情報及び当該制御情報を含むエントリが当該ホワイトリストに登録済みである場合(ステップ909:YES)、転送先決定部320は当該パケットのヘッダ情報をキーに転送テーブルメモリ330を検索する。つまり、転送先決定部320は、当該パケット内のヘッダ情報から当該パケットを転送する送信先のパケット送信部500を決定し、送信先に対応する当該パケット送信部500にパケットを転送(送信)し(ステップ910)、ステップ905へと戻る。
当該ヘッダ情報及び当該制御情報を含むエントリが当該ホワイトリストに登録済みでない場合(ステップ909:NO)、転送先決定部320はステップ910の処理と同様に、パケット内のヘッダ情報から送信先を決定し、対応するパケット送信部500にパケットを転送(送信)し、さらに、当該パケットの当該ヘッダ情報及び当該制御情報をコピーしてホワイトリスト生成プログラム421に送信し(ステップ911)、ステップ905へと戻る。
図9は、ホワイトリスト生成プログラム421によるホワイトリスト生成処理の一例を示すフローチャートである。ホワイトリスト生成プログラム421は、転送先決定部320からパケットのヘッダ情報及び制御情報を受信すると、受信したパケットのヘッダ情報及び制御情報をキーにホワイトリストS/Wメモリ領域423内のホワイトリストを検索する(ステップ951)。
ホワイトリスト生成プログラム421は、当該ヘッダ情報及び当該制御情報を含むエントリがホワイトリストS/Wメモリ領域423内のホワイトリストに登録済みか否かを判定する(ステップ952)。当該ヘッダ情報及び当該制御情報を含むエントリが当該ホワイトリストに登録済みであった場合(ステップ952:YES)、ホワイトリスト生成プログラム421は、図9のスタートに戻って、ヘッダ情報及び制御情報の受信を待機する。
当該ヘッダ情報及び当該制御情報を含むエントリが当該ホワイトリストに登録済みでない場合(ステップ952:NO)、ホワイトリスト生成プログラム421は、当該ヘッダ情報及び当該制御情報に対応する当該ホワイトリストのエントリを新規に生成する(ステップ953)。ホワイトリスト生成プログラム421は、生成したエントリを、ホワイトリストS/Wメモリ領域423内のホワイトリストに格納する。
なお、ホワイトリスト生成プログラム421は、ステップ953において、ホワイトリストS/Wメモリ領域423内のホワイトリストの、新規に生成するエントリの制御情報を含むエントリ、の集約状況に応じて、当該新規に生成するエントリのエントリ形態を選択する。具体的には、例えば、ホワイトリスト内のパケット受信部番号701が1であるエントリが、既に何度かの集約が行われエントリ形態714で表されている場合、ホワイトリスト生成プログラム421は、新規に生成するエントリに対応するパケット受信部番号701が1であれば、当該エントリをエントリ形態714が示す形態で生成する。
ホワイトリスト生成プログラム421は、新規に生成したエントリに対応するパケットを受信したパケット受信部番号のパケット受信部番号別ホワイトリスト生成数カウンタ424のカウンタ値をインクリメントする(ステップ954)。
ホワイトリスト生成プログラム421は、インクリメントを実施したカウンタ値が、ホワイトリスト格納H/Wメモリ310の収容条件を超過しているか否か判定する(ステップ955)。当該カウンタ値が収容条件以下である場合(ステップ955:NO)、ホワイトリスト生成プログラム421は、処理を終了する。当該カウンタ値が収容条件を超過している場合(ステップ955:YES)、ホワイトリスト生成プログラム421は、インクリメントを実施したカウンタ値に対応するパケット受信部番号と同値のパケット受信部番号701を持つホワイトリストS/Wメモリ領域423内のホワイトリストのエントリ、が集約限界であるか否かを判定する(ステップ956)。
例えば、ホワイトリスト生成プログラム421が、図3に示したアルゴリズムに従って集約を実施する場合において、当該エントリが既にエントリ形態716まで集約されている場合、集約限界であると判定する。また、当該エントリがエントリ形態711〜715のいずれかで表されている場合、ホワイトリスト生成プログラム421は、集約限界でないと判定する。
ホワイトリスト生成プログラム421は、集約限界であると判定した場合(ステップ956:YES)、ホワイトリストのエントリ数が収容条件を超過するため、ホワイトリストの生成が不可能と判断し、入出力装置610にエラーを表示し、処理を終了する(ステップ957)。なお、例えば、収容条件がより大きいホワイトリスト格納H/Wメモリ310を有するパケット中継装置100が、再度ホワイトリストの生成を行うことにより、当該エラーに対処することができる。
ホワイトリスト生成プログラム421は、集約限界でないと判定した場合(ステップ956:NO)、所定のアルゴリズムに従い当該ホワイトリスト格納S/Wメモリ領域423内のホワイトリストのエントリの集約を実施する(ステップ958)。ホワイトリスト生成プログラム421は、集約を実施したエントリに対応する当該パケット受信部番号のパケット受信部番号別ホワイトリスト生成数カウンタ424のカウンタ値を、集約後のエントリ数に従い修正する(ステップ959)。
ホワイトリスト生成プログラム421は、集約の結果、当該カウンタ値が減少しているか否か判定する(ステップ960)。当該カウンタ値が減少した場合(ステップ960:YES)、ホワイトリスト生成プログラム421は、図9のスタートに戻って、ヘッダ情報及び制御情報の受信を待機する。当該カウンタ値が減少していない場合(ステップ960:NO)、ホワイトリスト生成プログラム421は、ステップ956へと戻る。なお、図9において、ステップ954〜ステップ960の処理が省略されてもよい。
図10は、図8のステップ906において運用状態への変更と判定された場合における、生成状態から運用状態に至るパケット中継装置の処理の一例を示すフローチャートである。ホワイトリスト生成プログラム421は、パケット受信部番号別ホワイトリスト生成数カウンタ424の全てのパケット受信部番号のカウンタ値を積算することで、生成したホワイトリストのエントリ総数を算出する(ステップ1001)。
ホワイトリスト生成プログラム421は、算出したエントリ総数が収容条件を超過しているか否かを判定する(ステップ1002)。ホワイトリスト生成プログラム421は、エントリ総数が収容条件を超過していないと判定した場合(1002:NO)、ホワイトリスト格納S/Wメモリ領域423上のホワイトリストをホワイトリスト格納H/Wメモリ310へと書き込む(ステップ1003)。続いて、転送設定プログラム425が、転送設定メモリ340に記録されているホワイトリスト機能状態を運用状態へと変更する。
ホワイトリスト生成プログラム421は、ステップ1001で算出したエントリ総数が収容条件を超過していると判定した場合(ステップ1002:YES)、ホワイトリスト格納S/Wメモリ領域423のホワイトリストの全てのエントリが集約限界であるか否かを判定する(ステップ1004)。
ホワイトリスト生成プログラム421は、集約限界でないエントリが存在すると判定した場合(ステップ1004:NO)、例えば、集約限界でないエントリのうち、優先度フィールド4221の優先度が最低のパケット受信部番号を含むエントリに対し、所定のアルゴリズムによるホワイトリストのエントリの集約を実施する(ステップ1005)。
なお、優先度が最低の複数のパケット受信部番号が存在する場合、ホワイトリスト生成プログラム421は、当該複数のパケット受信部番号から、例えば、ランダムに1つのパケット受信部番号を選択してもよいし、最小又は最大のパケット受信部番号を選択してもよい。また、ステップ1005において、ホワイトリスト生成プログラム421は、例えば、集約限界でないエントリのうち、優先度フィールド4221の優先度が所定順位以下のパケット受信部番号を含むエントリに対し、集約を実施してもよい。
ホワイトリスト生成プログラム421は、集約を実施した後、優先度フィールド4221の、集約を実施したエントリに対応するパケット受信部の優先度を所定値インクリメントすることにより、優先度を引き上げ(ステップ1006)、ステップ1001へと戻る。
ホワイトリスト生成プログラム421は、全てのエントリが集約限界であると判定した場合(ステップ1004:YES)、これ以上の集約ができないため、例えば、ホワイトリストに含まれるエントリのうち、優先度フィールド4222に記憶した優先度が最低のパケット受信部番号を含むエントリをホワイトリストから削除する(ステップ1007)。
なお、ステップ1007において、ホワイトリスト生成プログラム421は、例えば、優先度フィールド4222の優先度が最低のパケット受信部番号を含むエントリから、所定数のエントリをランダムに選択して削除してもよい。また、ステップ1007において、ホワイトリスト生成プログラム421は、例えば、ホワイトリストに含まれるエントリのうち、優先度フィールド4222の優先度が所定順位以下のパケット受信部番号を含むエントリをホワイトリストから削除してもよい。
ホワイトリスト生成プログラム421は、ステップ1007における削除後のホワイトリストのエントリ総数を、ステップ1001と同様の方法で算出する(ステップ1008)。ホワイトリスト生成プログラム421は、ステップ1002と同様に、ホワイトリストのエントリ総数が収容条件を超過しているか否かを判定する(ステップ1009)。
ホワイトリスト生成プログラム421は、ステップ1008で算出したエントリ総数が収容条件を超過していないと判定した場合(ステップ1009:NO)、ステップ1003と同様にホワイトリスト格納S/Wメモリ領域423上のホワイトリストをホワイトリスト格納H/Wメモリ310へと書き込む(ステップ1010)。続いて、転送設定プログラム425が、転送設定メモリ340に記録されているホワイトリスト機能状態を運用状態へと変更する。
ホワイトリスト生成プログラム421は、ステップ1008で算出したエントリ総数が収容条件を超過していると判定した場合(ステップ1009:NO)、ステップ1007へと戻る。
図11は、転送先決定部320が生成したパケット情報の一例である。パケット情報1301、1302は、転送先決定部320が、パケット受信部200が受信したパケットから抽出した所定の制御情報及び所定のヘッダ情報からなる。転送先決定部320は、運用状態において、パケット情報1301、1302に含まれる制御情報及びヘッダ情報をキーにホワイトリスト1230を検索する。
パケット情報1301は、図7Cのホワイトリストログ1203が示す#2のエントリと、マスクしたSport情報(およびmatched packets情報)を除いて全て一致する情報である。従って転送先決定部320は、パケット情報1301に対応するパケットをホワイトリストに登録のあるパケットとして、転送を実施する。
逆にパケット情報1302は、ホワイトリストログ1203が示すどのエントリとも、一致しない。従って、転送先決定部320は、パケット情報1302に対応するパケットを、ホワイトリスト登録外のパケットとして、ホワイトリスト登録外パケット受信時の動作設定に従い、処理する。
本実施例のパケット中継装置100は、複数種類のヘッダ情報を含むホワイトリストのエントリを生成することにより、正規端末内の詳細な通信内容をホワイトリスト化することができる。従って、パケット中継装置100は、例えば、正規端末がマルウェアに感染する、又は悪意あるユーザに操作される等の事態が起きても、通常時には実施されない端末間の通信や、悪意ある命令を実行する通信を遮断することができる。
また、パケット中継装置100は、ホワイトリスト格納H/Wメモリ310の収容条件、及びパケット受信部200ごとの優先度に基づいて、リストの集約を実施する。これにより、パケット中継装置100は、パケット受信部ごとに設定された優先度に従うセキュリティレベルを有するホワイトリストであって、収容条件を最大限に活かした即ちセキュリティレベルの高いホワイトリスト、を生成することができる。また、パケット中継装置100は、ホワイトリストの生成処理を自動で行うことにより、管理者の手間を省くことができる。
本実施例のパケット中継装置100は、ステップ954〜960、及びステップ1005〜1007におけるリストのエントリ集約を、パケット受信部200単位ではなく、VLAN番号単位で実施する。また、本実施例において、優先度格納S/Wメモリ領域422は、VLAN番号単位で優先度を保持する。また、パケット受信部番号別ホワイトリスト生成数カウンタ424は、VLAN番号単位でカウンタ値を保持する。
本実施例のパケット中継装置100は、入出力装置610からの命令により、ホワイトリストの集約をパケット受信部200単位、又はVLAN番号単位で行うことを選択する。本実施例において、転送設定メモリ340は、ホワイトリストの集約をパケット受信部200単位、又はVLAN番号単位のいずれかで行うことを示す設定情報を格納する。また、優先度格納S/Wメモリ領域422は、パケット受信部番号単位、及びVLAN番号単位で優先度を保持する。また、パケット受信部番号別ホワイトリスト生成数カウンタ424は、パケット受信部番号単位及びVLAN番号単位でカウンタ値を保持する。
本実施例のパケット中継装置100は、例えばボタンや鍵穴等の物理的なインタフェースを有し、当該インタフェースによってホワイトリスト機能等の設定を制御してもよい。例えば、パケット中継装置100は、物理的な鍵によって操作が制御されるボタンのON/OFFによりホワイトリスト機能のモードを決定する。本実施例のパケット中継装置100は、物理的なインタフェースを用いてホワイトリスト機能等の設定変更を実施することで、セキュリティのレベルを高めることができる。
本実施例のパケット中継装置100は、ホワイトリスト生成状態と運用状態との間の状態移行を、入出力装置610からの命令があった際ではなく、特定のパケット受信部200がリンクアップした際に変更してもよい。例えば、特定のパケット受信部200がリンクアップすると、パケット中継装置100は生成状態へと移行する。また、例えば、当該リンクアップから一定時間が経過すると、パケット中継装置100は自動的に運用状態へと移行する。本実施例のパケット中継装置100は、外部からの入力を必要とせず、ホワイトリスト機能状態を変更することができる。
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることも可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、または、ICカード、SDカード、DVD等の記録媒体に置くことができる。
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
100 パケット中継装置、200 パケット受信部、300 パケット転送部、310 転送先決定部、320 ホワイトリスト格納H/Wメモリ、340 転送設定メモリ、400 S/W制御部、410 CPU、420 S/Wメモリ、421 ホワイトリスト生成プログラム、422 優先度格納S/Wメモリ領域、423 ホワイトリスト格納S/Wメモリ領域、424 パケット受信番号別ホワイトリスト生成数カウンタ、500 パケット送信部、610 入出力装置

Claims (10)

  1. ネットワークに接続され、前記ネットワークからデータを受信する、複数のデータ受信部を含む通信装置であって、
    前記複数のデータ受信部それぞれは、
    1以上のデータ受信部からなるデータ受信部群に所属し、
    前記受信したデータに、当該データ受信部が所属するデータ受信部群を示す制御情報を付加し、
    前記通信装置は、
    前記複数のデータ受信部それぞれが受信したデータに基づいて、ホワイトリストを生成する制御部と、
    前記データ受信部群それぞれの優先度を示す優先度情報と、
    前記ホワイトリストを記憶するホワイトリスト格納第1メモリと、を含み、
    前記制御部は、
    第1データ受信部が受信した第1データの制御情報及び前記第1データの複数種類のヘッダ情報を受信し、
    前記優先度情報が示す前記第1データ受信部が所属する第1データ受信部群の優先度と、前記ホワイトリスト格納第1メモリが格納することができるホワイトリストのエントリ数を示す収容条件と、に基づいて、前記第1データの複数種類のヘッダ情報から、パラメータを選択し、
    前記第1データの制御情報と、前記選択した1以上のパラメータと、を含むエントリを、前記ホワイトリストに追加する、通信装置。
  2. 請求項1に記載の通信装置であって、
    前記制御部によって生成中のホワイトリストを格納し、前記収容条件が示すエントリ数より多くのエントリを格納することができる、ホワイトリスト格納第2メモリをさらに含み、
    前記制御部は、
    前記第1データの制御情報と、前記優先度情報が示す前記第1データ受信部が所属する第1データ受信部群の優先度に基づいて前記第1データの複数種類のヘッダ情報から選択したパラメータと、を含むエントリを、前記ホワイトリスト格納第2メモリに格納されたホワイトリストに追加し、
    ホワイトリストを生成する生成状態の終了命令を受け付けた場合、前記ホワイトリスト格納第2メモリに格納されたホワイトリストのエントリ数をカウントし、
    前記カウントしたエントリ数が、前記収容条件が示すエントリ数以下である場合、前記ホワイトリスト格納第2メモリに格納されたホワイトリストを前記ホワイトリスト格納第1メモリに格納し、
    前記カウントしたエントリ数が、前記収容条件が示すエントリ数を超過する場合、
    前記ホワイトリスト格納第2メモリに格納されたホワイリストから、前記優先度情報が示す優先度に基づいて選択した第2データ受信部群を示す制御情報を含むエントリを取得し、
    前記取得したエントリそれぞれのヘッダ情報を示す一部のパラメータをマスクし、
    前記取得したエントリのうち、マスク後の全てのパラメータ値が同一のエントリを1つのエントリに集約する、通信装置。
  3. 請求項2に記載の通信装置であって、
    前記制御部は、
    前記収容条件が示すエントリ数を前記カウントしたエントリ数が超過し、かつ前記ホワイトリスト格納第2メモリに格納されたホワイトリストの全てのエントリの所定のパラメータがマスクされている場合、
    前記ホワイトリスト格納第2メモリに格納されたホワイリストから、前記第2データ受信部群を示す制御情報を含む1以上のエントリを削除する、通信装置。
  4. 請求項1に記載の通信装置であって、
    前記制御部によって生成中のホワイトリストを格納し、前記収容条件が示すエントリ数より多くのエントリを格納することができる、ホワイトリスト格納第2メモリをさらに含み、
    前記制御部は、
    前記第1データの制御情報と、前記優先度情報が示す前記第1データ受信部が所属する第1データ受信部群の優先度に基づいて前記第1データの複数種類のヘッダ情報から選択したパラメータと、を含むエントリを、前記ホワイトリスト格納第2メモリに格納されたホワイトリストに追加し、
    前記ホワイトリスト格納第2メモリに格納されたホワイトリストの、前記第1データ受信部群を示す制御情報を含むエントリ数、をカウントし、
    前記カウントしたエントリ数が、前記収容条件が示すエントリ数を超過する場合、
    カウント対象のエントリそれぞれのヘッダ情報を示す一部のパラメータをマスクし、
    カウント対象のエントリのうち、マスク後の全てのパラメータ値が同一のエントリを1つのエントリに集約する、通信装置。
  5. 請求項2乃至4のいずれか1項に記載の通信装置であって、
    前記ホワイトリスト格納第2メモリに格納されたホワイトリストのエントリそれぞれのパラメータは、Source Mac Address、Destination Mac Address、protocol、Source IP Address、Destination IP Address、Source port番号、及びDestination port番号の少なくとも1つを含み、
    前記制御部は、
    前記少なくとも1つを含むエントリのパラメータをマスクする際に、Source port番号又はDestination port番号の一方、Source port番号又はDestination port番号の他方、protocol、Destination IP Address、Destination Mac Address、Source IP Address、Source Mac Addressの優先順位でマスクを実施する、通信装置。
  6. 請求項1に記載の通信装置であって、
    データのヘッダ情報とデータの転送先との対応を示す転送情報と、
    前記転送情報を参照して、前記複数のデータ受信部が受信したデータを転送するデータ転送部と、をさらに含み、
    前記データ転送部は、前記制御部がホワイトリストを生成する生成状態において、
    前記第1データ受信部から前記第1データを受信し、
    前記第1データから前記制御情報及び前記複数種類のヘッダ情報を抽出し、
    前記抽出した制御情報及び複数種類のヘッダ情報を、前記制御部に送信し、
    前記転送情報が示す前記第1データのヘッダ情報に対応する宛先に、前記第1データを転送する、通信装置。
  7. 請求項1に記載の通信装置であって、
    データのヘッダ情報とデータの転送先との対応を示す転送情報と、
    前記転送情報を参照して、前記複数のデータ受信部が受信したデータを転送するデータ転送部と、
    データ転送に関する設定を格納する転送設定メモリと、をさらに含み、
    前記データ転送部が前記ホワイトリスト格納第1メモリに格納されたホワイトリストを用いたデータ転送を行う、運用状態を有し、
    前記制御部は、
    前記データ転送部が前記運用状態において前記ホワイトリスト格納第1メモリに格納されたホワイトリストに登録されていないデータを受信した場合に、当該データに対して行う第1処理、を示すホワイトリスト登録外データ受信時動作設定を受け付け、
    前記ホワイトリスト登録外データ受信時動作設定を、前記転送設定メモリに格納し、
    前記第1処理は、当該データの破棄、前記転送情報が示す当該データのヘッダ情報に対応する宛先への当該データの転送、又は特定の宛先への当該データの転送のいずれかであり、
    前記データ転送部は、
    前記運用状態において、第2データ受信部から第2データを受信し、
    前記第2データが前記ホワイトリスト格納第1メモリに格納されたホワイトリストに登録されていないと判定した場合、
    前記転送設定メモリを参照して、前記第1処理を前記第2データに対して行う、通信装置。
  8. 請求項7に記載の通信装置であって、
    表示装置に接続され、
    前記データ転送部は、前記第2データの制御情報及び前記第2データのヘッダ情報を前記制御部に送信し、
    前記制御部は、前記第2データの制御情報及び前記第2データのヘッダ情報を、前記表示装置に出力する、通信装置。
  9. 請求項1に記載の通信装置であって、
    前記データ受信部群は、同一のVLANに所属するデータ受信部からなる、通信装置。
  10. 請求項1に記載の通信装置であって、
    ホワイトリストを生成する生成状態と、前記ホワイトリスト格納第1メモリに格納されたホワイトリストを用いたデータ転送を行う運用状態と、を有し、
    第3データ受信部がリンクアップした場合に前記生成状態に移行し、前記リンクアップから所定時間経過後に前記運用状態に移行する、通信装置。
JP2015166671A 2015-08-26 2015-08-26 通信装置 Active JP6433865B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2015166671A JP6433865B2 (ja) 2015-08-26 2015-08-26 通信装置
US15/230,511 US10193890B2 (en) 2015-08-26 2016-08-08 Communication apparatus to manage whitelist information

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015166671A JP6433865B2 (ja) 2015-08-26 2015-08-26 通信装置

Publications (2)

Publication Number Publication Date
JP2017046149A JP2017046149A (ja) 2017-03-02
JP6433865B2 true JP6433865B2 (ja) 2018-12-05

Family

ID=58097033

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015166671A Active JP6433865B2 (ja) 2015-08-26 2015-08-26 通信装置

Country Status (2)

Country Link
US (1) US10193890B2 (ja)
JP (1) JP6433865B2 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6793056B2 (ja) 2017-02-15 2020-12-02 アラクサラネットワークス株式会社 通信装置及びシステム及び方法
GB2566765B (en) * 2017-03-23 2022-09-14 Pismo Labs Technology Ltd Method and system for restricting transmission of data traffic for devices with networking capabilities
JP6877278B2 (ja) 2017-07-19 2021-05-26 アラクサラネットワークス株式会社 中継装置
US11487868B2 (en) * 2017-08-01 2022-11-01 Pc Matic, Inc. System, method, and apparatus for computer security
JP6591504B2 (ja) * 2017-08-31 2019-10-16 セコム株式会社 パケットフィルタリング装置
US11038887B2 (en) * 2017-09-29 2021-06-15 Fisher-Rosemount Systems, Inc. Enhanced smart process control switch port lockdown
JP2020017809A (ja) 2018-07-24 2020-01-30 アラクサラネットワークス株式会社 通信装置及び通信システム
US10891391B2 (en) * 2018-08-29 2021-01-12 International Business Machines Corporation Remote file storage with multiple access levels
JP7139252B2 (ja) 2019-01-10 2022-09-20 アラクサラネットワークス株式会社 転送装置
US20230046788A1 (en) * 2021-08-16 2023-02-16 Capital One Services, Llc Systems and methods for resetting an authentication counter

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7698744B2 (en) * 2004-12-03 2010-04-13 Whitecell Software Inc. Secure system for allowing the execution of authorized computer program code
US7617533B1 (en) * 2005-01-31 2009-11-10 Symantec Corporation Self-quarantining network
US8881276B2 (en) * 2007-01-09 2014-11-04 Cisco Technology, Inc. Dynamically generated whitelist for high throughput intrusion prevention system (IPS) functionality
JP2009042825A (ja) * 2007-08-06 2009-02-26 Nec Corp 迷惑メール対策方法、迷惑メール対策装置及び迷惑メール対策プログラム
JP2009239525A (ja) 2008-03-26 2009-10-15 Nippon Telegr & Teleph Corp <Ntt> フィルタリング装置、フィルタリング方法およびフィルタリングプログラム
US8863235B2 (en) * 2008-05-13 2014-10-14 At&T Mobility Ii Llc Time-dependent white list generation
US8490171B2 (en) * 2008-07-14 2013-07-16 Tufin Software Technologies Ltd. Method of configuring a security gateway and system thereof
US8984628B2 (en) * 2008-10-21 2015-03-17 Lookout, Inc. System and method for adverse mobile application identification
US10743251B2 (en) * 2008-10-31 2020-08-11 Qualcomm Incorporated Support for multiple access modes for home base stations
KR101481421B1 (ko) * 2008-11-03 2015-01-21 삼성전자주식회사 이동 통신 시스템에서 단말의 화이트 리스트 관리 방법 및 장치
EP3013108B1 (en) * 2013-06-19 2018-11-07 Sony Corporation Communication control device, communication control method, and terminal device
KR101455167B1 (ko) * 2013-09-03 2014-10-27 한국전자통신연구원 화이트리스트 기반의 네트워크 스위치
WO2015153849A1 (en) * 2014-04-03 2015-10-08 Automattic, Inc. Systems and methods for protecting websites from botnet attacks

Also Published As

Publication number Publication date
US10193890B2 (en) 2019-01-29
JP2017046149A (ja) 2017-03-02
US20170063861A1 (en) 2017-03-02

Similar Documents

Publication Publication Date Title
JP6433865B2 (ja) 通信装置
US10015193B2 (en) Methods and devices for identifying the presence of malware in a network
US9276852B2 (en) Communication system, forwarding node, received packet process method, and program
JP6387195B2 (ja) 通信装置及びシステム及び方法
JP5870009B2 (ja) ネットワークシステム、ネットワーク中継方法及び装置
JPWO2011081020A1 (ja) ネットワークシステム、コントローラ、ネットワーク制御方法
US10560452B2 (en) Apparatus and method to control transfer apparatuses depending on a type of an unauthorized communication occurring in a network
JP6793056B2 (ja) 通信装置及びシステム及び方法
JP2007208861A (ja) 不正アクセス監視装置及びパケット中継装置
JP2017005402A (ja) 通信装置
US20180167337A1 (en) Application of network flow rule action based on packet counter
Dang-Van et al. A multi-criteria based software defined networking system Architecture for DDoS-attack mitigation
EP3266174B1 (en) Uplink port oversubscription determination
JP7139252B2 (ja) 転送装置
WO2022183794A1 (zh) 一种流量处理方法、及防护***
JP2013070325A (ja) 通信システム、通信装置、サーバ、通信方法
JP2009077030A (ja) ルール制御装置、ルール制御方法、および、ルール制御プログラム
US11159533B2 (en) Relay apparatus
KR102046612B1 (ko) Sdn 기반의 dns 증폭 공격 방어시스템 및 그 방법
JP6441721B2 (ja) 制御装置、制御方法及びプログラム
JP6581053B2 (ja) フロー解析装置、トラフィック解析システム、及びフロー解析方法
WO2017058137A1 (en) Latency tracking metadata for a network switch data packet
CN116032582A (zh) 一种针对端口扫描的网络入侵防御方法及***
CN103997488A (zh) 一种网络攻击的监控方法及***
JP2019024272A (ja) 制御装置、制御方法及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20171205

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180912

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181107

R150 Certificate of patent or registration of utility model

Ref document number: 6433865

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250