9. ネットワークセキュリティの基礎
9.1. セキュリティの基礎
9.1.1. セキュリティの概念
セキュリティの概念を表す用語には以下のようなものがある。
用語 | 説明 |
---|---|
インシデント | 情報セキュリティを脅かす発生した事件や事故のこと。 |
脆弱性 | プログラムの欠陥やシステム/ネットワーク上のセキュリティ上の欠陥全般のこと。 |
エクスプロイト | 管理システム/ネットワークの脆弱性を悪用して攻撃するためののプログラム/攻撃のこと。 |
脅威 | 攻撃を与えうる存在。技術的脅威、人的脅威、物理的脅威に分けられる。 |
また情報セキュリティを守る理想像を実現するためにセキュリティポリシーが企業などの組織では規定される。 これは企業や団体におけるセキュリティ対策の方針や行動指針を示すためのものである。
セキュリティポリシーでは以下3つの内容が定義される。
-
ポリシー(基本方針) セキュリティに対する基本的な考え方や方針を記します。
-
スタンダード(対策基準) セキュリティ確保のためにどのような対策を行うのか記します。
-
プロシージャ(実施手順) 対策基準ごとに具体的な手順を記します。
9.1.2. セキュリティの脅威と一般的な攻撃手法
有名な攻撃手法、セキュリティ脅威を記載する。
9.1.2.1. なりすまし攻撃
なりすまし攻撃(スプーフィング攻撃)はIPアドレス/MACアドレスを偽造することで攻撃者を別の人物に見せかけて行う攻撃の総称。 具体的には以下のものがある。
攻撃 | 説明 |
---|---|
DoS攻撃 | サービス拒否攻撃とも呼ばれ、サーバ等に過剰な負荷をかけてサービスを妨害する攻撃。攻撃にはTCP SYNフラッド攻撃やUDPパケットの悪用した方法などいくつかある。 |
DDos攻撃 | 分散型サービス拒否攻撃とも呼ばれ、ウィルスに感染させたPCを操作してDoS攻撃を行う手法。踏み台に感染PCが利用される特徴がある。 |
中間者攻撃 | 攻撃対象者の通信内容の盗聴/改竄を目的とした攻撃の総称。 |
リフレクション攻撃(アンプ攻撃) | 送信元を偽った要求をサーバに送り、ターゲットに大量の応答を返すように仕向ける攻撃 |
9.1.2.2. その他の攻撃
攻撃 | 説明 |
---|---|
バッファオーバフロー攻撃 | 攻撃対象のコンピュータの処理/許容できるデータより巨大なデータを送り付け誤動作/悪意のあるプログラムを動作させる攻撃手法 |
ソーシャルエンジニアリング攻撃 | 技術的攻撃ではなく人の社会的・心理的弱点を利用して情報を得ること。パスワードの盗み見等も該当する |
ブルートフォースアタック攻撃 | 総当たり攻撃とも呼ばれるパスワードを破るために利用される攻撃手法 |
ゼロデイ攻撃 | まだ対策が行われていない脆弱性を狙った攻撃手法 |
9.1.2.3. マルウェア
悪意のあるソフトウェアやプログラムの総称はマルウェアと呼ばれる。 情報漏洩やファイル操作、バックドアの作成などに用いられる。
種類 | 説明 |
---|---|
トロイの木馬 | 通常のアプリやファイルを装って配布されるマルウェア。自己増殖は行わない |
ウィルス | 単体で動作せず他のソフトウェアやファイルに合わさって使用される不正プログラム。ウィルスは自己増殖する場合がある。 |
ワーム | 独立して動作が可能なウィルス。増殖する可能性がある |
9.1.2.4. フィッシング
悪意のあるWebサイトに誘導させる手法の総称。
種類 | 説明 |
---|---|
スピアフィッシング | 同じ所属機関の同僚を装い偽のURLを踏ませる方法 |
ピッシング | 電話などの音声案内を通じて被攻撃者を誘導する方法 |
スミッシング | SMSメッセージを用いたフィッシング |
9.2. ネットワークデバイスのセキュリティ
9.2.1. ファイアーウォールとIPS
ネットワークを保護するための機器や機能にはファイヤーウォールやIPSがある。
9.2.1.1. ファイヤーウォール
ファイヤーウォールは外部ネットワークから内部ネットワークを守るためのソフトウェアや機器のこと。 外部だけではなく内部からつの通信もブロックすることができ、ACLよりも細かい制御が可能となっている。
ファイヤーウォールに機能の1つにパケットフィルタリングという機能があり、許可されていない通信をブロックすることができる。 具体的には送信元IPアドレス/宛先IPアドレス、送信元ポート番号/宛先ポート番号などでブロックするかどうか判断する。
また内部から外部へ送信された通信を確認し、それに対する戻りの通信を自動で許可/不許可する機能があり、それはステートフルインスペクションと呼ばれる。
これは外部通信を完全にブロックするとTCPの3Wayハンドシェイク時の外からのACKがブロックされる危険性への対策としての機能を提供するための機能と言える。
9.2.1.2. ファイヤーウォールの構築例
ファイヤーウォールを用いた構築では外部ネットワーク、DMZ、内部ネットワークの3領域に分ける。 以下に構成例(シングルファイヤーウォール型)を示す。
内部ネットワークは内部の利用者のみが利用できるネットワークで内部用のサーバやクライアントが配置される。 DMZは内部ネットワークと外部ネットワークの中間領域に位置し、インターネットに公開するサーバ等を配置する。
ファイヤーウォールの設定はDMZや外部ネットワークからの通信を内部ネットワークに入れないようにルールを規定する。 具体的には内部ネットワークへアクセス可能な通信は内部ネットワークから外部ネットワークやDMZへ要求して、応答で帰ってくる通信のみを入れる設定にする。
またファイヤーウォールは物理的にネットワークを分ける機能を持ち、物によってはルーティング、NAT、VPNの機能を持つものもある。
9.2.1.3. IDS/IPS
IDS(侵入検知システム)、IPS(侵入防止システム)はシグネチャと呼ばれる様々な不正パターン、攻撃のパターンのデータベースを利用し通信のチェックを行うため、ファイヤーウォールで検知ができないパケット内部のチェックが可能となっている。 そのため外部からの異常な通信、不正アクセスといった攻撃から内部ネットワークを保護することができる。
9.2.1.4. NGFW/NGIPS
従来のファイヤーウォールやIPSより高性能な機能を有するものはNGFW(次世代ファイヤウィール)、NGIPS(次世代IPS)と呼ばれる。
次世代ファイヤーウォールの機能の特徴は以下のようなものがある。
特徴 | 説明 |
---|---|
AVC | IPアドレス/ポート番号でパケットフィルタリングを行うのではなく、アプリケーション単位で識別/フィルタリングする機能。アプリごとに設定が可能 |
AMP | ネットワークの往来を行うファイルの監視/記録により侵入の検知をしたマルウェアの感染経路を過去にさかのぼり特定する機能 |
URLフィルタリング | 世界中のURLで知られるWebサイトをリスクベースで分類したデータベースを利用して危険度ごとにブロックする機能 |
また次世代IPSの機能の特徴は以下のようなものがある。
- IPS自動チューニング ... 内部ネットワークのPCなどからデバイス情報を収集することでネットワークで必要なIPSシグネチャを自動判断し選択する機能。ご検知率の低下が見込める
9.2.2. ネットワークのセキュリティ対策
機器に強度の高いパスワードを設置する、ファイヤーウォールやIPSを導入する以外のセキュリティの実装方法には以下のようなものがある。
- 鍵付きラックや部屋に使用機材を収納する
- ルータ/スイッチで使用していないポートはすべてシャットダウンする
- 多段階認証の実装
- OS/ソフトウェアの定期的なアップデートを行う
9.2.2.1. 多段階認証
認証情報を複数合わせた認証方式。 認証要素の種類は知識要素、所属要素、生体要素に分けられ、以下の認証方式で使われる。
- 多要素認証 ... 異なる種類の要素を組み合わせて認証する方式
- 2要素認証 ... 特に異なる要素を組み合わせて認証する方式(上記の3種のうち異なる2種を用いた認証)
9.2.3. Cisco社製のセキュリティに関する製品
9.2.3.1. Cisco AMP
Cisco AMP(Cisco Advanced Malware Protection)はCisco社が提供するマルウェア対策製品。
Cisco AMPではサンドボックス機能やリアルタイムのマルウェア検知機能により侵入行為を防御する。 また、ネットワーク内のファイルを継続的に分析し、侵入してしまったマルウェアを封じ込めることも可能となっている。
9.2.3.2. Cisco Firepower
Cisco FirepowerはNGFWとNGIPSを搭載したCisco社のセキュリティ製品。
このファイヤーウォールのASAの接続ではSSL/TLS VPNを使用している。
9.3. L2スイッチのセキュリティ
9.3.1. ポートセキュリティ
ポートセキュリティは不正なネットワーク接続を防ぐ機能でネットワークの想定外端末からの通信をスイッチでブロックするものとなっている。 この機能ではMACアドレスを使用して端末の識別を行っている。
9.3.1.1. ポートセキュリティの動作
なおL2スイッチに登録されているMACアドレスはセキュアMACアドレスと呼ばれる。
9.3.1.2. ポートセキュリティの設定
ポートセキュリティで接続端末を識別するにはMACアドレスをスイッチに登録する必要がある。 方法は手動でMACアドレスを登録する方法、フレームが届いた際に自動で送信元MACアドレスが登録される方法の2つがある。
9.3.2. DHCPスヌーピング
不正なDHCPサーバを用意し誤った情報をPCに割り当て通信を盗聴する手法はDHCPスヌーピングと呼ばれる中間者攻撃の1種。 具体的には盗聴しているPCへ通信を送った後に本来の送信先にデータを送信すれば盗聴にすぐには気づかれないということである。
9.3.2.1. DHCPスヌーピングを防ぐ方法
スイッチにDHCPスヌーピングの設定を行うと信頼ポートと信頼しないポートの2つに分けられる。 信頼しないポートからDHCP OFFERやDHCP ACKなどが送られるとそれらはブロックされる。 具体的にはDHCPサーバからメッセージが送られてくるポートを信頼ポートに設定を行い、それ以外を信頼しないポートに設定する。
なおこの設定を有効にするとDHCPパケットの中身がチェックされるため、DHCPサーバから割り当てられるIPアドレスをスイッチ側で知ることができる。 その情報はスイッチ側のDHCPスヌーピングバインディングデータベースに保存される。 このデータベースとダイナミックARPインスペクションを組み合わせるとARPスヌーピングと呼ばれる攻撃も防ぐことが可能。
9.3.3. ダイナミックARPインスペクション
ダイナミックARPインスペクションはARPスヌーピングと呼ばれるARP応答のなりすまし、謝ったARP情報を教える攻撃を防ぐ機能のこと。
9.3.3.1. ARPスヌーピング(ARPポイズニング)
ARPスヌーピングの仕組みは以下の通り。
- 宛先MACアドレスを知るため攻撃対象のクライアント端末がブロードキャストでARP要求する
- 攻撃者PCが他のPCになりすましたARP応答を返送し攻撃対象クライアントPCが誤ったARP応答をARPテーブルに登録する
- この際別の宛先への通信が攻撃者PCに向かう場合がある(スヌーピング)
9.3.3.2. ダイナミックARPインスペクションの仕組み
ダイナミックARPインスペクションではDHCPスヌーピング防止設定のDHCPスヌーピングバインディングテーブルが使用される。
具体的に信頼しないポートに設定したポートへのARP要求/応答がARP内部のIPアドレスとMACアドレス紐づけがDHCPスヌーピングバインディングテーブルと異なる場合になりすましと判断しパケットを破棄する構造となっている。
9.3.4. VACL
VACLはスイッチ内のVLANにACLを適用するもの。 対象はVLANに届いたすべての通信となる。またVACLはダブルたギング攻撃の対策の1つとなる。
9.3.4.1. ダブルタギング攻撃
ダブルタギング攻撃はトランクリンクのカプセル化がIEEE802.1Qの場合のネイティブVLANを利用した攻撃のこと。 これは攻撃者がトランクリンクのネイティブLANと同じLANに所属している場合に使用される方法となる。
具体的には攻撃者が2つのVLANタグ(トランクリンクのネイティブLANと同じVLANタグと攻撃したいVLANのタグ)を付加したフレームを送信する。 その際にスイッチが前者(トランクリンクのネイティブLANと同じVLANタグ)のVLANタグを外して転送するため異なるVLANにフレームが送信されてしまうという特性を利用したものとなっている。
9.4. ACL
9.4.1. ACLの概要
ACL(アクセスコントロールリスト)はルータを通過するパケットをチェックし許可された通信を転送するように通信制御をするために使用されるリスト。 ルータはACLの内容に基づきパケットフィルタリングを行う。
ACLにはチェックするパケットの条件とその条件に一致する場合の動作の一覧を登録する。
9.4.1.1. ACLの種類
ACLにはいくつか種類があり標準ACLと拡張ACLが代表的なものに上げられる。
標準ACL ... 標準ACLではパケットの送信元IPアドレスをチェックする。 また標準ACLの種類には番号付き標準ACLと名前付き標準ACLがあり、それぞれ1~99の値を設定、名前を表す文字列を指定する。
拡張ACL ... 拡張ACLでは送信元IPアドレス、宛先IPアドレス、プロトコル番号、送信元ポート番号,宛先ポート番号をチェックする。 また拡張ACLの種類には番号付き拡張ACLと名前付き拡張ACLがあり、それぞれ100~199の値を設定、名前を表す文字列を指定する。
9.4.1.2. ACLのルール
ACLではリストの上から検索を行い該当行があった場合それ以降の行を検索しない。 そのため記述する順番を意識する必要がある。
9.4.1.3. ワイルドカードマスク
ACLではフィルタリングの条件となる送信元や宛先を指定する際にワイルドカードマスクを使用する。
表記はIPアドレス ワイルドカードマスク。 またはワイルドマスクカード省略形でhost IPアドレスと記述可能。
またワイルドカードマスクを使用せずanyで指定する事も可能。
9.4.1.4. ACLの適用
ACLは作成後にルータのインターフェイスに適用する。ACLはインバウンドで適用するか、アウトバウンドで適用するかで動作が異なる。 またACLの適用は1つインターフェイスにつきインバウンド、アウトバウンドそれぞれ1つのみの適用になる。
インバウンドではパケットが届いたときにチェックが行われ、アウトバウンドではパケットが出ていくときにチェックが行われる。
9.4.2. 拡張ACLの概要
拡張ACLは標準ACLよりも細かくパケットのフィルタリングができるACL。 L3ヘッダの送信元IPアドレス、宛先IPアドレス、プロトコル番号、L4ヘッダの送信元ポート番号,宛先ポート番号をパケットフィルタリング条件に利用可能。
9.5. AAA
9.5.1. AAAの概要
AAAはセキュリティを実現させるための主要な3機能を元に考える概念で以下の3つで定義される。
- Authentication:認証 ... ネットワーク/サービスを利用する際にユーザID/パスワードなどにより確認を行うこと
- Authorization:認可 ... 認証されたユーザにどの機能を提供するかを決定するもの
- Accounting:アカウンティング ... ネットワーク/サービスを利用しているユーザのログイン時間やアクセス情報などを監視/記録すること
9.5.2. RADIUS/TACACS+
AAAを実現しネットワークアクセスを制御するためのプロトコルにはRADIUSやTACACS+がある。
項目 | RADIUS | TACACS+ |
---|---|---|
トランスポート層 | UDP | TCP |
使用ポート | 1812, 1813 | 49 |
パケット暗号化 | パスワードのみ暗号化 | 全体の暗号化 |
AAAへの対応 | 認証/アカウンティング | すべて |
機能の対応 | アカウンティングは独立、それ以外は統合 | AAA3機能すべて独立 |
ルータ管理 | ユーザがルータで実行するコマンドを制限できない | ユーザがルータで実行するコマンドを制限できる |
標準化対応 | RFC2865 | シスコ独自規格 |
9.5.2.1. RADIUS
RADIUSはAAAのうち認証/アカウンティングの機能を持つプロトコル。 UDPを使用するサーバ-クライアント型のプロトコルでRADIUSクライアントがRADIUSサーバに対して応答する仕組みとなっている。 認証に1812ポート、アカウンティングに1813ポートが使用される。
ネットワークにアクセスする際にルータやスイッチにログインする際にRADIUSプロトコルを利用して認証を追加することが可能。 またIEEE802.1Xにも使用されている。
9.5.2.2. TACACS+
TACACS+はAAAの3要素すべての機能を持つプロトコル。 TCPを使用するサーバ-クライアント型のプロトコルでTACACS+クライアントがTACACS+サーバに対して応答する仕組みとなっている。 またTCPの49ポートを使用し、やり取りするパケット全体を暗号化できる。
ネットワークにアクセスする際にルータやスイッチにログインする際にTACACS+プロトコルを利用して認証を追加することが可能でログインしたユーザが実行するコマンドの制限が可能。
9.5.3. IEEE802.1X
IEEE802.1X認証はネットワークへの不正アクセスを防ぐための機能。
IEEE802.1Xの構成
IEEE802.1Xではサプリカント、オーセンティケータ、認証サーバの3要素が必要となる。
要素 | 説明 |
---|---|
サプリカント | ユーザが認証した情報をオーセンティケータに送信するためのPC側の認証ソフトウェア |
オーセンティケータ | クライアントから送られる認証情報をRADIUSサーバへ中継する機器。具体的にはIEEE802.1X対応のネットワーク機器となる |
認証サーバ | ユーザ認証を行うためのサーバ。IEEE802.1XではRADIUSサーバのみをサポートしている |