Обнаружена ошибка в ядре AF_PACKET и удалена прокрутка текста в консоли.

Недавно еще одна проблема была обнаружена в подсистеме AF_PACKET ядра Linux, которое позволяет локальному непривилегированному пользователю запускать код от имени пользователя root или выйдите из изолированных контейнеров, если у них есть root-доступ.

В опубликованной информации упоминается, что для создания сокета AF_PACKET и использования уязвимости требуются полномочия CAP_NET_RAW.

Однако отмечается, что пользователь без прав может получить разрешение указан в контейнерах, созданных в системах с включенными пространствами имен пользователей.

Например, пространства имен пользователей включены по умолчанию в Ubuntu и Fedora, но не включены в Debian и RHEL. В то время как в Android процесс медиа-сервера имеет право создавать сокеты AF_PACKET, через которые можно использовать уязвимость.

Об уязвимости в AF_PACKET

Уязвимость присутствует в функции tpacket_rcv и это вызвано ошибкой в ​​вычислении переменной netoff.

Злоумышленник может создать условия под которым напишет значение меньше, чем маклен в переменной netoff, которая вызовет переполнение путем вычисления «macoff = netoff-maclen» с последующим выполнением этого может неправильно установить указатель на буфер для входящих данных.

В результате злоумышленник может инициировать запись от 1 до 10 байтов в область за пределами выделенного буфера. 

Просчет присутствует в ядре с июля 2008 года, то есть во всех текущих ядрах, однако теперь известная возможность использовать его для записи в область за пределами выделенного буфера (уязвимость) предположительно появилась в феврале 2016 года (из ядра версии 4.6-rc1 и выше) с развитием поддержки virtio_net.

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

Для тех, кто хочет узнать, доступно ли уже исправление для их дистрибутива, они могут отслеживать появление обновлений пакетов в различных дистрибутивах на следующих страницах: Ubuntu, Fedora, SUSE, Debian, RHEL, Арка.

Поддержка прокрутки текста в текстовой консоли была удалена.

С другой стороны, говоря о ядре Linux, было также объявлено, что код прокрутки текста был удален из реализации текстовой консоли в ядре Linux (CONFIG_VGACON_SOFT_SCROLLBACK).

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

И это несколько месяцев назад в vgacon была обнаружена и исправлена ​​уязвимость (CVE-2020-14331), которая могла вызвать переполнение буфера из-за отсутствия надлежащих проверок доступности памяти в буфере прокрутки. Уязвимость привлекла внимание разработчиков кто организовал фаззинг-тесты кода vgacon в syzbot.

Кроме того дальнейшие проверки выявили еще несколько проблем Аналогично в коде vgacon, а также проблемы с программной реализацией смещения в контроллере fbcon.

К сожалению, код проблемы долгое время оставался без внимания, предположительно из-за того, что разработчики перешли на использование графических консолей, а текстовые консоли перестали использоваться (люди продолжают использовать консоли vgacon и fbcon, но они не были основным интерфейсом ядра в течение десятилетий и распространили обе функции вроде встроенной прокрутки контроллера (Shift + PgUp / PgUp), вероятно, мало востребованы).

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

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


Оставьте свой комментарий

Ваш электронный адрес не будет опубликован. Обязательные для заполнения поля помечены *

*

*

  1. Ответственный за данные: AB Internet Networks 2008 SL
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.