Уязвимости в модула ksmbd на ядрото на Linux, позволяващи отдалено да изпълнят свой код

В модула ksmbd, предлагащият вградена в ядрото Linux реализация на файлов сървър на базата на протокола SMB, са открити 14 уязвимости, от които четири позволяват отдалечено изпълнение на код с правата на ядрото. Атаката може да бъде извършена без удостоверяване, стига модулът ksmbd да е активиран в системата. Проблемите се проявяват от ядрото 5.15, в което е приет модулът ksmbd. Уязвимостите са отстранени в обновленията на ядрото 6.3.2, 6.2.15, 6.1.28 и 5.15.112. Можете да проследите корекциите в дистрибутивите на следните страници: Debian, Ubuntu, Gentoo, RHEL, SUSE, Fedora, Gentoo, Arch.

Открити проблеми:

  • CVE-2023-32254, CVE-2023-32250, CVE-2023-32257, CVE-2023-32258 — отдалечено изпълнение на код с правата на ядрото поради липсата на подходящи блокировки на обекти при обработка на външни заявки, съдържащи команди SMB2_TREE_DISCONNECT, SMB2_SESSION_SETUP, SMB2_LOGOFF и SMB2_CLOSE, което води до експлоатационно състояние на състезание. Атаката може да бъде извършена без удостоверяване.
  • CVE-2023-32256 — изтичане на съдържание от области на ядрото поради състояние на състезание при обработка на команди SMB2_QUERY_INFO и SMB2_LOGOFF. Атаката може да бъде извършена без удостоверяване.
  • CVE-2023-32252, CVE-2023-32248 — отдалечен отказ в обслужването поради разименуване на нулев указател при обработка на команди SMB2_LOGOFF, SMB2_TREE_CONNECT и SMB2_QUERY_INFO. Атаката може да бъде извършена без удостоверяване.
  • CVE-2023-32249 — възможност за прихващане на сесия с потребител поради липсата на подходяща изолация при обработка на идентификатора на сесията в многоканален режим.
  • CVE-2023-32247, CVE-2023-32255 — отказ в обслужването поради изтичане на памет при обработка на команда SMB2_SESSION_SETUP. Атаката може да бъде извършена без удостоверяване.
  • CVE-2023-2593 — отказ в обслужването поради изчерпване на наличната памет, причинено от грешка, водеща до неосвобождаване на паметта при обработка на нови TCP връзки. Атаката може да бъде извършена без удостоверяване.
  • CVE-2023-32253 — отказ в обслужването поради настъпване на взаимна блокировка при обработка на команда SMB2_SESSION_SETUP. Атаката може да бъде извършена без удостоверяване.
  • CVE-2023-32251 — липса на защита от атаки за подбиране на параметри за удостоверяване (brute force).
  • CVE-2023-32246 — локален потребител на системата, който има право да извлече модула ksmbd, може да постигне изпълнението на своя код на ниво ядрото на Linux.

Освен това, още 5 уязвимости са открити в пакета ksmbd-tools, включващ инструменти за управление и работа с ksmbd, изпълнявани в потребителското пространство. Най-опасните уязвимости (ZDI-CAN-17822, ZDI-CAN-17770, ZDI-CAN-17820, CVE все още не е назначен) позволяват на отдалечен неаутентифициран нападател да изпълни своя код с права root. Уязвимостите произтичат от липсата на проверка на размера на приетите входящи данни преди тяхното копиране в буфера в кода на услугата WKSSVC и в обработчиците на опкодове LSARPC_OPNUM_LOOKUP_SID2 и SAMR_OPNUM_QUERY_USER_INFO. Още две уязвимости (ZDI-CAN-17823, ZDI-CAN-17821) могат да доведат до отдалечен отказ на обслужване без преминаване на аутентификация.

Ksmbd се предлага като високопроизводително и готово за прилагане разширение към Samba за вградени устройства, при необходимост интегрирано с инструменти и библиотеки на Samba. Подкрепата за функционирането на SMB-сървера чрез модула ksmbd е налична в пакета Samba, започвайки от версия 4.16.0. В отличие от SMB-сървера, работещ в потребителското пространство, ksmbd е по-ефективен по отношение на производителността, консумацията на памет и интеграцията с разширените възможности на ядрото. Авторите на кода ksmbd са Namjae Jeon от компания Samsung и Hyunchul Lee от LG, а поддръжката в ядрото се извършва от Стив Френч (Steve French) от компания Microsoft, поддръжник на подсистемата CIFS/SMB2/SMB3 в ядрото на Linux и дългогодишен участник в екипа за разработка на Samba, който е направил значителен принос за реализирането на поддръжка на протоколите SMB/CIFS в Samba и Linux.

Допълнително могат да се отбележат две уязвимости в графичния драйвер vmwgfx, използван за реализиране на 3D-ускорение в среди VMware. Първата уязвимост (ZDI-CAN-20292) позволява на локален потребител да повиши своите привилегии в системата. Уязвимостта произходи от липсата на проверка на състоянието на буфера преди освобождаването му при обработка на обекта vmw_buffer_object, което може да доведе до двойно повикване на функцията free. Втората уязвимост (ZDI-CAN-20110) води до изтичане на съдържанието на ядрена памет поради грешки при организирането на блокировките на обекти GEM.

Източник: opennet.ru

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster