Журнал "Information Security/ Информационная безопасность" #3, 2023
2. Практика безопасной разработки должна работать так, чтобы процессы не были рваными или запутанными. Правильная расстановка и настройка инструментов в жизненном цикле соз- дания ПО и эффективное выстраивание культуры коммуникаций позволяют существенно снизить накал страстей между ИТ/ИБ и идти одной дорогой. 2. Применение SDL-практик – прямой показатель зрелости разработки про- граммного обеспечения. Роман Борзов, Андрей Кузнецов, Фобос-НТ: SDL – это инструменты и практики, непосредственно влияющие на качество и безопасность исходного кода про- граммного обеспечения. 1. Композиционный анализ при про- ектировании ПО, анализ зависимостей приложения (OWASP Dependency-Check, CodeScoring и др.). 2. Статический и динамический анализ программного обеспечения (Svace, SonarQube, Crusher/Sydr, AFL). 3. Автоматизация модульного, регрес- сионного и функционального тестиро- вания. От зрелости SDL-процессов зависит качество конечного продукта, кустар- ность изготовления которого хорошо видна в противном случае. Борис Позин, ЕС-лизинг: 1. Развитие разработанной нами в начале 2000-х гг. и использованной круп- ными заказчиками концепции и автома- тизированной технологии обеспечения жизненного цикла ПО на новом этапе развития ПО для информационных систем различного назначения. Инстру- менты и практики вторичны, ведь снача- ла нужно определить цели и задачи проведения тех или иных работ. Если цели и задачи определены, значит, можно определить критерии качества ПО (и работ), по которым будет оцени- ваться эффективность или неэффек- тивность инструментов и практик. К сожалению, в этой области сейчас успехов немного, и это на данном этапе одно из главных направлений работ. Нужно дополнить описание ЖЦ ДПО сведениями об этапности работ, объекте и предмете работ на каждом этапе, методах оценки состояния и критериях завершения и качества работ. Тогда и вопросы об инструментах и методиках (практиках) упорядочатся с позиций целесообразности их применения и достаточности уровня автоматизации. SDL, по существу, – это бизнес-процесс, который автоматизируется. Комплексно автоматизированный бизнес-процесс позволяет повысить производительность труда коллектива. Разве не это главная задача? 2. Разработать некоторый набор типо- вых технологических процессов для классов ПО вместе с комплексом крите- риев и методик и осуществить отработку комплексов инструментальных средств для поставки, обучения и внедрения в компаниях – владельцах ПО для исполь- зования при разработке, сопровождении и развитии систем. Это позволит орга- низациям снизить эксплуатационные затраты при использовании систем. 3. Обучить в вузах и подготовить спе- циалистов для отрасли. Валерий Черепенников, Nizhny Novgorod Research Center: 1. Понимание инженерных основ: какие возможны уязвимости в програм- мах и как можно их избежать. 2. Общая культура разработки про- граммного обеспечения, которая должна быть прошита в ДНК разработчика. 3. Практики, процессы и инструмен- ты. Карина Нападовская, Лаборатория Касперского: 1. Четко выстроенные процессы внутри компании. Зачастую именно процесс является очень хорошим инструментом при внедрении чего угодно, в том числе безопасной разработки. 2. Контроль качества разработки перед выпуском релиза. Когда незави- симое подразделение проверяет реали- зацию всех практик в продукте и блоки- рует релиз в случае выявления ошибок, это стимулирует разработчиков сразу делать продукт хорошо. 3. Постоянное обучение и развитие кадров. Если штат компетентен, любые процессы можно внедрить, любыми инструментами научиться пользовать- ся. Владимир Высоцкий, Solar appScreener: 1. Квалифицированные и заинтересо- ванные в развитии специалисты. 2. Выстроенный процесс взаимодей- ствия в команде. 3. Эффективная командная работа с любыми инструментами. Дмитрий Евдокимов, Luntry: 1. Вовлеченность всех департаментов компании, отвечающих за приложение на всех его жизненных стадиях. 2. Процесс, охватывающий все жиз- ненные стадии приложения, от прора- ботки архитектуры до эксплуатации. 3. Максимальное встраивание в про- цесс разработки и автоматизация. SDL – это сочетание людей и команд, процессов и инструментов. Екатерина Вайц, МГТУ им. Н.Э. Баумана: 1. Компонентный анализ заимство- ванного кода (SCA). 2. Статический анализ кода. 3. Динамический анализ (фаззинг- тестирование) кода, находящегося на поверхности атаки. Иван Панченко, Постгрес Профессиональный: 1. Возможность организации регуляр- ного процесса поиска ошибок, которые иначе было бы трудно обнаруживать. 2. Интересные вызовы для сотрудни- ков, наукоемкий процесс с интересными задачами. 3. Область, в которой компания может проявить себя в качестве технологиче- ского лидера. Валерий Богдашов, R-Vision: 1. Обеспечение безопасной архитек- туры разрабатываемых продуктов. Ошибки безопасности на уровне архи- тектуры являются самыми дорогостоя- щими в устранении, устранить их порой невозможно. Поэтому крайне важно предотвратить небезопасную архитек- туру приложения в самом начале его разработки. 2. Обеспечение безопасной сборки продуктов. Необходимо обеспечить сбор- ку продуктов так, чтобы в процессе раз- работки злоумышленники не имели воз- можность изменять код продукта, внед- рять закладки, а также подменять используемые зависимости, которые потом могут быть проэксплуатированы ими. 3. Безопасность Open Source. При использовании OpenSource необходим комплексный анализ, включая проверку юридической чистоты лицензий, выявле- ния различных зависимоcтей, проверку на наличие уязвимостей из различных баз (например, CVE и др.), применение механизмов защиты для нейтрализации потенциальных угроз. Лука Сафонов, Синклит: 1. SDL – это непрерывный, динамич- ный, живой процесс на всех этапах жиз- ненного цикла разработки. Его нельзя просто внедрить и забыть. 2. Внедрение нужно проводить поэтап- но, чтобы избежать остановки процесса самой разработки, итеративно повышая полноту и качество процесса. Этого слона нужно кушать по частям. 3. Необходимо использовать пере- довой инструментарий мирового уров- ня. Иногда это требует дополнитель- ных затрат, но преимущества видны сразу же. Марк Коренберг, Айдеко: 1. Анализ архитектуры и безопасности информационной системы, имплемен- тация механизмов защиты. 2. Регулярное обновление продукта, используемых решений Open Source, устранение уязвимостей (cve/cwe). 3. Строго определенный процесс разработки со своими правилами, эта- пами. Разумеется, помимо архитектурного анализа производится пентестинг, фаз- зинг, статический анализ компонентов, и особенно поверхности атаки. Анализ 44 • СПЕЦПРОЕКТ
Made with FlippingBook
RkJQdWJsaXNoZXIy Mzk4NzYw