IAM-verkeerdconfiguraties
Rollen met te ruime rechten
IAM-verkeerdconfiguraties is een gratis Ethical Hacking Academy-les op CoddyKit. Dit is les 2 van 4. Je kunt de volledige les hieronder gratis lezen en daarna in de browser praktisch oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject Ethical Hacking Academy. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Ethical Hacking Academy bevat in totaal 4 lessen.
Waarom IAM de echte perimeter is
In de cloud is identiteit de nieuwe perimeter. IAM (Identity and Access Management) bepaalt wie wat mag doen. Een fout in IAM stelt een aanvaller in staat om vanaf een toegangspunt met weinig rechten door te groeien naar volledige controle over het account.
- Gebruikers, rollen en serviceaccounts zijn identiteiten
- Beleidsregels definiëren machtigingen
- Verkeerd geconfigureerde beleidsregels vormen het grootste cloudrisico
De meeste escalaties van cloudrechten zijn een IAM-probleem.
Gebruikers, rollen en beleidsregels
AWS IAM heeft drie bouwstenen die je moet begrijpen:
- Gebruikers — identiteiten met langdurige toegangssleutels
- Rollen — tijdelijke identiteiten die door gebruikers of diensten kunnen worden aangenomen
- Beleidsregels — JSON-documenten die acties op bronnen toestaan of weigeren
Een beleidsregel die te breed is gekoppeld, veroorzaakt overmatige machtigingen.
{
"Effect": "Allow",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::reports-bucket/*"
}Het gevaar van jokertekens
Het gevaarlijkste IAM-patroon is een beleidsregel met jokertekens. Deze staat elke actie op elke bron toe.
Als een aanvaller een identiteit met deze beleidsregel compromitteert, heeft die de volledige controle over het account.
{
"Effect": "Allow",
"Action": "*",
"Resource": "*"
}
# Action:* Resource:* = full administrative control.
# Flag this everywhere it appears outside a break-glass admin role.Je eigen machtigingen inventariseren
Zodra je een inloggegeven bezit, moet je opsommen wat je ermee kunt doen. IAM heeft lees-API's die gekoppelde beleidsregels zichtbaar maken.
Sommige accounts geven gewone gebruikers zelfs iam:Get* en iam:List*, waardoor je gratis een overzicht krijgt.
# List policies attached to a user
aws iam list-attached-user-policies --user-name devuser
# Get the JSON of a managed policy version
aws iam get-policy-version \
--policy-arn arn:aws:iam::aws:policy/AmazonS3FullAccess \
--version-id v1Escalatie van rechten via iam:PassRole
Een klassieke escalatie: een gebruiker heeft iam:PassRole en daarnaast toestemming om een dienst aan te maken. Die gebruiker kan een bron starten die een rol met hoge rechten aanneemt en de bijbehorende toegang overneemt.
- De gebruiker heeft
ec2:RunInstances+iam:PassRole - Die start een EC2-instantie waaraan een beheerdersrol is gekoppeld
- De instantie beschikt nu over beheerdersinloggegevens, die de gebruiker ophaalt
De gebruiker had nooit rechtstreeks beheerdersrechten, maar heeft deze wel verkregen door escalatie.
Gevaarlijke combinaties van machtigingen
Afzonderlijke machtigingen kunnen onschadelijk zijn, maar samen een route voor escalatie vormen. Bekende risicovolle combinaties zijn:
iam:CreatePolicyVersion— een bestaande beleidsregel herschrijven om beheerdersrechten toe te kenneniam:AttachUserPolicy— AdministratorAccess aan jezelf koppeleniam:CreateAccessKeyvoor een andere gebruiker — diens identiteit overnemensts:AssumeRolevoor een rol die te veel vertrouwen heeft
Hulpmiddelen brengen deze combinaties automatisch in kaart.
Vertrouwensbeleidsregels en AssumeRole
Rollen hebben een vertrouwensbeleidsregel die bepaalt wie ze mag aannemen. Een te ruime vertrouwensbeleidsregel is een achterdeur.
Als een rol per vergissing het hele account of zelfs een extern account vertrouwt, kan een aanvaller deze rol aannemen.
{
"Effect": "Allow",
"Principal": { "AWS": "arn:aws:iam::123456789012:root" },
"Action": "sts:AssumeRole"
}
# Trusting the entire account root means ANY identity in it can assume the role.Escalatie automatisch opsporen
Elke combinatie van beleidsregels handmatig controleren is omslachtig. Hulpmiddelen brengen escalatieroutes voor je in kaart.
- Pacu — AWS-exploitatiekader met modules voor escalatie van rechten
- PMapper — brengt IAM-relaties als graaf in kaart en vindt routes voor escalatie van rechten
- enumerate-iam — probeert systematisch uit welke API-aanroepen een sleutel kan uitvoeren
# Run Pacu's IAM privilege escalation enumeration
pacu
# > run iam__privesc_scan
# Build an IAM access graph and query it
pmapper graph create
pmapper query 'preset privesc *'Inline- versus beheerde beleidsregels
Machtigingen kunnen op twee manieren worden toegekend, en aanvallers controleren beide:
- Beheerde beleidsregels — herbruikbaar en aan meerdere identiteiten gekoppeld
- Inline-beleidsregels — rechtstreeks ingebed in één gebruiker of rol
Inline-beleidsregels worden bij controles gemakkelijk over het hoofd gezien en verbergen daarom vaak overmatige machtigingen. Inventariseer bij het beoordelen van een identiteit altijd beide soorten.
# Inline policies are listed separately from attached ones
aws iam list-user-policies --user-name devuser
aws iam get-user-policy --user-name devuser --policy-name custom-inlineBeveiliging: minimale rechten
De oplossing voor IAM-configuratiefouten is minimale rechten: ken alleen de exact benodigde machtigingen toe.
- Vervang jokertekens door expliciete acties en ARN's van bronnen
- Gebruik rollen met kortdurende inloggegevens in plaats van langdurige sleutels
- Controleer ongebruikte machtigingen met Access Analyzer
- Verplicht MFA voor identiteiten met verhoogde rechten
In je rapport moet je elke bevinding koppelen aan een oplossing volgens het principe van minimale rechten.
Blijf binnen de autorisatie
Tests voor escalatie van rechten wijzigen actief de toestand van een account. Wees voorzichtig:
- Het aanmaken van beleidsregels, sleutels of rollen is ingrijpend; vraag hiervoor schriftelijke goedkeuring
- Documenteer elke wijziging zodat deze kan worden teruggedraaid
- Geef de voorkeur aan alleen-lezeninventarisatie om een route aan te tonen voordat je deze misbruikt
Vaak is het voldoende om aan te tonen dat een route voor escalatie van rechten bestaat; je hoeft deze niet altijd volledig te misbruiken.
Korte controle
Welke combinatie van machtigingen vormt een klassieke route voor escalatie van AWS-rechten?
Samenvatting: IAM-configuratiefouten
Je hebt geleerd waarom IAM de echte perimeter van de cloud is en hoe aanvallers hiervan misbruik maken.
- Beleidsregels met jokertekens zoals
Action:* Resource:*zijn rampzalig iam:PassRole+ toestemming om een dienst aan te maken maakt escalatie van rechten mogelijk- Te ruime vertrouwensbeleidsregels stellen aanvallers in staat rollen aan te nemen
- Hulpmiddelen zoals Pacu en PMapper automatiseren het opsporen van routes
- De oplossing is altijd minimale rechten
Vervolgens bekijken we blootstelling van S3 en opslag.
Leer Ethical Hacking Academy met een AI-tutor — gratis
Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.
- Cursussen
- 31
- Lessen
- 111
Veelgestelde vragen
Is de les “IAM-verkeerdconfiguraties” gratis?
Ja — de volledige tekst van “IAM-verkeerdconfiguraties” kun je hier gratis op het web lezen. Als je interactief wilt oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is, en de rest van de cursus Ethical Hacking Academy wilt ontgrendelen, kun je upgraden naar CoddyKit PRO. De cursus Ethical Hacking Academy bevat in totaal 4 lessen.
Wat leer ik in “IAM-verkeerdconfiguraties”?
Rollen met te ruime rechten Je oefent met Ethical Hacking Academy door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.
Heb ik ervaring nodig om met Ethical Hacking Academy te beginnen?
Ervaring vooraf is niet nodig. Ethical Hacking Academy op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 2 van 4.
Hoe lang duurt de les “IAM-verkeerdconfiguraties”?
De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.
Kan ik code schrijven en uitvoeren in deze les over Ethical Hacking Academy?
Ja. Elke les over Ethical Hacking Academy bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.
Alle lessen in deze cursus
- Aanvalsoppervlak van de cloud
- IAM-verkeerdconfiguraties
- Blootstelling van S3 en opslag
- Metadata en SSRF