කර්නලය තුළ හසුරුවන්නන් ක්රියාත්මක කිරීමට ඉඩ සලසන eBPF උප පද්ධතියේ නව අවදානම් දෙකක් සොයාගෙන ඇත. Linux в специальной виртуальной машине с JIT. Обе уязвимость дают возможность выполнить свой код с правами ядра, вне изолированной виртуальной машины eBPF. Информацию о проблемах опубликовала команда Zero Day Initiative, проводящая соревнования Pwn2Own, в ходе которых в этом году были продемонстрированы три атаки на Ubuntu Linux, в которых использовались ранее неизвестные уязвимости (связаны ли уявзимости в eBPF с данными атаками не сообщается).
- CVE-2021-3490 යනු eBPF ALU32 හි bitwise AND, OR, සහ XOR මෙහෙයුම් ක්රියාත්මක කිරීමේදී 32-bit අගයන් සඳහා සීමාවෙන් පිටත පරීක්ෂා කිරීමේ ඌනතාවය නිසා ඇතිවන අවදානමකි. ප්රහාරකයෙකුට වෙන් කරන ලද බෆරයේ සීමාවෙන් පිටත දත්ත කියවීමට සහ ලිවීමට මෙම දෝෂය උපයෝගී කර ගත හැක. XOR මෙහෙයුම් සමඟ ගැටළුව 5.7-rc1 කර්නල් අනුවාදයෙන් ආරම්භ වන අතර 5.10-rc1 නිකුතුවෙන් ආරම්භ වන AND සහ OR මෙහෙයුම් සමඟ පවතී.
- CVE-2021-3489 — මෙම අවදානම ඇති වන්නේ ring buffer ක්රියාත්මක කිරීමේ දෝෂයක් නිසා වන අතර එය bpf_ringbuf_reserve ශ්රිතය මඟින් වෙන් කරන ලද මතක ප්රමාණය සත්ය ring buffer ප්රමාණයට වඩා කුඩා විය හැකි බවට ඇති හැකියාව පරීක්ෂා නොකිරීමට සම්බන්ධ වේ. මෙම ගැටළුව 5.8-rc1 නිකුතුවේ සිට පවතී.
Статус исправления уязвимостей в дистрибутивах можно проследить на данных страницах: Ubuntu, Debian, RHEL, Fedora, SUSE, Arch). Исправления также доступны в виде патчей (CVE-2021-3489, CVE-2021-3490). Возможность эксплуатации проблемы зависит от доступности пользователю системного вызова eBPF. Например, в конфигурации по умолчанию в RHEL для эксплуатации уязвимости требуется наличие у пользователя прав CAP_SYS_ADMIN.
Отдельно можно отметить ещё одну уязвимость в ядре Linux — CVE-2021-32606, позволяющую локальному пользователю поднять свои привилегии до уровня root. Проблема проявляется начиная с ядра Linux 5.11 и вызвана состоянием гонки в реализации протокола CAN ISOTP, которое даёт возможность изменить параметры привязки к сокету из-за отсутствия установки должных блокировок в функции isotp_setsockopt() при обработке флага CAN_ISOTP_SF_BROADCAST.
ISOTP සොකට් එක වැසූ පසු, ලබන්නාගේ සොකට් බන්ධනය ක්රියාත්මකව පවතින අතර, සම්බන්ධිත මතකය නිදහස් වූ පසු ලබන්නාට සොකට් ආශ්රිත ව්යුහයන් භාවිතා කිරීම දිගටම කරගෙන යා හැක (isotp_rcv() ඇමතීමේදී isotp_sock ව්යුහයට ප්රවේශ වීම නිසා භාවිතයට පසු-නිදහස් වේ). දත්ත හැසිරවීමෙන්, sk_error_report() ශ්රිත දර්ශකය අභිබවා ගොස් කර්නල් මට්ටමින් අභිරුචි කේතය ක්රියාත්මක කළ හැකිය.
මූලාශ්රය: opennet.ru
