Когда люди выбирают программное обеспечение, безопасность часто оказывается на первом месте в их списках приоритетов. А если нет, так и должно быть! Однако они обычно задаются вопросом о различиях между программным обеспечением с закрытым и открытым исходным кодом.
Так в чем разница между открытым и закрытым исходным кодом? Действительно ли программное обеспечение с открытым исходным кодом безопасно?
Открытый исходный код vs. Программное обеспечение с закрытым исходным кодом
Люди делают ПО с открытым исходным кодом бесплатно для всех. Общественность может использовать, копировать, изменять и распространять его. Кроме того, как следует из названия, любой желающий может увидеть исходный код.
Программное обеспечение с закрытым исходным кодом представляет собой строго охраняемый код, который могут видеть или изменять только уполномоченные люди. Стоимость покрывает право людей использовать его, но только в рамках лицензионного соглашения для конечного пользователя.
У прозрачности открытого исходного кода есть свои плюсы и минусы в плане безопасности
Возможность любого увидеть исходный код дает большие преимущества для безопасности открытого исходного кода. Развитие становится общественным усилием, в котором принимают участие люди со всего мира.
Это означает, что ошибки часто обнаруживаются и исправляются быстрее, чем если бы только гораздо меньшая группа людей проверяла код.
Однако хакеры извлечь выгоду из доступности открытого исходного кода тоже. Они могут использовать его для планирования атак или обнаружения уязвимостей.
Разработчики, искренне заинтересованные в улучшении программного обеспечения с открытым исходным кодом, решают обнаруженные проблемы или, по крайней мере, сообщают о проблемах тому, кто обладает навыками их решения. Любой со злыми намерениями надеется, что все останется незамеченным как можно дольше.
Эти реалии заставляют профессионалов в области кибербезопасности предупреждать, что программное обеспечение с открытым исходным кодом может подвергнуть организации риску. Одна из проблем заключается в том, что преступники могут видеть код и внедрять в него опасный контент. В качестве альтернативы эти стороны могут нацеливаться на компании у которых нет строгих правил для загрузки исправлений программного обеспечения с достаточной частотой.
Поскольку программное обеспечение с открытым исходным кодом не имеет централизованного управления, кому-либо трудно узнать, какие версии используются чаще всего. Заголовки могут обновляться так часто, что ИТ-специалисты организации не осознают, что у них есть старая версия с серьезными проблемами безопасности.
Сторонние программные библиотеки создают риски для безопасности с открытым исходным кодом
Разработчики часто используют сторонние программные библиотеки для экономии времени. Это компоненты многократного использования, разработанные организацией, отличной от исходного поставщика. Одним из преимуществ является то, что они позволяют использовать предварительно протестированный код.
Популярные библиотеки протестированы во многих средах для широкого спектра сценариев использования. Естественная частота использования означает, что об ошибках сообщают часто. Однако это не обязательно означает, что сторонние библиотеки программного обеспечения обладают превосходной безопасностью, даже если речь идет о библиотеках, связанных с программным обеспечением с открытым исходным кодом.
Одно исследование обнаружили, что почти в 80% случаев сторонние библиотеки для программного обеспечения с открытым исходным кодом не обновляются после того, как разработчики добавляют их в кодовые базы. Исследователи, участвовавшие в исследовании, предупредили, что отсутствие обновлений может иметь побочные эффекты.
Некоторые из новейших и широко используемых программных продуктов во время разработки полагаются на сторонние программные библиотеки. Один недостаток может повлиять на все продукты, связанные с проблемной библиотекой. Еще один тревожный вывод заключается в том, что более четверти опрошенных разработчиков не знали или не знали о каком-либо формальном процессе, используемом для выбора сторонних библиотек.
Связанный: Что такое эксплойт нулевого дня и как работают атаки?
Однако положительный вывод исследования заключался в том, что обновления программного обеспечения устраняют 92% недостатков сторонних программных библиотек. Кроме того, 69 процентов обновлений требуют лишь незначительного изменения версии или чего-то еще менее обширного.
Еще более многообещающим было то, что разработчики могли исправить 17 процентов этих недостатков за один час. Это означает, что решение этих проблем с библиотеками с открытым исходным кодом не всегда требует больших затрат времени или усилий.
Как скорость разрешения ошибок влияет на безопасность с открытым исходным кодом
Один из основные проблемы с устаревшим программным обеспечением заключается в том, что это подвергает пользователей риску потенциальных недостатков безопасности. В идеальном мире разработчики заметили бы и исправили все ошибки до того, как программное обеспечение станет общедоступным. Однако это нереальная цель.
Следующий лучший вариант - выпустить программные исправления вскоре после того, как уязвимости станут очевидными. Исследователи безопасности часто предупреждают поставщиков программного обеспечения с закрытым исходным кодом о проблемах, требующих быстрого решения. Однако люди, разрабатывающие эти продукты, следуют графику выпуска, выбранному начальством.
Лица, принимающие решения, также не всегда уделяют приоритетное внимание всем уязвимостям. Некоторые остаются без внимания в течение месяцев или лет после первоначальной идентификации. Связанная с этим проблема заключается в том, что многие разработчики борются с чрезмерными или несбалансированными рабочими нагрузками, которые могут серьезно ограничить их способность быстро исправлять ошибки, даже с самыми лучшими намерениями.
Еще один опрос обнаружили, что 38 процентов разработчиков тратят четверть своего доступного времени на исправление ошибок программного обеспечения. Около 26 процентов респондентов заявили, что эта задача занимает половину их рабочего дня. Еще одним поразительным открытием стало то, что 32 процента разработчиков тратят до 10 часов в неделю на исправление ошибок, а не на написание кода.
Разработчики принимают многочисленные меры предосторожности, чтобы избежать выпуска проблемного кода. Например, покрытие от Синий Часовой обсудили, как база данных песочницы дает зеркальную версию производственной среды и любые изменения текущего цикла развертывания.
Специалисты по веб-разработке могут изучать и тестировать вещи без каких-либо серьезных негативных последствий, влияющих на всю команду. Но баги все равно случаются.
Поскольку над ПО с открытым исходным кодом работают целые сообщества разработчиков, шанс, что кто-то с нужными навыками и графиком доступности может найти ошибку и получить ее фиксированный. Это может означать, что известные уязвимости не останутся без внимания так долго, как это могло бы быть с использованием программного обеспечения с закрытым исходным кодом.
Программные зависимости существуют, когда одна операционная система полагается на работу другой. Когда дело доходит до программного обеспечения с открытым исходным кодом, быстрые темпы изменений часто мешают разработчикам понять, относятся ли какие-либо из их зависимостей к устаревшим версиям.
Однако недавно Google выпустила веб-инструмент визуализации под названием Анализ открытого исходного кода чтобы решить эту проблему. Он дает пользователям обзор компонентов, связанных с программным пакетом.
Поскольку информация включает подробные сведения о зависимостях и их свойствах, специалисты по разработке получают более четкое представление о том, может ли устаревшее программное обеспечение с открытым исходным кодом вызвать проблемы позже.
Помимо просмотра графиков зависимостей, люди могут использовать инструмент сравнения, который показывает, как разные версии пакетов могут влиять на зависимости. Иногда более новая версия решает проблему безопасности. Предлагая этот инструмент, Google стремится облегчить разработчикам понимание того, как они используют программное обеспечение с открытым исходным кодом.
Получение этих новых знаний может улучшить безопасность и общее удобство использования.
Программное обеспечение с открытым исходным кодом: не решение для полной безопасности
Этот обзор показывает, почему программное обеспечение с открытым исходным кодом не всегда является наиболее безопасным выбором по сравнению с программным обеспечением с закрытым исходным кодом. Тем не менее, в ПО с открытым исходным кодом тоже есть много хороших вещей.
Люди, которые намереваются использовать его в личных целях или в рамках своей организации, должны взвесить все «за» и «против», чтобы принять решение.
Ищете бесплатные приложения с открытым исходным кодом для Windows? Вот некоторые из лучших программ, которые вы можете установить.
Читать далее
- Безопасность
- Интернет-безопасность
- Открытый источник
Шеннон - создатель контента из Филадельфии, штат Пенсильвания. Она писала в области технологий около 5 лет после получения степени в области информационных технологий. Шеннон - управляющий редактор журнала ReHack Magazine, освещающий такие темы, как кибербезопасность, игры и бизнес-технологии.
Подписывайтесь на нашу новостную рассылку
Подпишитесь на нашу рассылку, чтобы получать технические советы, обзоры, бесплатные электронные книги и эксклюзивные предложения!
Еще один шаг…!
Пожалуйста, подтвердите свой адрес электронной почты в электронном письме, которое мы вам только что отправили.