Перевод: Техники обхода 2FA

Перевод: Техники обхода 2FA

@Ent_TranslateIB

Привет, ребята, это снова я. Давайте обсудим различные методы обхода 2FA.

1. Утечка кода 2FA в ответе:

1. При выполнении запроса на получение кода 2FA, например, функции отправки OTP, попробуйте перехватить запрос.

2. Просмотрите ответ на этот запрос и проанализируйте, не произошла ли утечка кода 2FA.

2. Анализ файла JS:

Во время выполнения запроса на получение кода 2FA проанализируйте все JS-файлы, которые упоминаются в ответе, чтобы узнать, содержит ли какой-либо JS-файл информацию, которая может помочь обойти код 2FA.

3. Отсутствие защиты от брутфорса:

Это включает в себя всевозможные проблемы, которые относятся к неправильной конфигурации системы безопасности, такие как отсутствие ограничения скорости (rate limit), отсутствие защиты от брутфорса и т.д.

  1. Запросите код 2FA и зафиксируйте запрос.
  2. Повторите этот запрос 100-200 раз, и если ограничение не установлено, это проблема ограничения скорости (rate limit).
  3. На странице проверки кода 2FA попробуйте выполнить перебор для получения действительного кода 2FA и посмотрите, есть ли какой-либо успех.
  4. Вы также можете попробовать инициировать, запрашивая OTP на одной стороне и перебором на другой. В какой-то момент OTP совпадут и могут дать быстрый результат.
4. Сброс пароля / Смена электронной почты — Отключение 2FA:
  1. Если вы способны проводить сложные фишинговые кампании, то заставьте конечного пользователя сменить пароль.
  2. 2FA отключается после изменения электронной почты или сброса пароля. Это может стать проблемой для некоторых организаций. Однако это зависит от каждого конкретного случая.
5. Отсутствие проверки целостности кода 2FA:
  1. Запросите код 2FA из учетной записи злоумышленника.
  2. Используйте этот действительный код 2FA в запросе жертвы 2FA и посмотрите, не обходит ли это защиту 2FA.
6. Прямой запрос:

Перейдите непосредственно на страницу, которая открывается после 2FA или любую другую аутентифицированную страницу приложения и посмотрите, обходит ли это ограничения 2FA.

7. 2FA Обход с помощью заголовка refer:
  1. Непосредственно перейдите на страницу, которая появляется после 2FA или любой другой страницы приложения, прошедшей проверку подлинности.
  2. Если успеха нет, измените заголовок refer на URL страницы 2FA. Это может заставить приложение сделать вид, что запрос пришел после выполнения условия 2FA.
8. Злоупотребление резервным кодом:

Применяйте те же методы, что и для 2FA, такие как манипуляция кодом ответа/состояния, перебор и т.д., чтобы обойти резервные коды и отключить/сбросить 2FA.

9. Включение 2FA не приводит к истечению срока действия предыдущей сессии:
  1. Войдите в приложение в двух разных браузерах и включите 2FA с 1-го сеанса.
  2. Используйте 2-ю сессию, и если она не истекла, это может стать проблемой при недостаточном истечении срока действия сессии. В этом сценарии, если злоумышленник перехватит активную сессию до 2FA, можно будет выполнять все функции без необходимости 2FA.
10. Clickjacking на функции отключения 2FA:
  1. Попробуйте создать фрейм страницы, на которой приложение позволяет пользователю отключить 2FA.
  2. Если вектор атаки iframe успешен, попытайтесь провести социально-инженерную атаку, чтобы манипулировать жертвой и заставить ее попасться в вашу ловушку.
11. Манипулирование ответом:
  1. Проверьте ответ на запрос 2FA.
  2. Если вы наблюдаете “Success”: false, измените это на “Success”: true и посмотрите, не обходит ли он 2FA.
  3. Вы также можете использовать для этого правила Burp “Match & Replace”.
12. Манипуляция кодом состояния:
  1. Если код состояния ответа равен 4xx, например 401, 402 и т.д.
  2. Измените код состояния ответа на “200 OK” и посмотрите, не обходит ли он 2FA.
13. Возможность повторного использования кода 2FA:
  1. Запросите код 2FA и используйте его.
  2. Теперь повторно используйте тот же код 2FA в другом сеансе, и если он прошел успешную аутентификацию, это потенциальная проблема.
  3. Кроме того, попробуйте запросить несколько кодов 2FA и посмотрите, истекает ли срок действия ранее запрошенных кодов или нет, когда запрашивается новый код.
  4. Кроме того, попробуйте повторно использовать ранее использованный код после длительного периода времени, например, 1 день или более. Если это удастся, это проблема, поскольку 1 дня более чем достаточно для искушенного хакера, чтобы либо применить грубую силу, либо взломать 6-значный код 2FA.
14. CSRF на отключение функции 2FA :
  1. Перейдите на страницу 2FA и нажмите “Отключить 2FA” и зафиксируйте этот запрос с помощью Burp Suite и сгенерируйте CSRF PoC.
  2. Отправьте этот PoC жертве и проверьте, успешно ли выполняется CSRF, и отключите 2FA из учетной записи жертвы.
  3. Кроме того, проверьте, требуется ли какое-либо подтверждение аутентификации, например пароль или код 2FA, перед отключением 2FA.

Оригинал статьи - здесь.
Поддержите автора хлопками на Medium.


Перевод статьи был выполнен проектом перевод энтузиаста:

  • 📚 @Ent_TranslateIB - Телеграмм канал с тематикой информационной безопасности
  • 🔥 @Ent_Translate - Инстаграм проекта

Report Page