Account Takeover
Last updated
Last updated
Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Електронну пошту облікового запису слід спробувати змінити, і процес підтвердження повинен бути перевірений. Якщо він виявиться слабким, електронну пошту слід змінити на адресу жертви та підтвердити.
Обліковий запис жертви victim@gmail.com
Слід створити обліковий запис, використовуючи Unicode
наприклад: vićtim@gmail.com
Як пояснено в цьому виступі, попередню атаку також можна здійснити, зловживаючи сторонніми постачальниками ідентичності:
Створіть обліковий запис у сторонньому постачальнику ідентичності з подібною електронною поштою до жертви, використовуючи деякий символ unicode (vićtim@company.com
).
Сторонній постачальник не повинен перевіряти електронну пошту.
Якщо постачальник ідентичності перевіряє електронну пошту, можливо, ви зможете атакувати доменну частину, наприклад: victim@ćompany.com
і зареєструвати цей домен, сподіваючись, що постачальник ідентичності згенерує ASCII-версію домену, поки платформа жертви нормалізує ім'я домену.
Увійдіть через цього постачальника ідентичності на платформу жертви, яка повинна нормалізувати символ unicode і дозволити вам отримати доступ до облікового запису жертви.
Для отримання додаткової інформації зверніться до документа про нормалізацію Unicode:
Unicode NormalizationЯкщо цільова система дозволяє повторне використання посилання на скидання, слід докласти зусиль для знаходження додаткових посилань на скидання за допомогою таких інструментів, як gau
, wayback
або scan.io
.
Електронну пошту жертви слід використовувати для реєстрації на платформі, і слід встановити пароль (слід спробувати підтвердити його, хоча відсутність доступу до електронних листів жертви може зробити це неможливим).
Слід дочекатися, поки жертва зареєструється, використовуючи OAuth, і підтвердить обліковий запис.
Сподіваємося, що звичайна реєстрація буде підтверджена, що дозволить отримати доступ до облікового запису жертви.
Якщо сторінка містить неправильні конфігурації CORS, ви можете вкрасти чутливу інформацію у користувача, щоб взяти його обліковий запис під контроль або змусити його змінити інформацію для авторизації з тією ж метою:
CORS - Misconfigurations & BypassЯкщо сторінка вразлива до CSRF, ви можете змусити користувача змінити свій пароль, електронну пошту або аутентифікацію, щоб потім отримати до неї доступ:
CSRF (Cross Site Request Forgery)Якщо ви знайдете XSS в додатку, ви можете вкрасти куки, локальне сховище або інформацію зі сторінки, що може дозволити вам взяти обліковий запис під контроль:
XSS (Cross Site Scripting)Якщо ви знайдете обмежений XSS або захоплення піддомену, ви можете грати з куками (наприклад, фіксуючи їх), щоб спробувати скомпрометувати обліковий запис жертви:
Cookies HackingЯкщо відповідь аутентифікації можна звести до простого булевого значення, просто спробуйте змінити false на true і подивіться, чи отримаєте ви доступ.
Заголовок Host змінюється після ініціації запиту на скидання пароля.
Заголовок проксі X-Forwarded-For
змінюється на attacker.com
.
Заголовки Host, Referrer і Origin одночасно змінюються на attacker.com
.
Після ініціації скидання пароля та вибору повторної відправки електронної пошти використовуються всі три вищезгадані методи.
Маніпуляція кодом: Статус-код змінюється на 200 OK
.
Маніпуляція кодом і тілом:
Статус-код змінюється на 200 OK
.
Тіло відповіді змінюється на {"success":true}
або на порожній об'єкт {}
.
Ці техніки маніпуляції ефективні в сценаріях, де для передачі та отримання даних використовується JSON.
З цього звіту:
Зловмисник запитує зміну своєї електронної пошти на нову.
Зловмисник отримує посилання для підтвердження зміни електронної пошти.
Зловмисник надсилає жертві посилання, щоб вона на нього натиснула.
Електронна пошта жертви змінюється на вказану зловмисником.
Зловмисник може відновити пароль і взяти обліковий запис під контроль.
Це також сталося в цьому звіті.
Як пояснено в цьому пості, було можливим увійти в обліковий запис, зберегти куки як аутентифікований користувач, вийти, а потім увійти знову. При новому вході, хоча можуть бути згенеровані інші куки, старі знову почали працювати.
Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)