본문 바로가기

자격증/AWS Certified Security - Specialty

[AWS SCS] IAM 역할의 임시 자격 증명 철회하기

728x90
반응형

AWS 환경에서 IAM 역할의 임시 자격 증명(Temporary Credentials)이 유출되었을 경우, 공격자가 해당 자격 증명을 사용해 악의적인 행동을 할 수 있습니다. 이를 방지하기 위해, 자격 증명을 신속히 철회하여 보안을 강화할 수 있는 방법을 알아보겠습니다.


IAM 역할 세션과 보안 위험

IAM 역할을 사용하면 임시 자격 증명을 통해 AWS 리소스에 접근할 수 있습니다. 그러나 세션이 길거나(예: 12시간), 자격 증명이 유출되었을 경우 보안 사고로 이어질 위험이 존재합니다.
노출된 자격 증명은 만료되기 전까지 유효하기 때문에, 공격자가 이를 악용할 가능성이 있습니다.


임시 자격 증명 철회 방법

AWS에서는 AWSRevokeOlderSessions Policy를 활용해 임시 자격 증명을 철회할 수 있습니다. 이 정책은 IAM 역할에 DateLessThan 조건을 사용하여 다음과 같은 동작을 수행합니다:

  1. 조건부 거부 설정:
    • 자격 증명 발급 시간이 현재보다 이전인 경우, 모든 작업을 거부합니다.
    • 이로 인해, 유출된 자격 증명을 가진 사용자는 더 이상 AWS 리소스에 접근할 수 없게 됩니다.
  2. 재인증 요구:
    • 새로운 세션을 시작하거나, 새로운 자격 증명을 발급받아야 합니다.

구체적인 동작 방식

  1. 관리자가 AWSRevokeOlderSessions Policy를 IAM 역할에 연결합니다.
  2. 해당 정책은 DateLessThan 조건을 사용하여, 특정 시점 이전에 발급된 모든 자격 증명에 대해 **명시적 거부(Deny)**를 적용합니다.
  3. 발급 시간이 더 이후인 새로운 자격 증명은 정상적으로 사용 가능하며, 기존 세션만 영향을 받습니다.
  4. 정책 연결 후 공격자는 유출된 자격 증명을 사용할 수 없게 됩니다.

정책 예시

다음은 AWSRevokeOlderSessions Policy에 적용될 수 있는 정책의 예시입니다:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Deny",
      "Action": "*",
      "Resource": "*",
      "Condition": {
        "DateLessThan": {
          "aws:TokenIssueTime": "2024-12-21T12:00:00Z"
        }
      }
    }
  ]
}
  • 이 정책은 2024년 12월 21일 12시 이전에 발급된 자격 증명에 대해 모든 액션을 거부합니다.

주의사항

  • 정책 삭제 필요 없음:
    AWSRevokeOlderSessions Policy는 영구적으로 연결해도 새로운 자격 증명에는 영향을 미치지 않습니다.
  • 긴급 상황 대응:
    자격 증명이 유출되었다고 의심되는 즉시 이 정책을 적용하면, 공격자의 접근을 신속히 차단할 수 있습니다.

결론

IAM 역할의 임시 자격 증명 철회는 AWS 환경에서 보안을 유지하는 중요한 방법입니다.
특히 AWSRevokeOlderSessions Policy를 사용하면 유출된 자격 증명을 즉각 차단하고, 향후 세션에 영향을 미치지 않으면서도 보안을 강화할 수 있습니다.

728x90
반응형