HackCert
Advanced 11 min read May 25, 2026

AWS Exploitation: ক্লাউড কনফিগারেশনের দুর্বলতা কাজে লাগিয়ে সার্ভার হ্যাকিং!

AWS environment-এর misconfiguration, IAM weakness, এবং SSRF-এর মাধ্যমে cloud compromise—offensive cloud security-এর গভীর বিশ্লেষণ।

Mahmuda Akter
Cloud Security Researcher
share
AWS Exploitation: ক্লাউড কনফিগারেশনের দুর্বলতা কাজে লাগিয়ে সার্ভার হ্যাকিং!
Overview

Amazon Web Services আজ বিশ্বের সবচেয়ে বড় cloud provider, এবং প্রায় প্রতিটি বড় enterprise কোনো না কোনোভাবে AWS infrastructure-এর উপর নির্ভরশীল। কিন্তু এই বিপুল adoption-এর সঙ্গে এসেছে নতুন ধরনের attack surface—যেখানে traditional on-premises security knowledge অপর্যাপ্ত। Capital One, Twilio, Uber, এবং বহু high-profile breach-এর মূলে ছিল AWS misconfiguration বা মিসhandled credential। অন্যদিকে, penetration tester এবং red teamer-দের জন্য AWS exploitation একটি rapidly evolving skill set যেখানে সাধারণ infrastructure pentesting দক্ষতা নতুন context-এ apply করতে হয়। এই নিবন্ধে আমরা AWS exploitation-এর core technique, common misconfiguration, এবং defensive perspective বিশ্লেষণ করব।

AWS Threat Model

AWS environment-এর threat model on-premises-এর চেয়ে fundamentally different। এখানে কয়েকটি unique aspect:

Shared Responsibility Model: AWS physical infrastructure, hypervisor, এবং managed service-এর underlying security নিশ্চিত করে। Customer responsibility holds for IAM configuration, data, application logic, এবং network configuration। বেশিরভাগ breach customer side থেকে।

Identity is the New Perimeter: Traditional network perimeter মূলত irrelevant। S3 bucket world-readable হলে কোনো firewall সাহায্য করবে না। IAM policy-ই primary control mechanism।

Programmable Infrastructure: Everything via API। যা automation enable করে, তা attacker-এর জন্যও সমানভাবে accessible। AWS-এ একটি leaked access key দিয়ে attacker সব কিছু programmatically explore এবং exploit করতে পারেন।

Service Variety: ২৫০-এর বেশি service, প্রতিটির own security model। S3-এর সঙ্গে EC2-এর সঙ্গে Lambda-এর security paradigm আলাদা। Mistake অনিবার্য।

Credential Discovery

Most AWS exploitation শুরু হয় credential discovery দিয়ে। AWS access key (AKIA-prefixed) এবং secret access key পেলে attacker সেই key-এর associated permission-এর সব access পান।

Public GitHub: Developer-রা সবচেয়ে common ভুল করেন—accidentally code-এ credential commit করে এবং push করে দেন। GitHub-এ automated bot ২৪/৭ scan করছে। GitHub-এর own secret scanning এবং AWS-এর automated quarantine থাকা সত্ত্বেও, প্রতিদিন credential leak হচ্ছে।

Pacu, TruffleHog, Gitleaks, AWS Secrets Manager Scanner—এসব tool GitHub repository, Docker image, এবং অন্যান্য source-এ credential খুঁজে।

SSRF via EC2 Instance Metadata Service (IMDSv1): Application-এ SSRF vulnerability থাকলে attacker http://169.254.169.254/latest/meta-data/iam/security-credentials/<role-name> access করে EC2 instance-এর IAM role-এর temporary credential পেতে পারেন। Capital One breach-এর core technique।

Configuration File Exposure: .aws/credentials, environment variable, CloudFormation template-এ hard-coded secret।

Application Logging: Verbose logging-এ accidentally credential log হয়ে যাওয়া।

Backup এবং Snapshot: Public EBS snapshot, public AMI—এসবে কখনো কখনো credential থাকে।

Phishing: Developer বা cloud administrator-কে target করে credential চুরি।

IAM Enumeration

Credential পাওয়ার পর attacker-এর প্রথম কাজ permission enumerate করা—অর্থাৎ এই credential দিয়ে কী কী করা যায় তা বের করা।

AWS CLI Basic:

aws sts get-caller-identity
aws iam list-attached-user-policies --user-name <username>
aws iam get-policy --policy-arn <arn>

Pacu: Rhino Security Labs-এর তৈরি AWS exploitation framework। Built-in module-গুলো IAM, EC2, S3, Lambda, CloudFormation—সব service-এ enumeration এবং exploitation automate করে।

enumerate-iam: Python script যা প্রতিটি AWS API call চেষ্টা করে দেখে কোনটা successful হয়। "Brute force" approach—কিন্তু কার্যকর।

ScoutSuite, Prowler, CloudSploit: Configuration assessment tool—সাধারণত defender-দের জন্য, কিন্তু attacker-ও recon-এ ব্যবহার করেন।

CloudTrail Avoidance: CloudTrail সব API call log করে। Sophisticated attacker non-logged API call ব্যবহার করেন (যেমন cross-region call, কিছু read operation যা by default logged না), অথবা CloudTrail disable করার চেষ্টা করেন।

IAM Privilege Escalation

AWS-এ privilege escalation traditional OS-এর মতো নয়—এখানে IAM permission-এর সূক্ষ্ম interaction exploit করা হয়। Rhino Security-এর research-এ ২১টি ভিন্ন AWS privilege escalation path documented।

iam:CreatePolicyVersion: যদি একটি user-এর iam:CreatePolicyVersion permission থাকে, তিনি একটি existing policy-এর নতুন version তৈরি করতে পারেন যেটি AdministratorAccess দেয়, তারপর iam:SetDefaultPolicyVersion দিয়ে সেটি default করেন।

iam:PassRole + lambda:CreateFunction + lambda:InvokeFunction: Attacker একটি Lambda function create করেন higher-privilege role pass করে এবং execute করেন।

iam:PassRole + ec2:RunInstances: Same concept—high-privilege role-এর সাথে EC2 instance launch।

iam:CreateAccessKey: অন্য user-এর জন্য access key create করার permission। Target হলো higher-privileged user।

iam:AttachUserPolicy / AttachRolePolicy: নিজেকে বা compromised role-কে additional policy attach।

SSM:SendCommand: যদি EC2 instance-এ SSM agent থাকে এবং attacker-এর ssm:SendCommand permission থাকে, তিনি সেই instance-এ arbitrary command run করতে পারেন।

STS:AssumeRole: Misconfigured trust relationship-এ অন্য account-এর কোনো role-এ assume করা।

প্রতিটি technique-এর জন্য Pacu-তে built-in module আছে। অর্থাৎ attacker-এর কাজ অনেকটাই automated।

S3 Bucket Exploitation

S3 misconfiguration cloud breach-এর সবচেয়ে কমন কারণ। Verizon, Accenture, Dow Jones, Booz Allen Hamilton—সবার breach-এ misconfigured S3 bucket implicated ছিল।

Public Read: s3:GetObject permission Everyone-কে দেওয়া। বহু sensitive data এভাবে public হয়ে যায়।

Public Write: আরো বিপজ্জনক—s3:PutObject Everyone-কে দেওয়া। Attacker malicious content upload করতে পারেন, যা original use-এ trust করা হয়।

Predictable Bucket Names: company-backup, company-prod, company-dev—এসব naming convention dictionary attack-এর সুযোগ দেয়। aws s3 ls s3://target-prod চেষ্টা করে public bucket discover করা।

Bucket Discovery Tools:

  • S3Scanner: Wordlist-based bucket discovery।
  • AWSBucketDump: Permutation-based enumeration।
  • GrayhatWarfare: Public S3 bucket-এর searchable database।

Bucket Takeover: Subdomain takeover-এর S3 variant—যেখানে CNAME একটি non-existent S3 bucket-কে point করে, attacker সেই bucket name register করে content control নিতে পারেন।

Cross-Account Bucket Access: ACL এবং bucket policy ভুলভাবে configure করলে অন্য account-এর user access পেতে পারেন।

EC2 Instance Compromise

EC2 instance compromise-এর কয়েকটি specific cloud-aware angle আছে।

IMDS Exploitation: Instance Metadata Service থেকে IAM role credential extract। যেমন আগে উল্লিখিত, IMDSv1-এ SSRF-এর মাধ্যমে credential চুরি সম্ভব। AWS-এর IMDSv2 (session token-based) এই attack vector অনেকাংশে close করেছে, কিন্তু বহু legacy instance এখনও IMDSv1 ব্যবহার করছে।

EBS Snapshot Theft: যদি ec2:CreateSnapshot permission থাকে, attacker target instance-এর EBS volume snapshot নিতে পারেন, তারপর সেই snapshot থেকে নতুন volume create করে নিজের instance-এ attach করে browse করতে পারেন।

AMI Sharing: Compromised account থেকে attacker-এর own account-এ AMI share—সব data সহ।

User Data: EC2 launch-এর সময় user data script-এ secret store করা একটি bad practice, কিন্তু common। ec2:DescribeInstanceAttribute দিয়ে এই data retrievable।

SSH Key Replacement: যদি ec2:CreateKeyPair এবং appropriate permission থাকে, attacker key pair replace করে instance-এ access পান।

Lambda Exploitation

Serverless computing-এর own security model আছে।

Function Permission Enumeration: Lambda function-এর execution role-এর permission examine করা।

Event Source Abuse: Lambda trigger (SQS, SNS, S3, API Gateway) এ malicious event inject।

Layer Manipulation: যদি attacker-এর lambda:PublishLayerVersion permission থাকে, তিনি malicious Lambda layer publish করতে পারেন যা existing function-এ included হলে code execution হয়।

Function Code Modification: lambda:UpdateFunctionCode দিয়ে existing function-এর code পরিবর্তন। Backdoor-যুক্ত version deploy।

Environment Variable Theft: lambda:GetFunctionConfiguration দিয়ে function-এর environment variable—যেখানে প্রায়ই secret থাকে—read।

CloudTrail এবং Logging Evasion

Sophisticated attacker logging avoid বা manipulate করার চেষ্টা করেন।

CloudTrail Disable: cloudtrail:StopLogging, cloudtrail:DeleteTrail permission থাকলে directly disable।

S3 Bucket Policy Manipulation: CloudTrail log যে bucket-এ যায়, সেই bucket-এর policy modify করে log delete বা manipulate।

Log Tampering: যদিও CloudTrail log-এ digest file দিয়ে integrity protect করা হয়, যদি attacker সঠিক permission পান এবং both log এবং digest manipulate করেন, detection difficult হতে পারে।

Cross-Region Activity: Region-specific CloudTrail enabled থাকলে attacker untracked region-এ operate করেন।

Service Without Direct Logging: কিছু service-এর granular logging নেই—এসব ব্যবহার preferred।

বাস্তব ঘটনার বিশ্লেষণ

Capital One (২০১৯): ১০০ মিলিয়ন customer record breach। Attacker Paige Thompson একটি misconfigured ModSecurity WAF-এর মাধ্যমে SSRF execute করে EC2 instance-এর IAM role credential extract করেছিল। সেই credential দিয়ে S3 bucket access করেছিল। CloudTrail log ছিল কিন্তু monitoring ছিল না।

Twilio (২০২২): Smishing-এর মাধ্যমে employee credential চুরি, তারপর internal AWS environment access। ১২৫টি customer affected। আবার MFA-এর crucial role-এর reminder।

Uber (২০১৬): Engineer-দের GitHub credential চুরি, যেখানে AWS access key embedded ছিল। ৫৭ মিলিয়ন user-এর data exposed।

TeamTNT Cryptomining Campaign: Misconfigured AWS account-এ entry পেয়ে massive EC2 instance spin up করে cryptocurrency mining। Pacu-এর modified version ব্যবহার।

Rad Madox-এর Capital One follow-up research: এই breach-এর পর কয়েক মাস ধরে Madox এবং অন্য researcher AWS metadata service exploitation-এর variant প্রকাশ করেছিলেন, যা IMDSv2-এর development-কে accelerate করেছিল।

Defensive Best Practices

Identity এবং Access:

  • Least Privilege Principle: কোনো user বা role-কে প্রয়োজনের বেশি permission না দেওয়া। AWS IAM Access Analyzer ব্যবহার করে over-permissive policy identify।
  • MFA Mandatory: সব IAM user-এর জন্য MFA, especially privileged role-এর জন্য।
  • Short-lived Credential: Long-lived access key-এর পরিবর্তে role assumption এবং STS temporary credential ব্যবহার।
  • Federation এবং SSO: AWS SSO বা federated identity দিয়ে centralized authentication।

Configuration Management:

  • CSPM Tools: Wiz, Prisma Cloud, AWS Security Hub continuous configuration monitoring।
  • Infrastructure as Code: Terraform, CloudFormation দিয়ে infrastructure define এবং version control।
  • AWS Config Rules: Automated compliance check।

Network Security:

  • VPC Endpoint: S3, DynamoDB-এর জন্য private connectivity, internet bypass।
  • Security Group: Strict ingress/egress rule।
  • WAF এবং Shield: Application-layer protection।

Logging এবং Monitoring:

  • CloudTrail: All regions, all events, encrypted, log validation enabled।
  • GuardDuty: AWS-এর native threat detection service।
  • VPC Flow Logs: Network traffic visibility।
  • CloudWatch Alarms: Critical event-এর জন্য alert।

Data Protection:

  • S3 Block Public Access: Account এবং bucket level enable।
  • Encryption at Rest: KMS-managed key দিয়ে।
  • Encryption in Transit: TLS everywhere।
  • Macie: Sensitive data discovery in S3।
Key Takeaways

AWS exploitation একটি extraordinarily detailed এবং rapidly evolving discipline। Cloud-এর shared responsibility model, programmable nature, এবং service variety-এর কারণে attacker-দের জন্য সুযোগ এবং defender-দের জন্য challenge উভয়ই বেড়েছে। Capital One-এর breach সম্ভবত আধুনিক cloud security history-এর সবচেয়ে important case—একটি single SSRF এবং একটি over-privileged IAM role কীভাবে $300 million-এর breach-এ পরিণত হয়েছিল তা প্রতিটি cloud security professional-এর study করা উচিত। যারা offensive security-তে career build করছেন, AWS exploitation skill তাদের তোয়াল্লে যেতে দেবে। আর যারা defensive side-এ আছেন, attacker-এর mindset এবং technique বোঝা ছাড়া কার্যকর defense সম্ভব নয়। Cloud security skill demand আগামী দশকে exponentially বাড়বে, এবং এই field-এ deep expertise career-defining হতে পারে।

আপনার জ্ঞান যাচাই করতে প্রস্তুত? আজই HackCert-এ AWS Exploitation MCQ Quiz-টি দিন!

Related articles

back to all articles