В 2019 году в Django была уязвимость управления сессиями, которая позволяла злоумышленникам перехватывать пользовательские сессии из-за неправильной проверки срока действия токенов. Проблема возникла из-за использования неверного оператора сравнения (<= вместо <) при проверке срока действия токена. Эта, казалось бы, незначительная ошибка могла продлить срок действия токена, позволяя злоумышленникам использовать украденные токены через недели или месяцы, обходя многофакторную аутентификацию и поддерживая постоянный доступ. Анализ 2024 года показывает, что значительный процент реализаций JWT и токенов сброса пароля имеют аналогичные ошибки, связанные со сроком действия. Инженеры по безопасности приложений отвечают за аудит систем аутентификации и выявление таких уязвимостей путем тщательного анализа логики проверки токенов. Эта задача направлена на создание валидатора токенов с использованием Python, подчеркивая правильную логику границы срока действия и обработку обнаружения перемещения во времени. Валидатор проверяет неверные конфигурации, гарантируя, что токены истекают точно, и предотвращая атаки с манипулированием часами. Правильные числовые сравнения, арифметика меток времени и проверка входных данных - ключевые навыки, развиваемые в этом упражнении. Упражнение предоставляет комплексные наборы тестов, чтобы убедиться, что валидатор обрабатывает различные крайние случаи и реальные сценарии. Овладение правильной проверкой срока действия токенов - важный навык для инженеров AppSec, позволяющий предотвратить атаки фиксации сессий и обходы аутентификации. Задача содержит 30 базовых тестовых примеров и бонусную задачу с 90 тестовыми примерами для всесторонней проверки.
dev.to
JWT Token Validator Challenge
Create attached notes ...
