AWS

AWSでOSの脆弱性対策をする方法

今回はAWSで作成したEC2インスタンスのOSの脆弱性対策をする方法についてお話ししたいと思います。

なぜ、OSの脆弱性対策が必要か

突然ですが、AWSで作成したEC2インスタンスのパッケージアップデート行なっていますか?

まさか、EC2インスタンス起動して以来一度も行なっていないなんていうことはないですよね?

パッケージアップデートを定期的に行い、常に最新の状態に保つことは非常に大切です。

OSも人が作ったプログラムである以上、完璧ではないです。日々新しいバグが発見され、セキュリティホールとなっています。それを放置したままでいると不正アクセスや攻撃の被害にあってしまい、情報漏えいにつながってしまいます。

特にクレジットカード情報や個人情報など絶対に漏えいさせてはいけない重要な情報を保存するシステムでは特にこの点が重要になってきます。

クレジットカード業界のセキュリティ基準であるPCI DSS(Payment Card Industry Data Security Standard)でもその点が求められています。

私はAWSで利用するOSはAmazon Linuxが一番良いと思っています。

その理由は、Amazon自体が責任を持って脆弱性が無い状態に保っていてくれるパッケージを利用できるからです。もしOSSで提供されているパッケージでは不十分は場合にはAWSがパッチを作成したパッケージを提供してくれます。

また、Amazon Linux Security CenterというAmazon linuxの脆弱性の情報が一覧で見れる非常にわかりやすいページもあり、これも使い勝手がいいです。

Amazon Linux Security Center

日々の脆弱性対応は下記のような形で運用していきます

  • AWSに脆弱性スキャン実施の申請を行う
  • 脆弱性スキャンを定期的に行う
  • 脆弱性を確認し対応方法を決める
  • パッケージアップデートを行う

AWSに脆弱性スキャン実施の申請を行う

AWSでは常にプラットフォームの監視を行なっているため、勝手に脆弱性スキャンを行なってしまうと実際の攻撃と見なされてしまう場合があります。そのため、事前にAWSに申請を出す必要があります。

侵入テスト

脆弱性スキャンを定期的に行う

PCI DSSでは下記のように最低でも四半期に一回、脆弱性スキャンを行うことが求められています。

11.2 内部と外部ネットワークの脆弱性スキャンを少なくとも四半期に一度およびネットワークでの大幅な変更(新しいシステムコンポーネントのインストール、ネットワークトポロジの変更、ファイアウォール規則の変更、製品アップグレードなど)後に実行する。

PCIデータセキュリティ基準

脆弱性スキャンに使用するソフトは、私は使用したことがありませんが、AWSではAmazon InspectorというEC2にエージェントを入れて検査してくれるサービスもあるようです

Amazon Inspector

脆弱性を確認し対応方法を決める

脆弱性スキャンで発見された脆弱性のレポートの中には必ず「CVE-YYYY-XXXX」という番号が記載されていると思います。CVEとは、Common Vulnerabilities and Exposures(共通脆弱性識別子)で、MITREという会社が提供している脆弱性情報データベースで、脆弱性ごとにユニークな通し番号を発行してくれています。

例えば「CVE-2019-0001」は、2019年に発見された1番目の脆弱性、という意味になります。

この番号を使うことでこの脆弱性についての詳細や対応方法などの情報を調べることができます。

Amazon Linuxの場合には先ほどのAmazon Linux Security CenterでこのCVE-IDを使って検索をすることができます。

Amazon Linux Security Center

そしてALS-で始まるリンクをクリックして脆弱性の詳細を確認すると、どのパッケージのバージョンにアップグレードすればこの脆弱性がなくなるかという方法を確認することができます。

パッケージアップデートを行う

Amazon LinuxはRedhat に似ているOSでRedhatと同じyumコマンドでパッケージの管理を行うことができます。rootアカウントで下記のコマンドを使ってアップグレードします。

yum update (パッケージ名)

OSの脆弱性対策を日々行うこと

OSの脆弱性対策は地味な作業ですが、システムを安全に保つために非常に大切な作業です。日々対策をしていくことが重要です。

関連記事

  1. PCI DSSの12要件とAWSにおける対応方法

    AWS

    PCI DSSの12要件とAWSにおける対応方法

    今回は、AWSを使ってクレジットカード業界のセキュリティ基準であるPC…

  2. Amazon Linux2でOSS版tripwireを使って改ざん検知する方法

    AWS

    Amazon Linux2でOSS版tripwireを使って改ざん検知する方法

    改ざん検知はPCI DSSなどセキュリティを強化する際には、必ず必要に…

  3. AWSで安全なネットワーク設計を行うポイント

    AWS

    AWSで安全なネットワーク設計を行うポイント

    今回は、AWSにおいて安全なネットワーク設計を行いポイントについて…

  4. AWS

    AWSでコンプライアンスのための監査ログを取得する方法

    PCI DSSやIT内部統制などのコンプライアンスの観点でAWS上で監…

  5. AWS

    CloudFrontでLambda@Edgeを本番運用してわかった注意点

    CloudFrontでLambda@Edgeを一年間運用しまして、気づ…

  6. AWS

    CloudFormationを効果的に使うための6つのルール

    あなたはAWSでEC2を作成する時にAWSコンソールから作っていますか…

最近の記事

  1. webサイトをhttps化するメリットと注意点

    PCI DSS

    webサイトをhttps化するメリットと注意点
  2. PCI DSS準拠するためにAWSのセキュリティグループを使うためのポイント

    AWS

    PCI DSS準拠するためにAWSのセキュリティグループを使うためのポイント
  3. AWS

    AWSを利用してPCI DSS準拠のシステムを構築する3つのメリット
  4. AWSコンソール用の安全なユーザーの作成方法

    AWS

    AWSコンソール用の安全なユーザーの作成方法
  5. AWSで安全なネットワーク設計を行うポイント

    AWS

    AWSで安全なネットワーク設計を行うポイント
PAGE TOP