Verification · Static analysis · Static application security testing
Language security linters
Per-language security rule sets maintained by each ecosystem.
How to build it
- Enable the security rule set that each ecosystem maintains for every language in use.
- Set the severity threshold and record each accepted exception next to the code.
- Run the same linter config in CI and in the pre-commit hook.
Signals in a repository
- A bandit configuration in pyproject.toml or .bandit with a skips list.
- An eslint config that extends the security rules from eslint-plugin-security.
- gosec or security-code-scan referenced in a CI workflow or build file.
In practice
6 repositories run a tool for this check in the scanned set.
bandit· 6 repos
Examples
-
apache/airflow ·
banditbandit -
celery/celery ·
banditbandit -b bandit.json -r celery/ -
prowler-cloud/prowler ·
banditbandit -q -lll -x *_test.py,./contrib/,./.venv/ -r . -
awslabs/mcp ·
banditbandit -r --severity-level medium --confidence-level medium -f html -o bandit-report-$EXPR.html -c pyproject.toml .