Движок статического анализа кода с открытым исходным кодом, форк Semgrep для поиска проблем безопасности и шаблонов кода с помощью семантических grep-правил.
securego/gosec
Инструмент статического анализа, который проверяет исходный код на Go на распространённые уязвимости и небезопасные практики программирования.
- Звёзды
- 9,001
- Форки
- 731
- Открытые issues
- 5
- Последний коммит
- 4 дня назад
Что это?
gosec ищет проблемы безопасности в исходном коде на Go, обходя AST- и SSA-представления программы. В него входят группы правил для поиска захардкоженных учётных данных, небезопасного использования API, слабой криптографии и настроек TLS, проблем с правами доступа к файлам и обработкой путей, а также импортов из блок-листа; каждому правилу соответствует идентификатор CWE.
Правила taint analysis отслеживают поток данных от пользовательского ввода к чувствительным точкам использования. Они выявляют такие виды инъекций, как SQL-, командные, шаблонные и SMTP-инъекции, а также SSRF, обход пути, XSS, открытые редиректы и небезопасную десериализацию. Результаты можно подавлять в коде с помощью комментариев #nosec или //gosec:disable либо фильтровать по правилу, пути, уровню серьёзности и достоверности.
Результаты можно экспортировать в форматах text, JSON, YAML, CSV, JUnit XML, HTML, SonarQube, golint и SARIF. Инструмент также можно запускать как GitHub Action или установить с помощью go install.
Ключевые возможности
- 01Правила на основе шаблонов для распространённых проблем безопасности в Go, например захардкоженных учётных данных и слабой криптографии
- 02Taint analysis отслеживает пользовательский ввод до точек использования в SQL, командах, путях, SSRF и XSS
- 03Подавление результатов в коде с помощью #nosec или //gosec:disable; при необходимости можно требовать обоснование
- 04Исключение правил для заданных путей и фильтры по уровню серьёзности и достоверности
- 05Поддержка нескольких форматов отчётов, включая SARIF для GitHub code scanning
Сценарии использования
- Запуск проверок безопасности кода на Go в CI-пайплайнах с помощью GitHub Action
- Загрузка результатов в формате SARIF в GitHub code scanning для проверки pull request
- Аудит кодовой базы на Go перед выпуском на предмет инъекций, слабой криптографии и небезопасных настроек TLS
Быстрый старт
- 1
Установите gosec с помощью go install (требуется Go 1.25 или новее)
go install github.com/securego/gosec/v2/cmd/gosec@latest - 2
Просканируйте все пакеты в текущем модуле
gosec ./...
Что важно знать
- Для установки и сборки требуется Go 1.25 или новее.
В подборках
Темы
Частые вопросы
- Что такое gosec?
- Инструмент статического анализа, который проверяет исходный код на Go на распространённые уязвимости и небезопасные практики программирования. gosec ищет проблемы безопасности в исходном коде на Go, обходя AST- и SSA-представления программы. В него входят группы правил для поиска захардкоженных учётных данных, небезопасного использования API, слабой криптографии и настроек TLS, проблем с правами доступа к файлам и обработкой путей, а также импортов из блок-листа; каждому правилу соответствует идентификатор CWE.
- gosec можно использовать бесплатно? Какая у него лицензия?
- gosec распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- gosec всё ещё поддерживается?
- Активно поддерживается. Последний коммит в gosec — 3 нояб. 2026 г..
- Для чего можно использовать gosec?
- Запуск проверок безопасности кода на Go в CI-пайплайнах с помощью GitHub Action Загрузка результатов в формате SARIF в GitHub code scanning для проверки pull request Аудит кодовой базы на Go перед выпуском на предмет инъекций, слабой криптографии и небезопасных настроек TLS
- Как установить gosec?
- Установите gosec с помощью go install (требуется Go 1.25 или новее): go install github.com/securego/gosec/v2/cmd/gosec@latest Просканируйте все пакеты в текущем модуле: gosec ./...
- Где скачать gosec?
- Исходный код и инструкции по установке — на GitHub: https://github.com/securego/gosec
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Сканер секретов на Rust, который находит утёкшие учётные данные, проверяет, активны ли они, определяет доступы и поддерживает отзыв.
Сканер безопасности с приоритетом на AI: проверяет код и конфигурации AI-агентов, включая приложения на LLM, MCP-серверы и секреты в истории чатов и командной оболочки.
Инструмент статического анализа, который находит и помогает исправлять проблемы безопасности в конфигурациях CI/CD, включая GitHub Actions, Dependabot и pre-commit.
Быстрый CLI-инструмент статического анализа с открытым исходным кодом: находит ошибки и проверяет соблюдение стандартов с помощью похожих на код шаблонов, а не regex или AST.
Open-source AI-ревью кода: отдельный проверяющий анализирует изменения вашего агента перед отправкой в Git для Claude Code, Codex, Cursor и Cline.