Исследователи описали эффективный метод DoS-атаки на популярные веб-платформы

Исследователи описали новый метод DoS-атаки на популярные веб-платформы

Исследователи описали новый метод DoS-атаки на популярные веб-платформы

На 28 конгрессе Chaos Communication, проходящем в эти дни в немецкой столице, специалисты представили информацию об изъяне, который существует в большинстве программных сред для веб-приложений и позволяет потенциальному злоумышленнику вызывать отказы в обслуживании без применения обширных вредоносных сетей и значительных вычислительных ресурсов.


В процессе работы сетевых программ на языках PHP, Java, Python и JavaScript используется хэширование, которое позволяет ускорять обработку ряда операций. Приложения вычисляют обычные математические хэши (не криптографические), знают, что при их генерации возможны столкновения (т.е. совпадения выходных значений функций хэширования), и надлежащим образом обрабатывают соответствующие коллизии. Процедура надежна, если ею не злоупотреблять. Однако, по данным немецких специалистов, злонамеренное использование ее особенностей может довольно быстро перегрузить сервер.

Известно, что нападающий, который знаком со спецификой используемых в том или ином продукте алгоритмов хэширования, может предварительно вычислять определенные аргументы, которые при прохождении через хэш-функцию будут давать одно и то же итоговое значение. Процедура сравнения получаемых в результате подобной деятельности хэшей превращается в квадратичную функцию, на работу с которой требуются существенные вычислительные ресурсы. В своей презентации исследователи показали, как отправка примерно двух мегабайт предварительно найденных значений заставляет сервер производить более 40 миллиардов сравнений получаемых строк.

В качестве цели был выбран компьютер с Apache Tomcat; в начале своего доклада специалисты отправили на него несколько особых аргументов хэш-функций, и на всем протяжении их презентации аудитория могла наблюдать, как нагрузка на ЦП сервера не опускалась ниже 100%. В качестве возможного решения исследователи предложили разработчикам вышеупомянутых языков программирования ввести механизм случайной генерации ключей, используемых при вычислении хэшей; это помешает злоумышленнику вычислять специфические входные значения для подобных нападений. Необходимо заметить, что, например, в Perl такой механизм появился еще в сентябре 2003 года.

В Windows 11 нашли способ включить нативный NVMe — SSD ускорились до 15%

Microsoft сделала важный шаг в сторону ускорения Windows — компания объявила, что Windows Server 2025 получит нативную поддержку NVMe-накопителей. Есть хорошая новость для обычных пользователей: поскольку архитектура Windows 11 во многом унаследована от Windows 10, энтузиасты уже нашли способ включить нативную NVMe-поддержку вручную — через правку реестра.

И, судя по первым отзывам, эффект вполне ощутимый. Пользователи, которые решились на эксперимент, сообщают о:

  • снижении задержек;
  • росте скорости чтения и записи;
  • приросте производительности примерно на 10–15%;
  • снижении нагрузки на процессор.

 

 

Кроме того, система становится устойчивее в сценариях с активной работой с диском — когда несколько приложений одновременно нагружают хранилище, Windows реже «замирает» целиком.

 

Впрочем, магии для всех не случилось: часть пользователей признаётся, что не заметила вообще никаких изменений после включения функции.

Исторически Windows работает со всеми накопителями через SCSI. Даже NVMe-диски в системе фактически «притворяются» SCSI-устройствами — команды NVMe просто переводятся в понятный Windows формат. Под это поведение за годы подстроились драйверы, утилиты и софт.

При переходе на нативный NVMe этот слой исчезает — и тут начинаются нюансы:

  • некоторые утилиты управления дисками перестают видеть NVMe-накопители;
  • другие, наоборот, обнаруживают их дважды;
  • может измениться идентификатор диска, из-за чего программы резервного копирования и другой софт теряют накопитель.

По данным Microsoft, нативная NVMe-поддержка в Windows рассчитана на 64 000 очередей, каждая из которых может обрабатывать 64 000 команд одновременно. В теории — это более 4 миллиардов операций в очереди.

Для сравнения: SCSI-протоколы ограничены 32 командами на очередь. Разница — колоссальная, особенно с учётом современных NVMe-дисков и систем с DDR5.

Если вы любите выжимать максимум из железа — попробовать можно уже сейчас, инструкции доступны. Но есть важное «но»:
перед экспериментами обязательно сделайте резервную копию системы или протестируйте всё в виртуальной среде. Правка реестра на таком уровне вполне может привести к нестабильной работе Windows.

В долгосрочной перспективе нативный NVMe, скорее всего, станет стандартом, когда разработчики начнут учитывать его в своих продуктах. А пока это история для энтузиастов, которые готовы немного рискнуть ради скорости.

RSS: Новости на портале Anti-Malware.ru