Django: виявлення імен користувачів через час відповіді автентифікації

1 хв читання

Розробникам Django слід звернути увагу на вразливість CVE-2024-39329, яка стосується механізмів автентифікації. Хоча вона не дозволяє безпосередньо викрасти паролі, вона може бути використана для перерахування дійсних імен користувачів у системі.

Згідно з бюлетенем від 9 липня 2024 року, метод django.contrib.auth.backends.ModelBackend.authenticate() був вразливим до часових атак. Зловмисник міг визначити наявність облікового запису в системі, аналізуючи час відповіді сервера під час спроби входу з використанням непридатних паролів. Це дозволяло автоматизованим системам підтверджувати існування конкретних логінів.

Рекомендації:

  • Оновіть Django до версії, що містить виправлення CVE-2024-39329.
  • Перегляньте налаштування політики безпеки паролів, щоб мінімізувати ризики, пов'язані з перерахуванням користувачів.
  • Впровадьте механізми обмеження кількості спроб входу (rate limiting) для захисту від автоматизованого аналізу часу відповіді.

Що це означає для бізнесу

Вразливість CVE-2024-39329 у Django дозволяє зловмисникам перераховувати імена користувачів через аналіз часу відповіді сервера. Хоча це не прямий злам, це полегшує підготовку до цілеспрямованих атак на облікові записи. Розробникам важливо мінімізувати інформацію, яку система видає під час невдалих спроб автентифікації.

Практичний крок: Оновіть Django до безпечної версії. Замовте в Softline аудит безпеки вашого веб-застосунку для впровадження механізмів захисту від перерахування користувачів та налаштування політик обмеження спроб входу.

Використані джерела

  1. djangoproject.com (djangoproject.com)