Управление уязвимостями при разработке ОС Astra Linux
Владимир Тележников, 02/05/24
Управление уязвимостями играет ключевую роль в процессе разработки и эксплуатации любой операционной системы.
Автор: Владимир Тележников, директор департамента научных исследований “Группы Астра”
Vulnerability Management (VM) – неотъемлемая часть разработки операционной системы (ОС). Прежде всего работа с уязвимостями повышает безопасность, ведь любая уязвимость в ОС может быть использована злоумышленниками для получения несанкционированного доступа, выполнения произвольного кода, отказа в обслуживании и т.д. В процессе разработки необходимо придерживаться требований регуляторов, особенно если операционная система используется в организациях, работающих с конфиденциальной информацией, персональными данными или гостайной, и применяется на предприятиях КИИ.
Как организован процесс VM при разработке программного продукта?
Любой разработчик хочет сделать свое ПО более конкурентоспособным, добавить в него новые функции и хотя бы на шаг опередить коллег по рынку. В этом случае необходимо соблюсти баланс между инновационностью и безопасностью. Здесь на помощь приходят такие инструменты, как внутренний аудит кода, его статический и динамический анализ, а также доскональное следование методикам и стандартам и лучшим практикам безопасной разработки. Желательно, чтобы принципы безопасности наряду с функциональными требованиями были изначально заложены на уровне архитектуры будущего продукта (Secure by Design).
Анализ уязвимостей ведется еще на этапе разработки ОС, а после выхода релиза в продакшн и передачи его клиентам управление уязвимостями работает на всех уровнях. Обнаруживаются уязвимости двумя путями: с помощью работы внешних ИБ-исследователей, как отдельных энтузиастов, так и целых компаний, а также внутренние улучшения, вносимые самим вендором. Разработка программного продукта представляет собой перманентный процесс, который включает в себя добавление новых функций и развитие уже существующих, что, в свою очередь, сопровождается экспертным анализом, ревью кода, обнаружением багов и уязвимостей.
Разработкой защищенных дистрибутивов Linux занимаются крупные компании, такие же задачи решает и команда по анализу защищенности ОС Astra Linux. Аудит кода ведется на всех этапах разработки.
В период эксплуатации команда разработчиков ОС в "Группе Астра" работает с большим числом баз уязвимостей, среди которых есть и непубличные. Прежде всего это собственная база компании AVM (Astra Vulnerability Management). В ней размещена информация о зафиксированных уязвимостях ОС Astra Linux в разные годы. AVM не только содержит информацию о разного рода уязвимостях, но и в автоматизированном режиме взаимодействует с другими базами, а также обменивается данными с регулятором – ФСТЭК России. Информация, полученная из международных баз данных, подвергается тщательному анализу на предмет актуальности и степени критичности для ОС Astra Linux.
Авторитетный международный источник информации об уязвимостях – база данных американской компании MITRE c идентификатором CVE (Common Vulnerabilities and Exposures) [ 1 ]. Она содержит наиболее полные сведения о слабых местах в открытом и коммерческом ПО. В нее пересылают записи о найденных уязвимостях как независимые ИБ-исследователи, так и сами разработчики программных продуктов.
При появлении записи в базе CVE модуль парсинга в автоматическом режиме собирает информацию о новой уязвимости в других БД (в том числе вендорских), а также формируется стандартизированная запись о ней в базе данных AVM. Далее к работе с этой записью подключаются аналитики. Они обогащают паспорт уязвимости новыми сведениями и оценивают, насколько эта уязвимость актуальна для ОС Astra Linux. Если проведенный анализ подтверждает актуальность, то создается задача устранения уязвимости по принятому в компании регламенту. Задача должна содержать информацию о версиях ПО, для которых данная уязвимость актуальна, ссылку на патч от вендора, если он уже выпущен, и другую полезную информацию, которая поможет разработчику как можно скорее исправить актуальную уязвимость. Аналитики могут влиять на степень важности и срочности ее устранения, а также проверяют, действительно ли она нейтрализована в выпущенном обновлении безопасности. Запись об устраненной уязвимости отправляется в БДУ [ 2 ] ФСТЭК России.
В итоге недостатки ПО, обнаруженные "Группой Астра" самостоятельно, фиксируются в собственной базе данных AVM с идентификатором ASE, а после их устранения информация об этом в обязательном порядке отправляется в БДУ ФСТЭК России. Уязвимость с идентфикатором ASE с большей долей вероятности имеет отношение только к ОС Astra Linux и неактуальна для других ОС. Компания также подготавливает для клиентов и партнеров информацию в машиночитаемом формате, которую заказчики и разработчики сканеров уязвимостей могут использовать для более точного анализа защищенности ОС.