CORS for Laravel
medium4 checks
CORS decides which origins may read your API responses. A wildcard turns an authenticated API into a public one.
What Laravel must have
- Access-Control-Allow-Origin limited to known origins
- No wildcard combined with credentials
- No reflection of arbitrary Origin headers
- Preflight responses only allow the methods actually used
How to fix it
- 1Replace wildcards with an explicit allowlist
- 2Validate Origin before echoing it and reject unknown origins early
Laravel context
PHP framework with Eloquent ORM, Blade templates and a huge ecosystem.
APP_DEBUG must be false in production — Ignition debug mode was RCE (CVE-2021-3129). Also watch .env exposure and unvalidated mass assignment.