Зловживання метаданими екземпляра
SSRF плюс кінцева точка метаданих дорівнює викраденим обліковим даним ролі.
Що таке Зловживання метаданими екземпляра?
Служба метаданих екземпляра відповідає на будь-які запити, зроблені зсередини екземпляра, і однією з речей, яку він повертає, є тимчасові облікові дані ролі екземпляра. Він нічого не автентифікує, що перетворює звичайну помилку підробки запиту на стороні сервера на крадіжку облікових даних у хмарі. Ви вказуєте джерело_url функції імпорту на 169.254.169.254, читаєте ключ доступу, секрет і маркер сеансу та використовуєте їх для отримання даних, яких програма ніколи не могла отримати. Виправлення полягає в IMDSv2: потрібен маркер сеансу, щоб один підроблений GET не міг завершитися, і встановіть ліміт переходу відповіді.
Що ви дізнаєтесь у Зловживання метаданими екземпляра
- Служба метаданих надає облікові дані ролі всім, хто може зробити запит ізсередини екземпляра, без власної автентифікації.
- Помилка підробки запитів у додатку стає крадіжкою облікових даних у хмарі, а потім — опорою рівня керування.
- Вимагання маркера сеансу перетворює один підроблений запит на двоетапний обмін, який більшість помилок підробки не можуть виконати.
- Виправте це в конфігурації екземпляра, оскільки це охоплює кожну помилку підробки запитів, а не ту, яку було знайдено.
Зловживання метаданими екземпляра — Кроки навчання
-
Сервер, який отримує для вас
Боб працює у Vurloch, компанії, програмне забезпечення якої запускає перевірки будівель: графіки, звіти та деталі доступу, необхідні інспекторам для доступу до власності. Йому впадає в очі одна особливість, оскільки вона сама виконує вибірку. Інспектори можуть імпортувати звіт, вставивши URL-адресу. Сервер Vurloch отримує його. Це означає, що Боб може робити запити сервера Vurloch на те, що Боб не може отримати безпосередньо.
-
Що функція насправді робить
Перш ніж торкнутися його, Боб читає, що пропонує сторінка. Це інструмент для імпорту: вставте посилання на звіт про інспекцію, і Vurloch додасть його до власності. Цікаво те, хто виконує завантаження.
-
Використовуйте функцію за призначенням
Він починає з того, що використовує його так, як інспектор: вставляє URL-адресу звіту партнера та дозволяє Vurloch отримати його. Що він насправді робить, це отримує запит на дроті, щоб він міг переглянути його.
-
URL-адреса – це лише параметр
Імпорт спрацював. Боб відкриває мережеву панель і дивиться, що насправді надіслала сторінка, оскільки функція, яка отримує URL-адреси, цікава, лише якщо він керує URL-адресою.
-
Наведіть його на службу метаданих
Є одна адреса, яка відповідає лише всередині хмарного екземпляра: служба метаданих за фіксованою локальною IP-адресою. Він продає власні облікові дані ролі екземпляра будь-якому екземпляру, що запитує. Боб редагує отриманий запит, замінюючи URL-адресу партнера цією адресою, і надсилає його повторно.
-
Він отримав облікові дані
Сервер виконав саме те, що йому було запропоновано, і повернув те, що вийшло з іншого боку.
-
Чиї це посвідчення
Боб зберігає три значення в профілі та запитує хмару, хто він зараз.
-
Те, що сервер міг досягти, але програма ніколи не розкривала
Додаток може подати звіт про майно. Роль, яка стоїть за ним, може зробити набагато більше, і Боб шукає дані, які програма зберігає, але ніколи не роздає. Він передає архів перевірки прямо на свій термінал.
-
Звідки взяли облікові грамоти
Боб має відомості про фізичний доступ до десятків тисяч властивостей, отримані за допомогою функції, яка лише отримує URL-адреси.
-
Ідентичність сервера, яка використовується як особа
Моніторинг Vurloch позначає сховище зчитування ролей екземпляра програми, до якого немає причин торкатися.
Охоплення стандартів безпеки
CWE
- CWE-918 Server-Side Request Forgery (SSRF)
- CWE-522 Insufficiently Protected Credentials
MITRE ATT&CK
- T1552.005 Unsecured Credentials: Cloud Instance Metadata API
CIS Controls
- CIS 4 Secure Configuration of Enterprise Assets and Software
- CIS 16 Application Software Security
NIST CSF
- PR.AT-02 Individuals in specialized roles are provided with awareness and training so that they possess the knowledge and skills to perform relevant tasks with cybersecurity risks in mind
- PR.PS Platform Security