AWS - Identity Center & SSO Unauthenticated Enum
AWS Device Code Phishing
Спочатку запропоновано в цьому блозі, можливо надіслати посилання користувачу, який використовує AWS SSO, що якщо користувач прийме, зловмисник зможе отримати токен для видавання себе за користувача та отримати доступ до всіх ролей, до яких користувач має доступ у Identity Center.
Для виконання цієї атаки необхідні:
Жертва повинна використовувати Identity Center
Зловмисник повинен знати субдомен, який використовує жертва
<victimsub>.awsapps.com/start
Маючи лише цю інформацію, зловмисник зможе надіслати посилання користувачу, яке, якщо прийнято, надасть зловмиснику доступ до облікового запису AWS користувача.
Атака
Знаходження субдомену
Перший крок зловмисника - дізнатися субдомен, який використовує компанія-жертва у своєму Identity Center. Це можна зробити за допомогою OSINT або вгадування + BF, оскільки більшість компаній використовуватимуть своє ім'я або його варіацію.
Маючи цю інформацію, можна дізнатися регіон, де був налаштований Identity Center:
Згенеруйте посилання для жертви та надішліть його
Запустіть наступний код, щоб згенерувати AWS SSO посилання для входу, щоб жертва могла аутентифікуватися. Для демонстрації запустіть цей код у консолі python і не виходьте з неї, оскільки пізніше вам знадобляться деякі об'єкти для отримання токена:
Send the generated link to the victim using you awesome social engineering skills!
Чекайте, поки жертва прийме запит
Якщо жертва вже увійшла в AWS, їй потрібно буде лише прийняти надання дозволів, якщо ні, їй потрібно буде увійти в систему і потім прийняти надання дозволів. Ось як виглядає запит зараз:
Отримайте SSO access token
Якщо жертва прийняла запит, запустіть цей код, щоб згенерувати SSO token, видаючи себе за користувача:
Токен доступу SSO дійсний протягом 8 годин.
Видавати себе за користувача
Фішинг незламного MFA
Цікаво знати, що попередня атака працює навіть якщо використовується "незламний MFA" (webAuth). Це тому, що попередній робочий процес ніколи не залишає використаний домен OAuth. Не так, як в інших фішингових атаках, де користувачеві потрібно підмінити домен входу, у випадку з робочим процесом коду пристрою, код відомий пристрою, і користувач може увійти навіть на іншій машині. Якщо запит прийнято, пристрій, просто знаючи початковий код, зможе отримати облікові дані для користувача.
Для отримання додаткової інформації перевірте цей пост.
Автоматичні інструменти
Посилання
Last updated