Ein Instance Profile anhängen, dann seine Anmeldeinformationen lesen
Kann das Instanzprofil einer Rolle an eine EC2-Instanz anhängen und ihre Anmeldeinformationen über IMDS stehlen.
Ermöglicht Eskalation nur in Kombination. All diese sind zusammen erforderlich:
iam:PassRoleec2:AssociateIamInstanceProfileiam:PassRole kann das Instanzprofil einer Rolle an eine EC2-Instanz anhängen und deren Anmeldeinformationen über IMDS stehlen, aber nur, wenn sie zusammen mit ec2:AssociateIamInstanceProfile gehalten wird. Gemeinsam gehalten erreichen sie Administratorzugriff.
Warum es gefährlich ist
Ein Principal besitzt iam:PassRole auf der Zielrolle zusammen mit ec2:AssociateIamInstanceProfile, sodass er das Instanzprofil der Zielrolle an eine EC2-Instanz, die er kontrolliert, anhängen und dann die temporären Anmeldeinformationen der Rolle aus IMDS lesen kann. Anders als ec2:RunInstances benötigt dies keine neue Instanz: Es richtet eine bestehende Maschine auf eine höher privilegierte Rolle aus, was unauffälliger und günstiger ist.
In MITRE ATT&CK entspricht dies T1552.005, Unsecured Credentials: Cloud Instance Metadata API, unter der Taktik Privilege Escalation. AWS protokolliert dies in CloudTrail als AssociateIamInstanceProfile, ReplaceIamInstanceProfileAssociation. Der Aufruf erscheint in CloudTrail, geht aber in der normalen Administration unter, daher braucht es eine Regel, damit er auffällt.
Erkennung
AssociateIamInstanceProfileReplaceIamInstanceProfileAssociationVoraussetzungen
Eine EC2-Instanz, die der Angreifer kontrolliert oder erreichen kann, zusammen mit IMDS-Zugriff darauf. Die Rolle muss sich in einem Instance Profile befinden.
Taktik
Privilege Escalation
Eine Maßnahme, die ihn beseitigen würde: iam:PassRole für diese Rolle entfernen oder mit iam:PassedToService einschränken; ec2:AssociateIamInstanceProfile / ReplaceIamInstanceProfileAssociation beschränken.
Ob sie angewendet werden sollte, hängt davon ab, wie die Berechtigung in Ihrer Umgebung verwendet wird, daher ist es eine geschäftliche Entscheidung und keine automatische Behebung. Dieselbe Berechtigung kann in einem Konto tragend und in einem anderen reines Risiko sein.
Pathbreak bestätigt, ob dieser Pfad in Ihrem Konto auflösbar ist, stuft ihn gegenüber den anderen danach ein, wie viel er eröffnet, und nutzt Ihr Bedrohungsmodell und Ihren Geschäftskontext, um zu zeigen, welche Pfade es wert sind, unterbrochen zu werden.
Fragen
Was erlaubt iam:PassRole?
Kann das Instanzprofil einer Rolle an eine EC2-Instanz anhängen und ihre Anmeldeinformationen über IMDS stehlen.
Was ist außerdem nötig, damit iam:PassRole gefährlich ist?
Es wird erst zur Eskalation, wenn es mit ec2:AssociateIamInstanceProfile kombiniert wird. Für sich allein reicht es nicht aus, was die Kombination leicht übersehbar macht.
Wie wird das Anhängen eines Instanzprofils und das anschließende Lesen seiner Anmeldeinformationen erkannt?
Achten Sie in CloudTrail auf AssociateIamInstanceProfile, ReplaceIamInstanceProfileAssociation. Der Aufruf erscheint in CloudTrail, geht aber in der normalen Administration unter, daher braucht es eine Regel, damit er auffällt.
Wie unterbricht man diesen Pfad?
Eine Maßnahme, die ihn beseitigen würde, ist: Entfernen Sie iam:PassRole für diese Rolle oder beschränken Sie es mit iam:PassedToService; beschränken Sie ec2:AssociateIamInstanceProfile / ReplaceIamInstanceProfileAssociation. Ob sie angewendet werden sollte, hängt davon ab, wie die Berechtigung in Ihrem Konto verwendet wird, es ist also eine geschäftliche Entscheidung und keine automatische Behebung.
Welche MITRE ATT&CK Technik ist das?
T1552.005, Unsecured Credentials: Cloud Instance Metadata API, unter der Taktik Privilege Escalation.
Verwandte Pfade
Referenzen
Finden Sie dies in Ihrem eigenen Konto
Wir führen einen schreibgeschützten Scan eines AWS-Kontos durch und zeigen Ihnen, welche dieser Pfade existieren, nach Blast-Radius priorisiert, mit der Änderung, die jeden einzelnen unterbricht. Erste validierte Pfade innerhalb der Stunde.