LinuxCommandLibrary
GitHubF-DroidGoogle Play Store

progpilot

Static security analyzer for PHP code

TLDR

Scan PHP files
$ progpilot [src/]
copy
Scan specific file
$ progpilot [file.php]
copy
Use configuration
$ progpilot --configuration [config.yml] [src/]
copy
Scan with custom include and exclude paths
$ progpilot --include [app/] --exclude [vendor/] [src/]
copy
Output to file
$ progpilot --output [report.json] [src/]
copy
Verbose mode
$ progpilot -v [src/]
copy

SYNOPSIS

progpilot [--configuration file] [--json] [--output file] [options] files

DESCRIPTION

progpilot performs static security analysis on PHP code by tracing the flow of user-controlled data through the application. It uses taint analysis to identify points where unsanitized input reaches dangerous functions such as database queries, shell commands, or HTML output, flagging potential SQL injection, XSS, command injection, and path traversal vulnerabilities.The analysis works by modeling sources (where user input enters), sinks (where dangerous operations occur), and sanitizers (functions that neutralize tainted data). All three are configurable through a YAML configuration file, allowing teams to define custom security rules, add application-specific sensitive functions, and suppress false positives.Output includes the vulnerability type, file location, and affected code path. JSON output mode enables integration with CI/CD pipelines for automated security checks during development.

PARAMETERS

--configuration FILE

YAML config file.
--json
JSON output format.
--output FILE
Output file.
-v, --verbose
Verbose output.
--include PATH
Include path.
--exclude PATH
Exclude path.
--help
Show help.

CONFIGURATION

progpilot.yml (or custom path via --configuration)

YAML configuration file defining sources, sinks, sanitizers, include/exclude paths, and custom vulnerability rules for the analysis.

VULNERABILITIES DETECTED

SQL Injection - Database query manipulationXSS - Cross-site scriptingCode Injection - Arbitrary code executionPath Traversal - File access outside rootCommand Injection - Shell command execution

CAVEATS

Static analysis has false positives. Complex code paths may be missed. PHP version coverage varies.

HISTORY

progpilot was created by designsecurity as an open-source PHP static security analyzer. It uses taint analysis techniques to trace user-controlled data through application code.

SEE ALSO

phpstan(1), psalm(1), php(1)

Copied to clipboard
Kai