Нещодавно новина про це заявила у модулі ksmbd виявлено критичну вразливість, який включено до реалізації файлового сервера на основі протоколу SMB вбудований в ядро Linux.
Несправність виявлена дозволяє віддалено досягти виконання коду з правами ядра. Атаку можна здійснити без аутентифікації, достатньо, щоб в системі був активований модуль ksmbd.
Поки що точні деталі щодо методу використання вразливості ще не розкрито Відомо, що вразливість спричинена лише доступом до вже звільненої (використання після звільнення) області пам’яті через неможливість перевірити існування об’єкта перед виконанням операцій з ним.
ДЕТАЛІ ПРО ВРАЗЛИВОСТІ
Ця вразливість дозволяє віддаленим зловмисникам виконувати довільний код на уражених інсталяціях ядра Linux. Для використання цієї вразливості не потрібна автентифікація, але вразливими є лише системи з увімкненим ksmbd.Конкретний недолік існує в обробці команд SMB2_TREE_DISCONNECT. Проблема спричинена відсутністю перевірки існування об’єкта перед виконанням операцій над об’єктом. Зловмисник може використати цю вразливість для виконання коду в контексті ядра.
Згадується, що проблема пов'язана з той факт, що у функц smb2_tree_disconnect(), виділена пам'ять була звільнена для структури ksmbd_tree_connect, але після цього вказівник все ще використовувався під час обробки певних зовнішніх запитів, які містили команди SMB2_TREE_DISCONNECT.
На додаток до вразливості, згаданої в ksmbd, Також виправлено 4 менш небезпечні проблеми:
- ZDI-22-1688 – Віддалене виконання коду з правами ядра через неможливість перевірити фактичний розмір зовнішніх даних перед їх копіюванням у виділений буфер у коді обробки атрибутів файлу. Небезпека вразливості зменшується тим фактом, що атаку може здійснити лише автентифікований користувач.
- ZDI-22-1691 – Віддалений витік інформації з пам’яті ядра через некоректну перевірку вхідних параметрів у обробнику команди SMB2_WRITE (атаку може здійснити лише автентифікований користувач).
- ZDI-22-1687: Виклик віддаленої відмови в обслуговуванні через вичерпання доступної системної пам’яті через неправильне звільнення ресурсу в обробнику команди SMB2_NEGOTIATE (атаку можна здійснити без автентифікації).
- ZDI-22-1689 – Віддалений збій ядра через відсутність належної перевірки параметрів команди SMB2_TREE_CONNECT, що призводить до зчитування з області буфера (атаку може здійснити лише автентифікований користувач).
Підтримка запуску SMB-сервера за допомогою модуля ksmbd є в пакеті Samba з версії 4.16.0.
На відміну від сервера SMB у просторі користувача, ksmbd є більш ефективним з точки зору продуктивності, споживання пам’яті та інтеграції з розширеними функціями ядра. Ksmbd рекламується як високопродуктивне розширення Samba, яке підключається та працює, яке за потреби інтегрується з інструментами та бібліотеками Samba.
Код ksmbd був написаний Намдже Джеоном із Samsung і Хюнчулом Лі з LG, а підтримувався Стівом Френчем із Microsoft, супроводжувачем підсистем CIFS/SMB2/SMB3 у ядрі Linux і давнім членом команди. Розробник Samba, який створив значний внесок у впровадження підтримки протоколу SMB/CIFS у Samba та Linux.
Варто зазначити це проблема існує з ядра 5.15, випущено в листопаді 2021 р. і негласно виправлено в оновленнях 5.15.61, 5.18.18 і 5.19.2, згенерованих у серпні 2022 р. Оскільки проблемі ще не присвоєно ідентифікатор CVE, поки що немає точної інформації про те, як її виправити. проблема в розподілах.
нарешті, якщо ти є цікаво дізнатися про це більше, Ви можете перевірити деталі У наступному посиланні.