sast-configuration
Configure Static Application Security Testing (SAST) tools for automated vulnerability detection in application code. Use when setting up security scanning, implementing DevSecOps practices, or automating code vulnerability detection.
name:sast-configurationdescription:Configure Static Application Security Testing (SAST) tools for automated vulnerability detection in application code. Use when setting up security scanning, implementing DevSecOps practices, or automating code vulnerability detection.
SAST Configuration
Static Application Security Testing (SAST) tool setup, configuration, and custom rule creation for comprehensive security scanning across multiple programming languages.
Use this skill when
Do not use this skill when
Instructions
Safety
Overview
This skill provides comprehensive guidance for setting up and configuring SAST tools including Semgrep, SonarQube, and CodeQL.
Core Capabilities
1. Semgrep Configuration
2. SonarQube Setup
3. CodeQL Analysis
Quick Start
Initial Assessment
Basic Setup
# Semgrep quick start
pip install semgrep
semgrep --config=auto --errorSonarQube with Docker
docker run -d --name sonarqube -p 9000:9000 sonarqube:latestCodeQL CLI setup
gh extension install github/gh-codeql
codeql database create mydb --language=pythonReference Documentation
Templates & Assets
Integration Patterns
CI/CD Pipeline Integration
# GitHub Actions example
name: Run Semgrep
uses: returntocorp/semgrep-action@v1
with:
config: >-
p/security-audit
p/owasp-top-tenPre-commit Hook
# .pre-commit-config.yaml
repo: https://github.com/returntocorp/semgrep
rev: v1.45.0
hooks:
- id: semgrep
args: ['--config=auto', '--error']Best Practices
- Run initial scan to establish security baseline
- Prioritize critical and high severity findings
- Create remediation roadmap
- Begin with security-focused rules
- Gradually add code quality rules
- Implement blocking only for critical issues
- Document legitimate suppressions
- Create allow lists for known safe patterns
- Regularly review suppressed findings
- Exclude test files and generated code
- Use incremental scanning for large codebases
- Cache scan results in CI/CD
- Provide security training for developers
- Create internal documentation for common patterns
- Establish security champions program
Common Use Cases
New Project Setup
./scripts/run-sast.sh --setup --language python --tools semgrep,sonarqubeCustom Rule Development
# See references/semgrep-rules.md for detailed examples
rules:
- id: hardcoded-jwt-secret
pattern: jwt.encode($DATA, "...", ...)
message: JWT secret should not be hardcoded
severity: ERRORCompliance Scanning
# PCI-DSS focused scan
semgrep --config p/pci-dss --json -o pci-scan-results.jsonTroubleshooting
High False Positive Rate
Performance Issues
Integration Failures
Related Skills
Tool Comparison
| Tool | Best For | Language Support | Cost | Integration |
|---|---|---|---|---|
| Semgrep | Custom rules, fast scans | 30+ languages | Free/Enterprise | Excellent |
| SonarQube | Code quality + security | 25+ languages | Free/Commercial | Good |
| CodeQL | Deep analysis, research | 10+ languages | Free (OSS) | GitHub native |