Намери грешка в ядрото AF_PACKET и премахна превъртащия се текст в конзолата

наскоро друг проблем беше разкрит в подсистемата AF_PACKET Linux ядро, което позволява на локален непривилегирован потребител да изпълнява код като root или излезте от изолирани контейнери, ако имат root достъп.

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

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

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

Относно уязвимостта в AF_PACKET

Уязвимостта присъства във функцията tpacket_rcv и това се причинява от грешка в изчисляването на променливата netoff.

Нападателят може да създаде условия под който ще напише стойност по-малка от maclen в променливата 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. Права: По всяко време можете да ограничите, възстановите и изтриете информацията си.