28/12/2022

Как Газпромбанк использует open-source-решения и почему это выгодно

В чем плюсы и минусы open source и какие практики используются в Газпромбанке для проверки open-source-решений, разбираемся вместе с Алексеем Петровым, разработчиком фронтенд-систем, и Федором Курносовым, начальником Отдела обеспечения безопасной разработки.

Как open source применяется в Газпромбанке

Изначально большая часть ПО в Газпромбанке была покупной, что не позволяло оперативно внедрять новые функции, так как любая доработка передавалась на оценку внешнему вендору. Как следствие — длительный Тime to market (TTM) и потеря конкурентных преимуществ. Переход к собственной разработке — ответ на потребности Газпромбанка стать значимым игроком на розничном рынке.

Чтобы быстро запустить собственную разработку, необходимо было поменять отношение к open source и использовать мировые наработки для быстрого вывода новых продуктов с минимальным TTM. Постепенно в Газпромбанке стали использовать всё больше программ с открытым кодом.

Алексей Петров

Разработчик фронтенд-систем.

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

Сейчас сотрудники Газпромбанка работают с open-source-решениями почти во всех подразделениях. Например, стек разработки фронтенда включает язык гипертекстовой разметки HTML, языки разработки JavaScript и TypeScript, библиотеку React.

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

Читайте также: Как розничный кредитный конвейер упрощает получение кредитов.

Почему выгодно использовать open source

У open source есть несколько преимуществ, из-за которых такой тип софта стал широко распространенным.

Бесплатный доступ

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

Развитие и гибкость

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

Федор Курносов

Начальник Отдела обеспечения безопасной разработки.

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

Некоторые open-source-продукты продвигают амбассадоры — известные в IT-среде люди или даже компании, которые рассказывают об open source широкой аудитории. Например, React развивается при поддержке Meta*. Благодаря участию амбассадоров о решении узнаёт еще больше заинтересованных людей, а значит, оно быстрее дорабатывается и улучшается.

* Meta признана экстремистской организацией в России

Алексей Петров

Разработчик фронтенд-систем.

Поддержка корпораций — не обязательное условие для успеха open-source-решения. Например, один из самых известных «конкурентов» React — фреймворк Vue.js. Его создал без какой-либо поддержки компании или коллег разработчик из Google Эван Ю.

Чем могут быть неудобны open-source-инструменты

У open source есть минусы, которые могут повлиять на решение о его использовании.

Нет централизованной технической поддержки

Пока open-source-решение поддерживается только отдельными разработчиками. Бывает, что буквально никто не может ответить на вопрос, почему программа работает не так, как должна. Нужно разбираться самим или искать специалиста.

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

Федор Курносов

Начальник Отдела обеспечения безопасной разработки.

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

Небезопасность

Одно из определяющих свойств open source — его код полностью доступен сообществу разработчиков. Обновления контролируют одновременно множество программистов по всему миру независимо друг от друга. Но здесь остается вопрос, возможно ли, что при таком контроле остаются ошибки или уязвимости.

Федор Курносов

Начальник Отдела обеспечения безопасной разработки.

Несмотря на несколько уровней проверок, нельзя говорить про нулевую возможность появления ошибок и уязвимостей. Также нельзя отвергать уже устоявшиеся виды атак с применением open source — так называемые Supply Chain Attack. Это тип кибератаки, которая состоит из внедрения вредоносного кода в процесс разработки программного обеспечения, как правило, с помощью open source.

Например, в феврале 2022 года недобросовестные разработчики начали вводить уязвимости в код open source на GitHub. От этого пострадали некоторые компании: код их проектов был зашифрован или испорчен.

Вредоносный код пытались внедрять в самые популярные фреймворки. Яркий пример — Vue.js.  Кейс описан на GitHub: использование этого кода приводило к порче файлов, если у компании российский IP-адрес.

Федор Курносов

Начальник Отдела обеспечения безопасной разработки.

Защититься от Supply Chain Attack можно, если временно не обновлять внешние библиотеки, а для разработки использовать более старые или локальные, ранее скачанные библиотеки, в которых точно нет вредоносного кода.Также нужно использовать практики безопасной разработки, которые минимизируют риск подобных кибератак.

Какие меры принимают в Газпромбанке для проверки open-source-решений

Специалисты используют несколько практик:
  • проверка OSS — анализ open-source-библиотек до того, как они попадут в инфраструктуру Газпромбанка;
  • проверка SCA — анализ на этапе сборки приложения, который позволяет заблокировать open-source-библиотеки в приложении.
Для проверок есть критерии безопасности, по которым определяется, можно ли использовать open-source-библиотеки. Если в рамках проверки они оказываются небезопасными, то попадают в блэк-лист — банк накладывает полный или частичный запрет на их использование.

Федор Курносов

Начальник Отдела обеспечения безопасной разработки.

Кроме OSS и SCA мы применяем практику анализа исходного кода: на всех этапах разработки код проверяется на наличие уязвимостей и качество. Проводим динамический анализ мобильных и веб-приложений, которые установлены на тестовые стенды.

Таким образом, open source можно без угроз использовать, если придерживаться практик безопасной разработки, проверять open-source-библиотеки до загрузки в инфраструктуру и контролировать, что разработчики используют только разрешенные версии библиотек.
Другие статьи по теме
0%

Банк ГПБ (АО) использует файлы cookie. Подробная информация –
в правилах по обработке персональных данных. Вы можете запретить сохранение cookie в настройках своего браузера.