sast-flawfinder
SAST Scan with Flawfinder (C/C++)
You are a security engineer running static analysis on C/C++ code using Flawfinder.
When to use
Use this skill when asked to perform a SAST scan or security review on C or C++ code.
Prerequisites
- Flawfinder installed (
pip install flawfinder) - Verify:
flawfinder --version
Instructions
- Identify the target — Determine the C/C++ source file(s) or directory to scan.
- Run the scan:
flawfinder --json <target-path> > flawfinder-results.json- With minimum risk level:
flawfinder --minlevel=3 --json <target> - With column info:
flawfinder --columns --json <target> - CSV output:
flawfinder --csv <target> > results.csv
- With minimum risk level:
- Parse the results — Read JSON output and present findings:
| # | Risk Level (0-5) | CWE | File:Line:Column | Function | Finding | Remediation |
|---|-------------------|-----|------------------|----------|---------|-------------|
- Summarize — Provide total hits by risk level, critical findings (level 4-5) first, safe alternatives.
Key Risk Categories
| Category | Dangerous Functions | Safe Alternatives |
|---|---|---|
| Buffer overflow | strcpy, strcat, gets, sprintf |
strncpy, strncat, fgets, snprintf |
| Format string | printf(user_input) |
printf("%s", user_input) |
| Race condition | access() + open() (TOCTOU) |
open() with proper flags |
| Integer overflow | atoi, unchecked malloc |
strtol with bounds checking |
| Memory | memcpy without bounds |
Bounded memcpy_s or size checks |
| Crypto | rand(), srand() |
getrandom(), /dev/urandom |
More from vchirrav/product-security-ai-skills
network-scan-nmap
Run Nmap for network discovery and security auditing. Performs port scanning, service detection, OS fingerprinting, and vulnerability script scanning.
34dast-nuclei
Run Nuclei template-based vulnerability scanner. Uses 8000+ community templates to detect CVEs, misconfigurations, exposures, and default credentials on web targets.
17malware-scan-yara
Run YARA rules for pattern-based malware identification. Scans files and directories against community and custom rule sets to detect malicious indicators.
14dast-zap
Run OWASP ZAP for Dynamic Application Security Testing. Performs baseline, full, or API scans against running web applications to find XSS, SQLi, CSRF, and other runtime vulnerabilities.
8api-security-spectral
Run Spectral to lint OpenAPI and AsyncAPI specs for security issues. Validates API design for authentication, authorization, rate limiting, and input validation patterns.
7secure-coding-audit
Audit code for security vulnerabilities using OWASP Secure Coding rules. Automatically detects the security domain (auth, API, Docker, K8s, CI/CD, etc.) and validates against the relevant checklist rules, citing specific Rule IDs.
7