linux_kernel_cves
Это простой проект для отслеживания CVE в исходном ядре Linux.
Индивидуальные дистрибутивы (RHEL, Debian, Ubuntu и т. д) не часто выполняют хорошую работу по отслеживанию CVE для своих собственных ядер.
Этот проект призван помочь в устранении этой пустоты.
В настоящее время все выходные данные хранятся в файле CVEs.txt.
Результат был сгенерирован автоматически с помощью набора инструментов, которые еще не были полностью протестированы или обнародованы.
Как просмотреть данные
Существует два способа просмотра / использования данных.
Самый простой – это веб-интерфейс на www.linuxkernelcves.com.
Здесь вы можете просматривать CVE по потоку или по идентификатору CVE.
Второй способ находится здесь на странице GitHub.
На GitHub данные выводятся как в формате JSON, так и в текстовом формате.
Обе страницы предлагают одни и те же данные.
Замечание по безопасности Linux
Отслеживание, смягчение и исправление CVE – это лишь небольшая часть поддержки безопасного ядра.
Позвольте мне пояснить, вы можете исправить все известные CVE и по-прежнему быть уязвимыми.
Некоторые риски могут быть смягчены путем правильной настройки вашего ядра / системы.
Я предлагаю вам посетить проект самозащиты ядра и другие страницы безопасности ядра для получения дополнительной информации.
Чтение отчетов
Ниже приведен список определений для определенных строк, которые вы можете увидеть в отчете потока.
Единственными CVE, которые должны появиться в потоковом документе, являются те, которые потенциально влияют на этот поток. (то есть те, которые не были установлены до первой версии выпуска и не были введены после версии выпуска).
Если фиксация не известна для CVE, то по умолчанию предполагается, что она присутствует во всех потоках после ее введения.
- Fix unknown’: нет исправления
- ‘Fixed with X’:исправление было замечено в потоке и впервые появилась в версии X
- ‘Fix not seen in stream’: фиксации известна и действительна, но не отображается в этом потоке (т. е. Поток по-прежнему уязвим)
Обзор процесса
Процесс создания этих документов сосредоточен на том, чтобы быть максимально автоматическим. Ниже приведен общий план.
- Возьмите список всех CVE ядра (в настоящее время ограничено после 2004 года, см. № 3).
- Если проблема отмечена как конкретная для поставщика, проигнорируйте ее.
- Получите удаляющие / исправляющие действия. Сначала он извлекается из внутреннего кеша, если не решение присутствует, он извлекает из Ubuntu, Debian и т. д., чтобы попытаться заполнить эту информацию.
- Используя эти идентификаторы commit, получите первые теги в основной строке, которые они отображают.
- Используя эту временную шкалу, для каждого потока, который будет уязвим, выполните шаги с 6 по 8.
- Найдите коммит, у которого есть сообщение фиксации, которое соответствует сообщению фиксации из основной линии.
- Запишите идентификатор фиксации и получите самый ранний тег в потоке, который имеет эту фиксацию.
- Вывести информацию для потока документа.
- Обновите JSON.