JP6138714B2 - 通信装置および通信装置における通信制御方法 - Google Patents

通信装置および通信装置における通信制御方法 Download PDF

Info

Publication number
JP6138714B2
JP6138714B2 JP2014040047A JP2014040047A JP6138714B2 JP 6138714 B2 JP6138714 B2 JP 6138714B2 JP 2014040047 A JP2014040047 A JP 2014040047A JP 2014040047 A JP2014040047 A JP 2014040047A JP 6138714 B2 JP6138714 B2 JP 6138714B2
Authority
JP
Japan
Prior art keywords
packet
input
address
output unit
port
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
JP2014040047A
Other languages
English (en)
Other versions
JP2015165614A (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 JP2014040047A priority Critical patent/JP6138714B2/ja
Priority to US14/573,069 priority patent/US9521163B2/en
Publication of JP2015165614A publication Critical patent/JP2015165614A/ja
Application granted granted Critical
Publication of JP6138714B2 publication Critical patent/JP6138714B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1458Denial of Service
    • 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

Description

本発明は、通信装置および通信装置における通信制御技術に関する。
本技術分野の背景技術として、特開2010−220066号公報(特許文献1)がある。この公報には、「監視ユニット101の不正PC検出部204は、登録済みリスト及び検出リストを参照して、不正ノードから送信されたARP要求パケットを検出し、不正ノードによるアクセスを排除するために必要な情報を送信リストへ格納する。ARPテーブル偽装部206は、ARPテーブルにおいて、不正ノードのMACアドレスを監視ユニット101のMACアドレスに偽装する。偽装ARPリクエスト送信部207は、不正ノードのアクセス先のノードへ偽装ARP要求パケットを送信する。そして、不正ノードのアクセス先のノードから偽装ARP要求パケットに対するARP応答パケットを受信した後、偽装ARPリプライ送信部208は、不正ノードへ偽装ARP応答パケットを送信する」と記載されている(要約参照)。
従来、外部ネットワークに物理的接続をしない、また、多重のファイヤーウォールをかけることで外部ネットワークからの攻撃に対して比較的安全に利用が為されている社内ネットワークに代表される閉じられた空間で利用されるネットワーク(以下、「閉じられたネットワーク」と呼ぶ。)システムにおいては、閉じられたネットワーク内に不正端末を接続した場合に、アドレス解決パケットの1つであるARP(Address Resolution Protocol)(非特許文献1)、およびMAC(Media Access Control)認証を用いた特許文献1の認証端末技術によって、認証端末の通信を保護している。この認証端末技術には、ネットワークアドレスの一つであり、物理アドレス(ハードウェアアドレス)であるMACアドレスが認証情報として用いられており、閉じられたネットワーク内に存在可能な端末のMACアドレスを管理することで端末の通信許可、通信拒否を行っている。
特開2010−220066号公報
"ARP Cache Poisoning" Steve Gibson(2005−12−11)
MAC認証とは、ネットワーク内で通信を許可する端末のMACアドレス情報を登録し、登録されていないMACアドレスをもつ端末の通信を許可しない認証技術であり、認証済み端末からの不正パケットを抑止することができない問題がある。
そのため、特許文献1では、閉じられたネットワーク内で既に認証された認証端末からの不正パケットの送信、転送を防ぐことはできない。不正パケットとしては、アドレス解決パケットを不正利用したものがある。以下、アドレス解決パケットの一例としてIPv4で用いられるARPパケットを用いて課題を説明するが、IPv6で用いられるアドレス解決パケットのNDP(Neighbor Discovery Protocol)でも同様である。
閉じられたネットワーク内の認証済み端末が、閉じられたネットワーク内の他の認証済み端末に、ARPパケットを不正利用した不正ARPパケットを送信し、閉じられたネットワーク内の他の認証済み端末が有するMACアドレスとIP(Internet Protocol)アドレスの対応情報であるARPテーブルを不正なARPテーブルに変更させる。この閉じられたネットワーク内の他の認証済み端末は、不正なARPテーブルに従ってパケットを送信するため、本来のパケット送信先ではない端末へパケットを送信することになり、正常な通信ができない。その結果、不正ARPパケットの送信による通信遮断、盗聴などが可能である。つまり、不正ARPパケットを送信することで、通信遮断や盗聴を行うサイバー攻撃が可能となる。
したがって、本発明は、例えば、閉じられたネットワーク内の認証済み端末が、アドレス解決パケットを不正利用することを防ぎ、閉じられたネットワーク内の他の認証端末の通信遮断、盗聴を防ぐことを目的とする。
上述の課題の少なくとも一を解決するために、本発明の一態様では、以下の形態または適用例として実現することが可能である。
複数の入出力部と、複数の入出力部のうち、特定の入出力部を識別する特定入出力部識別情報と特定の入出力部に接続される特定装置の物理アドレスとを対応づける特定入出力部情報を記憶する記憶部と、複数の入出力部のうち、装置から送信された特定の入出力部以外の入出力部を介して受信するアドレス解決に関するパケットに含まれる送信元の送信元装置の物理アドレスと記憶部に記憶する特定入出力部情報の特定装置の物理アドレスとの比較を行い、比較の結果に応じて、アドレス解決に関するパケットを破棄するか転送するかを決定する解析部とを備える通信装置。
本発明の一態様によれば、閉じられたネットワーク内の認証済み端末が、アドレス解決パケットを不正利用することによって、閉じられたネットワーク内の他の認証端末の通信遮断、盗聴を防ぐことが可能である。
上記以外の課題、構成及び効果は、以下の実施形態の説明により明らかにされる。
ネットワークシステム全体の構成、スイッチ装置の構成を説明する図である。 DHCPパケットを説明する図である。 ARPパケットを説明する図である。 第1の実施例における、スイッチ装置が持つFDBテーブル一例である。 第1の実施例における、スイッチ装置へコンフィグ情報を設定するコマンドの一例を説明する図である。 第1の実施例における、スイッチ装置が持つ信頼ポート情報テーブルの一例である。 第1の実施例における、パケットを受信した際のパケット解析部における信頼ポート判定処理のフローを示す図の例である。 第1の実施例における、信頼ポートでパケットを受信した際のパケット解析部による信頼ポート情報テーブルの更新(登録)処理のフローを示す図の例である。 第1の実施例における、非信頼ポートでパケットを受信した際の処理のフローを示す図の例である。 変形例における、信頼ポート情報テーブルの一例である。 ARP Replyパケットを不正に利用する際のシーケンス図である。
以下、本発明の実施の形態を、実施例に基づいて説明する。
(第1の実施例)
図1は、第1の実施例におけるネットワークシステム全体の構成、転送装置であるスイッチ装置の構成を説明する図である。
ネットワークシステム10は、例えば、MACアドレスによる認証(MAC認証)によって認証外の端末の通信を制限する社内ネットワークなどの閉じられたネットワークにおけるネットワークシステムである。ネットワークシステム10は、ネットワークアドレスの一つであり、プロトコルアドレスであるIPアドレス:IP1とMACアドレス:MAC1を持ち、DHCP(Dynamic Host Configuration Protocol)サーバ機能を有するルータ装置100と、IPアドレス:IP2とMACアドレス:MAC2を持つ端末A300と、IPアドレスIP3とMACアドレス:MAC3を持つ端末B400と、ルータ装置100、端末A300、端末B400間のパケットを転送し、中継するスイッチ装置200、スイッチ装置200を制御し管理する管理装置510から構成されている。
「端末」とは、通信を行うことができる装置(例えば、コンピュータ)である。以下、端末を「装置」や「通信装置」と記載することがある。また、スイッチ装置200やルータ装置100も「通信装置」と呼ぶこともある。また、スイッチ装置200は、「転送装置」とも呼ぶこともある。また、ルータ装置100は、インターネット500と接続されている。
また、本実施例では、プロトコルアドレスの一つとしてIPアドレスを用い、ハードウェアアドレスの一つとしてMACアドレスを用いて説明するが、これに限られない。
また、DHCPとは、端末にIPアドレスを自動的に割り当てるプロトコルであり、DHCPで用いられるDHCPパケットは、図2で示すフォーマットで構成されるパケットである。なお、図2で示すフォーマットは一例であり、これに限られない。
DHCPパケットを図2を用いて説明する。なお、このDHCPパケットは、一般的なDHCPのプロセスに用いられるものと同様であるため、各フィールドの表す意味や各フィールドに格納される値などについては、本実施例において使用する箇所のみ説明する。
DHCPパケットは、MACヘッダ20、IPヘッダ40、UDPヘッダ50をDHCPフレーム60に順に付与して構成される。MACヘッダ20は、パケットを送信する宛先の装置のMACアドレスを表す宛先MACアドレス21とパケットを送信する送信元の装置のMACアドレスを表す送信元MACアドレス22、パケットの種類を表すタイプ23よりなる。IPヘッダ40には、パケットが従うプロトコルを表すプロトコル41が含まれる。UDPヘッダ50には、パケットを送信する送信元の装置におけるパケットを送信するポートを表す送信元ポート51が含まれる。DHCPフレーム60は、DHCPの動作の種類(要求とその応答)を表すオペコード(OP)61と、DHCPリレーエージェントのIPアドレスを表すリレーエージェントIPアドレス62を含む。
スイッチ装置200は、複数のポートを有する。このポートは、外部の装置とのパケットの入出力(送受信)を行う入出力部である。ルータ装置100とはポート210、端末A300とはポート220、端末Bとはポート230と物理回線によって接続されている。ルータ装置100から送信されるパケットはポート210で、端末A300から送信されるパケットはポート220で、端末B400から送信されるパケットはポート230で受信される。
第1の実施例においては、スイッチ装置200においてルータ装置100と接続されるポート210を信頼ポート、端末A300、および端末B400と接続されるポート220、ポート230を非信頼ポートとする。また、端末A300がネットワークシステム内の端末B400にサイバー攻撃を実施するアタック端末、端末B400はネットワークシステム内で通常運用され、サイバー攻撃を実施しない非アタック端末とする。なお、以降の説明では、端末A300から端末B400にサイバー攻撃を実施するため、端末B400を被アタック端末と表現する。
ここで、信頼ポートとは、スイッチ装置200が有する複数のポートのうち、予め管理者等が選択し、設定する特定のポートである。例えば、不正な装置ではなく、サイバー攻撃を実施しない信頼できる装置(以下、「信頼装置」と呼ぶ。)と接続するポートである。また、信頼装置は、例えば、事前に管理者等が選択し、設定する。
また、本実施例において、信頼ポートに接続される装置は、閉じられたネットワークの端点に位置する装置であり、閉じられたネットワーク内のパケットが多く通過する装置である。そのため、この装置に偽装されると、閉じられたネットワーク内の広い範囲で通信障害などの影響が出る可能性があるため、サイバー攻撃から守らなければならない装置である。
つまり、信頼ポートとは、このポートにおける通信を保護する必要があるポートである。したがって、信頼ポートを通信保護ポートと呼ぶこともある。また、信頼ポートとは、このポートに接続された装置が、アタック端末によってなりすまされていないかを監視する対象のポート(監視対象ポート)でもある。
また、信頼装置とは、この装置における通信を保護する必要がある装置である。したがって、信頼装置を通信保護装置と呼ぶこともある。本実施例においては、信頼装置をルータ装置100として説明するが、閉じられたネットワークの端点に位置する装置でなくても、重要な装置(例えば、サーバ装置など)であれば、予め管理者等が信頼装置として認定し、設定することも可能である。
また、閉じられたネットワーク内に複数の信頼装置が存在する場合は、スイッチ装置200の複数のポートが、信頼ポートとして設定されることになる。
本実施例における、サイバー攻撃とは、アタック端末が、ルータ装置100になりすましたアドレス解決パケット(偽装アドレス解決パケットとも呼ぶ)を送信することによる被アタック端末での通信遮断発生として説明する。アドレス解決パケットの一つとして、本実施例において、ARPパケットを用いて説明する。このプロトコルは、ハードウェアアドレスとプロトコルアドレスの関係を管理するものである。ARPパケットによるアドレス解決プロセスを実行することで、パケットの送信先(以下、「宛先」とも記載する。)の装置のIPアドレスとその装置のMACアドレスとの対応情報をARPテーブルとして学習することができる。
ARPパケットは、図3で示すフォーマットで構成されるパケットである。また、本実施例においては、説明を簡略するためポートは物理ポート上の情報とするが、VLAN(Virtual LAN)にくくりついた論理ポートで構成してもよい。なお、図3で示すフォーマットは一例であり、これに限られない。
ARPパケットを図3を用いて説明する。なお、このARPパケットは、一般的なARPのプロセスに用いられるものと同様であるため、各フィールドの表す意味や各フィールドに格納される値などについては、本実施例において使用する箇所のみ説明する。
ARPパケットは、MACヘッダ20をARPフレーム30に付与して構成される。MACヘッダ20は、図2のMACヘッダ20と同様のため、説明を省略する。ARPフレーム30には、ARPの動作の種類(要求(Request)とその応答(Reply))を表すオペレーション31、ARPパケットを送信する送信元の装置のMACアドレスを表す送信元MACアドレス32、ARPパケットを送信する送信元の装置のIPアドレスを表す送信元IPアドレス33、ARPパケットを送信する宛先の装置のIPアドレスを表す送信先IPアドレス34が含まれる。
ここで、図1を参照して、本発明が解決しようとする課題を詳細に説明する。
非特許文献1では、ARPの脆弱性を指摘し、認証済み端末が、アタック端末としてARP Replyパケットを不正利用すると、受信したパケットを送信する際に参照するARPテーブル(MACアドレスとIPアドレスの対応情報)(次宛経路情報)を書き換えることが可能となり、閉じられたネットワーク内の他の端末(被アタック端末)の通信遮断、盗聴を行うサイバー攻撃が可能である。これは、既知のIPアドレスから未知のMACアドレスを得るプロトコルであるARPには、認証や暗号化は一切ないため、アタック端末によるARPパケットの改竄が容易であり、その結果、被アタック端末のARPテーブルを不正なものに書き換えることが可能であるからである。
ARP Replyパケットを不正に利用することによるARPテーブルの書き換えについて図1および図11を用いて説明する。
図11は、端末A300が、ARP Replyパケットを不正に利用する際のシーケンス図である。ルータ装置100は、IPアドレス:IP3を有する端末のMACアドレスを取得するため、IPアドレス:IP3宛てにARP Requestパケットをブロードキャストで送信する(S1)。このIPアドレス:IP3宛てにARP Requestパケットを受信したスイッチ装置200は、端末A300および端末B400に対してブロードキャストで送信する。
端末B400は、IPアドレス:IP3を有するため、このARP Requestパケットに対して、端末BのMACアドレス:MAC3を通知するARP Replyパケットをスイッチ装置200を介してルータ装置100に対してユニキャストで送信する(S3)。
一方、端末A300は、IPアドレス:IP2のため、本来であれば、このARP Requestパケットに対して応答しない。しかし、端末A300が、IPアドレス:IP3を有する端末のMACアドレスを問い合わせるARP Requestパケットに対して、端末B400になりすまして、「IPアドレス:IP3を有する端末は、端末A(MACアドレス:MAC2)である」として、端末A300のMACアドレス:MAC2を通知する不正なARP Replyパケットをスイッチ装置200を介してルータ装置100に対してユニキャストで送信(S2)すると、ルータ装置100がこの不正なARP Replyパケットを受信して、IPアドレス:IP3に対応するMACアドレスは、「MAC2」であるとしてARPテーブルを登録することになる(S4)。この結果、ルータ装置100は、IPアドレス:IP3の端末B300宛てのパケットをMACアドレス:MAC2を宛先として送信する(S5)ことになり、本来、端末B300に送信されるべきパケットが、スイッチ装置200を介して端末A400に対して送信されることになる。
したがって、アタック端末である端末A400が、不正なARP Replyパケットをルータ装置100に送信することで、ルータ装置100のARPテーブルを不正なものに書き換えさせることが可能であり、本来の宛先とは異なる端末へパケットを送信させる(不正な経路を通過させる)ことが可能となり、アタック端末による通信の遮断、盗聴が可能となる。
さらに、ARPには、閉じられたネットワーク内のアドレス重複の検知などに使用されるGratuitous ARPがある。このGratuitous ARPは、アドレス重複の検知以外にも、閉じられたネットワーク内の端末上のARPテーブル(例えば、IPアドレスとMACアドレスの対応関係の情報)を更新するためにも用いられる。つまり、このGratuitous ARP Requestパケットを受信した端末は、既に学習して作成したARPテーブルを更新する。
したがって、アタック端末が、Gratuitous ARPパケットを不正利用することによって、被アタック端末のARPテーブルを強制的に更新させることができ、被アタック端末が送受信するパケットが、不正な経路を通過するように通信経路を変更することができ、アタック端末による通信遮断、盗聴が可能となる。
上記より、認証機能を持つ閉じられたネットワークにおいても、認証済み端末が、他の認証済み端末になりすまして、認証済み端末がアドレス解決パケットを不正利用することによって、閉じられたネットワーク内の他の端末の通信遮断、盗聴を行うサイバー攻撃が可能となるという課題がある。
以下、上記の課題を解決するための本発明の一態様の詳細を説明する。
図1を参照して、スイッチ装置200の内部構成について説明する。
スイッチ装置200は、ネットワークインタフェース1000、転送部1100、設定情報入出力部1200、パケット解析部1300と記憶部1050を有する。転送部1100は、転送エンジンとも記載され、記憶部1050は、メモリとも記載され、パケット解析部1300と設定情報入出力部1200は、制御部とも記載される。
ネットワークインタフェース1000、転送部1100、設定情報入出力部1200、パケット解析部1300は、例えばFPGA(field−programmable gate array)のような集積回路で設計する等によりハードウェアで実現してもよい。また、転送部1100やパケット解析部1300がプロセッサであり、これが記憶部(メモリ)1050に格納されたプログラムを実行することによって、各機能が実現されてもよい。その場合、以下の説明において転送部1100やパケット解析部1300が実行する処理は、実際にはこれらに相当するプロセッサによって実行される。
記憶部1050には、パケットの転送に関する情報であるFDB(Forwarding DataBase)テーブル2000、信頼ポートに関する情報である信頼ポート情報テーブル2100が格納される。
ネットワークインタフェース1000は、スイッチ装置200が持つ複数のポート210〜230を制御し、これらに対して、ポート番号を示す値を1から番号を振って管理している。そのため、ポート210はポート番号1、ポート220はポート番号2、ポート230はポート番号3に、それぞれ対応している。スイッチ装置200に接続される端末の数は、3以上であってもよい。一般的に、スイッチ装置200が有するポート数は、接続される装置数以上となる。
ネットワークインタフェース1000は、各ポート210〜230でパケットを受信すると、受信したパケット(以下、「受信パケット」と呼ぶ。)を転送部1100へ転送し、パケットを受信したポートのポート番号である受信ポート番号を転送部1100に通知する。また、転送部1100から、パケットの出力先のポートのポート番号である出力先ポート番号を通知され、転送部1100から、転送パケットを受信すると、出力先ポート番号に対応するポートから受信した転送パケットを送信する制御を行う。なお、ポート番号とは、各ポートを識別する情報である。
転送部1100は、パケット受信部1110、パケット送信部1120を有する。パケット受信部1110は、ネットワークインタフェース1000が転送した受信パケットのヘッダ等に含まれる情報とネットワークインタフェース1000が通知した受信ポート番号とからパケットの送信先の装置のMACアドレスとパケットを送信する出力先のポートのポート番号との対応情報であるFDBテーブル2000を作成する。つまり、FDBテーブル2000は、各ポートのポート番号とこれらのポートに接続される装置のそれぞれのMACアドレスとを対応づける、ポートとMACアドレスの対応情報である。
そして、受信パケットと受信ポート番号とFDBテーブル2000に格納された各種情報を用いて、パケットを送信する出力先のポート番号である出力先ポート番号の情報と受信ポート番号の情報と受信パケットとを、パケット解析部1300に{受信パケット、受信ポート番号、出力先ポート番号}のひと組の情報として送信する。
ここで、図4を用いてFDBテーブル2000について説明する。FDBテーブル2000は、パケットの宛先の装置のMACアドレスである宛先MACアドレス2010とパケットの出力先のポート番号である出力先ポート番号2020で構成される。つまり、パケットの宛先のMACアドレスと、このMACアドレスを有する装置が接続されたポート番号とを対応づけるテーブル(ポート番号MACアドレス対応テーブル)である。宛先MACアドレス2010は、各ポート210〜230と接続されている装置のMACアドレスが格納され、出力先ポート番号2020は、ネットワークインタフェース1000が管理している各ポート210〜230のポート番号が格納される。このFDBテーブル2000を参照することで、パケットの転送先を特定することができる。
スイッチ装置200は、各ポート210〜230でパケットを受信すると、パケット受信部1110が、受信パケットの送信元MACアドレス22に格納されているMACアドレスを宛先MACアドレス2010に、ネットワークインタフェース1000から通知された受信ポート番号を出力先ポート番号2020に格納して、FDBテーブル2000を作成する。
このため、図1のネットワークシステム10において、スイッチ装置200のFDBテーブル2000は、ポート210、ポート220、ポート230でのパケットの受信により図4で示す各エントリが作成される。
また、パケット送信部1120は、詳細は後述するが、パケット解析部1300が送信する{出力先ポート番号、転送パケット}の情報をネットワークインタフェース1000に送信する。
設定情報入出力部1200は、ネットワークシステム10の管理者によるスイッチ装置200に対するコンフィグ情報の設定(設定情報の入力)を受け付け、受け付けたコンフィグ情報を記憶部1050に記憶(登録)する。また、登録したコンフィグ情報を解釈する。例えば、図5で示されるコンフィグ情報により設定情報入出力部1200は、信頼ポート情報テーブル2100を更新する。
設定情報入出力部1200は、管理者が操作する管理装置510と接続され、管理者からの設定情報の入力や各種制御を受け付け、また、記憶部1050に記憶(登録)している設定情報を管理装置510に出力するインタフェースである。
また、例えば、ネットワークインタフェース1000が有するポートのうちの1つを、設定情報入出力部1200としてもよい。また、スイッチ装置200に設けられるGUI(Graphical User Interface)による入出力表示部であってもよい。
信頼ポート情報テーブル2100は、図6で示すように信頼ポート2110、ルータIPアドレス2120、ルータMACアドレス2130を有する。信頼ポート2110は、管理者によって設定される信頼ポートであり、ルータIPアドレス2120は、信頼ポートに接続される装置のIPアドレスであり、ルータMACアドレス2130は、この装置のMACアドレスである。なお、本実施例において、信頼ポートに接続される通信装置がルータであるため、ルータIPアドレスおよびルータMACアドレスと表記するが、信頼ポートに接続される通信装置は、ルータに限られない。そのため、ルータIPアドレスは、「信頼装置(通信保護装置)IPアドレス」、ルータMACアドレスは、「信頼装置(通信保護装置)MACアドレス」と言い換えてもよい。信頼ポート情報テーブル2100の登録については、図8を用いて説明する。
図5は、スイッチ装置200が受け付けて記憶部(メモリ)1050に記憶するコンフィグ情報のコマンドの例を示したものである。このコンフィグ情報では、設定情報入出力部1200は、行1〜4において、「ポート2」および「ポート3」は、MAC認証を行うポートであると解釈し、行5により、MAC認証機能を有効とさせ、行6、7において、MAC認証により通信が許容されるMACアドレスの情報を解釈し、行8によりMAC認証情報となるデータベースとして通信が許容されるMACアドレスをスイッチ装置100の記憶部(メモリ)1050に登録する。また、行9、10において設定情報入出力部1200は、「ポート1」が信頼ポートであると解釈し、信頼ポート2110に「ポート1」を登録する。これにより信頼ポート情報テーブル2100は、「ポート1」のエントリを保有する。
この処理により、信頼ポート情報テーブル2100は、設定情報入出力部1200が信頼ポートと解析した信頼ポート数分のエントリを持つテーブルとなる。ルータIPアドレス2120、ルータMACアドレス2130は、パケット解析部1300が信頼ポートから受信したパケットに対しての解析結果が格納される。本格納処理は後述する図8において説明する。なお、管理者が、信頼ポートだけでなく、この信頼ポートに接続される装置のMACアドレスとIPアドレスの両方もしくはいずれか一方を予めコンフィグ情報として設定することも可能である。
パケット解析部1300は、パケット受信部1110から通知された{受信パケット、受信ポート番号、出力先ポート番号}の情報と信頼ポート情報テーブル2100を基にして、信頼ポートからパケットを受信した場合は、信頼ポート2110を検出し、ルータIPアドレス2120、ルータMACアドレス2130を更新する。信頼ポート情報テーブル2100の更新について詳細は後述する。
また、非信頼ポートからパケットを受信した場合は、アドレス解決パケットであるか否かを解析し、受信したパケットを中継、廃棄するかを決定する(転送可否を判定する)。つまり、パケット解析部1300は、ポート210、220、230のうち、特定のポートである信頼ポート(ポート210)以外のポート220、230を介して、ポート220、230に接続された装置(端末A300、端末B400)が送信したアドレス解決パケットを受信すると、このアドレス解決パケットに含まれる送信元の装置(端末A300、端末B400)のMACアドレスと記憶部1050に記憶する信頼ポート情報テーブル2100の信頼ポート(ポート210)に接続されるルータ装置100のMACアドレスであるルータMACアドレス2130との比較を行い、受信したアドレス解決パケットを破棄するか転送(中継)するかを決定する。
中継時は、パケット受信部1110から通知された出力先ポート番号の情報と、受信パケットを転送パケットとして、パケット送信部1120に{出力先ポート番号、転送パケット}の情報として送信する。
次に、パケット解析部1300がパケット受信部1110から通知された情報を基に、パケットを受信したポートが信頼ポートか非信頼ポートかを判定する処理について説明する。
図7は、ポート210、220、230のうち1つのポートにおいて、パケットを受信した際のパケット解析部1300における信頼ポート判定処理のフローを示す図である。
ポート210〜230のいずれかのポートは、パケットを受信すると、ネットワークインタフェース1000を介してパケット受信部1110に受信パケットを転送し、ネットワークインタフェース1000は、パケットを受信したポートのポート番号である受信ポート番号をパケット受信部1110に通知する。(S1310)。
なお、各ポート210〜230において受信するパケットは、既にMAC認証が済んでいる認証済み装置が送信するパケットである。つまり、各装置がスイッチ装置200に接続されると、スイッチ装置200は、スイッチ装置200の記憶部1050に予めMAC認証情報として記憶(登録)したMACアドレスと、各装置のMACアドレスとが一致するか否かを判定する。
一致した場合は、MACアドレスが一致した装置を認証済み装置と判定し、この認証済み装置によるパケットの送信を許可する。一致しなかった場合は、MACアドレスが一致しなかった装置が送信するパケットの転送を許可しない。この場合、スイッチ装置200は、MACアドレスが一致しなかった装置が送信するパケットを破棄してもよいし、管理者に対して、MACアドレスが一致しなかった装置がスイッチ装置200に接続されたことを設定情報入出力部1200を介して通知してもよい。
また、MAC認証は、装置接続時の実行に限られず、管理者が任意に設定した周期毎に実行してもよいし、各ポート210〜230においてパケットを受信する毎に実行してもよい。
パケット受信部1110は、ネットワークインタフェース1000を介して転送された受信パケットのMACヘッダ20の宛先MACアドレス21に格納されたMACアドレスを用いてFDBテーブル2000の宛先MACアドレス2010を検索し、受信パケットのMACアドレスと一致する宛先MACアドレス2010と対応する出力先ポート番号2020を特定する(S1311)。特定した出力先ポート番号2020に格納された出力先ポート番号の情報と転送された受信パケットと通知された受信ポート番号の情報とをパケット解析部1300に送信する(S1312)。 パケット解析部1300は、転送部1100のパケット受信部1110から通知された受信ポート番号と同一のポート番号を持つエントリが信頼ポート情報テーブル2100に登録されているかを確認する(S1313)。つまり、受信ポート番号を用いて信頼ポート情報テーブル2100の信頼ポート2110を検索し、受信ポート番号と一致する信頼ポート2110を特定する。
信頼ポート情報テーブル2100に登録されている信頼ポート2110は、管理者が信頼ポートとして設定したポート番号である。そのため、受信ポート番号が信頼ポート2110に登録されている場合(S1313のYES)、その受信ポート番号を有するポートは、信頼ポートとして動作していると判定できる(S1314)。
一方、受信ポート番号が信頼ポート2110に登録されていない場合(S1314のNO)、その受信ポート番号を有するポートは、信頼ポートではない非信頼ポートとして動作していると判定できる(S1315)。
次に、ポート210においてパケットを受信したことを例として、S1313の処理を説明する。パケット解析部1300は、図6の信頼ポート情報テーブル2100の信頼ポート2110にパケット受信部1110から通知された受信ポート番号であるポート1と一致するエントリがあるかを判定する。結果として、信頼ポート情報テーブル2100の信頼ポート2110にポート1があるため、受信したポート210が信頼ポートであると判定する。
次に、ポート220においてパケットを受信したことを例として、S1313の処理を説明する。パケット解析部1300は、図6の信頼ポート情報テーブル2100の信頼ポート2110にパケット受信部1110から通知された受信ポート番号であるポート2と一致するエントリがあるかを判定する。結果として、信頼ポート情報テーブル2100の信頼ポート2110にポート2は存在しないため、受信したポート220が非信頼ポートであると判定する。
次に、信頼ポートに接続されているポートからパケットを受信した際のパケット解析部1300による信頼ポート情報テーブル2100の更新(登録)動作を説明する。
図8は、図7のS1314において信頼ポートと判定されたポートにおいて、パケットを受信した際のパケット解析部1300による信頼ポート情報テーブル2100の更新(登録)処理となるフローチャートを示す図である。
パケットを受信したポートが信頼ポートの際に(S1320)、パケット解析部1300は、パケット受信部1110から通知された{受信パケット、受信ポート番号、出力先ポート番号}の情報を解析することで、信頼ポート情報テーブル2100の信頼ポート2110内で通知された受信ポート番号に該当するエントリを更新(登録)する。
具体的には、パケット解析部1300は、受信パケットのMACヘッダ20内のタイプ23にIPが格納されているか否かを判定する(S1321)。IPが格納されている場合(S1321のYES)、IPヘッダ40内のプロトコル41にUDPが指定されているか否かを判定する(S1322)。UDPが指定されている場合(S1322のYES)、UDPヘッダ50内の送信元ポート51にDHCPサーバがDHCPパケットを送信する際に格納する値である「67」が格納されているか否かを判定する(S1323)。「67」が格納されている場合(S1323のYES)、受信パケットは、DHCPサーバが送信したDHCPパケットであると判定する。つまり、図2で説明したように、DHCPパケットには、MACヘッダ20、IPヘッダ40、UDPヘッダ50が付与されているので、S1321にてMACヘッダ20を、S1322にてIPヘッダ40を、S1323にてUDPヘッダ50を順に解析することで、受信パケットがDHCPパケットであるか否かを判定することができる。
DHCPパケットの場合(S1323のYES)は、DHCPサーバがアドレス割り当てのために応答を受信パケットの送信先の装置に返却しているかを解析する。具体的には、DHCPフレーム60内のOP61にDHCP ACKが格納されているか否かを判定する(S1324)。DHCP ACKが格納されている場合(S1324のYES)、DHCPフレーム60内のリレーエージェントIPアドレス62とMACヘッダ20の送信元MACアドレス22を、信頼ポート情報テーブル2100の信頼ポート2110内で通知された受信ポート番号に該当するエントリのルータIPアドレス2120とルータMACアドレス2130にそれぞれ登録する(S1325)。ここで、リレーエージェントIPアドレス62にルータ装置100のIPアドレスが格納されるため、このリレーエージェントIPアドレス62を用いてルータIPアドレス2120を登録しているが、ルータ装置100のIPアドレスであれば、DHCPパケットに含まれる他のIPアドレスであってもかまわない。
なお、既にルータIPアドレス2120とルータMACアドレス2130にそれぞれ値が格納されている場合は、ルータIPアドレス2120とルータMACアドレス2130を更新することになる。
その後、パケット解析部1300は、パケット受信部1110から通知された受信パケットの出力先ポート番号の情報と、受信パケットを転送パケットとして、パケット送信部1120に{出力先ポート番号、転送パケット}の情報を送信し、パケット送信部1120は、パケット解析部1300からの{出力先ポート番号、転送パケット}の情報をネットワークインタフェース1000に送信し、ネットワークインタフェース1000は、パケット送信部1120からの{出力先ポート番号、転送パケット}の情報に従って、転送パケットを出力先のポートから送信する(S1326)。
なお、S1321〜S1324のいずれかにおいて「NO」と判定された場合は、S1326へ進む。各ステップにおいて、受信パケットにIPヘッダ40やUDPヘッダ50、DHCPフレーム60が含まれていない場合も、「NO」と判定される。
このように、本実施例では、信頼ポートに接続される装置は、DHCPサーバ機能を有するルータ装置100であるとしているため、信頼ポートに接続されるルータ装置100からのDCHPパケットを解析して、信頼ポート情報テーブル2100の更新を行うとした。そのため、ルータ装置100以外の特定の装置(例えば、サーバ装置など)が信頼ポートに接続される場合には、この特定の装置が送信する特定のパケットのフォーマットを解析し、特定の装置から特定のパケットが送信された場合に、信頼ポート情報テーブル2100の更新を行うように、図8のフローチャートの各ステップを適宜変更することが可能である。
図8では、信頼ポート情報テーブル2100の信頼ポート2110は、管理者等からの入力により登録され、ルータIPアドレス2120およびルータMACアドレス2130は、ルータ装置100から受信したDHCPパケットを解析して動的に登録するとしたが、予め管理者等が、信頼ポート2110とルータIPアドレス2120およびルータMACアドレス2130を入力して静的に登録することも可能である。
次に、ルータ装置100から送信された端末A300宛てのDHCP ACKパケットをスイッチ装置200にて転送することを例として、スイッチ装置200における図7および図8を含む一連の処理を説明する。
ルータ装置100は、端末A300宛てに、MACヘッダ20内の宛先MACアドレス21にMAC2、送信元MACアドレス22にMAC1、タイプ23にIPを格納し、IPヘッダ40内のプロトコル41にUDPを格納し、UDPヘッダ50内の送信元ポート51にDHCPサーバからのDHCPパケットであることを示す67を格納し、また、DHCPフレーム60内のOP61にDHCP ACKを格納し、リレーエージェントIPアドレス62にIP1を格納したDHCP ACKパケットを送信する。このため、ルータ装置100が送信するDHCP ACKパケットは、MACヘッダ20、IPヘッダ40、UDPヘッダ50、DHCPフレーム60の順で構成される。
スイッチ装置200は、ポート210からルータ装置100が送信したDHCP ACKパケットを受信する。ネットワークインタフェース1000はポート210をポート番号に変換したポート1をパケット受信部1110に通知する。パケット受信部1110は、受信したDHCP ACKパケットの宛先MACアドレス21であるMAC2がFDBテーブル2000の宛先MACアドレス2010にあるかを検索し、結果として出力先ポート番号2020を特定し、出力先ポート番号として、ポート2を取得する。パケット受信部1110は、{受信パケット:DHCP ACKパケット、受信ポート番号:ポート1、出力先ポート番号:ポート2}をパケット解析部1300に送信する。パケット解析部1300は、ポート1に対して図7のS1313の処理をすることで信頼ポートからのパケット受信であると判定する。
次に、パケット解析部1300は、図8の処理を実施する。S1321では、受信したDHCP ACKパケットのMACヘッダ20のタイプ23にIPが格納されていることでIPヘッダが付与されていることがわかり、結果としてS1322を実行する。S1322では、受信したDHCP ACKパケットのIPヘッダ40のプロトコル41にUDPが格納されているため、結果としてS1323を実行する。S1323では、受信したDHCP ACKパケットのUDPヘッダ50の送信元ポート51にDHCPサーバからの通知であることを示す67が格納されているため、結果としてS1324を実行する。S1324では、DHCPフレーム60のOP61にDHCP ACKが格納されているため、結果としてS1325を実施する。S1325では、信頼ポート情報テーブル2100の信頼ポート2110のうちパケット受信部1110から通知された受信ポート番号であるポート1のエントリに受信したDHCP ACKパケット内のリレーエージェントIPアドレス62に格納されているIP1、受信したDHCP ACKパケット内の送信元MACアドレス22に格納されているMAC1をルータIPアドレス2120およびルータMACアドレス2130にそれぞれ更新する。結果として、信頼ポート情報テーブル2100内のルータIPアドレス2120にIP1、ルータMACアドレス2130にMAC1を登録し、図6で示す信頼ポート情報テーブル2100となる。
その後、スイッチ装置200は、パケット解析部1300、パケット送信部1120、ネットワークインタフェース1000を介することで、パケット受信部1110から通知された出力先ポート番号:ポート2に対応するポート220から端末A300へパケットを転送する。
次に、ルータ装置100が端末A300に対してアドレス解決パケットであるARPパケットを送信することを例として、スイッチ装置200における図7および図8を含む一連の処理を説明する。
ルータ装置200は、端末A300宛てにMACヘッダ20内の宛先MACアドレス21にMAC2、送信元MACアドレス22にMAC1、タイプ23にARPを格納し、ARPパケットを送信する。 スイッチ装置200は、ポート210からARPパケットを受信する。ネットワークインタフェース1000、およびパケット受信部1110からパケット解析部1300への送信処理は、図7のS1310〜S1312と同様となるため省略する。
パケット解析部1300は、S1313を実施して受信ポート番号:ポート1が信頼ポートと判定する。そのため、図8の処理へ移りS1321を実施する。S1321では、受信パケットのタイプ23にARPが格納されており、IPが格納されていない(S1321のNO)。結果として、信頼ポート情報テーブル2100を更新しない。
次に、非信頼ポートに接続されているポートからパケットを受信した際のパケット解析部1300による一連の動作を説明する。
図9は、図7のS1315において非信頼ポートと判定されたポートにおいて、パケットを受信した際の処理となるフローチャートを示す図である。
パケットを受信したポートが非信頼ポートの際に(S1330)、パケット解析部1300は、パケット受信部1110から送信された{受信パケット、受信ポート番号、出力先ポート番号}の情報を解析し、受信パケットがARPパケット(アドレス解決パケット)であるかを判定し、信頼ポートに接続されている装置になりすましたアドレス解決パケットであるかを判定する。
具体的には、パケット解析部1300は、受信パケットがARPパケットであるか否かを、受信パケットのMACヘッダ20内のタイプ23にARPが格納されているか否かで判定する(S1331)。ARPが格納されている場合(S1331のYES)、信頼ポート情報テーブル2100のルータIPアドレス2120に、ARPフレーム30内の送信元IPアドレス33に格納されたIPアドレスと一致するエントリがあるか否かを判定する(S1332)。一致するエントリがある場合(S1332のYES)、信頼ポート情報テーブル2100のルータMACアドレス2130に、ARPフレーム30内の送信元MACアドレス33に格納されたMACアドレスと一致するエントリがあるか否かを判定する(S1333)。一致するエントリがある場合(S1333のYES)、パケット解析部1300は、パケット受信部1110から通知された受信パケットの出力先ポート番号の情報と、受信パケットを転送パケットとして、パケット送信部1120に{出力先ポート番号、転送パケット}の情報を送信し、パケット送信部1120は、パケット解析部1300からの{出力先ポート番号、転送パケット}の情報をネットワークインタフェース1000に送信し、ネットワークインタフェース1000は、パケット送信部1120からの{出力先ポート番号、転送パケット}の情報に従って、転送パケットを出力先のポートから送信する(S1334)。
S1333にて、一致するエントリがない場合(S1333のNo)、パケット解析部1300は、受信パケットが、信頼ポートに接続されている装置になりすましたアドレス解決パケットであると判定し、受信パケットをパケット送信部1120に送信せずに廃棄する(S1335)。
また、受信パケットが、信頼ポートに接続されている装置になりすましたアドレス解決パケット(偽装パケット)であると判定した場合は、スイッチ装置200は、偽装パケットを送信した端末についての情報(端末のIPアドレスやMACアドレス、端末が接続されているポート番号など)を特定し、この情報を設定情報入出力部1200を介して管理装置510に通知する(警報を出す)よう構成されていてもよい。少なくとも偽装パケットの送信元MACアドレス22を特定することで、偽装パケットを送信した端末についての情報を特定することが可能である。
なお、S1333にYESとなる場合とは、ARPフレーム30内の送信元MACアドレス32をルータMACアドレス2130に格納されたMACアドレスに偽装したARPパケットの場合であり、この場合は、被アタック端末に対する不正なARPパケットとして処置せず、S1334へ進む。
なお、S1331〜S1332のいずれかにおいて「NO」と判定された場合は、S1334へ進む。
このように、S1331にて受信パケットがARPパケット(アドレス解決パケット)であるかを判定し、S1332にて、信頼ポートに接続されている装置になりすましている可能性があるかを判定し、S1333にて受信パケットの送信元が、信頼ポートに接続されている装置である否かを判定する。
受信パケットが、信頼ポートに接続されている装置になりすまして送信したアドレス解決パケットであると判定される場合には、受信したパケットを廃棄し、一方で、受信パケットが、信頼ポートに接続されている装置になりすまして送信したアドレス解決パケット以外の場合には、受信パケットの出力先ポート番号のポートから受信パケットを転送する。
したがって、受信パケットが、信頼ポートに接続され、信頼装置であるルータ装置100になりすましたアドレス解決パケットとして判定される場合とは、受信パケットのタイプ23にARPが格納され、送信元MACアドレス32、送信元IPアドレス33が、信頼ポート情報テーブル2100に格納されるルータIPアドレス2120、ルータMACアドレス2130と同一のエントリが存在するときである。
次に、端末A300が端末B400に対して、ルータ装置100になりすましてアドレス解決パケットを送信することを例として、図9の処理のフローを説明する。
端末A300は、端末B400宛てに、ルータ装置100になりすましたアドレス解決パケットとして、宛先MACアドレス21にMAC3、送信元MACアドレス22にMAC2、タイプ23にARPを格納したMACヘッダ20、および、送信元MACアドレス32にMAC2、送信元IPアドレス33、送信先IPアドレス34にそれぞれルータ装置100のIP1を格納してスイッチ装置200に送信する。
スイッチ装置200は、ポート220から端末A300が送信したパケットを受信する。ネットワークインタフェース1000はポート220をポート番号に変換したポート2をパケット受信部1110に通知する。パケット受信部1110は、受信パケットの宛先MACアドレスであるMAC3がFDBテーブル2000の宛先MACアドレス2010にあるかを検索する。
その結果として、出力先ポート番号2020からポート3を取得する。パケット受信部1110は{受信パケット、受信ポート番号:ポート2、出力先ポート番号:ポート3}をパケット解析部1300に送信する。パケット解析部1300は、受信ポート番号:ポート2に対して図7のS1313の処理をすることで非信頼ポートからのパケット受信であると判定する。つまり、受信ポート番号:ポート2は、信頼ポート情報テーブル2100の信頼ポート2110には登録されていない。
続いて、パケット解析部1300は、非信頼ポートでの処理である図9の処理を実施する。S1331では、受信パケットのMACヘッダ20のタイプ23にARPが格納されているため、S1332を実行する。S1332では、受信パケットの解析により、ARPフレーム30の送信元IPアドレス32のIP1を取得し、図6で示される信頼ポート情報テーブル2100のルータIPアドレス2120のエントリに一致するものがあるか判定をする。ルータIPアドレス2120にはIP1が格納されている。結果として、一致しているためS1333を実行する。S1333では、受信パケットの解析により、ARPフレーム30の送信元MACアドレス33のMAC2を取得し、図6で示される信頼ポート情報テーブル2100のルータMACアドレス2130のエントリに一致しているものがあるか判定をする。ルータMACアドレス2130にはMAC1が設定されている。結果として、一致していないために、受信パケットは端末A300がルータ装置200になりすまして送信したアドレス解決パケットであると判定でき、パケット解析部1300はパケット送信部1120に{出力先ポート番号、転送パケット}を送信せずに、パケットを廃棄する。
次に、端末A300が端末B400宛てに端末A300のアドレス解決パケットを送信することを例として、図9の処理フローを説明する。
端末A300は、MACヘッダ20の宛先MACアドレス21にMAC3、送信元MACアドレス22にMAC2、タイプ23にARPを格納し、ARPフレーム30の送信元MACアドレス32にMAC2、送信元IPアドレス33、送信先IPアドレス34に端末A300のIP2を格納する。
図7の非信頼ポートの判定と、S1331は、ルータ装置100になりすましたアドレス解決パケットを送信したときの処理と同様のため省略する。
パケット解析部1300は、S1332では、送信元IPアドレス32のIP2を取得する。IP2に対して、図6で示される信頼ポート情報テーブル2100のルータIPアドレス2120に一致するエントリが存在しない(S1332のNO)。そのため、スイッチ装置200は、パケット解析部1300、パケット送信部1120、ネットワークインタフェース1000を介することで、パケット受信部1110から通知された出力先ポート番号:ポート3に対応するポート220から端末A300へパケットを転送する。
次に、端末A300が端末B400宛てにアドレス解決パケット以外のパケットを送信することを例として、図9の処理フローを説明する。
端末A300は、MACヘッダ20のタイプ23にIPを格納したパケットを送信する。S1331では、タイプ23にIPが格納されているため(S1331のNO)、パケット解析部1300は、受信パケットがアドレス解決パケットではないと判断し、スイッチ装置200は、受信パケットを転送する。
以上説明した第1実施例では、スイッチ装置は、複数ポートからのパケット受信においてネットワークシステム管理者が信頼している信頼ポートおよび非信頼ポートのいずれから受信したかを知ることができる。
また、信頼ポートでのパケットの受信により、スイッチ装置は信頼ポートにおいて、そのポートに接続されている装置(信頼装置)のIPアドレスとMACアドレスを知ることができ、信頼ポート情報テーブルを作成することができる。これにより、スイッチ装置は、非信頼ポートから受信するパケットが、信頼ポートに接続している信頼装置であるルータ装置になりすまして送信されたアドレス解決パケットであるか否かを判定することが可能となる。
したがって、非信頼ポートに接続されるアタック端末が、ルータ装置になりすまして送信したアドレス解決パケットによるサイバー攻撃を検知し、このパケットの転送を転送しない制御(廃棄する制御)によって、不正利用されたアドレス解決パケットが被アタック端末に送信されることを遮断できるため、被アタック端末は、ルータ装置との通信を継続することができる。
(変形例1)
第1実施例では、パケット解析部1300において信頼ポート情報テーブル2100をDHCP ACKパケットを受信することで作成、更新する一例を示した。しかし、信頼ポート情報テーブル2100の作成は、ルータ装置になりすましたアタック端末からの不正パケットを信頼ポートを介して受信することはないものとし、信頼ポートから受信するアドレス解決パケットの送信元IPアドレス、送信元MACアドレスから信頼ポート情報テーブル2100を作成してもよい。そのため、本変形例1では、図8に関して、S1321においてARPが格納されているか、S1322‐S1324においてオペレーション31に要求(Request)が格納されているか否かで信頼ポート情報テーブル2100を更新する。
(変形例2)
信頼ポート情報テーブルの更新処理フローである図8を、第1実施例または変形例1によって実行することをパケット解析部1300が決定してもよい。
パケット解析部1300は、図10で示す信頼ポート情報テーブル2101のモード2140を参照して、第1実施例または変形例1によって信頼ポート情報テーブル2101の更新処理を行う。
図10のモード2140がarp−check−dhcpの場合は、第1実施例の図8を実行し、arp−checkの場合は、変形例1で示した、S1322‐S1324においてオペレーション31に要求(Request)が格納されているかで信頼ポート情報テーブル2101を更新するものとしてもよい。モード2140は、DHCPを用いて更新するモードか、DHCPを用いずに更新するもモードかを示している。
(変形例3)
前記実施例では、IPv4で用いられるアドレス解決パケットのARPを使用する一例を示した。本変形例では、IPv6で用いられるアドレス解決パケットのNDP(Neighbor Discovery Protocol)を使用するものとし、信頼ポート情報テーブル2100、2101のルータIPアドレス2120、ルータMACアドレス2130には、それぞれ、ルータが定期的に送信するRA(Router Advertisement)パケットのIPv6ヘッダの送信元IPv6アドレス、MACヘッダの送信元MACアドレスを格納して作成した信頼ポートv6情報テーブルを用いてパケットの転送、廃棄を判定する。
なお、スイッチ装置200が備える各テーブルについて、その構成の一例を示した。しかし、これらのテーブルが備える要素は、その発明の要旨を逸脱しない範囲において任意に定めることができる。例えば、上記に例示した要素以外の要素を備えるものとしてもよい。
また、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、実施例の構成の一部を他の変形例の構成に置き換えることが可能であり、また、実施例の構成に他の変形例の構成を加えることも可能である。
また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えばFPGAのような集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(SolidStateDrive)等の記録装置、または、IC(Integrated Circuit)カード、SDカード、DVD等の記録媒体に置くことができる。
また、「aaaテーブル」の表現にて各種情報を説明したが、各種情報は、テーブル以外のデータ構造で表現されていてもよい。データ構造に依存しないことを示すために「aaaテーブル」を「aaa情報」と呼ぶことができる。
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
10 ネットワークシステム
100 ルータ装置
200 スイッチ装置
210、220、230 ポート
300、400 端末
1000 ネットワークインタフェース
1100 転送部
1110 パケット受信部
1120 パケット送信部
1200 設定情報入出力部
1300 パケット解析部
2000 FDBテーブル
2100 信頼ポート情報テーブル

Claims (9)

  1. 複数の入出力部と、
    前記複数の入出力部のうち、特定の入出力部を識別する特定入出力部識別情報と前記特定の入出力部に接続される特定装置の物理アドレスとを対応づける特定入出力部情報を記憶する記憶部と、
    前記複数の入出力部のうち、装置から送信された前記特定の入出力部以外の入出力部を介して受信するアドレス解決に関するパケットに含まれる送信元の送信元装置の物理アドレスと前記記憶部に記憶する前記特定入出力部情報の前記特定装置の物理アドレスとの比較を行い、前記比較の結果に応じて、前記アドレス解決に関するパケットを破棄するか転送するかを決定する解析部と
    を備え
    前記記憶部は、
    前記特定の入出力部に接続される前記特定装置のプロトコルアドレスを前記特定入出力部情報の前記特定の入出力部と対応付けてさらに記憶し、
    前記解析部は、
    前記アドレス解決に関するパケットに含まれる前記送信元装置のプロトコルアドレスと前記記憶部に記憶する前記特定入出力部情報の前記特定装置のプロトコルアドレスとが一致する場合に、前記送信元装置の物理アドレスと前記記憶部に記憶する前記特定入出力部情報の前記特定装置の物理アドレスとの比較を行う
    ことを特徴とする通信装置。
  2. 請求項に記載の通信装置であって、
    前記特定の入出力部を介してプロトコルアドレスの付与に関するパケットを受信すると、
    前記解析部は、
    前記プロトコルアドレスの付与に関するパケットに含まれる送信元の前記特定装置の物理アドレスおよびプロトコルアドレスを取得し、取得した前記特定装置の物理アドレスおよびプロトコルアドレスをそれぞれ前記記憶部の前記特定入出力部情報に記憶する前記特定装置の物理アドレスおよび前記特定装置のプロトコルアドレスとして、前記記憶部に記憶させる
    ことを特徴とする通信装置。
  3. 請求項に記載の通信装置であって、
    前記複数の入出力部のいずれかからパケットを受信すると、
    前記解析部は、
    パケットを受信した前記複数の入出力部を識別する入出力部識別情報が、前記特定入出力部情報に記憶する前記特定入出力部識別情報と一致しない場合に、前記送信元装置の物理アドレスと前記記憶部に記憶する前記特定入出力部情報の前記特定装置の物理アドレスとの比較を行い、一致する場合に、受信したパケットが前記プロトコルアドレスの付与に関するパケットであるか否かを判定する
    ことを特徴とする通信装置。
  4. 請求項に記載の通信装置であって、
    各種設定情報の入力を受け付ける設定情報入出力部をさらに有し、
    前記設定情報入出力部は、
    前記特定入出力部識別情報の入力を受け付けると、受け付けた前記特定入出力部識別情報を前記特定入出力部情報の前記特定入出力部識別情報として、前記記憶部に記憶させる
    ことを特徴とする通信装置。
  5. 請求項に記載の通信装置であって、
    前記複数の入出力部が受信したパケットの送信先の情報を前記解析部に通知するパケット受信部と、
    受信したパケットを前記複数の入出力部を介して送信する制御を行うパケット送信部とをさらに有し、
    前記記憶部は、
    前記入出力部識別情報と前記複数の入出力部のそれぞれに接続される装置それぞれの物理アドレスとを対応づける入出力部物理アドレス対応情報を記憶し、
    前記複数の入出力部のいずれかからパケットを受信すると、
    前記パケット受信部は、
    受信したパケットに含まれる送信先の物理アドレスと前記入出力部物理アドレス対応情報とを用いて、受信したパケットの出力先の前記入出力部識別情報を特定し、
    前記解析部は、
    パケットを受信した入出力部が前記特定の入出力部の場合で、受信したパケットが前記プロトコルアドレスの付与に関するパケットではないとき、前記パケット受信部が特定した出力先の前記入出力部識別情報を前記パケット送信部に通知し、
    パケットを受信した入出力部が前記特定の入出力部以外の入出力部の場合で、受信したパケットが前記アドレス解決に関するパケットではないとき、前記パケット受信部が特定した出力先の前記入出力部識別情報を前記パケット送信部に通知し、
    前記パケット送信部は、
    前記解析部からの通知に従って、通知された出力先の前記入出力部識別情報によって識別される入出力部を介して受信したパケットを送信する
    ことを特徴とする通信装置。
  6. 請求項に記載の通信装置であって、
    前記物理アドレスは、MAC(Media Access Control)アドレスである
    ことを特徴とする通信装置。
  7. 請求項に記載の通信装置であって、
    前記記憶部にMAC認証情報として予め記憶したMACアドレスと一致するMACアドレスを有する装置によるパケットの送信を許可するMAC認証に対応しており、
    前記プロトコルアドレスは、IP(Internet Protocol)アドレスであり、
    前記アドレス解決に関するパケットは、ARP(Address Resolution Protocol)パケットであり、
    前記プロトコルアドレスの付与に関するパケットは、DHCP(Dynamic Host Configuration Protocol)パケットであり、
    前記記憶部に記憶する前記特定入出力部情報の前記特定装置のMACアドレスとの比較を行う前記送信元装置のMACアドレスは、前記ARPパケットに含まれるARPフレーム内の送信元MACアドレスである
    ことを特徴とする通信装置。
  8. 通信装置における通信制御方法であって、
    前記通信装置は、
    複数の入出力部と、前記複数の入出力部が受信したパケットの送信先の情報を取得するパケット受信部と、受信したパケットの転送可否を判定する解析部と、受信したパケットを前記複数の入出力部を介して送信する制御を行うパケット送信部と、前記複数の入出力部を識別する入出力部識別情報と前記複数の入出力部のそれぞれに接続される装置それぞれのMAC(Media Access Control)アドレスとを対応づける入出力部MACアドレス対応情報および前記複数の入出力部のうち、特定の入出力部を識別する特定入出力部識別情報と前記特定の入出力部に接続される装置のMACアドレスおよびIP(Internet Protocol)アドレスとを対応づける特定入出力部情報を記憶する記憶部とを有し
    前記通信装置における通信制御方法は、
    前記複数の入出力部のいずれかを介してパケットを受信すると、
    受信したパケットに含まれる送信先の装置のMACアドレスと前記入出力部MACアドレス対応情報とを用いて、受信したパケットの出力先の前記入出力部識別情報を特定する第1のステップと、
    前記第1のステップにて特定された出力先の前記入出力部識別情報と前記特定入出力部情報に記憶する前記特定入出力部識別情報とが一致するか否かを判定する第2のステップと、
    前記第2のステップにて、一致しない場合に、受信したパケットがARP(Address Resolution Protocol)パケットであるか否かを判定する第3のステップと、
    前記第3のステップにて、前記ARPパケットである場合に、受信したパケットに含まれる送信元の装置のMACアドレスおよびIPアドレスとに基づいて、前記ARPパケットを破棄するか転送するかを決定する第4ステップと
    を有する通信装置における通信制御方法。
  9. 請求項に記載の通信装置における通信制御方法であって、
    前記第2のステップにて、一致する場合に、受信したパケットがDHCP(Dynamic Host Configuration Protocol)パケットであるか否かを判定する第5のステップと、
    前記第5のステップにて、前記DHCPパケットである場合に、前記DHCPパケットに含まれる送信元の前記特定の入出力部に接続される装置のMACアドレスおよびIPアドレスとに基づいて、前記特定入出力部情報を更新する第6のステップと
    を有する通信装置における通信制御方法。
JP2014040047A 2014-03-03 2014-03-03 通信装置および通信装置における通信制御方法 Active JP6138714B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014040047A JP6138714B2 (ja) 2014-03-03 2014-03-03 通信装置および通信装置における通信制御方法
US14/573,069 US9521163B2 (en) 2014-03-03 2014-12-17 Communication device and communication control method in communication device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014040047A JP6138714B2 (ja) 2014-03-03 2014-03-03 通信装置および通信装置における通信制御方法

Publications (2)

Publication Number Publication Date
JP2015165614A JP2015165614A (ja) 2015-09-17
JP6138714B2 true JP6138714B2 (ja) 2017-05-31

Family

ID=54007297

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014040047A Active JP6138714B2 (ja) 2014-03-03 2014-03-03 通信装置および通信装置における通信制御方法

Country Status (2)

Country Link
US (1) US9521163B2 (ja)
JP (1) JP6138714B2 (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6219252B2 (ja) * 2014-09-29 2017-10-25 株式会社日立製作所 一方向中継装置
CN106487864B (zh) * 2015-09-02 2019-09-27 华为终端有限公司 数据连接的建立方法、服务端及移动终端
US10630700B2 (en) * 2016-10-28 2020-04-21 Hewlett Packard Enterprise Development Lp Probe counter state for neighbor discovery
JP6743771B2 (ja) * 2017-06-23 2020-08-19 株式会社デンソー ネットワークスイッチ
US10567379B2 (en) 2017-06-26 2020-02-18 Bank Of America Corporation Network switch port access control and information security
US10567433B2 (en) * 2017-07-06 2020-02-18 Bank Of America Corporation Network device authorization for access control and information security
US10979390B2 (en) 2017-08-25 2021-04-13 Panasonic Intellectual Property Corporation Of America Communication security apparatus, control method, and storage medium storing a program
JP7045247B2 (ja) * 2017-08-25 2022-03-31 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 通信保護装置、制御方法、および、プログラム
JP6674007B1 (ja) * 2018-11-05 2020-04-01 住友電気工業株式会社 車載通信装置、通信制御方法および通信制御プログラム
CN111526108B (zh) * 2019-02-01 2021-08-20 华为技术有限公司 防止网络攻击的方法与装置
US11050650B1 (en) * 2019-05-23 2021-06-29 Juniper Networks, Inc. Preventing traffic outages during address resolution protocol (ARP) storms
WO2023002771A1 (ja) * 2021-07-21 2023-01-26 住友電気工業株式会社 検知装置、検知方法および検知プログラム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3874628B2 (ja) * 2001-05-17 2007-01-31 富士通株式会社 パケット転送装置、半導体装置
US7124197B2 (en) * 2002-09-11 2006-10-17 Mirage Networks, Inc. Security apparatus and method for local area networks
JP4174392B2 (ja) * 2003-08-28 2008-10-29 日本電気株式会社 ネットワークへの不正接続防止システム、及びネットワークへの不正接続防止装置
JP2006094417A (ja) * 2004-09-27 2006-04-06 Nec Corp 加入者回線収容装置およびパケットフィルタリング方法
JP4947913B2 (ja) * 2005-04-05 2012-06-06 キヤノン株式会社 通信装置及びその通信制御方法
JP4672780B2 (ja) 2009-03-18 2011-04-20 株式会社東芝 ネットワーク監視装置及びネットワーク監視方法

Also Published As

Publication number Publication date
US9521163B2 (en) 2016-12-13
US20150249666A1 (en) 2015-09-03
JP2015165614A (ja) 2015-09-17

Similar Documents

Publication Publication Date Title
JP6138714B2 (ja) 通信装置および通信装置における通信制御方法
Yu et al. PSI: Precise Security Instrumentation for Enterprise Networks.
US8561177B1 (en) Systems and methods for detecting communication channels of bots
US8204984B1 (en) Systems and methods for detecting encrypted bot command and control communication channels
Chiang et al. ACyDS: An adaptive cyber deception system
US20170331842A1 (en) Sdn controller
CN105991655B (zh) 用于缓解基于邻居发现的拒绝服务攻击的方法和装置
Alharbi et al. Securing ARP in software defined networks
US10681057B2 (en) Device and method for controlling a communication network
Supriyanto et al. Survey of internet protocol version 6 link local communication security vulnerability and mitigation methods
US20170331853A1 (en) Security system
Lu et al. An SDN-based authentication mechanism for securing neighbor discovery protocol in IPv6
Al-Ani et al. Detection and defense mechanisms on duplicate address detection process in IPv6 link-local network: A survey on limitations and requirements
Data The defense against arp spoofing attack using semi-static arp cache table
Scott-Hayward et al. OFMTL-SEC: State-based security for software defined networks
US9686311B2 (en) Interdicting undesired service
KR20210089592A (ko) DRDoS 공격 탐지 방법 및 이를 수행하는 장치들
Shimanaka et al. Cyber deception architecture: Covert attack reconnaissance using a safe sdn approach
Waichal et al. Router attacks-detection and defense mechanisms
US11956263B1 (en) Detecting security risks on a network
TW202027460A (zh) 網路節點的移動防護方法及網路防護伺服器
Mahmood et al. Review paper on neighbour discovery protocol in IPv6 link-local network
Shah et al. Security Issues in Next Generation IP and Migration Networks
Rehman et al. Integrated framework to detect and mitigate denial of service (DoS) attacks on duplicate address detection process in IPv6 link local communication
Liu et al. Study on attacking and defending techniques in IPv6 networks

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160229

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160229

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20161128

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170104

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20170116

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20170123

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170302

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170426

R150 Certificate of patent or registration of utility model

Ref document number: 6138714

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250