Grub2
Уязвимости
54
Эксплуатируемые
0
Макс. CVSS
8.8
Макс. EPSS
0.01738
Распределение по критичности
Критический
0
Высокий
24
Средний
29
Низкий
1
Также сопоставлено как (исходные строки): grub2
Топ уязвимостей
CVE-2024-56737GNU GRUB (aka GRUB2) до версии 2.12 имеет переполнение буфера на основе кучи в fs/hfs.c через специально созданные данные sblock в файловой системе HFS.
CVE-2022-2601Переполнение буфера было обнаружено в grub_font_construct_glyph(). Злонамеренно созданный шрифт pf2 может привести к переполнению при вычислении значения max_glyph_size, выделяя буфер меньшего размера, чем необходимо, для глифа, что, в свою очередь, приводит к переполнению буфера и записи за пределами выделенной области памяти на основе кучи. Злоумышленник может использовать эту уязвимость для обхода механизма безопасной загрузки.
CVE-2020-10713Обнаружена уязвимость в grub2 до версии 2.06. Злоумышленник может использовать уязвимость GRUB 2 для перехвата и фальсификации процесса проверки GRUB. Эта уязвимость также позволяет обойти защиту Secure Boot. Чтобы загрузить ненадежное или измененное ядро, злоумышленнику сначала необходимо получить доступ к системе, например, получить физический доступ, получить возможность изменить сеть pxe-boot или иметь удаленный доступ к сетевой системе с правами root. Имея этот доступ, злоумышленник может затем создать строку, чтобы вызвать переполнение буфера, внедрив вредоносную полезную нагрузку, которая приводит к произвольному выполнению кода в GRUB. Наибольшая угроза от этой уязвимости - конфиденциальность и целостность данных, а также доступность системы.
CVE-2022-28733Недостаток памяти в grub_net_recv_ip4_packets; злонамеренно составленный IP-пакет может привести к недостатку памяти в функции grub_net_recv_ip4_packets() для значения rsm->total_len. В определенных обстоятельствах значение total_len может завернуться к маленькому целому числу, которое будет использоваться при выделении памяти. Если атака будет успешна, последующие операции могут записать данные за пределами буфера.
CVE-2025-61662Уязвимость Use-After-Free была обнаружена в модуле Gettext GRUB. Этот недостаток проистекает из ошибки программирования, когда команда gettext остается зарегистрированной в памяти после разгрузки ее модуля. Злоумышленник может использовать это условие, призвав к осиротевшему командовению, в результате чего приложение получит доступ к местоположению памяти, которое больше не является действительным. Злоумышленник может использовать эту уязвимость, чтобы вызвать сбой, что приведет к отказу в обслуживании. Возможный риск целостности данных или компрометации конфиденциальности не отбрасывается.
CVE-2025-1125При чтении данных из файловой системы hfs модуль файловой системы grub использует параметры, контролируемые пользователем, из метаданных файловой системы для вычисления размера внутренних буферов, однако упускает из виду правильную проверку на переполнения целых чисел. Зловредно сконструированная файловая система может привести к тому, что некоторые из этих расчетов размера буфера перейдут за пределы допустимого, заставляя выполнять операцию grub_malloc() с меньшим размером, чем ожидалось. В результате функция hfsplus_open_compressed_real() будет записывать за пределами длины внутреннего буфера. Этот дефект может быть использован для повреждения критических внутренних данных grub и может привести к выполнению произвольного кода, обходя защиты безопасной загрузки.
CVE-2025-0689При чтении данных с диска модуль файловой системы UDF загрузчика grub использует метаданные длины данных, контролируемые пользователем, для выделения своих внутренних буферов. В определенных сценариях, при итерации по секторам диска, он предполагает, что размер считывания с диска всегда меньше размера выделенного буфера, что не гарантируется. Заcrafted образ файловой системы может привести к переполнению буфера на основе кучи, что приведет к повреждению критических данных и рискованному выполнению произвольного кода, обойдя защиту безопасного загрузки.
CVE-2025-0678В grub2 была обнаружена ошибка. При чтении данных из файловой системы squash4 модуль grub's squash4 fs использует параметры, контролируемые пользователем, из геометрии файловой системы для определения внутреннего размера буфера, однако неправильно проверяет на переполнение целых чисел. Злоумышленно созданная файловая система может привести к переполнению некоторых из этих расчетов размера буфера, вызывая выполнение операции grub_malloc() с меньшим размером, чем ожидалось. В результате direct_read() будет выполнять запись за пределами кучи во время чтения данных. Эта ошибка может быть использована для повреждения внутренней критической информации grub и может привести к произвольному выполнению кода, обходя защиту безопасной загрузки.
CVE-2024-45782В файловой системе HFS была обнаружена уязвимость. При чтении имени тома HFS в grub_fs_mount() драйвер файловой системы HFS выполняет strcpy(), используя предоставленное пользователем имя тома в качестве входа, не проверяя должным образом длину имени тома. Эта проблема может привести к записи вне границ в области кучи, влияя на целостность конфиденциальных данных grub и в конечном итоге приводя к обходу защиты безопасной загрузки.
CVE-2022-28735Проверка shim_lock в GRUB2 позволяет загружать нестандартные файлы на системах с безопасной загрузкой на основе shim. Разрешение загрузки таких файлов может привести к загрузке неподтвержденного кода и модулей в GRUB2, нарушая цепочку доверия безопасной загрузки.
CVE-2025-0624В grub2 была обнаружена ошибка. Во время процесса сетевой загрузки, когда пытается найти файл конфигурации, grub копирует данные из переменной окружения, контролируемой пользователем, в внутренний буфер с использованием функции grub_strcpy(). На этом этапе он не учитывает длину переменной окружения при выделении внутреннего буфера, что приводит к записи вне границ. Если это правильно эксплуатировать, эта проблема может привести к выполнению удаленного кода через тот же сетевой сегмент, где grub ищет информацию о загрузке, что может быть использовано для обхода защиты безопасной загрузки.
CVE-2020-25647Обнаружена уязвимость в grub2 в версиях до 2.06. Во время инициализации USB-устройства дескрипторы считываются с очень небольшим контролем границ и предполагают, что USB-устройство предоставляет достоверные значения. В случае успешной эксплуатации злоумышленник может вызвать повреждение памяти, приводящее к произвольному выполнению кода, что позволит обойти механизм безопасной загрузки. Наибольшая угроза от этой уязвимости заключается в конфиденциальности и целостности данных, а также в доступности системы.
CVE-2023-4692В драйвере файловой системы NTFS grub2 обнаружена ошибка записи за границами. Эта проблема может позволить злоумышленнику предоставить специально созданный образ файловой системы NTFS, что приведет к повреждению метаданных кучи grub. В некоторых случаях атака также может повредить метаданные кучи прошивки UEFI. В результате может быть достигнуто выполнение произвольного кода и обход защиты безопасной загрузки.
CVE-2021-3697Специально созданное изображение JPEG может привести к тому, что программа чтения JPEG переполнит свой указатель данных, позволяя записывать управляемые пользователем данные в кучу. Для успешного выполнения злоумышленнику необходимо выполнить некоторую сортировку макета кучи и создать изображение со злонамеренным форматом и полезной нагрузкой. Эта уязвимость может привести к повреждению данных и возможному выполнению кода или обходу безопасной загрузки. Эта ошибка затрагивает grub2 версии до grub-2.12.
CVE-2021-3695Специально созданное 16-битное изображение PNG в оттенках серого может привести к записи за пределы границ в области кучи. Злоумышленник может воспользоваться этим, чтобы вызвать повреждение данных кучи или, в конечном итоге, выполнение произвольного кода и обойти защиту безопасной загрузки. Эту проблему сложно эксплуатировать, поскольку злоумышленнику необходимо выполнить некоторую сортировку макета кучи для достижения значительных результатов, а также значения, записываемые в память, повторяются три раза подряд, что затрудняет создание допустимых полезных нагрузок. Эта ошибка затрагивает grub2 версии до grub-2.12.
CVE-2021-20233Обнаружена уязвимость в grub2 в версиях до 2.06. Setparam_prefix() в коде рендеринга меню выполняет вычисление длины, исходя из предположения, что выражение заключенной в кавычки одиночной кавычки потребует 3 символа, в то время как на самом деле требуется 4 символа, что позволяет злоумышленнику повредить память на один байт для каждой кавычки во входных данных. Наибольшая угроза от этой уязвимости заключается в конфиденциальности и целостности данных, а также в доступности системы.
CVE-2021-20225Обнаружена уязвимость в grub2 в версиях до 2.06. Парсер параметров позволяет злоумышленнику записывать данные за конец буфера, выделенного в куче, вызывая определенные команды с большим количеством определенных коротких форм параметров. Наибольшая угроза от этой уязвимости заключается в конфиденциальности и целостности данных, а также в доступности системы.
CVE-2020-27779Обнаружена ошибка в grub2 в версиях до 2.06. Команда cutmem не учитывает блокировку Secure Boot, позволяя привилегированному злоумышленнику удалять диапазоны адресов из памяти, создавая возможность обойти защиту SecureBoot после надлежащей сортировки макета памяти grub. Самая большая угроза от этой уязвимости - конфиденциальность и целостность данных, а также доступность системы.
CVE-2020-27749Уязвимость была обнаружена в grub2 в версиях до 2.06. Присутствующие имена переменных разворачиваются в командной строке в соответствующее содержимое переменных с использованием буфера стека размером 1 КБ для временного хранения без достаточной проверки границ. Если функция вызывается с командной строкой, которая ссылается на переменную с достаточно большой полезной нагрузкой, возможно переполнение буфера стека, повреждение фрейма стека и управление выполнением, что также может обойти защиту Secure Boot. Самая большая угроза от этой уязвимости - конфиденциальность и целостность данных, а также доступность системы.
CVE-2020-25632Обнаружена ошибка в grub2 в версиях до 2.06. Реализация rmmod позволяет выгружать модуль, используемый в качестве зависимости, без проверки, загружен ли какой-либо другой зависимый модуль, что приводит к сценарию использования после освобождения. Это может позволить выполнить произвольный код или обойти защиту Secure Boot. Самая большая угроза от этой уязвимости — конфиденциальность и целостность данных, а также доступность системы.
CVE-2020-14372В grub2 в версиях до 2.06 обнаружена ошибка, из-за которой некорректно включается использование команды ACPI при включенной безопасной загрузке. Эта ошибка позволяет злоумышленнику с привилегированным доступом создать таблицу Secondary System Description Table (SSDT), содержащую код для перезаписи содержимого переменной блокировки ядра Linux непосредственно в память. Затем таблица загружается и выполняется ядром, обходя его блокировку безопасной загрузки и позволяя злоумышленнику загружать неподписанный код. Наибольшую угрозу эта уязвимость представляет для конфиденциальности и целостности данных, а также для доступности системы.
CVE-2022-3775При рендеринге определенных последовательностей unicode код шрифта grub2 не проверяет должным образом, ограничена ли ширина и высота указанного глифа размером битовой карты. Как следствие, злоумышленник может создать входные данные, которые приведут к записи за пределы кучи grub2, что приведет к повреждению памяти и проблемам с доступностью. Хотя произвольное выполнение кода является сложным, его нельзя исключать.
CVE-2022-28736В функции grub_cmd_chainloader() имеется уязвимость использования после освобождения; команда chainloader используется для загрузки операционных систем, которые не поддерживают multiboot и не имеют прямой поддержки от GRUB2. При выполнении команды chainloader более одного раза возникает уязвимость использования после освобождения. Если злоумышленник сможет контролировать шаблон выделения памяти GRUB2, конфиденциальные данные могут быть раскрыты, и может быть достигнуто произвольное выполнение кода.
CVE-2022-28734Запись за пределами буфера при обработке разрозненных HTTP-заголовков; при обработке разрозненных HTTP-заголовков код GRUB2 случайно перемещает внутренний буфер данных на одну позицию. Это может привести к записи за пределами буфера при разборе HTTP-запроса, записи нулевого байта за пределами буфера. Вполне вероятно, что контролируемый злоумышленником набор пакетов может привести к повреждению метаданных внутренней памяти GRUB2.
CVE-2024-45781В grub2 была обнаружена ошибка. При чтении имени символьной ссылки из файловой системы UFS grub2 не проверяет длину строки, принятую в качестве входного параметра. Отсутствие проверки может привести к записи за пределами кучи, что вызывает проблемы с целостностью данных и в конечном итоге позволяет злоумышленнику обойти защиту безопасной загрузки.