Взлом облікового запису
Reading time: 5 minutes
tip
Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Підтримайте HackTricks
- Перевірте плани підписки!
- Приєднуйтесь до 💬 групи Discord або групи telegram або слідкуйте за нами в Twitter 🐦 @hacktricks_live.
- Діліться хакерськими трюками, надсилаючи PR до HackTricks та HackTricks Cloud репозиторіїв на github.
Проблема авторизації
Електронну пошту облікового запису слід спробувати змінити, і процес підтвердження повинен бути перевірений. Якщо він виявиться слабким, електронну пошту слід змінити на електронну пошту передбачуваної жертви і потім підтвердити.
Проблема нормалізації Unicode
- Обліковий запис передбачуваної жертви
victim@gmail.com
- Слід створити обліковий запис, використовуючи Unicode
наприклад:vićtim@gmail.com
Як пояснено в цьому виступі, попередню атаку також можна здійснити, зловживаючи сторонніми постачальниками ідентичності:
- Створіть обліковий запис у сторонньому постачальнику ідентичності з подібною електронною поштою до жертви, використовуючи деякий символ unicode (
vićtim@company.com
). - Сторонній постачальник не повинен перевіряти електронну пошту.
- Якщо постачальник ідентичності перевіряє електронну пошту, можливо, ви зможете атакувати частину домену, наприклад:
victim@ćompany.com
і зареєструвати цей домен, сподіваючись, що постачальник ідентичності згенерує ASCII-версію домену, поки платформа жертви нормалізує ім'я домену. - Увійдіть через цього постачальника ідентичності на платформу жертви, яка повинна нормалізувати символ unicode і дозволити вам отримати доступ до облікового запису жертви.
Для отримання додаткової інформації зверніться до документа з нормалізації Unicode:
Повторне використання токена скидання
Якщо цільова система дозволяє повторне використання посилання на скидання, слід докласти зусиль для знаходження додаткових посилань на скидання за допомогою таких інструментів, як gau
, wayback
або scan.io
.
Перед взломом облікового запису
- Електронну пошту жертви слід використовувати для реєстрації на платформі, і слід встановити пароль (слід спробувати підтвердити його, хоча відсутність доступу до електронних листів жертви може зробити це неможливим).
- Слід дочекатися, поки жертва зареєструється за допомогою OAuth і підтвердить обліковий запис.
- Сподіваємося, що звичайна реєстрація буде підтверджена, що дозволить отримати доступ до облікового запису жертви.
Неправильна конфігурація CORS для взлому облікового запису
Якщо сторінка містить неправильні конфігурації CORS, ви можете вкрасти чутливу інформацію у користувача, щоб взяти під контроль його обліковий запис або змусити його змінити інформацію для авторизації з тією ж метою:
CORS - Misconfigurations & Bypass
CSRF для взлому облікового запису
Якщо сторінка вразлива до CSRF, ви можете змусити користувача змінити свій пароль, електронну пошту або аутентифікацію, щоб потім отримати до неї доступ:
CSRF (Cross Site Request Forgery)
XSS для взлому облікового запису
Якщо ви знайдете XSS в додатку, ви можете вкрасти куки, локальне сховище або інформацію зі сторінки, що може дозволити вам взяти під контроль обліковий запис:
Однакове походження + куки
Якщо ви знайдете обмежений XSS або захоплення піддомену, ви можете грати з куками (наприклад, фіксуючи їх), щоб спробувати скомпрометувати обліковий запис жертви:
Атака на механізм скидання пароля
Reset/Forgotten Password Bypass
Маніпуляція відповіддю
Якщо відповідь аутентифікації можна звести до простого булевого значення, просто спробуйте змінити false на true і подивіться, чи отримаєте ви доступ.
OAuth для взлому облікового запису
Впровадження заголовка Host
- Заголовок Host змінюється після ініціації запиту на скидання пароля.
- Заголовок проксі
X-Forwarded-For
змінюється наattacker.com
. - Заголовки Host, Referrer і Origin одночасно змінюються на
attacker.com
. - Після ініціації скидання пароля та вибору повторної відправки електронної пошти використовуються всі три вищезгадані методи.
Маніпуляція відповіддю
- Маніпуляція кодом: Статус-код змінюється на
200 OK
. - Маніпуляція кодом і тілом:
- Статус-код змінюється на
200 OK
. - Тіло відповіді змінюється на
{"success":true}
або на порожній об'єкт{}
.
Ці техніки маніпуляції ефективні в сценаріях, де для передачі та отримання даних використовується JSON.
Зміна електронної пошти поточної сесії
З цього звіту:
- Зловмисник запитує зміну своєї електронної пошти на нову
- Зловмисник отримує посилання для підтвердження зміни електронної пошти
- Зловмисник надсилає жертві посилання, щоб вона на нього натиснула
- Електронна пошта жертви змінюється на ту, що вказав зловмисник
- Зловмисник може відновити пароль і взяти під контроль обліковий запис
Це також сталося в цьому звіті.
Старі куки
Як пояснено в цьому пості, було можливим увійти в обліковий запис, зберегти куки як аутентифікований користувач, вийти, а потім увійти знову.
При новому вході, хоча можуть бути згенеровані інші куки, старі знову почали працювати.
Посилання
- https://infosecwriteups.com/firing-8-account-takeover-methods-77e892099050
- https://dynnyd20.medium.com/one-click-account-take-over-e500929656ea
tip
Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Підтримайте HackTricks
- Перевірте плани підписки!
- Приєднуйтесь до 💬 групи Discord або групи telegram або слідкуйте за нами в Twitter 🐦 @hacktricks_live.
- Діліться хакерськими трюками, надсилаючи PR до HackTricks та HackTricks Cloud репозиторіїв на github.