Журнал "Information Security/ Информационная безопасность" #1, 2021
ворок не приводили противники этого инструмента безопасности! Все изме- нилось в середине XX века, но, как ни странно, не из-за возросших рисков вследствие роста дорожного трафика. Толчком стало изобретение инженером компании Volvo современного динами- ческого трехточечного ремня безопас- ности, которым стало удобно пользо- ваться. Сегодня им оборудуется каждый автомобиль, обязательность его использования установлена на законо- дательном уровне, и мы уже не пред- ставляем, что когда-то было иначе. Использование ремня безопасности стало частью нашей культуры пользо- вания автомобилем. То же самое сейчас происходит в раз- работке продуктов. Способность компа- нии быстро поставить новый продукт или новый функционал требует непрерывной циклической разработки, и традиционные подходы к сканированию релизного кода на наличие уязвимости существенно тор- мозят этот ритмичный процесс. Они, по сути, являются тем архаичным ремнем безопасности, существовавшим в авто- мобилях до изобретения инженера Volvo. Для обеспечения Business Agility пора переходить к новым инструментам и под- ходам в обеспечении безопасности про- граммных продуктов, необходимо отхо- дить от проверки на уязвимость в одной или двух точках к повышению уровня доверия ко всему процессу создания программных продуктов, того же от нас требуют и регуляторы. По сути, безопасность является одним из критериев качества программного продукта, и обеспечить ее без потери скорости выхода на рынок возможно, только интегрировав контроль безопас- ности на всех стадиях разработки про- дукта. Природа успешности хорошего продукта Коммерческий успех заведомо хоро- шего продукта критически зависит от трех факторов: скорости его выхода на рынок, стоимости его производства и непрерывного повышения его каче- ства. И все они, в свою очередь, связаны с тем, насколько продукт безопасен по природе. Подход к обеспечению без- опасности по природе помогает избе- жать затрат, связанных с задержкой поставки ПО, переделкой кода и исправ- лением уязвимостей. Принцип безопас- ность по природе означает, что: l вопросы безопасности учитываются на всех этапах, начиная с продумывания архитектуры и функционала; l продукт разрабатывался в среде, которая исключает или минимизирует риск ошибки; l происходит непрерывное тестирование качества продукта. Сейчас зачастую жертвуют безопас- ностью в угоду скорости, причем не из-за непонимания важности или нежелания компании поставлять надежный продукт, причиной являются затруднения и задерж- ки процесса разработки, связанные с контролем безопасности из-за недоста- точной интеграции этих процессов в кон- вейер DevOps. Как правило, это было связано с отсутствием автоматизирован- ных интегрированных инструментов. Современный уровень развития инстру- ментов оркестрации релизов вполне поз- воляет безопасности по природе безбо- лезненно встраиваться в конвейер разра- ботки при использовании передовых прак- тик DevOps и управления разработкой на основе потоков создания ценности. DevOps, оркестрация релизов, Shift Left и безопасность DevOps предназначен, по сути, для ускорения раз- работки и развертывания за счет автоматизации и слаженной работы разра- ботчиков и инженеров. Фактически это именно те рельсы, по которым дви- жется поезд создания цен- ности. Подход Business Agility основан на принци- пах Lean Agile (бережливый Agile, как бы непривычно это ни звучало), нацелен- ных на устранение непро- дуктивной деятельности, к которой относится и пере- делка кода, в том числе по причине его уязвимости и небезопасности. Подход Shift Left позво- ляет обеспечивать каче- ство кода, включая его безопасность, на макси- мально ранних этапах раз- работки, начиная с выбора архитектуры, определения исходных пакетов разработки и про- граммных библиотек и даже на этапе планирования функционала, значительно снижая цену ошибки в ходе разработки. DevOps, оркестрация релизов и Shift Left, объединившись в единый подход, поз- воляют интегрировать автоматизированные инструменты безопасной разработки на каждом этапе конвейера DevOps, гибко подходить к тестированию, используя толь- ко необходимые инструменты, и обеспечи- вать безопасность продукта на максималь- но ранних этапах. Такая комбинация дает возможность избежать не только задержек выхода на рынок, но и финансовых потерь в разработке, связанных с рефакторингом и устранением уязвимостей. Цикл безопасной разработки Обычно, говоря о DevOps, думают о CI/CD. Однако я считаю более пра- вильным взгляд на DevOps как на процесс обеспечения всего жизненного цикла продукта, от идеи до вывода из эксплуа- тации. Именно этот взгляд мы можем увидеть в одном из наиболее прорабо- танных фреймворков Lean Agile – Scaled Agile Framework (SAFe), который хорошо подходит как средним компаниям, так и транснациональным корпорациям и даже государственным структурам. Обратите внимание, Continuous Security (непрерыв- ная безопасность) это не фаза DevOps, а его фундаментальный принцип, так же как контроль версий и непрерывное каче- ство. Подумайте об этом… Современный подход говорит о четы- рех фазах DevOps: l Continuous Exploration (CE, непрерыв- ное исследование), включающее иссле- дование нужд потребителя и определе- ние разрабатываемого функционала; l Continuous Integration (CI, непрерывная интеграция), в ходе которой происходит создание продукта; l Continuous Deployment (CD, непре- рывное развертывание), во время кото- рого разработанный функционал попада- ет в продсреду без участия инженеров; l Release on Demand (RD, релиз по тре- бованию), то есть выпуск продукта тогда, когда возникает потребность в очеред- ном релизе. Continuous Exploration Большинство мер эффективно и целе- сообразно применять непосредственно на этапе разработки CI. Но при этом на этапе Continuous Exploration при разра- ботке архитектуры критически важно смо- делировать угрозы. Если моделирование угроз делать на более позднем этапе, то любые изменения кода или архитектуры потребуют намного больше времени или будут невозможны без глубокой перера- ботки продукта. А это деньги! Continuous Integration На этапе Continuous Integration обес- печение безопасности приложения начи- 40 • ТЕХНОЛОГИИ Рис. 1. DevOps – это основа конвейера непрерывной поставки ПО. Источник: www.scaledagileframework.com/devops/
Made with FlippingBook
RkJQdWJsaXNoZXIy Mzk4NzYw