AWS 계정에서 무단 활동이 발견되면 어떻게 해야 합니까?

최종 업데이트 날짜: 2020년 8월 3일

AWS Management Console에 내가 생성한 기억이 없는 리소스가 있습니다.

-또는-

AWS 리소스 또는 계정이 침해되었을 수 있다는 알림을 받았습니다. 어떻게 해야 합니까?

간략한 설명

AWS 계정 내에서 무단 활동이 관찰되거나 승인되지 않은 사용자가 계정에 액세스했다고 판단되는 경우 다음을 수행합니다.

해결 방법

AWS 계정 루트 사용자 암호와 모든 IAM 사용자 암호 변경

계정의 무단 사용을 방지하기 위해 정기적으로 암호를 변경하는 것이 가장 좋습니다.

AWS 계정 루트 사용자 암호를 변경하려면 AWS 계정 루트 사용자 암호 변경을 참조하십시오.

IAM 사용자의 암호를 변경하려면 IAM 사용자의 암호 관리를 참조하십시오.

자세한 내용은 보안, ID 및 규정 준수에 대한 모범 사례(Best practices for security, identity and compliance)를 참조하십시오. AWS 서비스와 관련된 보안 설명서는 AWS 보안 설명서를 참조하십시오.

계정 및 해당 리소스를 보호할 때 고려해야 할 모범 사례에 대한 자세한 내용은 AWS 계정과 리소스를 보호하기 위한 모범 사례는 무엇입니까?를 참조하십시오.

모든 AWS 액세스 키 교체 및 삭제

더 이상 필요하지 않거나 생성하지 않은 AWS 액세스 키를 찾은 경우 액세스 키를 삭제합니다.

애플리케이션에서 현재 액세스 키를 사용하는 경우 키를 새 키로 바꿉니다.

  1. 먼저 두 번째 키를 생성합니다. 그런 다음 새 키를 사용하도록 애플리케이션을 수정합니다.
  2. 첫 번째 키를 비활성화합니다(삭제하지는 않음).
  3. 애플리케이션에 문제가 있는 경우 키를 일시적으로 다시 활성화합니다. 애플리케이션이 완전히 작동하고 첫 번째 키가 비활성화된 상태이면 첫 번째 키를 삭제합니다.
  4. 자신이 생성하지 않은 IAM 사용자를 삭제합니다.

AWS 액세스 키는 계정 암호를 처리하는 것과 동일한 방식으로 취급합니다.

리소스를 생성한 IAM 사용자를 확인하고 액세스를 제한하는 데 대한 지침은 AWS 계정에서 비정상적인 리소스 활동 관련 문제를 해결하려면 어떻게 해야 합니까?를 참조하십시오.

승인되지 않은 IAM 사용자 삭제

  1. IAM 콘솔을 엽니다.
  2. 탐색 창에서 사용자(Users)를 선택합니다.
  3. 목록에서 각 IAM 사용자를 선택한 다음 권한 정책(Permissions policies)에서 AWSExposedCredentialPolicy_DO_NOT_REMOVE라는 정책을 확인합니다. 사용자에게 이 정책이 연결되어 있는 경우 해당 사용자를 삭제해야 합니다.
  4. 자신이 생성하지 않은 IAM 사용자를 삭제합니다.
  5. 본인이 생성했고 계속 유지하려는 IAM 사용자의 경우 암호를 변경합니다.

인식할 수 없거나 승인되지 않은 리소스 삭제

AWS 계정에 로그인하고 해당 계정의 모든 리소스가 자신이 시작한 리소스인지 확인합니다. 자신이 AWS 리소스를 시작한 적이 없는 리전을 포함해서 모든 AWS 리전을 확인해야 합니다. 다음 사항에 특히 주의하십시오.

Lambda 함수 및 계층을 삭제하려면 다음을 수행하십시오.

  1. Lambda 콘솔을 엽니다.
  2. 탐색 창에서 [함수]를 선택합니다.
  3. 삭제할 함수를 선택합니다.
  4. [작업]에서 [삭제]를 선택합니다.
  5. 탐색 창에서 [계층]을 선택합니다.
  6. 삭제할 계층을 선택합니다.
  7. 삭제(Delete)를 선택합니다.

특정 AWS 서비스와 연결된 리소스를 삭제하는 방법에 대한 자세한 내용은 AWS 계정을 해지하기 전에 내 리소스를 모두 종료하려면 어떻게 해야 합니까?를 참조하십시오.

AWS Support에 문의

AWS에서 계정에 대한 알림을 보낸 경우 AWS 지원 센터에 로그인한 다음, 알림에 응답합니다.

계정에 로그인할 수 없는 경우 문의처(Contact Us) 양식을 사용하여 AWS Support의 도움을 요청합니다.

질문이나 우려 사항이 있는 경우 AWS 지원 센터에서 새로운 AWS Support 사례를 생성합니다.

참고: AWS 액세스 키, 암호 또는 신용카드 정보 등 민감한 정보는 통신에 포함하지 마십시오.

AWS Git 프로젝트를 사용하여 무단 사용 증거 스캔

AWS에서는 계정을 보호하는 데 도움이 되도록 설치 가능한 Git 프로젝트를 제공합니다.

  • Git Secrets는 병합, 커밋 및 커밋 메시지를 스캔하여 보안 정보(즉, 액세스 키)를 확인할 수 있습니다. Git Secrets가 금지된 정규식을 감지하면 해당 커밋이 퍼블릭 리포지토리에 게시되지 않도록 거부할 수 있습니다.
  • AWS Step Functions 및 AWS Lambda를 사용하여 AWS Health 또는 Trusted Advisor에서 Amazon CloudWatch Events를 생성합니다. 액세스 키가 노출되었다는 증거가 있는 경우 프로젝트를 통해 이벤트를 자동으로 감지, 로깅 및 완화할 수 있습니다.