Vulnerability Scanning Tools¶
Template-Based Scanning¶
Nuclei¶
GitHub: projectdiscovery/nuclei Purpose: Template-based vulnerability scanner with 9000+ templates
Detects known vulnerabilities, misconfigurations, and exposures using YAML-based templates.
docker run --rm -v $(pwd):/work pentest-tools \
nuclei -l targets.txt \
-t nuclei/cves/ \
-t nuclei/exposures/ \
-severity critical,high \
-o results.json
Coverage: - CVEs (Log4j RCE, Spring4Shell, Struts2, etc.) - Misconfigurations (open S3, exposed dashboards) - Default credentials (admin/admin, admin/password) - HTTP headers (missing HSTS, CSP, X-Frame-Options)
Template Categories:
- cves/ — Known CVEs
- exposures/ — Information disclosure
- misconfigurations/ — Security misconfig
- default-logins/ — Default credentials
- fuzzing/ — Directory fuzzing templates
Speed: 1000s of requests/minute Accuracy: Very high (official templates)
Nuclei Templates¶
Pre-built template categories:
High Priority:
- nuclei/cves/ — Critical CVEs only
- nuclei/exposures/ — .env, package.json, git repos, API keys
- nuclei/default-logins/ — Default admin/password combos
Medium Priority:
- nuclei/misconfigurations/ — Security misconfiguration
- nuclei/fuzzing/ — Directory and file discovery
Update Templates:
Web Server Scanner¶
Nikto¶
GitHub: sullo/nikto Purpose: Classic web server vulnerability scanner
Comprehensive server-level vulnerability assessment.
docker run --rm -v $(pwd):/work pentest-tools \
nikto -h https://example.com -Format json -output results.json
Checks: - Outdated server software - Dangerous HTTP methods (TRACE, PUT) - Missing security headers - SSL/TLS weaknesses - CORS misconfiguration - Clickjacking vulnerability
Coverage: - Apache, IIS, Nginx, lighttpd, etc. - Web application platforms - Custom server implementations
Output: HTML or JSON
Specialized Scanners¶
SQLMap¶
GitHub: sqlmapproject/sqlmap Purpose: Automated SQL injection detection and exploitation
Identifies SQL injection with 7+ detection techniques (boolean-based, time-based, union-based, etc.).
Capabilities: - Automatic payload generation - Database enumeration - User credential extraction - File reading (if DB has permissions)
Use Case: Verification phase for SQLi findings
Dalfox¶
GitHub: hahwul/dalfox Purpose: XSS scanner with advanced filtering
Detects and verifies XSS vulnerabilities.
Features: - Payload generation (100+ XSS payloads) - False positive filtering - PoC generation
SSRFMAP¶
GitHub: swisskyrepo/ssrfmap Purpose: SSRF attack payload generator and testing
Generates SSRF payloads for various protocols.
docker run --rm -v $(pwd):/work pentest-tools \
/opt/pentest-venv/bin/python3 ssrfmap.py \
-u "https://example.com/fetch?url=PAYLOAD"
Protocols: HTTP, file://, ftp://, dict://, gopher://, etc.
Commix¶
GitHub: commixproject/commix Purpose: OS command injection detection and exploitation
Automated CMDi payload generation with 8+ injection syntaxes.
docker run --rm -v $(pwd):/work pentest-tools \
/opt/pentest-venv/bin/python3 commix.py \
-u "https://example.com/ping?host=PAYLOAD"
Injection Syntaxes:
- ;command — Command chaining
- |command — Pipe
- $(command) — Command substitution
- `command` — Backtick substitution
- &&command — AND operator
- &command — Background execution
Arjun¶
GitHub: s0md3v/Arjun Purpose: HTTP parameter discovery
Discover hidden parameters on endpoints.
docker run --rm -v $(pwd):/work pentest-tools \
/opt/pentest-venv/bin/python3 arjun.py \
-u "https://example.com/api/users"
Parameters Tested:
- sort, order, filter, search, q
- page, limit, offset
- role, admin, is_admin
- debug, verbose, test
- Hundreds more...
NOMORE403¶
GitHub: devploit/nomore403 Purpose: 403 Forbidden bypass techniques
40+ techniques to bypass 403 access denied responses.
docker run --rm -v $(pwd):/work pentest-tools \
/opt/pentest-venv/bin/python3 nomore403.py \
-u "https://example.com/admin"
Techniques: - HTTP method override (X-Original-Method) - Host header manipulation - Path normalization - Protocol switching (HTTP/2, CONNECT) - Header injection
LLM & AI-Powered Scanning¶
Garak¶
GitHub: leondz/garak Purpose: LLM vulnerability scanner (prompt injection, jailbreaking, etc.)
Scans AI/ML systems for security issues.
docker run --rm -v $(pwd):/work pentest-tools \
garak --model_type rest \
--endpoint "https://api.example.com/ai" \
--probe_limit 100
Probe Categories (20+): - Prompt injection - Token smuggling - Jailbreaking attempts - Input validation bypass - Model confusion attacks
Summary Table¶
| Tool | Purpose | Accuracy | Speed |
|---|---|---|---|
| Nuclei | Template scanning | Very High | Very Fast |
| Nikto | Web server audit | High | Medium |
| SQLMap | SQLi verification | High | Slow |
| Dalfox | XSS verification | High | Medium |
| Commix | CMDi verification | High | Medium |
| SSRFMAP | SSRF payloads | Medium | Fast |
| Arjun | Parameter discovery | High | Slow |
| NOMORE403 | 403 bypass | Medium | Fast |
| Garak | LLM testing | High | Slow |