Кибербезопасность как основа долгосрочного развития ИТ
Арутюн Аветисян, 09/08/23
Одно из ключевых направлений обеспечения кибербезопасности в современном мире связано с созданием и внедрением технологий безопасной разработки (Secure Development Lifecycle, SDL), которые повышают качество программ на всех этапах, от дизайна до эксплуатации. Исторически во всем мире это направление развивалось и развивается под воздействием регуляторики. У нас в стране вопросами правового регулирования данной области занимается, в частности, ФСТЭК России, где создан специальный подкомитет по формированию требований к разработке безопасного программного обеспечения (ПО).
Автор: Арутюн Аветисян, директор Института системного программирования им. В.П. Иванникова Российской академии наук (ИСП РАН), академик РАН
Вначале лучшие практики безопасной разработки применялись к специализированным решениям: средствам защиты информации, критической инфраструктуре. Однако в последние годы возникла глобальная тенденция применять их и в других отраслях. Например, в 2021 г. Европейское космическое агентство предложило стандарт для аэрокосмической отрасли, где указано, что без процесса безопасной разработки создание программ невозможно, и ключевыми технологиями названы инструменты статического анализа и фаззинга с символьным выполнением.
В России в июне 2023 г. была принята Концепция Национальной технологической инициативы (НТИ) "Сейфнет", согласно которой создание программ для любых рынков НТИ должно соответствовать лучшим практикам и стандартам разработки безопасного ПО. Все это показывает, что каждая компания, которая занимается созданием информационных технологий, должна вкладывать ресурсы в безопасную разработку – без этого невозможно сохранить конкурентоспособность.
Чтобы создавать безопасное ПО, в первую очередь необходимы ключевые системные инструменты сборки, анализа и тестирования, обеспечивающие весь жизненный цикл разработки. И они в нашей стране есть. По сути, Россия сейчас – единственная страна, кроме США, где существует стек конкурентоспособных технологий безопасной разработки. Остальные страны используют, как правило, американские инструменты (например, технологии анализа кода Synopsis Coverity, Perforce Klocwork и др.). В России удалось развить это наукоемкое направление благодаря наличию серьезных научных школ, ведь создание инструментов анализа требует не столько больших ресурсов, сколько глубоких знаний в таких областях системного программирования, как компиляторные технологии, верификация программ и др. Например, в нашем институте первые исследования и разработки в этой новой научной области появились еще в 2002 г. в рамках совместной работы с компанией Nortel Networks.
За минувшие годы мы прошли путь от идей и фундаментальных исследований до продуктов и создали полный стек технологий безопасной разработки, конкурентоспособных на мировом уровне, – от безопасного компилятора для С и С++ до технологий анализа бинарного кода. В настоящее время наши инструменты внедрены как в ведущих мировых компаниях (например, Samsung Electronics), так и более чем в 100 отечественных ("Лаборатория Касперского", "Код безопасности", "РусБИТех", "Базальт СПО", СберТех и др.). Из последних разработок стоит упомянуть инструмент Natch для определения поверхности атаки, который разработан уже с учетом сертификационных требований ФСТЭК России. На базе всего этого опыта в 2018 г. мы инициировали создание в России новой научной специальности ВАК "Кибербезопасность", которая была одобрена РАН и принята Минобрнауки в 2021 г. при поддержке ФСТЭК России и крупного бизнеса.
Однако одного только наличия инструментов безопасной разработки недостаточно. Необходимы модели работы, которые консолидируют усилия академического сообщества, бизнеса, государства и создают возможность совместной работы над огромным объемом открытого кода, на основе которого создается большинство ИТ-продуктов. Совместный анализ кода с помощью инструментов безопасной разработки позволяет, в частности, избежать дублирования работ, которое происходит, когда сотни компаний параллельно проверяют на безопасность один и тот же код, тратя на это большие человеческие и финансовые ресурсы.
Одну из таких моделей работы реализует наш институт совместно с партнерами при поддержке регулятора. На базе ИСП РАН функционирует созданный при поддержке ФСТЭК России Технологический центр исследования безопасности ядра Linux, где ведется систематический поиск уязвимостей и подготовка соответствующих патчей. В настоящее время этот Центр расширяется, в него добавляются исследования критичных компонентов операционных систем. Фактически идет работа над созданием доверенного репозитория базовых компонентов открытого системного ПО.
Сейчас в этом процессе принимают участие более 50 компаний, частично они уже объединились в консорциум. В работе над репозиторием принимают участие и некоторые вузы (в том числе региональные, например Чувашский государственный университет); поиском уязвимостей занимаются также студенты кафедр системного программирования МГУ, МФТИ и ВШЭ, где преподают сотрудники ИСП РАН. Результаты исследований открыты и доступны всем участникам консорциума. В той же модели ведутся работы в Исследовательском центре доверенного искусственного интеллекта ИСП РАН (создан по инициативе Минэкономразвития России). Результаты деятельности этих центров уже есть: около 200 патчей приняты в основную ветку ядра Linux, более 50 – в популярные фреймворки машинного обучения TensorFlow и PyTorch. Подчеркну: это исправления ошибок, которые до нас не находил еще никто в мире!
Вокруг доверенного репозитория создаются профильные образовательные программы, формируется широкое сообщество профессионалов, которые работают в разных компаниях, обучаются в вузах, даже живут в разных юрисдикциях, но при этом решают общие задачи, связанные с безопасностью систем. Насколько это позволяет экономить ресурсы, можно понять на простом примере. Сейчас продукты на основе ядра Linux создают более 200 российских компаний. При этом большинство из них самостоятельно проверяют код на безопасность. Между тем целесообразнее было бы перейти от конкуренции к кооперации и вместе работать над повышением безопасности ядра. Хочу еще раз подчеркнуть, что вся эта работа – и создание инструментов, и формирование репозитория – ведется в тесном сотрудничестве с ФСТЭК России. В частности, институт является Центром компетенции по вопросам безопасной разработки и анализа кода сертифицируемого программного обеспечения.
Учитывая весь наш опыт, основанный на консолидации усилий со стороны академического сообщества, государства и бизнеса, мы подготовили к реализации комплексный научно-технический проект (КНТП), которому дал положительную оценку профильный Экспертный совет по приоритетному направлению Стратегии научно-технологического развития России. Надеемся, что в ближайшее время КНТП будет запущен. Его реализация обеспечит дальнейшее гармоничное развитие сформировавшегося сообщества и сохранит конкурентоспособность отечественных инструментов безопасной разработки. При необходимости эту модель работы можно будет существенно масштабировать за счет запуска дополнительных проектов, что обеспечит долгосрочное устойчивое развитие всей отрасли ИТ в России и конкурентное преимущество нашим компаниям.