Повышаем безопасность кода с Gitleaks: незаменимый помощник для DevSecOps

Повышаем безопасность кода с Gitleaks: незаменимый помощник для DevSecOps

 

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

Что такое Gitleaks и для чего он нужен?

Gitleaks — это SAST-инструмент с открытым исходным кодом, разработанный для обнаружения секретов в репозиториях Git. Его задача — сканировать код на наличие конфиденциальной информации и предотвратить её попадание в общий доступ.

Gitleaks поддерживает множество языков программирования и может интегрироваться с CI/CD-пайплайнами, что делает его универсальным решением для команд разработчиков и администраторов систем.

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

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

Как работает Gitleaks?

Gitleaks использует регулярные выражения и шаблоны для поиска конфиденциальной информации. Инструмент может быть настроен на работу с любыми правилами, которые подходят именно вам, будь то специфические паттерны или стандартные шаблоны для ключей AWS, Google Cloud, и других популярных сервисов. Gitleaks можно запускать как вручную, так и автоматически, интегрировав его в ваши CI/CD-процессы.

Установка и использование

Gitleaks можно установить с помощью Homebrew, Docker или Go. Gitleaks также доступен в бинарном виде для многих популярных платформ и типов ОС. Кроме того, Gitleaks можно реализовать как перехватчик pre-commit `а непосредственно в вашем репозитории или как действие GitHub с помощью Gitleaks-Action.

Установка Gitleaks проста и осуществляется с помощью командной строки. Вот пример установки:

# MacOS

brew install gitleaks

# Docker (DockerHub)

docker pull zricethezav/gitleaks:latest

docker run -v ${path_to_host_folder_to_scan}:/path zricethezav/gitleaks:latest [COMMAND] --source="/path" [OPTIONS]

# Docker (ghcr.io)

docker pull ghcr.io/gitleaks/gitleaks:latest

docker run -v ${path_to_host_folder_to_scan}:/path ghcr.io/gitleaks/gitleaks:latest [COMMAND] --source="/path" [OPTIONS]

# From Source (make sure `go` is installed)

git clone https://github.com/gitleaks/gitleaks.git

cd gitleaks

make build

Команды

Для обнаружения секретов нужно использовать две команды: detect и protect.

  • Команда detect используется для сканирования репозиториев, каталогов и файлов. Команду можно использовать на машинах разработчиков и в средах CI.
  • Команда protect используется для сканирования незафиксированных изменений в репозитории git. Эту команду следует использовать на машинах разработчика в соответствии со  сдвигом влево в целях безопасности.

Вы также можете настроить Gitleaks на работу с различными форматами отчетов, такими как JSON или CSV, что облегчает интеграцию с другими инструментами. Кроме того, Gitleaks предлагает формат конфигурации, которому вы можете следовать, чтобы написать свои собственные правила обнаружения секретов.

Отличительные черты Gitleaks

  1. Открытый исходный код: позволяет любому желающему вносить изменения и улучшения.
  2. Гибкость и настраиваемость: поддержка пользовательских правил и шаблонов.
  3. Интеграция с CI/CD: автоматическое сканирование при каждом коммите или деплое.
  4. Сообщество и поддержка: активное сообщество разработчиков, готовое помочь с любыми вопросами.

Заключение

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

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

Gitleaks DevSecOps разработка SAST Git код
Alt text
Обращаем внимание, что все материалы в этом блоге представляют личное мнение их авторов. Редакция SecurityLab.ru не несет ответственности за точность, полноту и достоверность опубликованных данных. Вся информация предоставлена «как есть» и может не соответствовать официальной позиции компании.

Теория струн? У нас целый оркестр научных фактов!

От классики до авангарда — наука во всех жанрах

Настройтесь на нашу волну — подпишитесь

Комнатный Блогер

Объясняю новую цифровую реальность