Security (Taint) Checks

What it detects

Vulnerability OWASP Examples
SQL Injection A03:2021 DB::statement(), DB::unprepared(), raw query methods
Shell Injection A03:2021 Process::run(), Process::command()
XSS A03:2021 Response::make() with unescaped content
SSRF A10:2021 Http::get(), Http::post() with user-controlled URLs
File Traversal A01:2021 Storage::get(), File::delete() with user-controlled paths
Open Redirect A01:2021 redirect(), Redirect::to() with user-controlled URLs
Crypto misuse A02:2021 Tracks encryption/hashing taint escape and unescape

Security scanning runs automatically alongside type analysis, no extra configuration needed.

How it compares

Tool Laravel-aware types Taint analysis Free
psalm-laravel Yes Yes (dataflow) Yes
Larastan Yes No (PHPStan can’t) Yes
SonarQube Generic PHP Yes (generic) Paid editions only
Semgrep Pro tier only Pattern-based Limited free tier
Snyk Code Generic Yes (generic) Freemium

This site uses Just the Docs, a documentation theme for Jekyll.