(57)【要約】【課題】ネットワークから一時的に大量のＤｏＳ攻撃フレームを受信しても、正当なフレームの処理が妨げられることがないようにしたデータ処理装置を提供する。【解決手段】内容が一致する連続フレームを検出して廃棄する制御部４を受信部１の内部又はその前段に設置し、この受信部１で受信したデータをバッファメモリ２に格納してからＣＰＵ３がその受信データ処理を行う。【選択図】      図１
2004289298.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークからのデータを受信部で受信し、該データをバッファメモリに一旦保持した状態で、ＣＰＵが該データの処理を行うデータ処理装置において、
該受信部が、内容の一致する連続フレームを検出して廃棄する制御部を備えたことを特徴としたデータ処理装置。
【請求項２】
ネットワークからのデータを受信部で受信し、該データをバッファメモリに一旦保持した状態で、ＣＰＵが該データの処理を行うデータ処理装置において、
該受信部の前段に、内容が一致する連続フレームを検出して廃棄する制御部を備えたことを特徴としたデータ処理装置。
【請求項３】
請求項１又は２において、
該制御部は、マスクを開けた所定のフレーム部分に対して内容の一致検出を行うことを特徴としたデータ処理装置。
【請求項４】
請求項３において、
該所定のフレーム部分が、イーサタイプ値とＩＰプロトコルとＩＣＭＰタイプ値であることを特徴としたデータ処理装置。
【請求項５】
請求項４において、
該制御部は、該所定のフレーム部分のデータをユーザー設定する手段を有することを特徴としたデータ処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、データ処理装置に関し、特にインターネットやイントラネット等のネットワークに接続され、該ネットワークから一時的に大量の攻撃的フレームを受信する可能性があるデータ処理装置に関するものである。
【０００２】
近年、あらゆる分野においてネットワーク上でのサービスが増大して来ている。一方、インターネットの特性上、公開されているサーバに対しては誰からもアクセス可能であるため、ネットワークに接続されるあらゆる機器においては、特定のＩＰアドレスに対して応答メッセージを要求するｐｉｎｇを悪用したり、ＴＣＰによるデータ変換の開始を要求するＴＣＰ・ＳＹＮを悪用したＤｏＳ攻撃（Ｄｅｎｉａｌ  ｏｆ  ｓｅｒｖｉｃｅ  ａｔｔａｃｋ）を受ける可能性はゼロにはならない。
【０００３】
そのため、ＤｏＳ攻撃に遭った場合においても本来の正当なフレーム処理が妨げられないようにＤｏＳ攻撃からネットワーク機器を守る必要がある。
【０００４】
【従来の技術】
かつて、ネットワーク機器としてのデータ処理装置においては、ＤｏＳ攻撃等により大量のフレーム処理が要求される状態に陥った場合、フィルタリング等が可能であるハードウェアをネットワークの管理者が手動設定して回避することができたが、フィルタリングが有効になりＣＰＵ処理が正常に行われるようになるまでにはタイムラグがあった。
【０００５】
このため、サーバ系の機器は、図９に示すように、ネットワークからのフレームを受信部６で受信した後、この受信部６とバッファメモリ２とのＤＭＡ（Ｄｉｒｅｃｔ  Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ）等によるハードウェア処理▲１▼に基づき、該フレームをＰＣＩ  （Ｐｅｒｉｐｈｔｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）バス５を介して一旦バッファメモリ２に保持してから、バッファメモリ２とＣＰＵ３とのソフトウェア処理▲２▼により受信処理を行っている。
【０００６】
一方、大容量のターゲット・メモリを使用することなく、また、伝送されるパケット処理の速度を過度に遅くすることなく、伝送されるパケットの中で対象外のパケットを最大限まで拒絶することのできる部分パケットフィルタ処理方法並びに手段が既に提供されている（例えば、特許文献１参照。）。
【０００７】
【特許文献１】
特表平９−５０９０１８号公報（第１１頁、図１）。
【０００８】
【発明が解決しようとする課題】
図９に示した従来例の場合には、フレームを一旦バッファメモリ２に受信してからバッファメモリ２とＣＰＵ３との間のソフトウェア処理▲２▼により初めてその受信処理を行っているため、大量にＤｏＳ攻撃フレームを受信すると、ソフトウェア処理▲２▼が追いつかず、バッファメモリ２においてフレームが溢れてしまい、正当なフレームまで一緒に溢れて廃棄されてしまうという問題があった。
【０００９】
従って本発明は、ネットワークから一時的に大量のＤｏＳ攻撃フレームを受信しても、正当なフレームの処理が妨げられることがないようにしたデータ処理装置を提供することを目的とする。
【００１０】
【課題を解決するための手段】
本発明では、ＤｏＳ攻撃に用いられる大量のフレームは、内容が一致する重複フレームであることに着目して上記の目的を達成しようとするものである。
すなわち、本発明では、ネットワークからのフレームをデータ受信部で受信し、該データをバッファメモリに一旦保持した状態で、ＣＰＵが該データの処理を行うデータ処理装置において、該受信部が、内容が一致する連続フレームを検出して廃棄する制御部を備えたことを特徴としている。
【００１１】
これを、図１に示した本発明の構成原理図（１）及び図２に示した動作原理図を参照して説明する。
まず、このデータ処理装置１０は、図９に示した従来例とは受信部のみが異なっており、受信部１においてフレームを受信すると（図２のステップＳ１）、受信部１における制御部４は、受信フレームが、既に受信してあるフレームと同一内容のものであるか否かを判定する（同Ｓ２）。
【００１２】
すなわち、制御部４は、例えば比較対象となる直前に受信したフレームと、今受信したフレームとの内容が所定のフレーム部分において一致するか否かを判定する。この結果、両フレームが一致した場合には、そのフレームを廃棄する（同Ｓ３）。
【００１３】
そして、ステップＳ２において両フレームが一致しない場合、或いは一致してステップＳ３によりフレーム廃棄が行われた場合のいずれにおいても新しいフレームを比較対象フレームに更新する（同Ｓ４）。これと共に、新しいフレームをバッファメモリ２へ送信する（同Ｓ５）。
【００１４】
この後、図９の従来例と同様にバッファメモリ２とＣＰＵ３とのソフトウェア処理▲２▼によりバッファメモリ２内のフレームの受信処理を行う。
以後、これを繰り返すことにより連続した同一フレームの受信を行わないようにすることができる。なお、この場合、一定回数連続したときのみ同一フレームの受信を行わないようにしてもよい。
【００１５】
図１の構成原理図（１）の場合には、制御部４を受信部１の内部に設けているが、図３に示す本発明の構成原理図（２）のように、従来と同様の受信部６を用いると共に、この受信部６の前段において、例えばＰＣＩバス５でデータ処理装置１０と共通接続された拡張カード４０内に設けた制御部４を用いるようにしても良い。
【００１６】
なお、上記の所定のフレーム部分としては、ｐｉｎｇ攻撃され易いイーサタイプ値とＩＰプロトコルとＩＣＭＰタイプ値、または、ＴＣＰ・ＳＹＮ攻撃され易いイーサネットタイプとＴＣＰ・ＳＹＮビット、或いはフレームにおける特定のＩＰアドレスを用いることができる。
【００１７】
また上記の制御部は、上記所定のフレーム部分のデータをユーザー設定する手段を有することができる。
【００１８】
【発明の実施の形態】
図４は、図１に示した本発明の構成原理図（１）に対応した実施例（１）を示したものであり、特に受信部１の構成を具体的に示している。この実施例において、受信部１は、ネットワークからのデータを受信するイーサＭＡＣ受信部１１と、この受信部１１からの受信フレームを入力する比較部１２と、比較部１２からのフレームを一時的に保持するイーサＭＡＣ用フレームバッファ１３と、このバッファ１３内のフレームをバッファメモリ２へＰＣＩバス５を経てＤＭＡ方式で送出するＰＣＩ＿ＤＭＡＣ１４とで構成されている。
【００１９】
なお、この比較部１２が図１の制御部４に相当しており、この比較部１２を除いたものが図９の受信部６に相当している。
比較部１２は、フレームバッファ２１とユーザー設定部２２とフレームマスクレジスタ２３とフレームバッファ２４とで構成されており、フレームバッファ２４は比較対象となる直前に受信したフレームを格納し、フレームマスクレジスタ２３はフレームバッファ２４の中で比較対象となるフレーム部分を設定するものであり、ユーザー設定レジスタ２２は比較データをユーザーが指定する場合に使用するものであり、そしてフレームバッファ２１は新しく受信したフレームを格納するものである。
【００２０】
まず、フレームバッファ２４には直前の受信フレームが格納され、この格納された受信フレームは次に受信するフレームとの比較に使用される。フレームマスクレジスタ２３は、フレームバッファ２４の内、フレーム廃棄のための比較を行いたい所定のフレームビット部分を設定するものであり、デフォルトではフレーム全体が比較対象となり、このフレームマスクレジスタ２３により設定するとマスクを開けた所定のフレーム部分のみが比較対象となる。
【００２１】
この状態が図５に示されており、この場合には、フレームマスクレジスタ２３により比較したいフレーム部分Ｆ１及びＦ２を指定している。
従って、このフレーム部分Ｆ１の値がフレームバッファ２１及び２４において共に“Ｘ”に一致し、フレーム部分Ｆ２の値がフレームバッファ２１及び２４において共に“Ｙ”に一致すれば重複フレームを受信したとして、フレームバッファ２１のデータはフレームバッファ２４に転送されるが、イーサＭＡＣ用フレームバッファ１３には送られない。
【００２２】
一方、フレームバッファ２１と２４が一致しなければフレームバッファ２１のデータはフレームバッファ２４に転送されると共にイーサＭＡＣ用フレームバッファ１３にも転送される。
なお、ユーザー設定レジスタ２２は、ユーザーが任意の値を設定するものであり、値が設定されている場合には、フレームマスクレジスタ２３による設定と合わせてフレームの比較が行われることとなる。従って、このユーザー設定レジスタ２２はユーザーが任意に設定できるオプション機能であり、図５の動作例（１）では図示しただけで、使用されていない。
【００２３】
図５に示す動作例（１）の変形例が図６に示されている。この動作例（２）においては、フレームバッファ２４に格納されたフレームにおけるイーサタイプ値とＩＰプロトコルとＩＣＭＰタイプ値とが比較されるようにフレームマスクレジスタ２３が設定されている。
【００２４】
これは、上述したｐｉｎｇを利用した攻撃に晒され易いフレーム部分であるからである。さらには、ユーザー設定レジスタ２２においてフレームマスクレジスタ２３のマスクされていないフレーム部分にユーザーによる比較設定データが保持されている。
【００２５】
そして、フレームバッファ２１に格納された新しいフレームと、フレームバッファ２４に格納されている直前のフレームと、ユーザー設定レジスタ２２に設定されたフレームデータとの比較を、フレームマスクレジスタ２３によって設定したマスクが開いている部分のみにおいて行う。
【００２６】
この図６に示す動作例（２）においては、イーサヘッダのタイプ値＝０ｘ０８００であり、ＩＰヘッダのプロトコル＝０ｘ０００１、そしてＩＣＭＰメッセージのタイプ値＝０ｘ８０に、フレームバッファ２１，２４及びユーザー設定レジスタ２２の値が一致していれば、ｐｉｎｇによるＤｏＳ攻撃の可能性が高いフレームが受信されたとして、フレームバッファ２１のデータはフレームバッファ２４に転送されるが、イーサＭＡＣ用フレームバッファ１３には送られない。
【００２７】
一方、フレームバッファ２１と２４の各値及びユーザー設定レジスタ２２の値が全て一致しなければフレームバッファ２１のデータはフレームバッファ２４に転送されると共にイーサＭＡＣ用フレームバッファ１３にも転送される。
図６に示す動作例（２）の変形例が図７に示されており、この動作例（３）においては、フレームにおけるイーサタイプ値は同様であるが、ＩＰプロトコル及びＩＣＭＰタイプ値の代わりに、ＴＣＰヘッダのＳＹＮビット（コードビットの５ビット）＝１であるか否かを比較部１２が動作例（２）と同様に比較することにより、ＴＰＣ・ＳＹＮ攻撃に対する処理を行うことができる。
【００２８】
図８は、図３に示した本発明の構成原理図（２）に対応した実施例（２）を示したものであり、特に制御部４の具体的な構成例を示している。
この実施例と図４に示した実施例（１）との違いは、この制御部４が、図３に示したように従来から用いられている受信部６の前段に用いられるため、イーサＭＡＣ送信部１５がイーサＭＡＣ用フレームバッファ１３に接続され、このイーサＭＡＣ送信部１５から受信部６に接続されている点と、ＰＣＩ＿ＤＭＡＣ１４が取り除かれている点である。なお、ＰＣＩバス５は、図４の実施例（２）と異なり、ＣＰＵ３の制御信号を送受信するためのものとなる。
【００２９】
従って、この実施例の場合には、比較部１２での比較結果は、イーサＭＡＣ用フレームバッファ１３を経由してイーサＭＡＣ送信部１５に送られ、このイーサＭＡＣ送信部１５から受信部６に与えられることとなる。
（付記１）
ネットワークからのデータを受信部で受信し、該データをバッファメモリに一旦保持した状態で、ＣＰＵが該データの処理を行うデータ処理装置において、
該受信部が、内容の一致する連続フレームを検出して廃棄する制御部を備えたことを特徴としたデータ処理装置。
（付記２）
ネットワークからのデータを受信部で受信し、該データをバッファメモリに一旦保持した状態で、ＣＰＵが該データの処理を行うデータ処理装置において、
該受信部の前段に、内容が一致する連続フレームを検出して廃棄する制御部を備えたことを特徴としたデータ処理装置。
（付記３）付記１又は２において、
該制御部は、マスクを開けた所定のフレーム部分に対して内容の一致検出を行うことを特徴としたデータ処理装置。
（付記４）付記３において、
該所定のフレーム部分が、イーサタイプ値とＩＰプロトコルとＩＣＭＰタイプ値であることを特徴としたデータ処理装置。
（付記５）付記３において、
該所定のフレーム部分が、イーサタイプ値とＴＣＰ・ＳＹＮビットであることを特徴としたデータ処理装置。
（付記６）付記３において、
該所定のフレーム部分が、フレームにおける特定のＩＰアドレスであることを特徴としたデータ処理装置。
（付記７）付記４から６のいずれか１つにおいて、
該制御部は、該所定のフレーム部分のデータをユーザー設定する手段を有することを特徴としたデータ処理装置。
（付記８）付記１から７のいずれか１つにおいて、
該制御部は、内容の一致検出を所定の保護回数行うことを特徴としたデータ処理装置。
【００３０】
【発明の効果】
以上説明したように本発明に係るデータ処理装置によれば、内容が一致する連続フレームを検出して廃棄する制御部を受信部の内部又はその前段に設置し、このデータ受信部で受信したデータをバッファメモリに格納してからＣＰＵがそのデータ処理を行うように構成したので、大量の同一フレームを継続して受信する状態において、それによるＣＰＵ占有率の増加及びバッファの枯渇を防ぐことができる。
【００３１】
また、大量の同一フレームを継続して受信する状況において、完全にフレームを遮断しないことにより、その攻撃的なフレームを送信が継続していることが分かり、ロギング、パケットキャプチャの手法によりその送信者を特定し易くなる。
【００３２】
以上の効果をＣＰＵ／ソフトウェアに負荷、変更を与えることなく、またシステム全体として性能劣化を引き起こすことなく奏することが出来る。
【図面の簡単な説明】
【図１】本発明に係るデータ処理装置の構成原理図（１）を示したブロック図である。
【図２】本発明に係るデータ処理装置の動作原理を示したフローチャート図である。
【図３】本発明に係るデータ処理装置の構成原理図（２）を示したブロック図である。
【図４】本発明に係るデータ処理装置の実施例（１）を示したブロック図である。
【図５】本発明に係るデータ処理装置で用いる比較部の動作例（１）を示した図である。
【図６】本発明に係るデータ処理装置で用いる比較部の動作例（２）を示した図である。
【図７】本発明に係るデータ処理装置で用いる比較部の動作例（３）を示した図である。
【図８】本発明に係るデータ処理装置の実施例（２）を示したブロック図である。
【図９】従来のデータ処理装置の構成例を示したブロック図である。
【符号の説明】
１，６  受信部
２  バッファメモリ
３  ＣＰＵ
４  制御部
５  ＰＣＩバス
１０  データ処理装置
１１  イーサＭＡＣ受信部
１２  比較部
１３  イーサＭＡＣ用フレームバッファ
１４  ＰＣＩ＿ＤＭＡＣ
１５  イーサＭＡＣ送信部
２１，２４  フレームバッファ
２２  ユーザー設定レジスタ
２３  フレームマスクレジスタ
図中、同一符号は同一又は相当部分を示す。
【図１】
2004289298.tif 000003
【図２】
2004289298.tif 000004
【図３】
2004289298.tif 000005
【図４】
2004289298.tif 000006
【図５】
2004289298.tif 000007
【図６】
2004289298.tif 000008
【図７】
2004289298.tif 000009
【図８】
2004289298.tif 000010
【図９】
2004289298.tif 000011