AWS - Lambda Persistence
Reading time: 3 minutes
tip
AWS 해킹 배우기 및 연습하기:HackTricks Training AWS Red Team Expert (ARTE)
GCP 해킹 배우기 및 연습하기: HackTricks Training GCP Red Team Expert (GRTE)
Azure 해킹 배우기 및 연습하기:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks 지원하기
- 구독 계획 확인하기!
- **💬 Discord 그룹 또는 텔레그램 그룹에 참여하거나 Twitter 🐦 @hacktricks_live를 팔로우하세요.
- HackTricks 및 HackTricks Cloud 깃허브 리포지토리에 PR을 제출하여 해킹 트릭을 공유하세요.
Lambda
자세한 정보는 다음을 확인하세요:
Lambda Layer Persistence
람다가 은밀하게 실행될 때 임의 코드를 실행하기 위해 레이어를 도입/백도어하는 것이 가능합니다:
AWS - Lambda Layers Persistence
Lambda Extension Persistence
Lambda Layers를 악용하여 확장을 악용하고 람다에 지속적으로 존재할 수 있으며 요청을 훔치고 수정할 수도 있습니다.
AWS - Abusing Lambda Extensions
Via resource policies
외부 계정에 대해 다양한 람다 작업(예: 호출 또는 코드 업데이트)에 대한 액세스를 부여할 수 있습니다:
.png)
Versions, Aliases & Weights
람다는 다양한 버전(각 버전마다 다른 코드)을 가질 수 있습니다.
그런 다음, 다양한 버전의 람다에 대해 다양한 별칭을 생성하고 각 별칭에 대해 다른 가중치를 설정할 수 있습니다.
이렇게 하면 공격자는 백도어가 있는 버전 1과 정상 코드만 있는 버전 2를 생성하고 1%의 요청에서만 버전 1을 실행하여 은밀함을 유지할 수 있습니다.
.png)
Version Backdoor + API Gateway
- Lambda의 원본 코드를 복사합니다.
- 원본 코드를 백도어하는 새로운 버전을 생성합니다(또는 악성 코드만 포함). 해당 버전을 게시하고 $LATEST에 배포합니다.
- 코드를 실행하기 위해 람다와 관련된 API 게이트웨이를 호출합니다.
- 원본 코드로 새로운 버전을 생성, 게시하고 해당 버전을 $LATEST에 배포합니다.
- 이렇게 하면 이전 버전에서 백도어 코드가 숨겨집니다.
- API Gateway로 이동하여 새 POST 메서드(또는 다른 메서드 선택)를 생성하여 람다의 백도어 버전을 실행합니다:
arn:aws:lambda:us-east-1:<acc_id>:function:<func_name>:1
- 최종 :1의 arn은 함수의 버전을 나타냅니다(이 시나리오에서 버전 1은 백도어가 있는 것입니다).
- 생성된 POST 메서드를 선택하고 작업에서 **
API 배포
**를 선택합니다. - 이제 POST를 통해 함수를 호출하면 백도어가 호출됩니다.
Cron/Event actuator
무언가가 발생하거나 시간이 경과할 때 람다 함수를 실행할 수 있다는 사실은 람다를 지속성을 얻고 탐지를 피하는 좋은 방법으로 만듭니다.
여기 AWS에서 은밀하게 존재하기 위해 람다를 생성하는 몇 가지 아이디어가 있습니다.
- 새로운 사용자가 생성될 때마다 람다가 새로운 사용자 키를 생성하고 공격자에게 전송합니다.
- 새로운 역할이 생성될 때마다 람다가 손상된 사용자에게 역할 수임 권한을 부여합니다.
- 새로운 cloudtrail 로그가 생성될 때마다 삭제/변경합니다.
tip
AWS 해킹 배우기 및 연습하기:HackTricks Training AWS Red Team Expert (ARTE)
GCP 해킹 배우기 및 연습하기: HackTricks Training GCP Red Team Expert (GRTE)
Azure 해킹 배우기 및 연습하기:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks 지원하기
- 구독 계획 확인하기!
- **💬 Discord 그룹 또는 텔레그램 그룹에 참여하거나 Twitter 🐦 @hacktricks_live를 팔로우하세요.
- HackTricks 및 HackTricks Cloud 깃허브 리포지토리에 PR을 제출하여 해킹 트릭을 공유하세요.