Medium severityPHPSensitive Data ExposureMEDIUM confidence
PII In URL Query
Sensitive data (a secret or PII/PHI field) is placed into a URL query string (CWE-598).
Standards mapping
- OWASP Top 10
- A02:2021 - Cryptographic Failures
- OWASP ASVS
- V8.3.1 (L2)
Vulnerable vs. safe
Flagged by this check
return http_build_query(["ssn" => $ssn]);Passes - the safe pattern
return http_build_query(["page" => $page]);Why it matters & how to fix it
Sensitive data (a secret or PII/PHI field) is placed into a URL query string (CWE-598). Query strings are logged by servers/proxies and stored in browser history and referrer headers. Transmit sensitive values in the request body over HTTPS, never as URL parameters.
References
Rule ID integsec-php-pii-in-url-query - engine: Opengrep - license: MIT - Copyright (c) IntegSec Inc.
TurboPentest runs this check automatically
Connect a GitHub repo and this check runs on every white-box pentest - AI-validated and reported with proof, from $99 per target.
Start a pentestRelated checks
- JavaScript / TypeScript - Sensitive Data ExposureError Stack In Response
- JavaScript / TypeScript - Sensitive Data ExposurePII PHI In Logs
- JavaScript / TypeScript - Sensitive Data ExposureSecret In Logs
- JavaScript / TypeScript - Sensitive Data ExposureSensitive Data Client Storage
- JavaScript / TypeScript - Sensitive Data ExposureSensitive Data In URL Query
- Python - Sensitive Data ExposureFlask Traceback In Response