2FA/MFA/OTP Bypass
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.
Техніки обходу покращеної двофакторної аутентифікації
Прямий доступ до кінцевої точки
Щоб обійти 2FA, отримайте доступ до наступної кінцевої точки безпосередньо, знаючи шлях є критично важливим. Якщо не вдається, змініть Referrer header, щоб імітувати навігацію з сторінки перевірки 2FA.
Повторне використання токенів
Повторне використання раніше використаних токенів для аутентифікації в обліковому записі може бути ефективним.
Використання невикористаних токенів
Спробуйте витягти токен зі свого облікового запису, щоб обійти 2FA в іншому обліковому записі.
Витік токена
Досліджуйте, чи токен розкритий у відповіді від веб-додатку.
Експлуатація посилання для перевірки
Використання посилання для перевірки електронної пошти, надісланого під час створення облікового запису, може дозволити доступ до профілю без 2FA, як зазначено в детальному посту.
Маніпуляція сесією
Ініціювання сесій для облікового запису користувача та жертви, а також завершення 2FA для облікового запису користувача без продовження, дозволяє спробувати отримати доступ до наступного етапу в потоці облікового запису жертви, експлуатуючи обмеження управління сесіями на бекенді.
Механізм скидання пароля
Дослідження функції скидання пароля, яка входить у додаток після скидання, для її потенціалу дозволити кілька скидань за допомогою одного посилання є критично важливим. Увійшовши з новими обліковими даними, можна обійти 2FA.
Компрометація платформи OAuth
Компрометація облікового запису користувача на надійній платформі OAuth (наприклад, Google, Facebook) може запропонувати шлях для обходу 2FA.
Атаки методом грубої сили
Відсутність обмеження швидкості
Відсутність обмеження на кількість спроб коду дозволяє атаки методом грубої сили, хоча слід враховувати потенційне тихе обмеження швидкості.
Зверніть увагу, що навіть якщо обмеження швидкості встановлено, ви повинні спробувати перевірити, чи відповідь відрізняється, коли надсилається дійсний OTP. У цьому пості дослідник виявив, що навіть якщо обмеження швидкості спрацьовує після 20 невдалих спроб, відповідаючи 401, якщо дійсний код надіслано, отримується відповідь 200.
Повільна атака методом грубої сили
Повільна атака методом грубої сили є життєздатною, коли існують обмеження швидкості потоку без загального обмеження швидкості.
Скидання обмеження повторної відправки коду
Повторна відправка коду скидає обмеження швидкості, що полегшує продовження спроб методом грубої сили.
Обхід обмеження швидкості на стороні клієнта
Документ містить техніки обходу обмеження швидкості на стороні клієнта.
Внутрішні дії без обмеження швидкості
Обмеження швидкості можуть захищати спроби входу, але не внутрішні дії облікового запису.
Витрати на повторну відправку SMS-коду
Надмірна повторна відправка кодів через SMS несе витрати для компанії, хоча це не обходить 2FA.
Нескінченна регенерація OTP
Нескінченна генерація OTP з простими кодами дозволяє атаки методом грубої сили, повторюючи невелику кількість кодів.
Експлуатація гонки
Експлуатація гонок для обходу 2FA може бути знайдена в конкретному документі.
Уразливості CSRF/Clickjacking
Дослідження уразливостей CSRF або Clickjacking для відключення 2FA є життєздатною стратегією.
Експлуатація функції "Запам'ятати мене"
Передбачувані значення куків
Вгадування значення куки "запам'ятати мене" може обійти обмеження.
Імітація IP-адреси
Імітація IP-адреси жертви через заголовок X-Forwarded-For може обійти обмеження.
Використання старих версій
Піддомени
Тестування піддоменів може використовувати застарілі версії, які не підтримують 2FA або містять вразливі реалізації 2FA.
API кінцеві точки
Старі версії API, вказані шляхами директорій /v*/, можуть бути вразливими до методів обходу 2FA.
Обробка попередніх сесій
Припинення існуючих сесій після активації 2FA захищає облікові записи від несанкціонованого доступу з компрометованих сесій.
Недоліки контролю доступу з резервними кодами
Негайне створення та потенційне несанкціоноване отримання резервних кодів після активації 2FA, особливо з неправильними конфігураціями CORS/XSS уразливостями, становить ризик.
Розкриття інформації на сторінці 2FA
Розкриття чутливої інформації (наприклад, номер телефону) на сторінці перевірки 2FA є проблемою.
Скидання пароля, що відключає 2FA
Процес, що демонструє потенційний метод обходу, включає створення облікового запису, активацію 2FA, скидання пароля та подальший вхід без вимоги 2FA.
Декой-запити
Використання декой-запитів для затемнення спроб методом грубої сили або введення в оману механізмів обмеження швидкості додає ще один рівень до стратегій обходу. Створення таких запитів вимагає тонкого розуміння заходів безпеки додатку та поведінки обмеження швидкості.
Помилки конструкції OTP
Якщо OTP створюється на основі даних, які користувач вже має, або які надсилаються раніше для створення OTP, користувач також може його згенерувати та обійти.
References
- https://medium.com/@iSecMax/two-factor-authentication-security-testing-and-possible-bypasses-f65650412b35
- https://azwi.medium.com/2-factor-authentication-bypass-3b2bbd907718
- https://getpocket.com/read/aM7dap2bTo21bg6fRDAV2c5thng5T48b3f0Pd1geW2u186eafibdXj7aA78Ip116_1d0f6ce59992222b0812b7cab19a4bce
P
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.