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

  1. 1Replace wildcards with an explicit allowlist
  2. 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.