Из ядра Linux удалена поддержка UDP Fragmentation Offload

good-penguin.png

Андрей Коновалов (Andrey Konovalov) нашел с помощью фаззера syzkaller последовательность системных вызовов, которая портит память ядра, если в системе есть хотя бы один сетевой интерфейс с MTU < 65535 и включенной опцией UDP Fragmentation Offload. На самом деле требуется еще право менять опции интерфейса, но его легко получить через непривилегированные пользовательские пространства имен. Они же позволяют создать такой интерфейс, если его не было в системе изначально. Итог: на некоторых ядрах, поставляемых Ubuntu, продемонстрировано повышение привилегий от обычного пользователя до root (CVE-2017-1000112). Проблема существует также в ядрах не от Ubuntu.

David S. Miller в качестве решения проблемы предложил удалить поддержку UDP Fragmentation Offload и выслал соответствующий набор патчей в рассылку netdev. Мотивация: «эту операцию поддерживает очень небольшое число устройств, польза от нее в лучшем случае сомнительна, и эта операция добавляет немало сложности в пути обработки данных». На данный момент патчи приняты в ветку net-next.

>>> Подробности

©  Linux.org.ru