Зловживання метаданими екземпляра

Зловживання метаданими екземпляра

SSRF плюс кінцева точка метаданих дорівнює викраденим обліковим даним ролі.

Що таке Зловживання метаданими екземпляра?

Служба метаданих екземпляра відповідає на будь-які запити, зроблені зсередини екземпляра, і однією з речей, яку він повертає, є тимчасові облікові дані ролі екземпляра. Він нічого не автентифікує, що перетворює звичайну помилку підробки запиту на стороні сервера на крадіжку облікових даних у хмарі. Ви вказуєте джерело_url функції імпорту на 169.254.169.254, читаєте ключ доступу, секрет і маркер сеансу та використовуєте їх для отримання даних, яких програма ніколи не могла отримати. Виправлення полягає в IMDSv2: потрібен маркер сеансу, щоб один підроблений GET не міг завершитися, і встановіть ліміт переходу відповіді.

Що ви дізнаєтесь у Зловживання метаданими екземпляра

Зловживання метаданими екземпляра — Кроки навчання

  1. Сервер, який отримує для вас

    Боб працює у Vurloch, компанії, програмне забезпечення якої запускає перевірки будівель: графіки, звіти та деталі доступу, необхідні інспекторам для доступу до власності. Йому впадає в очі одна особливість, оскільки вона сама виконує вибірку. Інспектори можуть імпортувати звіт, вставивши URL-адресу. Сервер Vurloch отримує його. Це означає, що Боб може робити запити сервера Vurloch на те, що Боб не може отримати безпосередньо.

  2. Що функція насправді робить

    Перш ніж торкнутися його, Боб читає, що пропонує сторінка. Це інструмент для імпорту: вставте посилання на звіт про інспекцію, і Vurloch додасть його до власності. Цікаво те, хто виконує завантаження.

  3. Використовуйте функцію за призначенням

    Він починає з того, що використовує його так, як інспектор: вставляє URL-адресу звіту партнера та дозволяє Vurloch отримати його. Що він насправді робить, це отримує запит на дроті, щоб він міг переглянути його.

  4. URL-адреса – це лише параметр

    Імпорт спрацював. Боб відкриває мережеву панель і дивиться, що насправді надіслала сторінка, оскільки функція, яка отримує URL-адреси, цікава, лише якщо він керує URL-адресою.

  5. Наведіть його на службу метаданих

    Є одна адреса, яка відповідає лише всередині хмарного екземпляра: служба метаданих за фіксованою локальною IP-адресою. Він продає власні облікові дані ролі екземпляра будь-якому екземпляру, що запитує. Боб редагує отриманий запит, замінюючи URL-адресу партнера цією адресою, і надсилає його повторно.

  6. Він отримав облікові дані

    Сервер виконав саме те, що йому було запропоновано, і повернув те, що вийшло з іншого боку.

  7. Чиї це посвідчення

    Боб зберігає три значення в профілі та запитує хмару, хто він зараз.

  8. Те, що сервер міг досягти, але програма ніколи не розкривала

    Додаток може подати звіт про майно. Роль, яка стоїть за ним, може зробити набагато більше, і Боб шукає дані, які програма зберігає, але ніколи не роздає. Він передає архів перевірки прямо на свій термінал.

  9. Звідки взяли облікові грамоти

    Боб має відомості про фізичний доступ до десятків тисяч властивостей, отримані за допомогою функції, яка лише отримує URL-адреси.

  10. Ідентичність сервера, яка використовується як особа

    Моніторинг 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