DoS Linux и FreeBSD на любой порт при 2kpps
В TCP-стеке ядра Linux выявлена опасная уязвимость (CVE-2018-5390), которая позволяет удалённо вызвать отказ в обслуживании из-за исчерпания доступных ресурсов CPU. Для совершения атаки достаточно отправить поток специальным образом оформленных пакетов на любой открытый TCP-порт. Атака может быть совершена только с реального IP-адреса (спуфинг невозможен так как требуется установка TCP-соединения).
В TCP-стеке ядра Linux выявлена опасная уязвимость (CVE-2018-5390), которая позволяет удалённо вызвать отказ в обслуживании из-за исчерпания доступных ресурсов CPU. Для совершения атаки достаточно отправить поток специальным образом оформленных пакетов на любой открытый TCP-порт. Атака может быть совершена только с реального IP-адреса (спуфинг невозможен так как требуется установка TCP-соединения).

Суть проблемы в том, что при определённых параметрах сегментирования ядро при поступлении каждого пакета вызывает достаточно ресурсоёмкие функции tcp_collapse_ofo_queue() и tcp_prune_ofo_queue(). Из-за неэффективности применяемого алгортима, необходимые для обработки сегментов ресурсы CPU линейно возрастают в зависимости от числа сегментов в очереди пересборки пакетов. При выполнении операции пересборки большого числа сегментов, cоздаваемой нагрузки достаточно, чтобы полностью загрузить процессор при обработке потока с незначительной интенсивностью. Например, для появления существенных задержек в обработке запросов системой для каждого ядра CPU достаточно потока интенсивностью всего 2 тысячи пакетов в секунду.

Уязвимость проявляется на всех ядрах Linux, начиная с выпуска 4.9 (атака может быть проведена и против более старых ядер, но требует существенного более интенсивного потока пакетов). Проблема устранена в обновлении ядра 4.17.12. Обновления пакетов подготовлены для Debian, SUSE и Fedora, и ожидаются для Ubuntu и RHEL.

Дополнение: Проблема также проявляется во FreeBSD и вероятно в других операционных системах. Во FreeBSD проблема пока временно решена через ограничение размера очереди пересборки пакетов (net.inet.tcp.reass.maxqueuelen).
loki
2018-08-07 11:19:43
Avatar

Приятная новость.

Kiano
2018-08-07 15:49:27
Avatar

офигеть

а centos и тд?

Triam
2018-08-07 16:38:55
Avatar

"ожидаются для Ubuntu и RHEL"

centos это фактически rhel без проприетарных пакетов.

You should to log in

loading