Контакты
Подписка 2024

МойОфис совмещает функциональность и безопасность

Александр Буравцов, 15/12/21

Александр Буравцов, директор по безопасности МойОфис, рассказал о том, как успешно организовать безопасную разработку, как сформировать эффективную команду, о сложностях сертификации облачного продукта, о фаззинге и многом другом.

– Александр, насколько критичен вопрос безопасности программного продукта?

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

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

– МойОфис использует обязательные требования текущей версии государственного стандарта по безопасной разработке, поскольку является компанией-лицензиатом в российских системах сертификации, как Федеральной службы безопасности, так и Федеральной службы по техническому и экспортному контролю. Мы выстроили процессы и регламентировали процедуры проверки на наличие уязвимостей, отработки замечаний, тестирования и т.д.

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

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

– Вы используете внутреннюю компетенцию для настройки процесса безопасной разработки или привлекаете внешнюю экспертизу?

– При разработке решений МойОфис мы придерживаемся комбинированного варианта. В нашей команде есть специалисты, которые не только владеют методологией процессов безопасной разработки программного обеспечения в целом, но и понимают особенности наших приложений. Очевидно, что только лишь штатными сотрудниками невозможно полностью покрыть все потребности, возникающие в рамках работы с фреймворками и различным инструментарием обеспечения безопасности, с учетом активного роста данного направления. Поэтому мы привлекаем внешних специалистов, они помогают внедрить передовые мировые практики в существующие процессы разработки. Такую работу МойОфис поручает только наиболее экспертным командам, которые сегодня есть на рынке.

– Как вы приоритизируете работы по устранению обнаруженных уязвимостей в продуктах?

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

– Как вы поддерживаете сертифицированную версию пакета МойОфис – выделяете отдельный центр разработки?

– Выпуск сертифицированных версий продуктов МойОфис был начат нами еще в 2016 г. Тогда мы думали, что нам удастся совместить работы по сертификации и подготовке сертифицированных версий наших продуктов в тех же производственных центрах, что ведут разработку основных версий продуктов. Эта гипотеза, к сожалению, оказалась ошибочной, в первую очередь из-за особенностей технологического стека, который пока не в полной мере позволяет выдерживать сроки подготовки сертифицированных редакций из-за среды функционирования таких продуктов. Не секрет, что в текущих сборках сертифицированных операционных систем некоторые компоненты (в силу особенностей организации процесса сертификации) достаточно сильно отстают от используемых в аппстриме.

Так мы пришли к процессу, который успешно функционирует более четырех лет: в МойОфис сформирована отдельная инженерная команда, которая, используя кодовую базу основного центра разработки, формирует дистрибутивы сертифицированных версий продуктов и выполняет сопровождение процессов сертификации.

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

– В чем сложность сертификации комплексного облачного продукта? Почему МойОфис можно считать защищенным приложением?

– В первую очередь сложность сертификации комплексного облачного продукта заключается в программной базе, на которой предстоит эксплуатировать наши приложения.

Коммерческие версии МойОфис активно используют контейнеризацию. Применение данной технологии позволяет нам создавать современные, масштабируемые, высоконагруженные системы. В то же время в сертифицированных операционных системах поддержка контейнеризации до сих пор официально не реализована. Вероятно, это связано с отсутствием однозначной позиции регуляторов по корректной реализации и проверке механизмов безопасности.

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

Наши процессы не ограничиваются только compliance-проверками на соответствие требованиям, мы также инвестируем ресурсы в независимые аудиты и проводим тесты на проникновение, которые интегрированы в производственный цикл. Кроме того, мы проводим интеграции с различными СЗИ, представленными сегодня на рынке РФ.

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

– Расскажите про жизненный цикл сертифицированных продуктов. Как вы оцениваете динамику требования по сертификации?

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

Затрачиваемое на сертификацию (инспекционный контроль) время, безусловно, является не только организационными "накладными расходами". В дополнение к применяемым при разработке инструментам безопасности мы проводим и дополнительные исследования в соответствии с правилами сертификации средств защиты информации. Для таких исследований мы используем одобренные регулятором сертифицированные продукты. Затем мы вносим изменения в эксплуатационную документацию, которую готовим на основе документов обычных коммерческих версий. После этого проводим дополнительную сборку приложений в том окружении, которое соответствует требованиям регулятора и текущим подходам к сертификации.

– У фаззинга особая роль?

– Можно сказать, что фаззинг стал мейнстримом после выхода новых требований ФСТЭК. Однако мы еще четыре года назад начали применять фаззинг для анализа наших приложений. Мы уже тогда понимали, что для продуктов такого класса фаззинг с целью поиска уязвимостей просто необходим, ведь сертифицированное офисное ПО используется для обработки крайне чувствительных данных.

Фаззинг – это крайне важный процесс, но, к сожалению, в нашей стране экспертов в этой области практически нет. Фаззинг сложно внедрить как с технологической точки зрения, так и с ресурсной. Например, чтобы обеспечить необходимое для нас покрытие, компании потребовалось создать собственные кастомизированные решения, которые используют и разные фаззеры, и различные подходы к фаззингу. Когда мы начинали эту работу, то и не предполагали, насколько тяжело будет ее выполнить. С другой стороны, мы получили серьезную экспертизу, что будет хорошим подспорьем в дальнейших работах.

– Как совместить прикладную функциональность и безопасность?

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

Мы создаем приложения, которые дают разумный компромисс между функциональностью и безопасностью. Этого можно добиться, если своевременно получать обратную связь от команд UX-/UI-дизайнеров, менеджеров продукта и разработчиков. Поиск разумных компромиссов позволяет реализовывать механизмы безопасности, способные предотвращать все основные варианты целевых атак без ущерба для комфортной работы пользователей.

– Каким образом вы собираете и приоритизируете требования по развитию механизмов обеспечения безопасности информации?

– Мы применяем четыре основных подхода, которые позволяют создавать безопасные решения и предлагать их нашим пользователям:

  • требования, которые нам предъявляет рынок и регуляторы;
  • потребности наших заказчиков;
  • анализ современного ландшафта угроз безопасности;
  • моделирование угроз и вероятного нарушителя.

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

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

– Как сделать разработчиков союзниками в следовании принципам безопасной разработки? Какие меры для этой цели лучше работают – организационные, финансовые или технологические?

– Если посмотреть на успешные технологические компании, то можно заметить, что каждая из них пытается найти свой путь. Для МойОфис наиболее эффективным стало повышение осведомленности разработчиков и людей, которые причастны к созданию продуктов. Мы также серьезно занимаемся формированием института security-чемпионов в производственных командах. Благодаря этому мы не только решаем формальные задачи, но и помогаем сотрудникам с дальнейшим развитием в области информационной безопасности.

– Можно ли вырастить security-чемпиона в команде или лучше искать его на рынке труда?

– На этот вопрос нет однозначного ответа. С одной стороны, security-чемпионов необходимо растить именно внутри своей организации. Мой опыт показывает, что в командах достаточно сложно приживаются люди с иными задачами, отличающимися от основной ветки разработки. Например, если команда нацелена на максимально быстрый выпуск релизов, то внешнему человеку с экспертизой в области информационной безопасности будет тяжело адаптироваться в ней. Такой сотрудник будет испытывать трудности с приоритизацией задач, в результате чего станет хуже восприниматься командой.

Другое дело, когда такой человек растет внутри команды и уже обладает некоторым уровнем доверия со стороны коллег: он понимает, как устроен продукт, и стремится сделать его более безопасным. Человек с таким путем развития очень корректно и эффективно воспринимает все новое, что предлагает компания. Поэтому командами с такими сотрудниками проще управлять, они работают эффективнее и способны быстрее реализовывать нужные функции безопасности.

– При каких условиях процесс разработки можно считать гарантией безопасного продукта?

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

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

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

Отдельную роль в этом процессе играют подразделения информационной безопасности, которые должны стать в компании звеном, связывающим все процессы в единую, сквозную историю. Только в таком случае можно будет говорить, что продукт соответствует самым высоким критериям качества с точки зрения информационной безопасности.

Темы:Безопасная разработкаЖурнал "Информационная безопасность" №5, 2021

Инструменты и решения для защиты информации и предотвращения кибератак
Конференция | 2 апреля 2024

Жми для участия
Обзоры. Спец.проекты. Исследования
Участвуйте в обзорах / исследованиях проекта "Информационная безопасность"!
Станьте автором журнала!
Статьи по той же темеСтатьи по той же теме

Хотите участвовать?

Выберите вариант!

КАЛЕНДАРЬ МЕРОПРИЯТИЙ 2024
ПОСЕТИТЬ МЕРОПРИЯТИЯ
ВЫСТУПИТЬ НА КОНФЕРЕНЦИЯХ
СТАТЬ АВТОРОМ
Персональные данные
4 апреля. Персональные данные в 2024 году: регулирование, практика, тенденции
Участвуйте!

More...
Обзоры. Исследования. Спец.проекты
Обзоры и исследования проекта "Информационная безопасность"
Жми, чтобы участвовать