AWS/Azure

AWS Network Firewallにおけるログの出力方法

この記事は投稿日から1年以上経過しています。

当記事では、AWS Network Firewallにおけるログの出力方法について記載します。 

前提条件

既にAWS Network Firewallを構築しており、通信を制御できていることを前提とします。 

設定方法に関する記事はこちら:AWS Network Firewallの設定方法

設定方法

  1. コンソールの[ネットワークファイアウォール]タブの[ファイアウォール]を選択します。
    その後、表示されたファイアウォールでログ出力設定を行うものの名前を押下します。
  2. [ファイアウォールの詳細]タブを選択します。
  3. 下へ画面をスクロールさせ、[ログ記録]の[編集]を押下します。
  4. 出力するログタイプを選択します。
    Alert:ルールでアクションを[ドロップ]または[アラート]にしている場合に出力されるログ
    Flow: デフォルトで表示されるトラフィックログ

  5. ログの送信先を設定します。
    今回は、CloudWatch ロググループに送信するため、任意のCloudWatchロググループを選択します。
  6. [保存]を押下します。 

 

以上で設定は完了です。
C
loudWatchのロググループのログストリームから、ログが指定した宛先へ正しく送信されていることを確認できます。 

なお、上記CloudWatchのロググループ上のログをLogStare Collectorで収集する場合は、こちらの記事を参照してください。 

以下、LogStare Collectorで収集したログを表示している画面です。文字列(正規表現)検索を行えるため、確認したいログを瞬時に見つけることが可能です。

サンプルログ

Alertログ 

{ 

    "firewall_name": "NetworkFirewall", 

    "availability_zone": "us-west-2a", 

    "event_timestamp": "1675153572", 

    "event": { 

        "src_ip": "192.168.0.78", 

        "src_port": 51117, 

        "event_type": "alert", 

        "alert": { 

            "severity": 3, 

            "signature_id": 3, 

            "rev": 0, 

            "signature": "", 

            "action": "allowed", 

            "category": "" 

        }, 

        "flow_id": 180684184660251, 

        "dest_ip": "18.180.167.106", 

        "proto": "TCP", 

        "dest_port": 443, 

        "timestamp": "2023-01-31T08:26:12.436507+0000" 

    } 

}

 

{ 

    "firewall_name": "NetworkFirewall", 

    "availability_zone": "us-west-2a", 

    "event_timestamp": "1675153534", 

    "event": { 

        "icmp_type": 8, 

        "src_ip": "192.168.0.78", 

        "src_port": 0, 

        "event_type": "alert", 

        "alert": { 

            "severity": 3, 

            "signature_id": 4, 

            "rev": 0, 

            "signature": "", 

            "action": "blocked", 

            "category": "" 

        }, 

        "flow_id": 1238487382520761, 

        "dest_ip": "18.180.167.106", 

        "proto": "ICMP", 

        "icmp_code": 0, 

        "dest_port": 0, 

        "timestamp": "2023-01-31T08:25:34.881593+0000" 

    } 

}

Alertログから、主に以下の情報を入手することができます。 

・送信元IP アドレス

・送信元ポート番号 

・宛先IP アドレス

・宛先ポート番号 

・プロトコル 

・アクション 

・タイムスタンプ(ログ日時) 

 

Flowログ 

{ 

    "firewall_name": "NetworkFirewall", 

    "availability_zone": "us-west-2a", 

    "event_timestamp": "1675151323", 

    "event": { 

        "tcp": { 

            "tcp_flags": "df", 

            "syn": true, 

            "fin": true, 

            "rst": true, 

            "psh": true, 

            "ack": true, 

            "ecn": true, 

            "cwr": true 

        }, 

        "app_proto": "tls", 

        "src_ip": "192.168.0.78", 

        "src_port": 50811, 

        "netflow": { 

            "pkts": 16, 

            "bytes": 3487, 

            "start": "2023-01-31T07:44:20.121258+0000", 

            "end": "2023-01-31T07:44:28.852749+0000", 

            "age": 8, 

            "min_ttl": 127, 

            "max_ttl": 127 

        }, 

        "event_type": "netflow", 

        "flow_id": 106638783863210, 

        "dest_ip": "18.180.167.106", 

        "proto": "TCP", 

        "dest_port": 443, 

        "timestamp": "2023-01-31T07:48:43.647164+0000" 

    } 

}
{ 

    "firewall_name": "NetworkFirewall", 

    "availability_zone": "us-west-2a", 

    "event_timestamp": "1675152724", 

    "event": { 

        "src_ip": "192.168.0.78", 

        "icmp_type": 8, 

        "netflow": { 

            "pkts": 3, 

            "bytes": 180, 

            "start": "2023-01-31T08:11:16.984073+0000", 

            "end": "2023-01-31T08:11:28.570025+0000", 

            "age": 12, 

            "min_ttl": 127, 

            "max_ttl": 127 

        }, 

        "event_type": "netflow", 

        "flow_id": 1238487326262281, 

        "dest_ip": "18.180.167.106", 

        "proto": "ICMP", 

        "icmp_code": 0, 

        "timestamp": "2023-01-31T08:12:04.090331+0000" 

    } 

}

 

Flowログから、主に以下の情報を入手することができます。 

・送信元IP アドレス

・送信元ポート番号 

・宛先IP アドレス

・宛先ポート番号 

・プロトコル 

・バイト数 

・通信開始及び終了時間 

・タイムスタンプ(ログ日時) 

運用上の注意点 

Fortinet社のFortiGateやPaloAlto Networks社のPaloAltoでは、リクエスト通信とレスポンス通信は1つのセットとしてログに出力されます。しかし、AWS Network FirewallのFlowログでは、リクエスト通信とレスポンス通信はそれぞれ別でログに出力されます。そのため、ログ分析を行う際は、ログ件数や送受信バイト数の計算等でAWS Network Firewallのログ出力の仕様を考慮する必要があります。 

※対となるリクエスト通信とレスポンス通信のログでは、「flow_id」という項目が同じ値となるため、その項目の値からリクエスト通信とレスポンス通信を紐づけることで、ログ件数や送受信バイト数の計算を行うことができます。 

AWS Network Firewallにおける対となる通信ログの例 

  • リクエスト通信 
{ 

    "firewall_name": "NetworkFirewall", 

    "availability_zone": "us-west-2a", 

    "event_timestamp": "1675151323", 

    "event": { 

        "tcp": { 

            "tcp_flags": "df", 

            "syn": true, 

            "fin": true, 

            "rst": true, 

            "psh": true, 

            "ack": true, 

            "ecn": true, 

            "cwr": true 

        }, 

        "app_proto": "tls", 

        "src_ip": "192.168.0.78", 

        "src_port": 50811, 

        "netflow": { 

            "pkts": 16, 

            "bytes": 3487, 

            "start": "2023-01-31T07:44:20.121258+0000", 

            "end": "2023-01-31T07:44:28.852749+0000", 

            "age": 8, 

            "min_ttl": 127, 

            "max_ttl": 127 

        }, 

        "event_type": "netflow", 

        "flow_id": 106638783863210, 

        "dest_ip": "18.180.167.106", 

        "proto": "TCP", 

        "dest_port": 443, 

        "timestamp": "2023-01-31T07:48:43.647164+0000" 

    } 

}
  • レスポンス通信 
{ 

    "firewall_name": "NetworkFirewall", 

    "availability_zone": "us-west-2a", 

    "event_timestamp": "1675151323", 

    "event": { 

        "tcp": { 

            "tcp_flags": "1b", 

            "syn": true, 

            "fin": true, 

            "psh": true, 

            "ack": true 

        }, 

        "app_proto": "tls", 

        "src_ip": "18.180.167.106", 

        "src_port": 443, 

        "netflow": { 

            "pkts": 28, 

            "bytes": 29719, 

            "start": "2023-01-31T07:44:20.121258+0000", 

            "end": "2023-01-31T07:44:28.852749+0000", 

            "age": 8, 

            "min_ttl": 110, 

            "max_ttl": 227 

        }, 

        "event_type": "netflow", 

        "flow_id": 106638783863210, 

        "dest_ip": "192.168.0.78", 

        "proto": "TCP", 

        "dest_port": 50811, 

        "timestamp": "2023-01-31T07:48:43.647207+0000" 
   }
}

LogStare Reporter / LogStare Quintでのレポート例

当社のLogStare ReporterおよびLogStare QuintはAWS Network Firewallのアクセスログの可視化に対応しています。
※「LogStare Reporter / LogStare Quint」につきまして詳しくはラインアップをご覧ください。

ラインアップ - AI予測・システム監視・ログ管理を統合したセキュリティ・プラットフォーム LogStare(ログステア)

以下はレポートの一例です。

時間帯別ファイアウォールログ件数レポート

AWS Netwrork Firewallのログを時間帯別にallowed/blocked別に集計したレポートです。
例えばblocked(グラフ上黄色)の多い時間帯についてクローズアップ(ドリルダウン)することで、ブロックされた通信の宛先IPアドレス、送信元IPアドレス、ポート番号などを分析することが出来ます。

宛先IPアドレス別レポート(netflow)

netflowのログより通信量の多い宛先別に集計したレポートです。
想定外に外部への大量通信が発生しないかなどを一目で確認することができます。
クローズアップ(ドリルダウン)することで、送信元IPアドレス、アプリケーション、ポート番号などを調査することが出来ます。

プロトコル別レポート(netflow)

AWS Network  Firewallが識別したアプリケーションプロトコル別のレポートです。
クローズアップ(ドリルダウン)することで、宛先IPアドレス、送信元IPアドレスなどを調査することが出来ます。

以上で、AWS Network Firewallにおけるログ出力設定方法についての説明は終了となります。 

記載されている会社名、システム名、製品名は一般に各社の登録商標または商標です。

当社製品以外のサードパーティ製品の設定内容につきましては、弊社サポート対象外となります。

FortiGate 遮断ポリシーが意図しない挙動になるケース前のページ

LSC v2.3.4 build 230220 リリースノート次のページ

ピックアップ記事

  1. Zabbixヒストリデータのレポート生成について
  2. IoT機器「Raspberry pi」とLogStare Collectorで温…
  3. ログフォワーダー「okurun.jar」について
  4. 自社製品をAMIにしてAWSマーケットプレイスへ出品

関連記事

  1. AWS/Azure

    PrivateLinkEndpoints関連メトリクス一覧

    当記事では、CloudWatch監視にて対応しているPrivateLi…

  2. AWS/Azure

    CloudWatchAgent(Linux)_関連メトリクス一覧

    当記事では、CloudWatch監視にて対応しているCloudWatc…

  3. AWS/Azure

    ApplicationELB関連メトリクス一覧

    当記事では、CloudWatch監視にて対応しているApplicati…

  4. Windows/Linux

    CloudWatch監視に必要な権限について

    当記事では、CloudWatch監視に必要な権限について記載します。…

  5. AWS/Azure

    LogStare CollectorでのAWS WAFログの取得方法とログレポート

    当記事では、LogStare CollectorでのAWS WAFログ…

月額200円でM356の監査ログの運用レベルUP LogStare M365

AWSのログ分析・モニタリングに 次世代のマネージド・セキュリティ・プラットフォーム LogStare

  1. SNMPを触ってみた

    ログ分析・監視テクニック

    SNMPとは?新入社員が生まれてはじめて触ってみた!
  2. AWS/Azure

    AWSマーケットプレイス上から無償版のLogStare Collectorを試す…
  3. 実践記事

    DNSキャッシュポイズニングやってみた
  4. NW機器

    Nutanix Prism ElementにおけるSNMP監視/REST API…
  5. NW機器

    PaloAltoのIPsec IKEv1 Phase1におけるトラブルシューティ…
PAGE TOP