Legatus

В ядре Linux 8 лет прожила «дыра», позволяющая запустить троян

Май 06
10:03 2018

Ошибка целочисленного переполнения в одном из драйверов допускала повышение локальных привилегий и запуск произвольного кода в пространстве ядра.

Запуск кода в пространстве ядра
В драйвере ядра ОС Linux выявлена уязвимость, которая позволяет локальному пользователю повысить свои привилегии и осуществлять чтение и запись в значимые области памяти ядра, то есть запустить на Linux любой код, включая вредоносный.
Уязвимость выявили эксперты компании CheckPoint при аудите безопасности ядра Linux и его драйверов. «Баг», как пишут они в отчете, появился в ядре Linux «восемь лет назад».
Технические подробности о «дыре» доступны на сайте CheckPoint.
Уязвимость под индексом CVE 2018-8718 затрагивает внутреннюю функцию mmap(), определяемую файловыми операциями fb_helper в драйвере «udl» от DisplayLink – производителя компьютерных видеокомпонентов и программного обеспечения для них.

В официальном описании говорится, что «функция udl_fb_mmap в drivers/gpu/drm/udl/udl_fb.c в ядре Linux 3.4 и далее вплоть до 4.15 содержит уязвимость класса целочисленное переполнение, благодаря которой локальные пользователи с доступом к драйверу udldrmfb имеют неограниченную возможность считывать и записывать разрешения на страницы физической памяти и таким образом производить запуск кода в пространстве ядра».

«Даже в ядре Linux»
«Модуль video/drm в ядре определяет оболочку mmap() по умолчанию, которая вызывает уже реальный обработчик mmap(), заданный конкретным драйвером. В нашем случае уязвимость содержится во внутреннем mmap(), заданном файловыми операциями fb_helper в драйвере «udl» от DisplayLink», — говорится в описании CheckPoint.
«Ошибка целочисленного переполнения (integer-overflow) возникает, когда арифметические операции выдают значение, находящееся за пределами диапазона, который может быть представлен заданным количеством битов, — поясняет Михаил Зайцев, эксперт по информационной безопасности компании SEC Consult Services. — Чтобы предотвратить подобное, программисты должны реализовывать проверки диапазона. Отсутствие таких проверок — одна из ключевых и часто встречающихся причин возникновения уязвимостей данного типа. Интересно, однако, что за восемь лет этот баг никто так и не обнаружил.
В бюллетене CheckPoint указывается, что даже в таком популярном проекте Open Source, как ядро Linux, всегда можно найти уязвимости, «если знать, где искать».

Источник: cnews.ru

Share

Статьи по теме







0 Комментариев

Хотите быть первым?

Еще никто не комментировал данный материал.

Написать комментарий

Комментировать

Залишаючи свій коментар, пам'ятайте, що зміст та тональність вашого повідомлення можуть зачіпати почуття реальних людей, що безпосередньо чи опосередковано пов'язані із цією новиною. Виявляйте повагу та толерантність до своїх співрозмовників. Користувачі, які систематично порушують це правило, будуть заблоковані.

Website Protected by Spam Master


Останні новини

Ювентус собирается расторгнуть контракт с травматичным форвардом

Читать всю статью

Ми у соцмережах




Наші партнёри

UA.TODAY - Украина Сегодня UA.TODAY
enfrdeitplptruestruk