Created by BoostSecurity.io, poutine is a security scanner that detects misconfigurations and vulnerabilities in the build pipelines of a repository. It supports parsing CI workflows from GitHub Actions and Gitlab CI/CD. When given an access token with read-level access, poutine can analyze all the repositories of an organization to quickly gain insights about the security posture of the organization's software supply chain.
See the documentation for a list of rules currently supported by poutine.
In french, the word "poutine", when not refering to the dish, can be used to mean "messy". Inspired by the complexity and intertwined dependencies of modern Open Source projects, poutine reflects both a nod to our Montreal roots and the often messy, complex nature of securing software supply chains.
To install poutine, download the latest release from the releases page and add the binary to your $PATH.
brew install boostsecurityio/tap/poutinedocker run -e GH_TOKEN ghcr.io/boostsecurityio/poutine:latestpoutine [options] [command] [arguments]poutine analyze_local .poutine -token "$GH_TOKEN" analyze_repo org/repopoutine -token "$GH_TOKEN" analyze_org orgpoutine -token "$GL_TOKEN" -scm gitlab -scm-base-uri https://gitlab.example.com analyze_org my-org/project-token SCM access token (required for the commands analyze_repo, analyze_org) (env: GH_TOKEN)
-format Output format (default: pretty, json, sarif)
-scm SCM platform (default: github, gitlab)
-scm-base-uri Base URI of the self-hosted SCM instance
-threads Number of threads to use (default: 2)
-verbose Enable debug logging
Building poutine requires Go 1.22.
git clone https://github.com/boostsecurityio/poutine.git
cd poutine
make buildFor examples of vulnerabilities in GitHub Actions workflows, you can explore the Messy poutine GitHub organization. It showcases real-world vulnerabilities from Open Source projects readily exploitable for educational purposes.
To get started with some hints, try using poutine to analyze the messypoutine organization:
poutine -token `gh auth token` analyze_org messypoutine You may submit the flags you find in a private vulnerability disclosure.
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.

