Enterprise Watch
最新ニュース

機器の特性を踏まえたセキュアなネットワーク構築手法

~JPNIC・JPCERT/CCセキュリティセミナー2004 講演

 社団法人日本ネットワークインフォメーションセンター(JPNIC)と有限責任中間法人JPCERTコーディネーションセンター(JPCERT/CC)が主催する「JPNIC・JPCERT/CCセキュリティセミナー2004・For Beginners<知っておくべきインシデントハンドリングとは>」が9月3日に行われ、株式会社日本レジストリサービスの松浦孝康氏が「~インシデントを未然に防ぐ~ 守るための技術とネットワークデザイン」をテーマに講演した。


インターネットの危険性

株式会社日本レジストリサービス 松浦孝康氏

JPCERT/CC「インターネット定点観測システム」の観測結果
 インターネットトラフィックには、どの程度の攻撃パケットが含まれているのだろうか。松浦氏はJPCERT/CCが設置している「インターネット定点観測システム」の観測結果から、「結果には単純なポートスキャンも含まれるが、TCP 135/445ポートへのアタックは四六時中行われており、Windowsが標的にされることが多い」とした。某サイトに設置されたIDSの検知結果からも、これは裏付けられるという。「誤検知調整のPINGやポートスキャンもあわせて、数自体は1日に1万8000件と少ないほうだが、SQL Slammerのスキャンは1715回にもなっており、攻撃は確実にやってくる。対策しないことはありえない」とした。

 具体的な被害としては、侵入や改ざん、情報漏えいのほか、他サイトへの攻撃の踏み台、メール中継の不正利用、そしてDoS/DDoS攻撃によるサービス停止などが考えられる。これが現実になれば、サービスを提供するISPなどの企業では責任問題にも発展しかねず、また信用の低下にもつながることが懸念される。同氏はより現場に近い視点として、「攻撃、侵入されたときには、対応にとられる手間とコストがばかにならない」と述べた。

 このためネットワークシステムを構築する上で、インターネットは常に危険と隣り合わせとの認識が前提になる。「セキュリティに100%はあり得ない。余計なサービスを提供しない、被害を最小化するなどの対応が重要」とした同氏は、撃を受けた際に具体的に何をされたかが把握できるため、通信の記録と監視も必要になるとした。これらを踏まえた上で「とにかくできることからコツコツと手を付けていくしかない」と述べた。


セキュリティを考慮したルーターの設置

Private Addressのフィルタリング手法

BGPにおける不正な経路のフィルタ
 システム設計の段階からセキュリティを意識する上で、その構成機器となるのがルーター、スイッチ。そしてファイアウォール(以下、FW)、IDSといったセキュリティ機器について同氏は「導入すれば大丈夫と思われていた頃もあったが、それぞれ長所や短所がある。適切な場所に配置して正しく運用し、危険性を抑えることが重要」とし、システム構築の現場におけるそれぞれの役割を述べた。

 ルーターはパケットを転送するのが本来の役割だ。「最近はパケットフィルタリングやFWの機能をあわせ持つ製品も多い一方で、一般的にパフォーマンスが高いとはいえないため、大量の通信によりセッション管理テーブルがあふれたり、パケットのチェックでのCPU能力の不足が起こりやすい」という。特にインターネットと接続するエッジルーターでは、「ネットワークの接続性を維持するために、ルーティングプロトコルを圧迫しないようパケット転送に集中させるべき」とした。

 ルーターを用いたセキュリティ対策では、「インターネット、つまり外からやってくるIPのソースがプライベートアドレスや自分のネットワークであることは、本来ありえない」ことから、Source IPがプライベートアドレスや自分のネットワークのパケットを破棄するPrivate Addressのフィルタリングの手法を挙げた。

 またルーターが各ネットワーク間での経路情報をやり取りするBGP(Border Gateway Protocol)にも、経路としてプライベートアドレスや自ネットワーク、そのほか特殊なアドレスを含むことは理論上ないが、「経験上、こうしたパケットがかなり流れてくる。ちょっとしたフィルタリングルールを書くだけで被害を防げる」ため、こうした不正な経路の受信を拒否する手法も効果的とのことだ。また「ルーターでフルルートを受ける場合、BGPなら10何万の経路を処理することになるため、ルーティング以外には使わないほうがよい」とした。

 また特定IPアドレス宛のパケットをNullインターフェイスへ向けて破棄する「ルーティングブラックホール」の手法をDoS対策として挙げた。しかし「これは被害を局所化し、最低限サーバーを守るための方法」で、サービスそのものは使えなくなってしまうため、DoS攻撃者の狙いであるサービス停止は果たせてしまうことにもなる。このため「システムを守る最後の手段」との位置づけだ。


スイッチによるVLAN/ミラーリング/802.1xのセキュリティ対策

 スイッチを用いる手法では、仮想的に複数のネットワークセグメントを作り、物理的構成によらず、論理的構成を変更できるVLAN、またIDSなどとあわせて用いられる、特定ポートへのトラフィックを別のポートへのミラーリング、RADIUSサーバーと連携してネットワーク接続機器を認証する802.1xが挙げられた。

 VLANでは、1つのスイッチ上でセグメントを分離して階層化し、FWと併用するなどして、「フィルタリングと組み合わせて、ウイルスの感染を押さえ込む」用途が考えられる。パケットのミラーリングでは、同一のパケットをIDSにも渡すことで、パケットの監視が行えるほか、tcpdumpを用いたトラブルシューティングにも役立つという。

 802.1xでは、物理的にネットワークへ機器を接続しただけでは通信ができず、スイッチがサーバーと連携して認証の後、はじめて通信が可能になる。この機能を無線LANで利用できるスイッチの利用も広がり始めている。無線LANでのセキュリティ対策については「WEP、MACアドレス認証には迂回方法はあるが、やるだけでも違う」とし、「できることから手をつけていくことも必要」と述べた。


仮想的にネットワークセグメントを構築する「VLAN」 特定ポートへのパケットをIDSなどへミラーリング RADIUSサーバーと連携して接続機器を認証する「802.1x」

長所と短所を踏まえたファイアウォールの利用法

 FWは、TCP/UDPのポートやIPアドレスなどに基づいてパケットの通信を許可/拒否するパケットフィルタリングが一般的だ。しかし往復での双方向のパケットを考慮してフィルタリングルールを記述する必要がある。一方、パケットのデータを読み取り、内容を判断して動的にポートを開閉するステートフルインスペクションでは、例えばFTPを許可する場合に、自動的に復路のftp-dataのパケットも許可される。

 一般的に広く用いられているFWだが、もちろん短所もある。許可している通信への攻撃は防げないのはもちろん、「フィルタリングルールが長大になると、意図しないポートをあけてしまったり、矛盾により通信可能になってしまうことがある」という。

 このほかパケットフィルタリングに比べてより多くのメモリを必要とするステートフルインスペクションでは、「セッション管理テーブルのあふれやすく、小~中規模向けの製品ではDoS攻撃にも弱いため、製品選定で注意が必要になる」とのことだ。

 フィルタリングルールの記述は「順序や番号に従ってパケットをチェックするため、書き方でパフォーマンスが変わる」ため、重要となる。同氏は「ネットワークの動作や接続に必要なルーティングプロトコル、管理上必要なルールは最初に記述し、次に外部からのパケットに対するものを記述している」という。これは通信の絶対量が予測できないためで、その見通しが立てられる内部からの通信や、あらかじめわかっている内容を後ろに記述しているとのことだ。

 また長大なルールを記述しないことは、ネットワーク機器のリソース不足を防ぎ、DoS攻撃の対策にもなる。DoS攻撃に対するフィルタリング対応は、より上流で行ったほうが効果的なため、接続先のISPと事前に折衝することや、回線契約が従量制の場合にDoS攻撃時にも課金されるかどうか確認することも推奨した。

 FWを用いることで、公開サーバーなどを設置するDMZセグメントを分離する際には、用途に応じて複数台を用意し、ポートを多めに導入することで、公開WebサーバーはインターネットからのWebアクセスのみを許可し、管理用サーバーではsshやpingも許可し、それぞれ不要な通信を拒否するなど、サーバーごとに異なるセキュリティポリシーによる運用も可能になる。

 この応用としてWebサーバーなどのフロントエンドと、データベースなどのバックエンドのセグメントを分け、システムの境界にFWを設置する多段構成とすることで、「フロントエンドが侵入されても最深部への侵入は難しくなる」とした。


運用には知識を必要とする侵入検知システム(IDS)

 IDSにはサーバー上で攻撃を監視するホスト型と、通過するパケットを監視するネットワーク型がある。同氏は「単に攻撃かもしれないパケットを検知するだけで、防御できるわけではない」点をまず挙げた。そして「ログから攻撃手法の傾向をつかんだり、侵入された際の記録を調べることはできるが、導入時には大量の誤検知があり、これをチューニングしなければならず、ログ分析にはセキュリティに関する深い知識が必要となるため、運用が難しい」とした。

 ルールのチューニング、サマリーを自動化するツールを導入したり、情報量に応じてネットワーク監視とログの収集解析サーバーを分けるなどの運用上の工夫も可能だが、「まず自前でやるか、外部に任せるかを判断すべきで、専用装置の導入や外部委託も考慮するべき」とのことだ。


ネットワーク構成の冗長化・負荷分散

同一IPの複数サーバー間で経路制御により負荷を分散する「BGP Anycast」
 次に同氏は「配下のサービスが重要なら必須となる」とし、ネットワーク上での冗長化構成を推奨した。そして「可能ならベンダーや製品の多様性も確保するべき」と語った。これは「単一ベンダーの製品のみを利用していると、脆弱性があった場合に全システムが停止する危険性にさらされる」ためだ。デメリットとしては管理負荷の増加のほか、「実装するプロトコルのパラメータが微妙に異なる場合もあり、検証が必要になる」点を挙げたが、それに見合うだけの有効な手法との考えを述べた。

 またシステムを地理的にも分散させ、DNSラウンドロビンや、BGP Anycastを用いて負荷を分散させる手法も紹介した。DNSラウンドロビンは、1つのドメイン名に複数のIPアドレスを割り当て、要求に対して順番に応答していくもの。要求先とのネットワーク経路の距離を測定する専用機器もあるという。

 一方のBGP Anycastは、複数のサーバーに同一の共有IPアドレスを割り当て、経路制御によりクライアントに近い共有IPへと導く方法だ。JP DNSサーバーですでに用いられており、DNSサービスのようにUDP1パケットのみの通信では導入しやすい。反面、TCPの場合には通信中に経路が変わるとセッションが張れず、接続に問題が起こるため、利用シーンは限られるとした。

 なお10月4・5日の2日間には、「JPNIC・JPCERT/CCセキュリティセミナー2004・For Advanced<知っておくべき脆弱性の基礎知識>」と題し、中級者向けのセミナーを開催する予定。



URL
  JPNIC・JPCERT/CCセキュリティセミナー2004
  http://www.nic.ad.jp/security-seminar/
  株式会社日本レジストリサービス
  http://jprs.jp/
  社団法人日本ネットワークインフォメーションセンター
  http://www.nic.ad.jp/
  有限責任中間法人JPCERTコーディネーションセンター
  http://www.jpcert.or.jp/


( 岩崎 宰守 )
2004/09/03 18:43

Enterprise Watch ホームページ
Copyright (c) 2004 Impress Corporation All rights reserved.