ある企業のセキュリティチームは、VPC内のEC2インスタンスが送信するすべてのDNSクエリ(照会されたドメイン名・クエリタイプ・応答コード)を記録し、自社の脅威インテリジェンスフィードと照合してコマンド&コントロール(C2)サーバーへの通信を検出したいと考えています。DNSクエリのドメイン名を含む完全なログを取得するための最適な方法はどれですか?
Amazon Route 53 Resolver クエリログは、VPC内のEC2インスタンスがRoute 53 Resolverを通じて送信したDNSクエリを詳細に記録する機能です。記録される情報には、クエリされたドメイン名、クエリタイプ(A・AAAA・MXなど)、応答コード、クエリ元のEC2インスタンスID・IPアドレス、タイムスタンプが含まれます。ログはCloudWatch LogsまたはS3に送信でき、自社の脅威インテリジェンスフィードとの照合や長期保存・分析が可能です。 選択肢AのVPC Flow Logsはポート53のIPフローのメタデータ(送信元・宛先IP、バイト数など)は記録しますが、DNSクエリで照会した実際のドメイン名やクエリタイプ・応答コードは記録しません。脅威インテリジェンスとの照合にはドメイン名情報が必須です。 選択肢CのAmazon GuardDutyはAWSが管理するDNSログを使用して脅威を自動検出する機能を持ちますが、GuardDutyのDNS検出はAWS管理の脅威インテリジェンスとのみ照合されます。ユーザーが独自の脅威インテリジェンスフィードでDNSクエリログを分析するためのログアクセスは提供しません。 選択肢DのAWS Network FirewallのSuricataルールを用いる方法は、アウトバウンドトラフィックをNetwork Firewall経由でルーティングするインフラ変更が必要です。またVPC内のRoute 53 Resolverへの内部DNSクエリ(169.254.169.253宛)はNetwork Firewallを経由しないため、内部DNSクエリの完全なキャプチャが困難です。