AHSS 스터디 2주차에서는 IAM 취약점에 대해 진행한 학습 내용을 글로 정리했습니다. 주 내용은 IMDSv1(인스턴스 메타데이터 서비스)의 취약점을 이용해서 IAM 권한을 취득하는 실습입니다.
테스트를 위해 Webserver와 Attacker ec2를 준비했습니다.
Webserver의 Public IP에 접근하면 아래와 같이 WebShell 실행이 확인됩니다.
리눅스 CLI 입력 및 실행이 가능합니다.
이제 EC2의 인스턴스 메타데이터를 확인합니다.
아래와 같이 인스턴스 메타데이터 주소를 입력하면 EC2를 구성하거나 관리하는데 사용하는 인스턴스 데이터 확인이 가능합니다.
그리고 아래와 같이 EC2에 부여한 Role에 대한 확인도 가능합니다.
공격자가 위의 EC2 Role에 대한 사용이 가능한지 확인해 보겠습니다.
아래와 같이 해당 정보를 활용하여 권한 활용이 가능합니다.
아래와 같이 IMDSv2를 필수로 변경해 보겠습니다.
간단한 설정 변경을 통해 이전에서는 확인되는 권한이 설정 변경으로 확인되지 않는 것이 확인됩니다.
클라우드 환경에서 IAM 권한은 쉽게 사용이 가능하지만 관리가 잘못되면 위험합니다.
그렇기 때문에 보안 업데이트나 설정에 대해 관심이 필요하며, 권한을 부여한 대상에 대한 관리 추적이 항상 필요합니다.