ファイアウォールとはネットワークの出入り口に設置し、外部から内部への不正な侵入を遮断し、また、内部から外部への不正なアクセスを禁止することで、ネットワークを保護することを目的とした装置です。
ネットワークではインターネット経由など外部とのやりとりが必須となる為、悪意のある攻撃者はコンピュータを乗っ取る、改ざんするなど目的でアクセスをしてくる場合もあります。このような外部からの標的型攻撃から防御するために使われているのがファイアウォール(防火壁)です。許可された通信以外を遮断する為、許可した部分のみ注意していれば不正アクセスは防ぐことが出来ます。ファイアウォールは外部からの標的型攻撃からネットワークやシステムを守るために必要とされています。
フィアウォールは許可した通信以外は遮断することで、不正アクセスをブロックします。
ファイアウォールには「パケットフィルタ型」と「ゲートウェイ型」に大別できます。パケットフィルタはOSI参照モデルの下階層の方で通信制御ができる機能を持っています。通信をパケット(データを小分けにした包みのようなもの)単位で解析をし、決められたルールで通信の通過と遮断を実行します。ゲートウェイ型は、内部コンピュータの代わりに通信を行う中継役のコンピュータです。ルータも同様に通信の中継役を担いますが、ゲートウェイも似ている働きをします。初期のインターネットでは異なるネットワークの境界に専用機器を設置してIPパケットを転送していました。今のルータの働きをゲートウェイという機器が担っていましたが、年月が経過するとともに専用装置であるルータが処理するようになりました。ルータは過去の流れからゲートウェイとも呼ばれ、パソコンのIPアドレス設定画面でも「デフォルトゲートウェイ」と表示されているのはこの名残です。ファイアウォールとゲートウェイは、アプリケーション層のプロトコルやサーバOS・ネットワークのシステムプラットフォーム層のプロトコルを解釈して内部ネットワーク(社内ネットワークなど)と外部ネットワーク(インターネットなど)を相互に接続する装置という点では深い関連性があります。
アプリケーションゲートウェイはメールやWEBサイトのページコンテンツに含まれるURLや文章の内容に問題があるか確認をして問題がある内容の場合に遮断する働きをします。危険なサイトのドメインを予め登録することやスパムメールで利用されているメールサーバ情報をブラックリストと呼びURLやテキストをフィルタリングしておくと、WEBサイトが改ざんされる攻撃をうけてしまったり迷惑メールが着信する場合に条件に一致した通信であれば自動的に遮断します。
サーキットレベルゲートウェイとは、対象となるネットワークが直接接続するのではなく中継役をして、やりとりを全て通信を仲介する役目があります。バーチャルサーキットとは仮想回線とも呼ばれ、仮想的に2点間を結ぶ為の回線のことです。OSI参照モデルでは4層のトランスポート層(L4)に該当し主にTCPで利用されている通信方法です。TCP/IPを利用した通信方法はWEBサイト閲覧やメールなど、私たちがインターネットを利用する上で日常的に利用する通信方法であるためサーバには非常に多くのアクセスが存在します。TCP仲介役のサーキットレベルゲートウェイを利用することでユーザもサービス提供者も、日常的に安全にインターネットを利用することが出来ます。
パケットフィルタは一般的にはTCP,UDPのプロトコルとIPアドレスでフィルタリングをしてサーバへのアクセスを制御するものです。下の図では社内VPN接続からアプリケーション開発環境サーバへのアクセス制御の例です。公開前の情報や公開していないプログラムコードなどが存在するため、エンドユーザのアクセスはブロックし社内関係者のみアクセスできるよう制御しています。条件番号1では基本的に全てのアクセスは遮断、条件番号2ではプロトコルがTCPでIPアドレスが社内VPN接続を指定でOUT(リクエスト)、条件番号3ではプロトコルがTCPでIPアドレスが社内VPN接続を指定でIN(レスポンス)で、条件をクリアした状態でアクセスが可能の状態を設定しています。
番号 | 方向 | 動作 | プロトコル | 送信元 | 宛先 | ||
---|---|---|---|---|---|---|---|
IPアドレス | ポート番号 | IPアドレス | ポート番号 | ||||
1 | * | 遮断 | * | * | * | * | * |
2 | OUT | 通過 | TCP | 192.168.1.* | * | * | 80番,443番 |
3 | IN | 通過 | TCP | * | 80番,443番 | 192.168.1.* | * |
*(アスタリスク)は何が入ってもよいことを意味します
上記の表では、下の図のように社内ネットワークであるVPN経由のIPアドレスで、一般非公開のtestサイトとstageサイトをWEBブラウザで閲覧する事ができることを意味します
通信の状態の変化を考慮せず、入ってくるパケットと出ていくパケットの両方について条件を設定し、指定に沿って静的に通過と遮断を実行します。
SPI(Stateful Packet Inspection)(ステートフルパケットインスペクション)機能などを用いて、通過と遮断を実行する方法です。主にTCPについて通信状態(フラグ、シーケンス番号など)の変化が正常かどうかを監視し、不自然な状態をもつパケットがみつかれば破棄することで、なりすましや乗っ取りを防止するものです。通信の変化を監視することで、リクエストを送った後に応答だけを通す許可を自動的に行い、通信が終わったら自動的に許可を解除するなどといった細かな設定フィルタリングが可能になります。動的パケットフィルタリングは近年のファイアウォールの多くに搭載されている機能になります。
ファイアウォールの機能は、外部からの不正アクセスを社内ネットワーク(LAN)に侵入させないことです。外部からの不正なパケットを遮断する機能や、許可されたパケットだけを通過させる機能を持っています。ファイアウォールはソフトウェアとして提供されているものと機器として提供されているものがあります。近年ではルータにもファイアウォール機能が装備されているものも存在します。
ファイアウォールの主な機能として、パケットフィルタリング型はよく使われる方式であり、IPアドレスやポート番号を基にしたフィルタリングがあげられます。指定のIPアドレスからの、あるいは、指定のIPアドレス宛の通信を遮断したり、指定のポート番号宛ての通信だけを通過させる、といった操作をします。ポート番号とは通信プロトコル(通信規則)に割り当てられた番号であるため、プロトコルに応じた通信の許可・遮断を制御できます。ファイアウォールは通信内容の監視はしないことから、内容が正常あるいは異常といった判断はしません。従って、ウイルスが添付されているメールを破棄することや、フィッシングページを警告するなどと言ったことは、ファイアウォールの機能には含まれないのが一般的です。
公開サーバへのポートを開放し決まったプロトコルのみの通信に限定する。LANへの侵入はブロックするなどの設定をファイアウォールで実施します。
インターネット接続で用いられるブロードバンドルータは特に指定しない限り、外部から始まる通信を内部に届けることが出来ません。NATと同様にファイアウォールと同様の効果があります。NAT(Network Address Translation)とは、ネットワークアドレス変換器とも呼ばれ、通信の際にIPアドレスを変換してくれる技術です。ネットワークはLANとWANに大別され、LANはオフィス内や家庭内の「内部ネットワーク」でプライベートIPアドレスが利用され、WANはインターネット経由や専用線などの「外部ネットワーク」でグローバルIPアドレスが利用されます。プライベートIPアドレスは、そのままグローバルIPアドレスと通信することが出来ませんので、NATでアドレス変換を実行し通信を確立させます。図ではパソコンから公開サーバへリクエストを送ってレスポンスを返してもらう例で通信が成功していますが、公開サーバ側からパソコンに対してリクエストを送ってレスポンスを返すことは出来ません。理由は公開サーバからブロードバンドルータにリクエストを送ることは出来ても、ブロードバンドルータに接続されている各パソコンのIPアドレスはわからないため、LAN入り口の役割をするブロードバンドルータにリクエストを送る仕組みになっているからです。ブロードバンドルータはLAN入り口に位置し内部ネットワークを守る役割も果たします。
ファイアウォールで特定の通信をする際にポート開放の設定を実行します。よくある例は、httpの80番(httpsの443番)です。WEBサイトを閲覧する際はhttp/httpsで通信を行い、ユーザのパソコンのブラウザに表示されます。設定例はプロトコルはTCPを指定しポート番号を指定することで、http/https通信が許可されたことになり、不特定多数のユーザからWEBサイトを閲覧することが可能になります。http/https以外の通信は遮断をして通信方法を限定することで、公開するWEBサイトに対して過剰なアクセスやデータを送りつけるDDoS攻撃などの標的型攻撃から守ることが可能になります。
ファイアウォールに類似する製品(機器・ツール)やサービスは多数存在し、安全にネットワークを利用できるようにサポートをしてくれます。IDS、IPSは外部からの不正なアクセス、普段と違う異常な通信の発生(通信量、通信種別、振る舞いなど)、内部からの情報漏えいなどの検知や対策に用いる装置、あるいはソフトウェアです。IDSやIPSで異常を検知するアプローチには、「シグネチャによる不正検出」と「通常と違う状況を察する異常検知」があります。「シグネチャによる不正検出」は予め登録されている攻撃パターンと類似度が高いとき、それを異常とみなしてアクションを起こす方式です。登録パターンを常に更新する必要がある、未知の攻撃は検出できない、などの弱点があります。一方「通常と違う状況を察する異常検知」は、登録パターンが不要で、未知の攻撃を検出できます。しかし普段と異なる使い方をした場合などに誤検知を引き起こす可能性がありますので、最近の製品では、これら両方を併用するものもあります。
IDS(侵入検知システム)とは、異常を検出したら、システムと共にシステム管理者にメールなどで通知することです。IDSはネットワークの異常に対して自動的に「検出」「検知」を実行します。
IPS(不正侵入防止システム)とは、即時に異常な接続を遮断すると共に、システム管理者にメールなどで通知することです。IPSはネットワークの異常に対して自動的に「検出」「検知」「防御」を実行します。
UTM(統合脅威管理)とは、ファイアウォール、アンチウイルス、コンテンツフィルタリング、IPS、その他+αの機能を1台に詰め込んだ機器のことです。セキュリティ機能をまとめてUTMで済ませてしまえば、個別の機器を導入するよりもコストが安く済み、管理の手間も減らせるのがメリットです。しかし、ネットワーク性能の観点では、使い方によっては物足りないケースもあります。これに対して、個別の機器を用意する方法は、ネットワーク性能、柔軟性などの点で有利です。
次世代ファイアウォールとは、同一のポートを通過する場合でもアプリケーションによって通信を見分け、許可するアプリケーション通信のみを通過させるなど高度な通信制御を行える機器のことです。例えば、従来よりWEBサイトを閲覧するための、HTTPSのポート443番(HTTPのポート80番)には制限がかかっていない為、どのアプリケーションでも通過をしてしまいます。対象サイトのサーバに対して、WEBサイト閲覧のみに限定する場合など必要なブラウザのみの通信や、アプリケーション開発で利用するAPI通信などに限定し、ブラウジング以外の用途で利用されるフリーソフトやツールからの不審なアクセスをブロックするなど外部からのセキュリティ強化も可能です。
WAF(WEBアプリケーションファイアウォール)とは、WEBアプリケーションへの攻撃を防ぐために開発された専用防御ツールです。ファイアウォールはネットワークレイヤーを防御し、IDS/IPSはOS・Webサーバレイヤーを防御しますが、アプリケーションレイヤーの防御は不完全な機器が多いです。WEBアプリケーションの脆弱性を突いた攻撃は、SQLインジェクションやクロスサイトスクリプティング(XSS)が多い事が特徴ですが、WAFで事前に許可されたパターンなどと照合し不正アクセスを遮断することで、WEBアプリケーションに対して高い防御力を誇ります。WAFはアプライアンス型(専用機器)、ソフトウェア型(ホストにインストール)、クラウドサービス型(SaaS型)に大別でき、順番にカスタマイズ性が高いが導入コストが高額、中間的な位置に属するもの、カスタマイズ性は低いが低コストで導入可能といった特徴があります。
さくらインターネットでは「WAFの必要性について」と題してホワイトペーパーを公開しています。テキストリンクからページに移動しフォームに入力後、ダウンロードして御覧ください。
アイティーエムで提供している「WEBアプリケーションファイアウォール運用サービス」は、SaaS型のWAF(Scutum)を利用し専門エンジニアの運用サポートと組み合わせたサービスです。WEBアプリケーションの脆弱性を悪用したサイバー攻撃、セキュリティに関する事件・事故から被害を未然に防ぐためにWAFを導入し、専門エンジニアの運用サポートを組み合わせることにより、低コストで安心・安全なWEBアプリケーション運用を支援します。