TORIPIYO DIARY

recent events, IoT, programming, security topics

AWS SecurityHubのFindings一覧をCSVファイルに書き出す

AWSの設定についてセキュリティ診断をするときに、SecurityHubのFindings情報を参考にすることがよくあります。

AWSのコンソールからもFindingsの情報は一覧で確認できるのですが、対応状況をメモしたり、特定の情報でフィルタやソートをしたりと、SpreadSheetに吐き出すとこれはこれで便利なので、SecurityHubのFindings情報をCSVファイルに書き出すRubyスクリプトを作りました。

  • Aws::SecurityHub::Client.new(profile: aws_profile_name)のところで、利用したいAWSのプロファイルを指定します。
  • filters のところで、Findingsを取得するときの検索条件を指定します。
  • get_findingsで返却されるresponseは、pageableなresponseなので、response.next_tokenの評価が真の間、繰り返しリクエストを投げます。
  • CSVファイルには、スクリプトを実行したときの時刻がファイル名に入るようにしています。

gist.github.com