Уязвимость в ядре Linux прокладывает путь для дальнейших кибератак

Уязвимость в ядре Linux прокладывает путь для дальнейших кибератак

Уязвимость позволяет обходить KASLR и раскрывать данные в стеке ядра.

image

Эксперты Cisco Talos обнаружили в ядре Linux уязвимость ( CVE-2020-28588 ), позволяющую раскрывать данные в стеке ядра. Проблема существует в функции /proc/pid/syscall 32-битных ARM-устройств под управлением Linux из-за некорректного преобразования числовых значений при чтении файла. По словам экспертов, атаку с эксплуатацией уязвимости «невозможно обнаружить в сети удаленно».

С помощью нескольких команд злоумышленники могут вывести 24 байта неинициализированной памяти стека, которые можно использовать для обхода рандомизации размещения адресного пространства ядра (KASLR). KASLR – метод защиты от эксплоитов, заключающийся в размещении различных объектов в случайном порядке в целях предотвращения предсказуемых шаблонов, которые могут угадать злоумышленники.

Proc представляет собой псевдо-файловую систему в Unix-подобных операционных системах, использующуюся для динамического доступа к процессам обработки данных в ядре. Proc представляет информацию о процессах и другую системную информацию в иерархической файловой структуре. Например, она содержит подкаталоги /proc/[pid], каждый из которых содержит файлы и подкаталоги, раскрывающие информацию о конкретных процессах, доступную для чтения с использованием соответствующего идентификатора процесса. Что касается файла «syscall», – это легитимный файл Linux, содержащий журналы системных вызовов, используемых ядром.

Злоумышленник может проэксплуатировать уязвимость, прочитав /proc/<pid>/syscall в любой Linux-системе, ядро которой было настроено с помощью CONFIG_HAVE_ARCH_TRACEHOOK. Этот файл раскрывает номер системного вызова и регистры аргументов для системного вызова, выполняемого в данный момент процессом, за которыми следуют значения указателя стека и регистры счетчика программ. Отображаются значения всех шести регистров аргументов, хотя для большинства системных вызовов используется меньше регистров.

Уязвимость была исправлена в версиях ядра Linux 5.10-rc4, 5.4.66 и 5.9.8.


Мы рассказываем о самых актуальных угрозах и событиях, которые оказывают влияние на обороноспособность стран, бизнес глобальных корпораций и безопасность пользователей по всему миру в нашем Yotube выпуске.