AWS - S3 Privesc
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
s3:PutBucketNotification
, s3:PutObject
, s3:GetObject
Зловмисник з такими дозволами на цікавих бакетах може бути в змозі захопити ресурси та підвищити привілеї.
Наприклад, зловмисник з цими дозволами на бакет cloudformation під назвою "cf-templates-nohnwfax6a6i-us-east-1" зможе захопити розгортання. Доступ може бути наданий за допомогою наступної політики:
І викрадення можливе, оскільки існує невеликий часовий проміжок від моменту завантаження шаблону до кошика до моменту, коли шаблон розгортається. Зловмисник може просто створити lambda function у своєму обліковому записі, яка спрацює, коли надійде сповіщення з кошика, і викраде вміст цього кошика.
Модуль Pacu cfn__resouce_injection
може бути використаний для автоматизації цієї атаки.
Для отримання додаткової інформації перегляньте оригінальне дослідження: https://rhinosecuritylabs.com/aws/cloud-malware-cloudformation-injection/
s3:PutObject
, s3:GetObject
Це дозволи на отримання та завантаження об'єктів до S3. Кілька служб всередині AWS (і за його межами) використовують сховище S3 для зберігання конфігураційних файлів. Зловмисник з доступом на читання до них може знайти чутливу інформацію в них. Зловмисник з доступом на запис до них може змінити дані, щоб зловживати якоюсь службою та спробувати підвищити привілеї. Ось кілька прикладів:
Якщо екземпляр EC2 зберігає дані користувача в кошику S3, зловмисник може змінити їх, щоб виконати довільний код всередині екземпляра EC2.
s3:PutBucketPolicy
Зловмисник, який повинен бути з того ж облікового запису, інакше спрацює помилка The specified method is not allowed
, з цим дозволом зможе надати собі більше дозволів над кошиком(ами), що дозволить йому читати, писати, змінювати, видаляти та відкривати кошики.
s3:GetBucketAcl
, s3:PutBucketAcl
Зловмисник може зловживати цими дозволами, щоб надати собі більше доступу до конкретних бакетів. Зверніть увагу, що зловмисник не обов'язково має бути з того ж облікового запису. Більше того, доступ на запис
s3:GetObjectAcl
, s3:PutObjectAcl
Зловмисник може зловживати цими дозволами, щоб надати собі більше доступу до конкретних об'єктів всередині бакетів.
s3:GetObjectAcl
, s3:PutObjectVersionAcl
Зловмисник з цими привілеями, як очікується, зможе встановити Acl для конкретної версії об'єкта.
Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)