
Проприетарное программное обеспечение: преимущества, ограничения и альтернативы
Проприетарное программное обеспечение разрабатывают компании, у которых есть ресурсы на долгосрочное развитие сложных продуктов. Функционал такого софта подходит широкому кругу пользователей: они приобретают платные лицензии, а вендор предоставляет доступ на выбранный срок и количество рабочих мест.
Примеры проприетарного ПО — 1С:Предприятие, Битрикс24, Adobe Photoshop, Slack, Oracle ERP, Microsoft Power BI и ещё тысячи решений, которыми компании пользуются каждый день. Это графические редакторы, сервисы для видеокоммуникации, мессенджеры, BI-системы, таск-менеджеры и очень многое другое.
В чём преимущества и недостатки использования таких решений для бизнеса? Когда целесообразнее ограничиться ими, а когда — сделать для своих задач свой софт? Так ли безопасны решения известных вендоров, как принято считать? Ответы — в статье.
Основные характеристики проприетарного ПО
В отличие от решений с открытым исходным кодом (open source), проприетарные решения защищены авторскими правами. Только вендор может модифицировать и распространять их, выбирает способы защиты данных, берёт на себя все технические вопросы взаимодействия с программой.
Ключевые особенности:
- Закрытый исходный код. Доступ к нему для стороннего разработчика почти невозможен, как и копирование, переиспользование в своих целях.
- Коммерческая модель. Проприетарное ПО распространяется на коммерческой основе, лицензии — платные. Бывают бесплатные тарифы, с них удобно начать знакомство с решением, чтобы понять, подходит ли оно вам.
- Поддержка и обновления. Разработчики обеспечивают регулярные обновления и техническую поддержку: пользователю не нужно волноваться об удобстве, если выбрал вендора, к которому есть доверие.
- Низкий уровень гибкости. Не получится настроить нужную вам интеграцию, особенно если она непопулярна, нельзя привести софт к соответствию другим своим требованиям и добавить функционал (возможно, вендор согласится доработать, но будет недёшево).
Проприетарное vs кастомное ПО: использовать проверенное или сделать своё?
Кастомное ПО создаётся на заказ для конкретной компании и процессов, отвечает специфическим потребностям. Проприетарное — история массовая.
Сравним их наглядно:

Все решения по проприетарному ПО — в руках у вендора, по кастомному — на стороне клиента.
Таким образом, проприетарное программное обеспечение подходит, если:
- на рынке есть готовое решение, которое предоставляет нужный вам функционал при приемлемой стоимости лицензии на нужное кол-во рабочих мест;
- не планируете значительно расширять требования к функционалу, гибкость в этом вопросе не принципиальна;
- нет ресурсов на разработку софта с нуля, взаимодействие с подрядчиком и наём разработчиков в штат;
- у вас нет повышенных требований к конфиденциальности передаваемых в софт данных, или же вы уверены в надёжности вендора.
Кастомное решение будет лучшим выбором, если:
- на рынке нет программного обеспечения под ваши задачи, или есть, но в нём не хватает функционала;
- стоимость лицензий на потенциально подходящее проприетарное ПО под ваше кол-во рабочих мест и планируемые сроки использования высокая;
- суммы от 1,5 млн руб. на разработку собственного ПО не пугают;
- вам важен полный контроль — возможность изменить и расширить функционал, когда потребуется;
- хотите сами выбирать, как защищать ваши данные, поступающие в ПО, утечки неприемлемы;
- пользуетесь софтом зарубежного вендора, но необходимо импортозамещение, а подходящих отечественных аналогов пока нет.

Возможны варианты, когда по ряду нефункциональных требований проприетарное решение не может быть использовано: это риск санкций, риск изменения отношений стран на недружественные, риск утечки данных, отсутствие нужных сертификатов. Тогда требуется разработка своего ПО.
Частые сценарии применения проприетарного ПО разных видов
Крупные предприятия с устоявшимися в своей нише процессами часто выбирают софт от вендоров, хорошо зарекомендовавших себя на рынке. Например, в России это 1С, Kaspersky, Acronis, Dr. Web. Зарубежные решения предоставляют Microsoft, SAP, IBM.
Компании доверяют крупным вендорам в вопросах защиты данных, знают, что софт регулярно обновляется, уязвимости устраняются, а функционал развивается непрерывно. Оплатил лицензию — и инструмент готов к работе.
Но и здесь не всё так однозначно:
«Чем популярнее продукт, тем большее внимание он получает у „вселенной хакеров“. Соответственно, его чаще подвергают атакам, и чаще находят уязвимости. Под эксплуатацию этих уязвимостей создаётся наибольшее число вредоносных скриптов.
Например, Windows без дополнительной защиты, рискует „обрасти“ вирусами при выставлении в интернет „голышом“ гораздо быстрее, чем какая-либо кастомная сборка Android или Linux, под которыми вредоносное по просто не запустится.
У крупных популярных продуктов наблюдается гонка „брони и снаряда“, когда постоянно выходят обновления, латающие те или иные уязвимости, которые недавно нашли. У малоизвестного проприетарного продукта такой проблемы на старте не будет», — отмечает Кирилл Семёнов, наш руководитель отдела разработки.
Средние и небольшие компании как раз и используют менее «раскрученный» готовый софт с недорогими лицензиями или бесплатным доступом. Это позволяет сосредоточиться на развитии бизнеса, а не тратить время и деньги на создание инструментов под себя.
Кроме того, потребности в функционале у небольших компаний скромнее, чем у крупных, поэтому для них могут быть просто избыточны решения от того же SAP — оплачивать дорогую лицензию смысла мало. Примеры подходящих программ для отдельных задач: Trello, Slack, Zoom.
Когда проприетарного решения может стать недостаточно: кейс из нашей практики
Бывает и такое, что компания длительно пользуется решением популярного вендора, а потом приходит к необходимости кастомной разработки. Например, актуально при масштабировании бизнеса или появлении задач, которые не может закрыть ни одна «коробка».
С кастомным подходом компания получает софт, заточенный под свои процессы, и перестаёт зависеть от вендора и его решений. Риск не вовремя потерять рабочий инструмент — на фоне ухода вендора из страны или невозможности адаптировать массово доступные решения под свои меняющиеся потребности — сводится к нулю.
Пример из практики. Один из топ-3 отечественных ретейлеров использовал одновременно несколько известных программ для автоматизации задач: ERP, HRM, систему бухучета и систему планирования проектов.
Данные были разрознены, пользователям разных систем было сложно синхронизироваться, соответственно, управление проектами осложнялось. Интегрировать системы между собой было нельзя из-за ограничений со стороны вендоров. Польза от автоматизации терялась.
Нас попросили создать единое для всех процессов программное обеспечение. Клиенту было важно, чтобы:
- обмен данными происходил мгновенно,
- страницы открывались без задержки,
- огромные массивы конфиденциальной информации хранились надёжно,
- а функционал был такой, какой нужен именно его компании, и мог быстро меняться по запросу.
Клиенту больше не хотелось подключать отдельные программные решения с появлением каждой новой потребности, а потом думать, как с этим всем работать.
За месяц мы подготовили первую версию софта, с которым сроки согласования проектов в компании клиента уменьшились с 3 недель до 1.

Как защищают известные решения, и может ли кастом дать такой уровень безопасности
Среди часто применяемых мер защиты можно отметить:
- Шифрование исходного кода в целях предотвращения его чтения и изменения. Так, доступ к внутренним механизмам программы затрудняется.
- Лицензионные ключи, которые проверяются при установке и запуске программы. Это осложняет использование нелицензионных копий.
- Цифровые подписи для проверки подлинности ПО и его компонентов. Помогает обнаружить и предотвратить использование поддельных и изменённых версий.
- Обфускация кода затрудняет его анализ, понимание и обратную разработку (reverse engineering). Процесс включает замену имён переменных, функций и других элементов кода на случайные или запутанные.
- Защита от отладки — внедрение механизмов, предотвращающих отладку программы с помощью инструментов разработчика. Проверяет на наличие отладчиков и блокирует выполнение программы при их обнаружении.
- Контроль целостности файлов программы с помощью контрольных сумм или хешей. Позволяет обнаружить изменения в файлах и предотвратить их использование.
- Аутентификация пользователей, которая требуется для доступа к программе или её функциям. Включает использование логинов, паролей, двухфакторной аутентификации и других методов.
- Мониторинг и аудит — специальные механизмы помогает отслеживать действия пользователей и выявлять подозрительную активность.
Выбирая между проприетарным софтом и индивидуальной разработкой (в том числе на базе open source), стоит понимать, что в случае создания решения под конкретную компанию можно реализовать любые из перечисленных мер и/или выбрать другие. Все меры защиты подстраиваются в первую очередь под ваши интересы (и, если нужно, законодательство вашей страны), а не интересы вендора, у которого приобретаете лицензию.
Кирилл Семёнов, руководитель отдела разработки NLABTEAM:
«Построение любой защиты начинается с проработки модели угроз, и, соответственно, выработки мер по их отражению. Кастомную разработку это не должно сильно удорожить. Часть угроз снимается грамотным деплоем и настройками групповых политик. А от части угроз и защита не будет нужна, если ПО будет использовано, например в закрытом сетевом контуре без публичного доступа.
Следует помнить аксиому: „Взломать можно всё что угодно, вопрос только в цене взлома. Если он экономически невыгоден, этим заниматься не будут. Затраты на защиту ПО должны не превышать стоимость его взлома“».
Коротко о главном
- Проприетарное ПО — значит зависимость от выбранного вендора, а кастом — полная свобода для тех, кто готов разово в это вложиться.
- При выборе между первым и вторым важно смотреть на функционал: есть ли вендоры, готовые предложить то, что нужно вам в полном объёме или близко к тому. Какие интеграции нужны, и готов ли вендор их предложить. Если нет, сколько будет стоить разработка ПО с таким функционалом, и оправдывают ли потребности в этом функционале его стоимость.
- Обращайте внимание на кол-во рабочих мест, для которых необходим софт и сравнивайте: сколько вы потратите на лицензии, например, за 2 года, и сколько — при разовой разработке уникального софта для себя.
- Популярные готовые продукты представляют наибольший интерес не только для обычных пользователей, но и для хакеров. Это выливается в постоянную гонку в поиске и устранении уязвимостей в решениях известных вендоров. И компании-покупатели софта становятся участниками этой гонки, рискуя своими данными. Поэтому бескомпромиссная безопасность проприетарного ПО — это иллюзия.
- Проработка мер защиты не сильно удорожает кастомную разработку.
В NLABTEAM мы создаём решения любой сложности под ключ. На выходе — программное обеспечение, которое на 100% подходит конкретной компании: совсем как костюм, сшитый в ателье по точным меркам. Будем рады помочь и вам!