Москва
+7-929-527-81-33
Вологда
+7-921-234-45-78
Вопрос юристу онлайн Юридическая компания ЛЕГАС Вконтакте

DevSecOps в промышленности: как встраивать безопасность без ущерба для надёжности

Обновлено 18.07.2026 07:21

 

Автор: Петухов Олег Анатольевич, эксперт по информационной безопасности, руководитель юридической компании ЛЕГАС

Сайт: legascom.ru

Email: petukhov@legascom.ru

Безопасная разработка в промышленной среде - это постоянный поиск баланса между регуляторными требованиями, скоростью вывода продукта и жёсткими ограничениями встраиваемых систем. В статье - практические подходы к внедрению DevSecOps, ключевые компромиссы и типичные ошибки, которые мешают сделать защиту эффективной.

Кадры и развитие экспертизы

Формирование команды для безопасной разработки строится на двух направлениях: привлечение опытных специалистов и выращивание собственных кадров. Важную роль играет партнёрство с вузами: образовательные программы, летние школы и стажировки позволяют отбирать и готовить перспективных специалистов ещё до их выхода на рынок труда.

Специфика безопасности в промышленном ПО

В промышленности требования к безопасности сталкиваются с уникальными ограничениями, которых нет в обычном Enterprise- или веб-сегменте. Главная особенность систем АСУ ТП и встраиваемых устройств - детерминированность: система обязана гарантированно выполнять задачи в строго заданные временные интервалы. Любая задержка может привести к технологическим сбоям или даже угрозе жизни.

Классические механизмы защиты (шифрование трафика, аутентификация, runtime-проверки, санитайзеры и т. п.) часто противоречат этому требованию. Для финальных артефактов вроде прошивок ПЛК, систем релейной защиты и ЧПУ такие подходы нередко неприменимы по двум причинам:

Влияние на временные характеристики. Даже превышение порога в несколько миллисекунд критично: контроллер может не успеть обработать сигнал, сработает watchdog и произойдёт аварийная остановка.

Ограничения по ресурсам. Встраиваемые устройства имеют жёсткие лимиты по памяти. Механизмы безопасности увеличивают объём кода и потребление памяти - в результате итоговый образ может просто не поместиться в устройство.

Поэтому основной компромисс здесь - между безопасностью и предсказуемостью/надёжностью работы. На практике это решается смещением акцента: максимум инструментов безопасности используют на этапах разработки и тестирования, а в финальный исполняемый код добавляют минимум проверок.

Где искать точки роста без замедления системы

Чтобы безопасность не тормозила работу системы, проверки встраивают не в финальный артефакт, а на ранних этапах - в разработку, тестирование и интеграцию. Фаззинг, статический анализ и другие инструменты должны находить дефекты и помогать устранять их до релиза. В промышленную среду поставляют уже «чистый» дистрибутив.

Ещё одна важная проблема - работа с легаси. Промышленные системы автоматизировались десятилетиями, поэтому сегодня почти всегда приходится иметь дело с гибридной кодовой базой: часть кода написана давно, часть - на современном стеке. Ошибкой будет применять одинаковые подходы ко всему массиву кода.

Для легаси обычно используют стратегию изоляции и контроля неизменности, а для нового кода - полноценный набор современных практик безопасной разработки. Один из ключевых архитектурных приёмов - Anti-Corruption Layer (ACL): это прослойка между новым и старым кодом, которая не позволяет современным компонентам обращаться к легаси напрямую.

Если в легаси-коде есть уязвимые функции, их либо переносят в новый компонент на современном стеке, либо закрывают дополнительной прослойкой валидации - своего рода внутренним мини-файрволом, который не пропускает в уязвимый участок непроверенные данные.

Риски «защиты постфактум»

Попытка добавить безопасность уже после разработки в промышленном сегменте часто неэффективна. Причины:

Технически не всегда возможно установить дополнительные средства защиты.

Такие решения почти всегда создают дополнительную нагрузку на систему - это критично для систем реального времени.

Защита по принципу «жёсткого периметра» (межсетевые экраны, сегментация, контроль трафика, антивирусы) - обязательный уровень, в том числе с точки зрения регуляторов. Но она не является панацеей: если периметр будет обойдён, а внутри системы изначально не заложены механизмы безопасности, последствия окажутся намного тяжелее. Именно поэтому так важен подход Secure-by-Design: безопасность должна закладываться на этапе проектирования и разработки, а не добавляться сверху позже.

Почему инициативы по безопасной разработке часто не работают

Примерно в половине случаев проекты по внедрению безопасной разработки либо не дают ожидаемого эффекта, либо быстро затухают. Основные причины:

Отсутствие чёткой стратегии. Компании внедряют отдельные практики, не понимая, какой результат хотят получить.

Попытка внедрить всё и сразу. Внедрение базового набора практик занимает 1–2 года и требует выделенной команды. Без этого процесс быстро перегружается и останавливается.

Культурный конфликт. Разработка ориентирована на скорость и Time-to-Market, безопасность - на снижение рисков. Если нет единой системы KPI, команды начинают тянуть проект в разные стороны.

Ключевой фактор успеха - единое понимание на уровне бизнеса: зачем внедряется безопасная разработка, какие компромиссы неизбежны. Безопасность - это управляемый риск, и она должна работать на бизнес, а не становиться формальностью ради отчётности.

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

Универсальной методики выбора нет - задачи и классы инструментов сильно различаются. Основные принципы:

Интеграция в существующий ландшафт. Инструменты должны работать с системами управления задачами, CI/CD, аутентификацией и передавать результаты в агрегаторы (например, ASOC).

Качество анализа. Для SAST важна поддержка языков и корректная интеграция в процесс сборки. Для SCA критичны качество баз уязвимостей, проверка достижимости уязвимости в приложении и контроль лицензионной чистоты.

Производительность. Анализ должен работать не только с полным кодом, но и с изменениями. Если проверка каждого коммита занимает часы, это ломает пайплайн и вызывает сопротивление разработчиков.

Выбор всегда балансирует между качеством анализа, скоростью работы, интеграцией и применимостью в конкретном технологическом и организационном контексте.

Безопасная разработка и требования регуляторов

Системное внедрение практик безопасной разработки значительно упрощает подтверждение соответствия регуляторным требованиям. Фрагментарный подход приводит к тому, что каждое новое требование становится отдельным проектом: нужно срочно писать регламенты, собирать документы и заново доказывать соответствие. Это дорого и трудоёмко.

Многие практики безопасной разработки (документирование архитектуры, учёт компонентов, описание зависимостей и процессов) полезны не только для регулятора, но и для эксплуатации. Они помогают при расследовании инцидентов, внедрении защитных мер и повышают общую управляемость разработки.

Централизованные модули безопасности: перспективы и риски

Централизованные модули, шлюзы и подобные решения - перспективный подход, но не замена Secure-by-Design. Их плюсы - централизованное управление, единые политики и удобство масштабирования. Минусы:

Такой модуль становится критически важной точкой: это дополнительная поверхность атаки и потенциальная точка отказа.

У разработчиков может возникнуть ложное ощущение, что безопасность теперь «вынесена наружу», и к самому продукту можно относиться менее внимательно.

Наиболее реалистичный сценарий - сочетание подходов: централизованные модули могут стать частью отраслевого стандарта как дополнительный защитный слой, но базовые практики безопасной разработки внутри самого ПО остаются обязательными.

Развитие сообщества и обмен опытом

Сообщество специалистов по безопасной разработке активно расширяется: растёт число компаний, вовлечённых в профильные инициативы (в том числе в работу комитетов при регуляторах), и увеличивается интерес со стороны заказчиков. Важную роль в развитии отрасли играют мероприятия в неформальном формате: они создают площадку для живого диалога, обмена практическими кейсами и формирования профессионального сообщества.

Главный вывод

Безопасность в промышленном ПО становится органичной частью системы тогда, когда меры защиты грамотно распределены по этапам разработки и архитектурным слоям, а не пытаются утяжелить финальный продукт. Ключевой принцип - Secure-by-Design: защита должна проектироваться вместе с системой, а не добавляться постфактум.