久しぶりにテンション上がるニュースが出たので野次馬的にまとめていきます。
AWS Network Firewallについてです。
機能まとめ
- 保護対象サブネット→NAT→firewall専用サブネット→インターネットゲートウェイというトラフィックを要求する
- fw専用サブネットを切るが、この専用サブネットはスキャン対象外であるため
- 内部はgwlbを経由してigwから外へ出るとある、ので、終端IPはNAT名義かも
- 実パケットを問答無用でフルで受け取るアーキテクチャであり、ステートレスルール以外の処理はパケットをまとめてL7レイヤ的なチェックが確定なので、Firewallが通信遅延につながる可能性は高い。そもそもホップも増えるし。
- firewallは建てるだけで月3万、トラフィックは0.06$/1gbと割と安い。内部的に依存しているgwlbの料金は不明…タダなのか?
- ただしfirewallを建てる代わりに建てたNATの料金は免除される、なのでNAT前提でネットワーク組み立てていたなら実質firewall代はタダ(ということを言いたいのだろう)
- ログは取るが実パケットまでは取らないので後からパケット解析とかはできない。どうせフルで送りつけるならパケットも取りだせるようにして欲しかった。。
- VPCピアリング上の通信はスキャン対象外。
- 東京リージョンはまだなし
感想
- マネコンからルールを触っていくのみで個々のログからどうアクションするかの機能は備わっていない。つまり今すぐドロップするぞというユースケースにおける流れは、①まずログをs3とかcloudwatchから見て(見れるようにしておいて)、②意思決定して、③ルール追加、という感じになる。
- ドメインルールにhttp/httpsしかないのがちょっとだけ不満、dns/udpを入れてほしかった。。まぁsuricata/snortのIPSルールで実現はできるが。
- 料金はあまり問題にならない、ので大部分のウェブ系のシステムに今すぐ入れるべき。ただ問答無用で全てのトラフィック、パケットが課金対象に計上されるのであらかじめ画像データやストリーミング処理を行う通信領域はルートを別に用意してそちらに向けるなどの工夫があったほうがよさそう。ただこれはマネージドを積極採用しないと実現が難しい気がする、ec2を建てた時点でそれがどんなサーバであれ侵入リスクを考えればトラフィックを監視したい動機が生まれるので。
- fargateなどマネジメントレスなサーバは導入優先度がやや落ちる、つか別にいらないかも。侵入されない前提である程度は考えて良いので、NIPSの要求はそもそもそれほど高くない。それよりは、コンテナのスキャンやらIAMクレデンシャル管理とかのほうが相対的に重要。
- パートナーシップが異様に多い、おそらくモニタリングインターフェースはsumo datadog、今後増えるであろうプリセットポリシーの品質はcloudstrike trendmicroに任せたい、業界として協力体制を取っていくぞという意思表示だろうと思われる
ホスト型との性能差を考える
Network Firewallは包括的
- 原則全てのパケットが通るので漏れはなく、L7のラインでチェックできるので表現力も高く、サーバーの種類に限らずVPC内なら補足するので網羅性も高い。
- 作成したポリシーを使い回しできるので管理がしやすい。
ホスト型NIDS/NIPSは不要となるか?
- ホスト型の場合はkernelもしくは近い位置で処理するので制御がしやすく、また無駄なトラフィックは発生しないように調整できる。
- パケットを保存、解析をしたい場合はNetwork Firewallでは対応できないので、別途ホストにツールを入れるなどの工夫が必要。
- AntiMalwareやRootkitCheckerは、やらないよりはやったほうがいいのは変わらないので、なんらかのホスト型エージェントは引き続き利用継続となる。
通信遅延はどれくらいか?
- 是非計測してみたい。仕組み的にレイテンシがシビアな部分では導入しづらい可能性がある。
- ステートフルルールを採用している場合もれなくパケットグループ化が発生するかも?ルールチェックをするためにはグループ化させないといけないので、Firewallを採用する場合はやはりもれなくこの影響を受けそう。
AWSネットワーク構成の難易度
- NATやsubnetが増えることにはなるが、導入は難しくない。EC2建ててるウェブサービスはだいたい入れといて間違いない。
- 圧倒的に簡単というわけではないので、マジョリティに普及させるにはもはや自動で勝手に有効化とかさせるほうがいい。というかIT業界全体のためにも強制有効化してほしい。
- VPCトラフィックミラーリングを使えばホストマシンの外側でパケットも補足できる。が、専用に受け取り処理先を用意する必要はある(nlb->fargate->s3、など)。
おわりに
細かいところは気になりますがだいたいのウェブサービスはとりえあずこれ使っとけばいいんじゃないでしょうか。 最近攻撃も多いというかもはや侵入を防ぐという発想が時代遅れなのではという感があるほど攻撃手法が巧妙になってきている一方で、DNSトンネリングという最強攻撃がいまだ健在なため、こういったものが一層普及し、安心してウェブサービスを使える時代が来てほしいところです。
早く東京リージョンに来てくれることを願っています。