AWS アカウントの不正なアクティビティに気付いた場合、どうすればよいですか?
最終更新日: 2021 年 1 月 19 日
AWS マネジメントコンソールで作成した覚えのないリソースが表示されます。
- または -
AWS のリソースまたはアカウントが不正アクセスされた可能性があるという通知を受け取りました。どうすればよいですか?
簡単な説明
AWS アカウントで不正なアクティビティを発見した場合、または権限のない第三者がアカウントにアクセスしたと思われる場合は、次の操作を行います。
- AWS アカウントルートユーザーのパスワードの変更
- すべてのルートと AWS Identity and Access Management (IAM) アクセスキーを更新および削除します。
- 許可されていない可能性があるすべての IAM ユーザーを削除し、その他すべての IAM ユーザーのパスワードを変更します。
- Amazon Elastic Compute Cloud (Amazon EC2) インスタンスと AMI、Amazon Elastic Block Store (Amazon EBS) ボリュームとスナップショット、および IAM ユーザーなど、作成していないアカウントのリソースをすべて削除します。
- ルートユーザーおよびコンソールアクセス権を持つすべての IAM ユーザーで、Multi-Factor Authentication (MFA) を有効にします。MFA を有効にすると、アカウントを保護し、不正なユーザーがセキュリティトークンなしでアカウントにログインするのを防ぐことができます。
- AWS サポートセンターを通じて、AWS サポートから受け取った通知に応答してください。
解決方法
AWS アカウントのルートユーザーパスワード、および IAM ユーザーパスワードを変更する
アカウントの不正使用を避けるためのベストプラクティスは、パスワードを定期的に変更することです。
AWS アカウントのルートユーザーパスワードを変更するには、AWS アカウントのルートユーザーのパスワードの変更をご参照ください。
IAM ユーザーのパスワードを変更するには、IAM ユーザーのパスワードの管理をご参照ください。
詳細については、セキュリティ、ID、およびコンプライアンスのベストプラクティスを参照してください。AWS のサービスに固有のセキュリティドキュメントについては、AWS セキュリティドキュメントをご参照ください。
すべての AWS アクセスキーを更新および削除する
AWS IAM Access Analyzer を使用して、アプリケーションが現在アクセスキーを使用しているかどうかを確認します。
アプリケーションが、現在アクセスキーを使用している場合、そのキーを新しいキーに置き換えます。
- まず、2 つ目のキーを作成します。次に、新しいキーを使用するようにアプリケーションを変更します。
- 1 つ目のキーを無効にします (ただし、削除しないでください)。
- アプリケーションに問題がある場合は、一時的にキーを再アクティブ化してください。アプリケーションが完全に機能し、1 つ目のキーが無効な状態である場合は、1 つ目のキーを削除します。
- 作成していない IAM ユーザーを削除します。
アプリケーションで使用しなくなったアクセスキーを削除できます。
- 不要になった、または作成しなかった AWS アカウントのルートユーザーアクセスキーを削除します。
- 独自の IAM ユーザーアクセスキーまたは別の IAM ユーザーのアクセスキーを削除するには、IAM ユーザーのアクセスキーを管理するをご参照ください。
アカウントパスワードを処理するのと同じ方法で、AWS アクセスキーを処理します。
- 知らない人や信頼できない人にはアクセスキーを提供しないでください。
- 公開ウェブサイトやコードリポジトリにアクセスキーを公開しないでください。
- AWS アクセスキーを使用または管理するときは、ベストプラクティスに従ってください。
リソースを作成した IAM ユーザーの決定およびアクセスの制限の説明については、AWS アカウントを使用して異常なリソースアクティビティをトラブルシューティングするにはどうすればよいですか? をご参照ください。
許可されていない可能性がある IAM ユーザーの認証情報を更新する
認識されない、または許可されていないリソースを削除する
AWS アカウントにサインインし、アカウントのすべてのリソースが起動したリソースであることを確認してください。AWS リソースを起動したことがないリージョンも含め、すべての AWS リージョンを必ず確認してください。特に、次の点に注意してください。
- EC2 インスタンスおよび AMI。これらは停止状態のインスタンスを含みます。
- EBS ボリュームおよびスナップショット
- AWS Lambda 関数とレイヤー
Lambda 関数とレイヤーを削除するには、以下を実行します。
- Lambda コンソールを開きます。
- ナビゲーションペインで [Functions] を選択します。
- 削除する関数を選択します。
- [アクション] で、[削除] を選択します。
- ナビゲーションペインで [Layers] を選択します。
- 削除したいレイヤーを選択します。
- [Delete] (削除) をクリックします。
特定の AWS のサービスに関連付けられているリソースを削除する方法については、AWS アカウントを解約する前にすべてのリソースを終了する方法を教えてくださいをご参照ください。
MFA を有効にする
セキュリティを強化するには、AWS リソースを保護するために MFA を設定するのがベストプラクティスです。IAM ユーザーまたは AWS アカウントのルートユーザーについて MFA を有効にできます。ルートユーザーについて MFA を有効にすると、ルートユーザーの認証情報にのみ影響します。アカウント内の IAM ユーザーは、独自の認証情報を持つ個別の ID であり、各 ID には独自の MFA 設定があります。
詳細については、仮想 Multi-Factor Authentication (MFA) デバイス (コンソール) の有効化をご参照ください。
AWS サポートに問い合わせる
アカウントに関する通知を AWS から受け取った場合は、AWS サポートセンターにサインインし、通知に応答してください。
ご自身のアカウントにサインインできない場合、お問い合わせフォームを利用して、AWS サポートからの支援をリクエストしてください。
ご質問やご不明な点がある場合は、AWS サポートセンターで新しい AWS サポートケースを作成してください。
注: AWS アクセスキー、パスワード、クレジットカード情報などの機密情報は記載しないでください。
AWS Git プロジェクトを使用して、不正使用の証拠をスキャンする
AWS では、アカウントを保護するためにインストールできる Git プロジェクトを提供しています。
- Git Secrets は、マージ、コミット、コミットメッセージをスキャンして、秘密情報 (アクセスキー) を探します。Git Secrets が禁止された正規表現を検出した場合、それらのコミットが公開リポジトリに投稿されるのを拒否することができます。
- AWS Step Functions および AWS Lambda を使用して、AWS Health から、または Trusted Advisorで、Amazon CloudWatch Events を生成します。アクセスキーが公開されているという証拠がある場合、プロジェクトは、イベントの検出、記録、および軽減に役立ちます。
日常的な操作にルートユーザーを使用しないようにする
AWS アカウントのルートユーザーのアクセスキーにより、請求情報を含むすべての AWS リソースに完全にアクセスできるようになります。AWS アカウントのルートユーザーアクセスキーに関連付けられたアクセス許可を減らすことはできません。絶対に必要な場合を除き、ルートユーザーアクセスを使用しないことがベストプラクティスです。
AWS アカウントのルートユーザーのアクセスキーをまだ持っていない場合は、絶対に必要でない限り作成しないでください。代わりに、管理者アクセス許可を持つ IAM ユーザーを自分用に作成します。AWS アカウントのメールアドレスとパスワードを使用して AWS マネジメントコンソールにサインインし、IAM ユーザーを作成できます。
詳細については、AWS アカウントのルートユーザーアクセスキーをロックするをご参照ください。
AWS セキュリティのベストプラクティスに従う
アカウントとそのリソースを保護する際に考慮すべきベストプラクティスの詳細については、自分の AWS アカウントとそのリソースをセキュアにするためのベストプラクティスについて教えてくださいをご参照ください。 ただし、これらのベストプラクティスのいくつかは、お客様の環境について適切でないか、または十分ではない場合があります。これらのセキュリティのベストプラクティスは、完全なセキュリティソリューションではなく、一般的なガイドラインとして考慮する必要があります。