- PVSM.RU - https://www.pvsm.ru -

Обзор инструментов для безопасности GitHub репозиториев

image

Введение

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

В случае, если вы создаете свой собственный репозиторий GitHub или часто контрибьютите в репозиторий, вам необходимо знать, содержит ли ваш код какие-либо уязвимости. Уязвимости репозиториев в прошлом вызывали проблемы с безопасностью. Это было подчеркнуто тем фактом, что две из самых больших утечек данных за последнее время — Equifax [1] и Heartbleed SSL Exploit [2] — начались с уязвимостей с соответствующими компонентами с открытым кодом, которые могут быть использованы в будущем.

В этом посте мы рассмотрим и проанализируем четыре отдельных инструмента, которые можно использовать для выявления уязвимостей в вашем репозитории GitHub. Каждый из этих четырех инструментов имеет свои суперспособности, но у каждого есть и слабые стороны. Эта статья поможет вам выбрать правильный инструмент для проекта с открытым исходным кодом.

EDISON Software - web-development [3]
Статья переведена при поддержке компании EDISON Software, которая дает дельные советы юниорам [4], а также проектирует программное обеспечение и пишет ТЗ на русском и английском [5].

GuardRails [6]

image

GuardRails — это фримиум (freemium) приложение безопасности, которое доступно на маркетплейсе GitHub’а [7]. GuardRails может обеспечить статический анализ кода, а также выявление уязвимых зависимостей. Он пишет комментарии в пул реквесты с уязвимостями.

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

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

В настоящее время GuardRails поддерживает Python, Ruby, JavaScript, Solidity, Go, Java и PHP.

WhiteSource Bolt [8]

image

WhiteSource Bolt помогает пользователям GitHub создавать сканы своих репозиториев, позволяя им выявлять уязвимости с открытым исходным кодом, которые могут появляться в коде. Он предоставляется компанией WhiteSource, которая является специалистом в области безопасности, лицензирования и отчетности в области открытого исходного кода. Они работают на рынке с 2011 года и могут рассчитывать на помощь более чем 2,1 миллиона различных разработчиков.

Их сервис работает так, что каждый раз, когда происходит push-действие, Bolt запускает сканирование вашего репозитория, а затем создает проблему(issue) для каждой обнаруживаемой уязвимости. Он также будет создавать проблемы(issues) для новых уязвимостей, которые были обнаружены с существующими компонентами кода с открытым исходным кодом. Кроме того, он может предотвратить попадание уязвимых компонентов в код, автоматически отменяя пул реквесты, которые содержат уязвимости.

Bolt также предоставляет своим пользователям доступ к собственной базе данных уязвимостей WhiteSource, которая обширна и считается многими самой дорогой на рынке безопасности с открытым исходным кодом. Вы получите несколько сведений о любых обнаруженных уязвимостях, включая данные CVE и CVSS, предлагаемые исправления, пути к уязвимым компонентам и ссылки для справки.

В настоящее время Bolt поддерживает более 200 различных программ, включая Java, Python, PHP, C #, C ++ и другие.

LGTM [9]

image

LGTM — это бесплатное приложение для проектов с открытым исходным кодом, которое помогает пользователям обнаруживать потенциальные уязвимости в их коде, а также предотвращает их появление в первую очередь. В частности, LGTM использует данные, собранные группой исследований безопасности, которые сосредоточены на поиске уязвимостей нулевого дня. Услугами LGTM воспользовались более 700 000 разработчиков и более 135 000 проектов с открытым исходным кодом, и этот уровень опыта свидетельствует о качестве их услуг. Приложение LGTM GitHub доступно на маркетплейсе GitHub.

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

LGTM в настоящее время имеет большое количество поддерживаемых языков программирования, поддержка которых распространяется на C, C ++. COBOL, Python, Javascript и Java.

GitHub Security Alerts [10]

image

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

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

В настоящее время сервис поддерживает JavaScript, Ruby и Python.

Автор: rishat_edison

Источник [11]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/open-source/337604

Ссылки в тексте:

[1] Equifax: https://www.zdnet.com/article/equifax-blames-open-source-software-for-its-record-breaking-security-breach/

[2] Heartbleed SSL Exploit: http://heartbleed.com/

[3] Image: https://www.edsd.ru/

[4] дает дельные советы юниорам: https://www.edsd.ru/ru/o_kompanii/novosti/sovety-yunioram

[5] проектирует программное обеспечение и пишет ТЗ на русском и английском: https://www.edsd.ru/ru/uslugi/proektirovanie

[6] GuardRails: https://www.guardrails.io/

[7] маркетплейсе GitHub’а: https://github.com/marketplace

[8] WhiteSource Bolt: https://bolt.whitesourcesoftware.com/github/

[9] LGTM: https://lgtm.com/

[10] GitHub Security Alerts: https://blog.github.com/2017-11-16-introducing-security-alerts-on-github/

[11] Источник: https://habr.com/ru/post/477092/?utm_campaign=477092&utm_source=habrahabr&utm_medium=rss