今回は、第18回Security-JAWSで講演させていただきました「CloudFrontを活用してアタックサーフェスを減らした対策を導入してみる。」の内容についてご紹介させていただきます。
以前、本ブログでもCloudFrontを利用してアタックサーフェース「攻撃対象領域」を削減する方法をご紹介しましたが多くの攻撃は無差別にスキャンを行い、脆弱性を検出したサイトに対して攻撃を仕掛けます。
攻撃者はIPアドレスやクラウドサービスで生成されたドメインに対して自動的にスキャンをかけます。クラウドサービスで生成されたドメインはIPアドレスをベースにある法則で生成したドメインであるため、簡単にサイトの存在を検出することができます。
例えばEC2のドメインは「ec2-xxx-xxx-xxx-xxx.ap-northeast-1.compute.amazonaws.com」となり、xxx-xxx-xxx-xxxはIPアドレスになりますので、EC2で利用されるIPアドレスの範囲に対してスキャンを実施することでサイトを検出することができます。
そのため、スキャナなどから検出されないように対策をとることは、攻撃をうけるリスクを大幅に減らすことができるため、CloudFrontを活用してサイトを囲い込んで、直接アクセスできないように設定することを推奨しています。
対策については以前ブログでご紹介しました以下の記事をご覧ください。
では実際にどのくらい効果があるか、対策をとったサイトと対策をとらなかったサイトにCyberNEOで攻撃を検出して可視化したレポートを見てみます。
↓はデモ動画です。
下の画面は対策をとっていないサイトのレポートになります。多くの送信元から攻撃されているのがわかります。このサイトはテストサイトとしてWordPressを立ち上げただけのサイトになります。誰も存在を知らないはずのサイトがスキャナで存在が確認され、wordpressの脆弱性やphpの脆弱性を検出するスキャンをかけてきています。
下の画面は、CloudFrontからだけアクセスを許可したサイトのレポートになります。一点だけ攻撃が検出されているのはサイバーマトリックスで攻撃を実施し念のため攻撃が検出されるか確認したイベントになります。それ以外は全くアクセスがないことがわかります。このサイト対策をとっていないサイトと異なり、直接IPではアクセスできないため検出されず、無差別な攻撃から守られているのがわかります。
セキュリティグループでCloudFrontのIPだけ許可しているため、直接EC2やALBを狙った攻撃をブロックしています。これはCyberNEOのCloudFront PassLimitの機能でCloudFrontmのIPが登録されたセキュリティグループを自動生成し、サイトにそのセキュリティグループを割り当てることで対策をとることができます。
今回、アタックサーフェスを減らすということでCloudFrontの例を上げましたが、狙われるポイントを減らすことでセキュリティを大幅に向上させることができますので、是非ご参考にしていただければと思います。
Comments