ハウテレビジョン技術ブログ

『外資就活ドットコム』『外資就活ネクスト』『mond』を開発している株式会社ハウテレビジョンの技術ブログです。

【開発Days vol.4】AWS セキュリティ新機能調査

外資就活ドットコム・外資就活ネクストの、インフラや開発環境の改善などプラットフォームエンジニアリングをしている Product Engineering チームです。

前回の開発 Days ではセキュリティの棚卸しをおこないました。

howtv.hatenablog.com

その後、重要度の高いものから以下のような 15 件ほどの対応をおこないました。

  • 不要な IAM ユーザー、ロールの削除、または権限の最小化
  • 認証情報の保存方法の見直し
  • 不要なポート公開の削除
  • 脆弱なプロトコルの廃止
  • ランタイムの最新化
  • 開発環境へのアクセス制御の見直し
  • 通知の強化

今後も継続的に監視、改善を進めていくにあたり、昨今は特に AI を活用して効果的にチェックするサービスが出てきているため、それらのサービスの検討をおこなうことにしました。

調査した機能

調査した中で気になったものを簡単に紹介したいと思います。

AWS Security Hub (Advanced)

aws.amazon.com

AWS Security Hub は各種セキュリティサービスから収集した情報を元に一元管理する統合セキュリティソリューションとして生まれ変わったとのこと。従来の Security Hub は Security Hub CSPM として、Security Hub 配下のいち機能へと再配置されました。

従来と同様の GuardDuty (脅威検知)、Inspector (脆弱性検出) といった個々のセキュリティ機能のダッシュボード化に加えて、それら集約したデータを総合的に判断して潜在的なセキュリティ上の問題(Exposure) を検出してくれるようです。個々のセキュリティ機能による検出結果は細部にわたり実際には問題ないと判断できるものも多かったりして、その判断が負担になることもありますが、この機能により優先度の高い項目を重点的に対処できることを期待します。

また新しい Security Hub に移行することで、料金も個別の機能ごとではなく統合された形で計算されるようになります。コストを一概に比較することはできませんが、「各機能によるチェック回数」から「チェック対象のリソースの数」が単位となったため、分かりやすくなったと言えるでしょう。

コストは平均して微増となりそうな感じではありますが、しばらく使用してコストや使用感などを見ながら活用していきたいと思います。

AWS Security Agent (Preview)

aws.amazon.com

アプリケーションのセキュリティを強化するための開発ツール群といった位置づけです。以下の機能があります。

  • 設計書レビュー: ドキュメントをアップロードすることでセキュリティ観点のレビューをおこなう。
  • コードレビュー: GitHub と連携して PR をレビューします。
  • ペネトレーションテスト: 簡単なペネトレーション(侵入)テストをおこない、脆弱性を検出します。

設計書レビューはちょうど良い設計書がなく日本語が通るかどうかも分からなかったので試せていません。

コードレビューを使用するにはデフォルトで設定されているマネージドのセキュリティ要件ではなくカスタムのセキュリティ要件を設定する必要があるようなので、ひとまずマネージドのセキュリティ要件をそのままコピーして設定してみました。GitHub との統合を設定すると、対象のリポジトリで PR が開かれると自動的にレビューコメントが返信されます。コメントは現状英語ですが、単純な指摘だけでなく「どう重要なのか?」「どう修正すべきか?」といったセキュリティの理解を助けるコメントも含まれるため、かなり有用な気がします。機能の開発者はセキュリティまで頭が回らないことも多いので、レビュー時にセキュリティ観点でのフィードバックを常時得られるのはありがたいですね。

ペネトレーションテストは既存のサービスで試したかったところですが IP 制限をかけているため試すことはできませんでした。サポートに確認したところ Security Agent からのアクセスは User-Agent ヘッダに securityagent が設定されているようなので、WAF であればこれを許可すれば良いとのことです。(未確認)

また、複数の AWS アカウントで AWS Security Agent を有効にして同一の GitHub Organization と連携することはできないようでした。基本的にはどこか代表の AWS アカウントで設定する使い方が想定されているようです。

現在プレビュー期間で N. Virginia リージョン (us-east-1)、英語のみのようです。今のところ無料で使用できますが、料金は未定です。サービスの精度もこれから強化されていくと思われますし、期待したいと思います。

AWS Backup

ランサムウェアで AWS アカウントごと乗っ取られてアクセス不能になった場合にもバックアップへのアクセスや復元を可能にするため、AWS アカウントから独立したバックアップ先として Logically Air-Gapped Vault という機能が以前からありました。ただこれまでは通常のバックアップに加えて二次的な保存先としての利用が前提だったため追加のコストがかかるものでしたが、直接 Logically Air-Gapped Vault のみにバックアップできるアップデートがありました。

docs.aws.amazon.com

とはいえ直接バックアップできるリソースはまだ限定的で、また 通常の Vault よりは複雑な復元設定が必要になるので、単純に切り替えれば良いだけでもなさそうです。ランサムウェアによる被害は昨今増えているようなので、ぜひ対応しておきたいところです。

追記) 直接バックアップができるようになったものの、通常の Vault へのバックアップは必須であり、Logically Air-Gapped Vault だけにバックアップする設定はできなそうでした。両方にバックアップして通常の Vault のバックアップは削除するということをすればコスト削減はできそうですが、ちょっと面倒くさいですね・・

最後に

今回は AWS サービスのセキュリティ関係のアップデートを中心に調査しました。セキュリティ対策に完成は存在しません。どのレベルまで防御する必要があり、どこまでコストをかけることができるかを見極めて対策していく必要があります。

これからもアップデートを注視し、効率的なセキュリティ対策を講じていきたいと思います。

弊社では、一緒に技術的な課題に取り組んでくれるエンジニアを募集中です!

現在募集中の採用情報の詳細は下記をご覧ください。

herp.careers