Компания Netflix выявила (https://www.openwall.com/lists/oss-security/2019/06/17/5) несколько критических уязвимостей (https://github.com/Netflix/security-bulletins/blob/master/ad...) в TCP-стеках Linux и FreeBSD, которые позволяют удалённо инициировать крах ядра или вызвать чрезмерное потребление ресурсов при обработке специально оформленных TCP-пакетов (packet-of-death). Проблемы вызваны (https://access.redhat.com/security/vulnerabilities/tcpsack) ошибками в обработчиках максимального размера блока данных в TCP-пакете (MSS, Maximum segment size) и механизма выборочного подтверждения соединений (SACK, TCP Selective Acknowledgement).
- CVE-2019-11477 (https://security-tracker.debian.org/tracker/CVE-2019-11477) (SACK Panic) - проблема проявляется в ядрах Linux начиная с 2.6.29 и позволяет вызвать крах (panic) ядра через отправку серии SACK-пакетов из-за возникновения целочисленного переполнения в обработчике. В качестве обходных путей защиты можно отключить обработку SACK (записать 0 в /proc/sys/net/ipv4/tcp_sack) или заблокировать (https://github.com/Netflix/security-bulletins/blob/master/ad...) соединения с низким MSS (работает только при выставлении sysctl net.ipv4.tcp_mtu_probing в 0 и может нарушить работу некоторых нормальных соединений с низким MSS);
- CVE-2019-11478 (https://security-tracker.debian.org/tracker/CVE-2019-11478) (SACK Slowness) - приводит к нарушению работы механизма SACK (при использовании ядра Linux младше 4.15) или избыточному потреблению ресурсов. Проблема проявляется при обработке специально оформленных SACK-пакетов, которые можно использовать для фрагментирования очереди повторной передачи (TCP retransmission). Обходные пути защиты аналогичны предыдущей уязвимости;
- CVE-2019-5599 (https://security-tracker.debian.org/tracker/CVE-2019-5599) (SACK Slowness) - позволяет вызвать фрагментацию карты отправленных пакетов при обработке специальной последовательности SACK в рамках одного TCP-соединения и вызвать выполнение ресурсоёмкой операции перебора списка. Проблема проявляется во FreeBSD 12 с механизмом определения потери пакетов RACK. В качестве обходной меры можно отключить модуль RACK;
- CVE-2019-11479 (https://security-tracker.debian.org/tracker/CVE-2019-11478) - атакующий может вызвать в ядре Linux разделение ответов на несколько TCP-сегментов, каждый из которых включает только 8 байт данных, что может привести к существенному повышению трафика, увеличению нагрузки на CPU и забиванию канала связи. В качестве обходного метода защиты рекомендовано заблокировать (https://github.com/Netflix/security-bulletins/blob/master/ad...) соединения с низким MSS.
В ядре Linux проблемы устранены в выпусках 4.4.182, 4.9.182, 4.14.127, 4.19.52 и 5.1.11. Исправление для FreeBSD доступно в виде патча (https://github.com/Netflix/security-bulletins/blob/master/ad...). В дистрибутивах обновления пакетов с ядром уже выпущено для Debian (https://security-tracker.debian.org/tracker/CVE-2019-11477), RHEL (https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2019-11477), SUSE/openSUSE (https://www.suse.com/security/cve/CVE-2019-11477/). Исправление в процессе подготовки в Ubuntu (https://people.canonical.com/~ubuntu-security/cve/2019/CVE-2...), Fedora (https://bodhi.fedoraproject.org/updates/?releases=F30&type=s...) и Arch Linux (https://security.archlinux.org/).
URL: https://www.openwall.com/lists/oss-security/2019/06/17/5
Новость: https://www.opennet.ru/opennews/art.shtml?num=50889