본문 바로가기

Personal/Cloud

CloudGoat 실습 - vulnerable_lambda

이번에는 vulnerable_lambda 시나리오를 실습했다.

 

먼저 시나리오를 create한다.

생성된 시나리오 경로로 이동해 start.txt를 읽어준다.

bilbo라는 user가 있는 것을 확인할 수 있다. 위에서 찾은 정보들로 프로필을 등록해주자.

다음으로 bilbo의 arn과 username을 더 자세히 확인해준다.

연결된 정책 이름을 확인해준다.

이름 맨 마지막이 assumer인 것을 보아 또 assume role을 가지고 있을 것으로 예상된다.

더 자세히 어떤 권한이 허용되어 있는지 확인하자.

이번에는 해당 계정에 어떤 역할들이 있는지 grep을 통해 검색해준다. cloudgoat의 리소스들은 보통 cg-라는 이름으로 시작하므로 cg-를 키워드로 검색한다.

3개 정도 검색이 됐는데 일단 cg-lambda-invoker~ 이라는 역할이 수상하다. 어떤 정책이 연결되어 있는지 확인하자.

lambda-invoker라는 정책이 연결되어 있는 것 같다. 람다함수를 호출할 수 있는 정책인 걸로 예상이 된다.

assume role로 역할을 가정하여 임시 자격증명을 획득해준다.

 

계속 아래의 명령어가 안 돼서 문제가 무엇인지 찾아봤는데, us-east-1으로 default region name을 프로필을 등록할 때 설정했어야 했다.

 

직접 ~/.aws/credentials 파일을 gedit으로 열어준 뒤 프로필을 등록해준다.

어떤 lambda 함수들이 mysession이라는 프로필에 있는지 확인해준다.

vulnerable_lambda_cgidud~_lambda1이라는 함수가 있다는 것을 알 수 있었다. 이 함수에 어떤 코드가 있는지

다운 받는 링크를 얻어보자.

위의 Location에 나온 링크로 접속을 하면 lambda 함수의 코드를 그대로 다운로드 받을 수 있다.

위의 압축된 폴더를 다운받았고 압축을 풀어서 내용을 확인해봤다.

파일들이 여러 개 있고, 이 중 어떤 파일의 코드는 취약할 것이다.

lambda 함수에서 터지는 sql injection 공격을 날려야 하는데, 오류가 나서 해결해야 한다.

'Personal > Cloud' 카테고리의 다른 글

CloudGoat 실습 - sqs_flag_shop  (0) 2024.04.16
CloudGoat 실습 - iam_privesc_by_key_rotation  (0) 2024.04.02
CloudGoat 실습 - lambda_privesc  (1) 2024.03.19
CloudGoat 실습 - iam_privesc_by_rollback  (1) 2024.03.12
AWS SAA 공부 3일차  (0) 2024.01.11