ここでは、インターネットゲートウェイとしてPA Firewallを設置した場合のセキュリティ対策について、具体的に検討します。
想定ネットワーク構成 (インターネットゲートウェイ構成)
以下のネットワーク構成を前提とします。
セキュリティ対策の考え方
インターネットゲートウェイとしてFirewallを設置した場合には、以下の点を考慮して設定を実施することが望ましいです。
トラフィックを可視化する
- 見えない脅威から保護することはできません。
- PA Firewallは、通過するアプリケーショントラフィックを完全に可視化できます(デフォルトの挙動です)。
- さらにUser-ID設定を実施して、送信元IPアドレスからユーザーを識別できるようにすることで、そのアプリケーションを利用するユーザーを識別できます。
攻撃対象領域を減らす
- 可視化によってネットワーク上のトラフィックのコンテキスト(アプリケーション、アプリケーションに関連するコンテンツ、アプリケーションにアクセスするユーザー)を把握したら、アプリケーションベースのセキュリティポリシールールを作成して、ビジネスに不可欠なアプリケーションを許可するルールを設定します。加えて、すべてのリスクの高いアプリケーションをブロックするためのルールを追加します。
- 攻撃対象領域をさらに減らすには、すべてのルールにファイルブロッキングプロファイルとURLフィルタリングプロファイルを付与して、脅威になりやすいWebサイトにアクセスしたり、危険なファイルタイプを、故意か無意識かに関わらず、アップロードまたはダウンロードできないようにしたりします。
既知の脅威を防ぐ
- PA Firewallがすべての許可されたトラフィックをスキャンして既知の脅威を検出できるようにするために、脆弱性防御、アンチスパイウェア、アンチウィルス等、各種プロファイルをすべてのルールに適用して、ネットワークおよびアプリケーションレイヤーの脆弱性の悪用、バッファオーバーフロー、DoS攻撃、ポートスキャン、既知のマルウェアの亜種を検出してブロックします。
- 暗号化されたトラフィックの検査を有効にするには、復号化を有効にします。
- アプリケーションベースのセキュリティポリシールールに加えて、パロアルトネットワークス自身と、信頼できるサードパーティから提供される既知の悪意のあるIPアドレスをブロックするルールを作成します。
未知の脅威を検出する
- ファイル分析のために、すべての未知なファイルをWildFireに転送します。
- WildFireは、クラウド内の仮想化されたサンドボックス環境で未知のファイルを直接監視および実行することにより、ファイル内に隠された未知または標的型マルウェアを識別します。
- WildFireは、250を超える悪意のある動作を監視し、マルウェアを検出すると、署名を自動的に作成し、約5分で配信します。それ以降は既知の脅威として扱われます。
各セキュリティプロファイルのアクションの決定
脅威を防御するためのプロファイルとして「default」プロファイルが用意されており、多くの場合でそのままセキュリティポリシーに適用しても問題ないアクション設定になっています。
しかし、ネットワーク構成によっては、変更したほうがより良いセキュリティとなりえる場合があります。
本想定ネットワーク構成では、以下の赤文字部分のアクション設定に変更することで、セキュリティをより強化することとします。
各機能↓ |
アクション |
|
脆弱性防御 |
デフォルトで、一つ一つのシグネチャにアクションが設定されているので、そのまま利用する |
|
アンチスパイウェア – C&C |
同上 |
|
アンチスパイウェア – DNS |
シンクホール |
|
アンチウィルス / Wildfire |
FTP |
Reset-both |
SMTP |
Reset-both |
|
IMAP |
Alert |
|
URLフィルタリング |
abused-drugs |
Block |
cryptocurrency |
Alert |
|
上記以外 |
Allow |
[参考]各アクションの意味について
脆弱性防御、アンチスパイウェア、アンチウィルス/Wildfireシグネチャの場合
脆弱性防御、アンチスパイウェア、アンチウィルス/Wildfireシグネチャに設定できる各アクションは、以下のような意味を持っています。
アクション |
意味 |
Allow |
アプリケーショントラフィックが許可されます。 |
Alert |
各アプリケーショントラフィックフローのアラートが生成されて、脅威ログに保存されます。 |
Drop |
アプリケーショントラフィックが廃棄されます。 |
Reset Client |
TCP の場合、クライアント側の接続がリセットされます。 |
Reset Server |
TCP の場合、サーバ側の接続がリセットされます。 |
Reset Both |
TCP の場合、クライアント側とサーバ側の両方の接続がリセットされます。 |
URLフィルタリングの場合
URLフィルタリングのカテゴリに設定できる各アクションは、以下のような意味を持っています。
アクション |
意味 |
Allow |
そのカテゴリは許可されます。 |
Alert |
そのカテゴリはアラートが生成されて、URL Filteringログに保存されます。 |
Block |
そのカテゴリのアクセスが拒否され、アラートが生成されて、URL Filteringログに保存されます。 |
Continue |
ユーザーがそのカテゴリへのアクセスを行いたい場合は、PA FirewallによってWeb画面が表示され、「Continue」をクリックすることを要求されます。 |
[参考]脆弱性防御とアンチスパイウェアの事前定義アクションについて
脆弱性防御とアンチスパイウェア- C&Cのシグネチャは、シグネチャ毎に事前定義されたアクションを持っています。
例:Vulnerability Protection (脆弱性防御)
a)「Object」タブ → セキュリティプロファイル下のb)「脆弱性防御」 → c)「追加」
a)「例外」タブ →b) 「すべてのシグネチャの表示」をチェックして表示されるシグネチャのアクションを見ると、シグネチャ毎にc)アクションが事前に定義されていることが分かります。
重大度(Severity)がCriticalやHighのシグネチャでも、シグネチャがリリースされて間もない場合や、誤検知(False Positive)となり得る可能性の高いと弊社で判断したものは、アクションがAlertとなる場合があります。
a)フィルタに「(( severity contains ‘critical’ ) or ( severity contains ‘high’ ) ) and ( action contains ‘alert’ )」を入力して絞り込むことで、b)その状態のシグネチャを確認できます。
デフォルトアクションは、定期的にパロアルトネットワークス社側で見直しを行い、シグネチャアップデートでアクションを変更します。
脆弱性防御とアンチスパイウェア-C&Cシグネチャの推奨設定
脆弱性防御とアンチスパイウェア-C&Cシグネチャは、まずはデフォルトアクションのまま利用を開始することをお勧めします。
脆弱性防御およびアンチスパイウェア-C&Cシグネチャは、細心の注意を払って開発され、広範囲な回帰テストが実施されていますが、社内で開発されたWebアプリケーションなどのカスタムメイドのアプリケーションや、誤った構成のサービスや障害のあるアプリケーションから発生するトラフィックにヒットすることがあります。
このため、このシグネチャがネットワークへ与える影響を事前に検証することなく、シグネチャグループを全体的にブロッキングにすることは、一般的には良い方法とは言えません。
特に脆弱性防御に関しては、アラートのみのカスタム脆弱性防御プロファイルを作成して、ブロッキングモードがインフラストラクチャにどのような影響を与えるかを把握してから、ブロッキングモードへ移行することを推奨します。
[参考]メール関連プロトコル (SMTP, POP3, IMAP) の対策について
もし、脅威を持つファイルがメールに添付されて、メールサーバに到達した場合を想定します。
外部からメールを受け付けるプロトコルは一般的にSMTPです。
SMTPの場合はreset-bothアクションを使用することで、PA FirewallがSMTPサーバに541応答を返して、ブロックされたメッセージを再送信しないように通知できます。(下図参照)
しかし、クライアントがメールサーバからメールを受信するPOP3およびIMAPプロトコルの場合は、プロトコルの特性上、セッション全体に影響を与えずにファイルをクリーンアップすることや、感染したファイル転送を適切に終了することが技術的に難しいので、Alertのまま利用することが推奨となっています。(下図参照)
[参考]各種イベントの重大度はMedium以下にも注意を払う必要がある
各種イベントが持つ重大度(Severity)には注意が必要です。
重大度がCriticalやHighが発生した場合に次の行動に移る、という方針は間違いではありません。
しかし、それだけでは見落としてしまう脅威があります。
というのも、PA Firewallが脅威を検知した場合に示す重大度は以下のようになっており、CriticalやHighで通知しないイベントがあるためです。
重大度→ 各機能↓ |
Critical |
High |
Medium |
Low |
Informational |
脆弱性防御 シグネチャ |
○ |
○ |
○ |
○ |
○ |
アンチスパイウェア – C&Cシグネチャ |
○ |
○ |
○ |
○ |
○ |
アンチスパイウェア – DNS シグネチャ |
○ |
||||
アンチウィルス / Wildfireシグネチャ |
○ |
||||
Wildfireで未知ファイルの判定がMalicious |
○ |
||||
URLフィルタリング |
○ |
||||
自動相関レポート |
○ |
○ |
○ |
○ |
○ |
CriticalおよびHighの重大度判定を持つものは、脆弱性防御、アンチスパイウェア – C&C及び自動相関レポートだけであり、
アンチウィルスやWildfireシグネチャにヒットしたもの及びアンチスパイウェア – DNS シグネチャにヒットしたものはMediumとして検出されるだけです。
よって、「重大度=CriticalとHigh」だけでなく、Medium以下の重大度にも注意する必要があります。
例えば、アンチウィルスの重大度はMediumに固定されているので、「重大度=CriticalとHigh」だけを注視していては見逃してしまいます。
よって、アンチウィルスの場合には、イベントの”subtype”フィールドに”virus”という情報が入るので、そのフィールドをチェックする、というように、重大度だけではない値を参照して次の行動へのトリガーとする必要があります。
セキュリティ対策方針の一例
決定した上記のアクションの値を踏まえて、一つの考え方として、以下の方針を立てることとします。
[即時対応として]管理者にアラートメールを送る
以下のセキュリティイベントが発生した場合に、PA Firewallがメールを送る設定を行います。
-
重大度が高いイベントで、それがブロックされていない場合
- 脆弱性防御およびアンチスパイウェアのシグネチャはデフォルトアクションを利用しますが、重大度が高いものでも、新しく作られたシグネチャや誤検知する可能性の高いものはアクションがアラートになっているものがあります。
- 脆弱性防御およびアンチスパイウェアのシグネチャはデフォルトアクションを利用しますが、重大度が高いものでも、新しく作られたシグネチャや誤検知する可能性の高いものはアクションがアラートになっているものがあります。
-
ウィルスのイベントで、それをPOP3かIMAPで検知した場合
- SMTPはReset-both設定によってメール受信を拒否できますが、POP3およびIMAPは技術的にブロックが難しいのでアラート設定のままが推奨されています。(後述)
よって、POP3またはIMAPで脅威が検知されると、クライアントにウィルスが到達した可能性があります。
- SMTPはReset-both設定によってメール受信を拒否できますが、POP3およびIMAPは技術的にブロックが難しいのでアラート設定のままが推奨されています。(後述)
-
WildfireでMalwareと判定された場合
- 未知のファイルはWildfireサンドボックスに送られ、解析されますが、同時にクライアントへも送られるので、マルウェア判定が出た場合には、クライアントにマルウェアが送られたことになります。
- 未知のファイルはWildfireサンドボックスに送られ、解析されますが、同時にクライアントへも送られるので、マルウェア判定が出た場合には、クライアントにマルウェアが送られたことになります。
-
相関分析エンジンで、重大度が高い振舞いであると判断された場合
- 相関分析エンジンで分析された結果、重大度がCriticalやHighの端末は感染が疑われます。
- 相関分析エンジンで分析された結果、重大度がCriticalやHighの端末は感染が疑われます。
[傾向分析として]日次のカスタムレポートを生成する
ブロックできている脅威に対しては、即時対応ではなく日々のレポートで確認することとします。
-
スパイウェアのDNSシグネチャにヒットした場合
- 該当端末は、インターネット利用中にたまたま怪しいサイトへのリンクをクリックしたか、場合によってはマルウェアに感染したことによってC&Cサーバへの通信を開始した可能性があります。
Sinkhole設定により、実質Blockされている状態ですので、日次のカスタムレポートで、シンクホールIP宛のリクエスト数の傾向を確認することにします。
- 該当端末は、インターネット利用中にたまたま怪しいサイトへのリンクをクリックしたか、場合によってはマルウェアに感染したことによってC&Cサーバへの通信を開始した可能性があります。
-
URLフィルタリングのMalware及びPhishingカテゴリにヒットした場合
- これら2つのカテゴリはBlock設定としているので、日々のカスタムレポートで状況を確認することにします。
- これら2つのカテゴリはBlock設定としているので、日々のカスタムレポートで状況を確認することにします。
-
重大度は高いが、ブロックされた場合 / ウィルスでブロックされた場合
- 重大度がCriticalやHighまたはウィルスであっても、ブロックされたものに関しては端末への感染の疑いはないので、日々のレポートで傾向を確認します。
- 重大度がCriticalやHighまたはウィルスであっても、ブロックされたものに関しては端末への感染の疑いはないので、日々のレポートで傾向を確認します。
アラートメールを送る設定方法については、次ページ以降に示します。
カスタムレポート作成方法については、「カスタムレポート」の章を参照ください。
アラートメール設定
上記のセキュリティ対策方針に従って、以下の表の値を持つログが出力された場合にアラートメールが管理者に送られるように設定します。
ログ名 |
パラメーター |
値 |
脅威 |
重大度 & アクション (severity & Action) |
Critical & alert |
High & alert |
||
タイプ & アプリケーション & アクション (subtype & Application & Action) |
virus & pop3 & alert |
|
virus & imap & alert |
||
Wildfireへの送信 |
判定 (verdict) |
Malicious |
自動相関 |
重大度 (severity) |
Critical |
High |
サービスルートの設定
PA Firewallから発せられる電子メールは、デフォルトではマネージメントインタフェースから出力されるようになっています。
想定構成では、メールサーバはマネージメントインタフェースではなくEthernet1/4に設置されているので、設定変更が必要です。
a)「Device」→b)「セットアップ」→ c)「サービス」→d)「サービスルートの設定」をクリックします。
a)「カスタマイズ」を選択し、b)「電子メール」をクリックします。
a)送信元インタフェースに「ethernet1/4」を選択し、b)のIPアドレスを選択して c)「OK」をクリックします。
次の画面でも「OK」をクリックして閉じます。
電子メールサーバプロファイル
a)「Device」→b)「電子メール」→c)「追加」をクリックします。
a)プロファイルの名前に「Email_Server (任意)」を入力し、b)「追加」をクリックします。
c)にサーバの名前「Email_on_DMZ (任意)」、送信者、宛先、電子メールのゲートウェイとなるサーバのIPアドレスまたはFQDNを指定します。
d)「OK」ボタンを押します。
ログのメール転送の設定
a)「Objects」→b)「ログ転送」→c)「追加」をクリックします。
ログ転送プロファイルの名称をa)「default」とします。
※名称を「default」とすることで、新しく追加したセキュリティポリシーには自動的にこのプロファイルが割り当てられます。
b)「追加」ボタンを押します。
名前にa)「Threat_mail」、ログタイプはb)「threat」を選択します。
フィルタはc)「フィルタビルダー」を選択します。
フィルタは以下の形になるように設定します。
(severity geq high) and (action eq alert) # ” geq “は、演算子の「次の値以上」です。
a)「and」 → b)「重大度」 → c)「次の値以上」 → d)「high」 → e)「追加」し、
続けて、a)「and」 → b)「アクション」 → c)「equal」 → d)「alert」 → e)「追加」 → f)「OK」ボタンをクリックします。
電子メール下のa)「追加」をクリックして、設定済みの電子メールプロファイルb)「Email_Server」を選択します。
c)「OK」ボタンを押します。
同様の方法で、タイプがvirusの場合のメール送信設定を行います。
名前にa)「Threat_virus_mail」、ログタイプはb)「threat」を選択します。
フィルタはc)「フィルタビルダー」を選択し、以下のフィルタを作ります。
(subtype eq virus) and (action eq alert) and ((app eq pop3) or (app eq imap))
# “subtype” の日本語表示は「タイプ」です。
# 外側の() は手入力で追加します。
電子メール下のd)「追加」をクリックして、設定済みの電子メールプロファイルe)「Email_Server」を選択します。
f)「OK」ボタンを押します。
同様の方法で、メール転送するWildfireログの設定を行います。
名前にa)「Wildfire_mail」、ログタイプはb)「wildfire」を選択します。
フィルタはc)「フィルタビルダー」を選択し、以下のフィルタを作ります。
(verdict eq malicious) # “verdict” の日本語表示は「判定」です。
電子メール下のd)「追加」をクリックして、設定済みの電子メールプロファイルe)「Email_Server」を選択します。
f)「OK」ボタンを押します。
[参考] ログ転送プロファイルの自動割り当て
ログ転送プロファイル名を「default」に設定したことで、このプロファイルが自動的に新規のセキュリティポリシールールに割り当てられます。
(※既に設定済みのセキュリティポリシールールには割り当てられませんので注意してください。)
確認: a)「Policies」タブ → b)「セキュリティ」 →c)「追加」をクリックします。
a)「アクション」タブをクリックすると、以下のb)ように、作成した「default」ログ転送プロファイルが、自動的に選択されていることが分かります。 (通常は”None”です。)
自動相関のメール転送の設定
自動相関のログ出力設定は、Deviceタブから行います。
※ 自動相関は、PA-3000以上の機種またはPanoramaで実装しています。
a)「Device」タブ → b)「ログ設定」で表示された画面でスクロールダウンし、c)「相関」を見つけて、d)「追加」をクリックします。
名前にa)「Correlation_mail」、フィルタはb)「 (severity geq high) 」とします。
電子メール下のc)「追加」ボタンを押して、作成済みの電子メールサーバプロファイルd)「Email_Server」を選択します。
最後にe)「OK」ボタンを押します。
「コミット」を実施します。
これで、出力されたログの状態に応じて、メールが出力されるようになります。
コメント欄 質問や感想、追加してほしい記事のリクエストをお待ちしてます!