ksmbd modulyje, kuriame yra integruotas branduolio komponentas Linux реализацию файлового сервера на базе протокола SMB, выявлена критическая уязвимость, позволяющая удалённо добиться выполнения своего кода с правами ядра. Атака может быть проведена без аутентификации, достаточно чтобы на системе был активирован модуль ksmbd. Проблема проявляется начиная с ядра 5.15, выпущенного в ноябре 2021 года, и без лишней огласки устранена в обновлениях 5.15.61, 5.18.18 и 5.19.2, сформированных в августе 2022 года. Так как CVE-идентификатор проблеме ещё не присвоен, точной информации об устранении проблемы в дистрибутивах ещё нет.
Išsami informacija apie pažeidžiamumo išnaudojimą kol kas neatskleidžiama, žinoma tik tai, kad pažeidžiamumą sukelia prieiga prie jau atlaisvintos atminties srities (Use-After-Free), nes prieš atliekant operacijas nepatikrinta, ar objektas yra. su tuo. Problema susijusi su tuo, kad funkcijoje smb2_tree_disconnect() buvo atlaisvinta atmintis, skirta ksmbd_tree_connect struktūrai, tačiau po to vis tiek buvo naudojamas žymeklis apdorojant tam tikras išorines užklausas su SMB2_TREE_DISCONNECT komandomis.
Be minėto ksmbd pažeidžiamumo, taip pat ištaisytos 4 mažiau pavojingos problemos:
- ZDI-22-1688 - nuotolinis kodo vykdymas su branduolio teisėmis dėl to, kad prieš nukopijuojant jį į skirtą buferį nepatikrintas tikrasis išorinių duomenų dydis failo atributo apdorojimo kode. Pažeidžiamumo pavojų sumažina tai, kad ataką gali vykdyti tik autentifikuotas vartotojas.
- ZDI-22-1691 - nuotolinis informacijos nutekėjimas iš branduolio atminties dėl neteisingo įvesties parametrų patikrinimo komandų tvarkyklėje SMB2_WRITE (ataką gali vykdyti tik autentifikuotas vartotojas).
- ZDI-22-1687 - nuotolinis paslaugų atsisakymas, kai sistemoje išeikvojama turima atmintis dėl neteisingo išteklių atleidimo SMB2_NEGOTIATE komandų tvarkyklėje (ataka gali būti vykdoma be autentifikavimo).
- ZDI-22-1689 - nuotolinis iškvietimas sugadinti branduolį, nes tinkamai nepatikrinti komandos SMB2_TREE_CONNECT parametrai, todėl nuskaitoma iš buferio ribų (ataką gali vykdyti tik autentifikuotas vartotojas ).
Поддержка обеспечения работы SMB-сервера при помощи модуля ksmbd присутствует в пакете Samba, начиная с выпуска 4.16.0. В отличие от SMB-сервера, работающего в пространстве пользователя, ksmbd более эффективен с точки зрения производительности, потребления памяти и интеграции с расширенными возможностями ядра. Ksmbd преподносится как высокопроизводительное и готовое для применения на встраиваемых устройствах расширение к Samba, при необходимости интегрируемое с инструментами и библиотеками Samba. Авторами кода ksmbd являются Namjae Jeon из компании Samsung и Hyunchul Lee из LG, а сопровождением в составе ядра занимается Стив Френч (Steve French) из компании Microsoft, мэйнтейнер подсистем CIFS/SMB2/SMB3 в ядре Linux ir ilgametis „Samba“ kūrimo komandos narys, reikšmingai prisidėjęs prie SMB/CIFS protokolo palaikymo įdiegimo „Samba“ ir Linux.
Šaltinis: opennet.ru
