やる気の出ない情報セキュリティ9 「ネットワークセキュリティ」
ネットワークセキュリティ
イントラネットの構成要素
インターネットとイントラネット(組織内のネットワーク)を分けて、インターネット側からの不正なアクセスを防ぐネットワーク機器に、ファイアウォール(FW)があります。
インターネットとの境界にはルーターが設置されますが、FWはその内側に設置されます。
イントラネットのセキュリティ機能を構成する機器はいろんなものがあります。
FW
FWはネットワーク環境下において、ポリシーもしくはフィルタリングルールに基づき、パケットの通過・拒否・破棄を行うネットワーク機器もしくはソフトウェアです。
OSI参照モデルにおけるネットワーク層やトランスポート層に相当するパケットの通信を制御します。FWは、フィルタリング機能と監査用ログ機能が主に用意されています。フィルタリング機能では、宛先及び送信元のIPアドレス、ポート番号を用いてパケットを選別します。
監査用ログ機能はそれらのパケットへの処置内容をログに保存する機能です。
NATやNAPTの機能、VPNの機能を持つものもあります。また、VPNだけではなく、IDS/IPS等の機能をFWと一体化した、UTM(Unified Threat Management)と呼ばれるアプライアンスも登場しています。
FWのフィルタリング機能では、パケットフルインスペクションという機能があります。これは、イントラネットからインターネットに出る通信に伴って、 インターネットからイントラネットに入ってくる通信用のポートを動的に開放・閉鎖する仕組みです。
侵入検知システム(IDS)、侵入防御システム(IPS)
通信路を監視し、攻撃パターンもしくはシグネチャ(攻撃の特長)のデータベースに基づいてネットワーク上の攻撃を検知するシステムのことを、侵入検知システム(IDS : Intrusion Detection System)といいます。IDSの機能に加え、検知したものを遮断する機能を持つシステムを、侵入防御システム(IPS : Intrusion Prevention System)といいます。
IDS/IPSの検知方法は、シグネチャをデータベース化したものを利用する単純なパターンマッチングによる方式と、通常とは異なる状態を検知するアノマリ検知があります。
また、設置体系によって、NIDS(Network IDS)、HIDS(Host IDS)があります。
各ホストと独立して稼働して、ネットワークセグメント内のパケットを収集して不正を検知するタイプがNIDS、対象とするホスト上で稼働するタイプがHIDSです。IDS/IPSはOSやミドルウェアなどのプラットフォーム層を防御します。
WAF(Web Application Firewall)
FWやIDS/IPSでは、近年増加しているWebアプリケーションサーバーに対するサーバーに対する攻撃は防ぐことができません。
そこで登場したのがWAFです。WAFでは、Webアプリケーション層の通信プロトコルであるHTTP等の通信内容を分析し、SQLインジェクションやクロスサイトスクリプティングといった攻撃を検知し、防御します。
Webアプリケーションへの攻撃は、Webアプリケーションサーバー側で対処する方法もありますが、Webアプリケーションサーバの開発とセキュリティを切り離したい場合等にWAFが導入されます。
VPN(Virtual Private Network)
VPNは、接続するVPNサーバが設置されているネットワークと同じセグメントに、IPパケットをトンネリングする技術です。VPNを利用すると、VPNクライアントからVPNサーバー迄接続する回線が、あたかも専用回線であるかのように利用できるので、安全です。
現在VPNには、インターネットを介して自前でVPNを構築するインターネットVPNや、プロバイダが提供するIP網を利用するIP-VPNの2種類があります。
インターネットVPNは、インターネット網を経由し、IPsec等のプロトコルを利用してVPNを実現します
IP-VPNは、プロバイダが独自に用意する閉域網を経由して、VPNを実現します。ログサーバとモニタリング
組織内のネットワークをリアルタイムで監視したり、一定期間ごとに解析して以上や攻撃を検出したりするために、ログ(記録)を取得します。ログのことを監査証跡(audit trail)ともいい、ログの取得を監査と呼ぶこともあります。
ログメッセージをネットワークで転送するために。Syslogという標準仕様があります。様々な状況を監視し制御するためのプロトコルに、SNMP(Simple Network Management Protocol)があります。
時刻同期サーバー
複数のホスト間のログを解析して以上や攻撃を検出するためには、各ホストの時間が正確である必要があります。時刻の同期をとるためのプロトコルに、NTP(Network Time Protocol)があります。
NTPを利用して正確な時刻情報を取得し、イントラネットの各ホストの時刻を合わせます。DNS (Domain Name System)
インターネット上のドメイン名に対応するIPアドレスを提示するシステムです。
FQDN (Fully Qualified Domain Name)からIPアドレスを参照する場合を「正引き」、その逆を「逆引き」といいます。メールサーバ
電子メールを配信・受信するサーバです。SMTP(Simple Main Transfer Protocol)を用いて、目的地のメールサーバーに電子メールを配信します。
SMTP(Simple Mail Transfer Protocol)を用いて目的地のメールサーバに電子メールを配信します。Webサーバ
組織の内外に向けて情報発信を行うサーバーです。動的なページを配信するWebアプリケーションサーバも含まれます。Webプロキシサーバ
HTTP/HTTPS通信で用いられるWebプロキシサーバは、イントラネットからインターネットへ接続する際に、データのキャッシュによる高速なアクセスや、フィルタリングによる安全な通信の確保等を目的とした中継サーバのことを示します。
FWを用いたネットワーク構成例
様々なものがあります
- 公開サーバー群をFWの外に置く構成
インターネットからイントラネットへの直接接続は一切禁止されます。
外に置く公開サーバ群のセキュリティ強化が必要不可欠です。
- 公開サーバー群をFWの中に置く構成
FWでフィルタリングルールを作ります。
安全性は高まりますが、サーバーなどに万が一侵入を許すと大変です。
- 公開サーバ群をFWの別ポートに設置する構成(DMZ)
インターネット、イントラネット、およびDMZを構成します。
DMZは、インターネットとイントラネットの通信を直接行わずに各種サーバ群を経由するネットワーク構成とする際に、それらのサーバー群のネットワークセグメントをイントラネットと分離したものです。
安全性は高まります。欠点をあえて挙げると、トラフィックが集中し、FWが単一障害店になることです。
ネットワークスキャン
ドメイン情報の取得
攻撃者は組織のネットワークを攻撃するにあたって、まず攻撃対象とする組織のネットワークに関する様々な情報を収集します。まず、ドメイン名登録情報検索サービスであるwhoisを利用して、攻撃対象組織のネットワーク管理者を割り出すことが考えられます。
次にnslookupというコマンドを駆使して、攻撃対象とする組織のネットワークに関する情報の取得を試みることが考えられます。nslookupは、DNSへ接続し、FQDNからIPアドレスを取得するコマンドツールです。
nslookupコマンドに対応するためにも、DNSサーバは以下のような運用をすることが望ましいとされています。
ホストへのスキャン
攻撃者はドメイン情報をもとに、攻撃対象組織のネットワークの大まかな構成を獲得します。そして次は、各ホストに関する情報を収集し、特定のホストの攻撃に移ります。
まず攻撃者は、ICMP(Internet Control Message Protocol)を用いたスキャニングを行うことが想定されます。
そこで知りえたホストの存否に基づいて、対象とするホストに対してポートスキャンを実施します。攻撃者はOSやソフトウェアの情報を得て、脆弱性等を知ることができます。
現在では、FWによってインターネット側からのスキャンは遮断されていることが一般的です。ICMPを用いたスキャンは、pingコマンドを用いて到達可能性を確かめます。
また、traceroute/tracertコマンドを用いて、攻撃対象のネットワークセグメントの構成を取得する可能性もあります。
なので外からのICMPやtracerouteが使用するUDP33434番ポートあてのパケットはFWで破棄する必要があります。ポートスキャンは、攻撃対象とするホストで稼働中のサービスを特定することを試みます。
ホストのポートに様々なパケットを送信し、応答パケットを利用して稼働中のサービスを調査します。
TCPスキャニングとステルススキャニングという手法があります。
nmapコマンドでえ様々なスキャン方法が実装されています。ポートスキャン対策は、開いているポートへのアクセスをブロックすることが挙げられます。FWのフィルタリング設定を行います。
また、不要なサービスを停止することも重要です。パスワードの奪取
ホストを特定した攻撃者が次に行うのは、パスワードのダッシュが考えられます。
以下の3つのアプローチが考えられます。- ブルートフォース攻撃
- アカウント管理ファイルの奪取
- ネットワーク上のパスワードのダッシュ
ブルートフォース攻撃は、利用者IDもしくはパスワードのいずれかを固定して、他方を無作為に総当たりで試す方法です。
アカウント管理ファイルの奪取は、何らかの方法でOSの外部からアカウントを管理しているファイルを奪い取ることです。Windowsでは、SAMファイルに。Linuxではpasswordファイル等にアカウント情報が格納されています。
ファイルはハッシュ値で保存されていますが、攻撃者は解読ツールにより解読します。ネットワーク上のパスワード奪取は、遠隔からログインを試みる利用者からパスワードを奪うことを指します。
古い認証方式を使っている場合は、パスワードの解析を試みられる可能性があります。
セッションハイジャック
攻撃者は、イントラネットに侵入後、さらなる攻撃としてイントラネット内での通信を奪うことが想定されます。
正規の2者間の通信におけるセッションを乗っ取ることを、セッションハイジャックと呼びます。
セッションハイジャックの例としてARP Poisoning攻撃があります。
ARP Poisoning攻撃は、通信ホストのARPテーブルを攻撃者の都合の良いように書き換えて、正規の2者間の通信をすべて取得する攻撃です。
マルウェア対策
コンピュータウイルスやワームといったマルウェアの脅威は甚大です。基本的な対策は、セキュリティパッチをあてるなどした最新のOS、ライブラリ等を利用するということです。
コンピュータウイルスとは、プログラムなどに規制したり紛れ込んだりして、自分自身の複製を作成するプログラムであり、多くの場合、利用者に不利益をもたらします。
以下の機能を1つ以上有するとしています。
- 自己伝染機能 : 自己を複製しほかのコンピュータに感染を広げる機能
- 潜伏機能 : 特定の条件になるまで、活動を待機する機能
- 発病機能 : 破壊等の活動を行う機能
ワームは、コンピュータウイルスとは区別されており、以下のような特徴を持ちます。
- 単独で侵入、感染し、活動を行うプログラム
- 攻撃対象のセキュリティホールを利用して侵入する
- 宿主となるプログラムが必要なものは、ワームウイルスという。
ワームは単独で攻撃ができるってことですね。
そのほかにも、コンピュータを外部から操ることを目的として感染させるプログラムをボットといったり、 その他トロイの木馬とか、スパイウェア等のプログラムを総称してマルウェアと呼ばれます。
マルウェアはどんどん発展していって、ウイルス対策ソフトから検知されることを逃れようとしています。例えば以下があります。
ポリモーフィック型マルウェア
ウイルス対策ソフトは、マルウェアを検知する際、対象とするプログラムコードの特徴点のパターンと、あらかじめ登録してあるマルウェアの特徴点のパターンを比較して判断します(パターンマッチング)。そこで、マルウェアの作成者は、プログラムコードの一部を暗号化し、回避する手法を導入しました。これをポリモーフィック型マルウェアといいます。
メタモーフィック型マルウェア
メタモーフィック型マルウェアは、自身を暗号化するのではなく、プログラムコードを分割して順序を入れ替えたり、何もしない命令を挿入したり、自身のプログラムコードを感染時に書き換える手法です。ルートキット利用型マルウェア
ルートキットという、攻撃者が侵入したホストへ継続的にアクセスするためのツール群を使ったマルウェアもあります。
コンピュータウイルス対策ソフトも進化していってます。
対策ソフトの手法には以下のものがあります。
コンペア手法
マルウェアに感染する前のオリジナルのファイルの情報をあらかじめ取得して起き、検査においてオリジナルのファイルと比較して、差異があれば感染を疑うという方式です。
ハッシュ値で比較するのは、チェックサム法と呼ばれます。パターンマッチング手法
パターンマッチング手法では、マルウェアの特徴情報を保存したデータベース(パターンファイル)を用いて対象となるファイルとパターンファイルの内容を比較してマルウェアを検知します。
この手法では、パターンファイルを常に最新のものにしておく必要があります。ヒューリスティック手法
ヒューリスティック法は、検査対象のプログラムを実際のOS上で動作させずに検査する手法です。
ウィルス対策ソフトの中で隔離された仮想マシンを起動し、そこで検査対象のファイルを実行する手法を動的ヒューリスティック手法といい、ポリモーフィック型マルウェアとかでも検出できます。ビヘイビア手法
ビヘイビア手法は、実行しているアプリケーションプログラムをリアルタイムに監視し、「不正な動さを要求するシステムコールの実行」や「ファイルの不正な削除・変更の実行」を検出し、阻止する手法です。