{"id":"CVE-2026-54182","state":"PUBLISHED","title":"backpack/crud: OS command injection in Stats::makeCurlRequest via attacker-controlled Host header (pre-auth)","description":"backpack/crud provides Create, Read, Update & Delete (CRUD) functions for Backpack, a collection of Laravel packages that help users build custom administration panels. Prior to 4.1.70, 5.6.2, 6.8.13, and 7.0.36, Backpack\\CRUD\\Stats::makeCurlRequest in src/Stats.php is reached from BackpackServiceProvider::boot() and constructs a shell command with a URL influenced by the HTTP Host header, which it passes to exec() without adequate shell neutralization. An unauthenticated attacker whose malformed Host value reaches PHP can inject operating-system commands when exec() and curl are available and the 1-in-100 random gate is reached. Repeated requests can reach the random gate. Successful exploitation executes commands as the web-server user, exposing environment secrets, files, and reachable services and permitting data modification or service disruption. Common reverse-proxy Host validation and hardened PHP configurations that disable exec() reduce reachability but do not correct the vulnerable construction. This issue is fixed in versions 4.1.70, 5.6.2, 6.8.13, and 7.0.36.","publishedAt":"2026-09-14T17:48:21.509Z","updatedAt":"2026-09-14T18:17:49.976Z","severity":{"score":8.1,"label":"High","version":"3.1","vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H","source":"GitHub_M"},"assigner":"GitHub_M","products":["Laravel-Backpack CRUD"],"affected":[{"vendor":"Laravel-Backpack","product":"CRUD","versions":[{"version":"< 4.1.70","status":"affected"},{"version":">= 5.0.0, < 5.6.2","status":"affected"},{"version":">= 6.0.0, < 6.8.13","status":"affected"},{"version":">= 7.0.0, < 7.0.36","status":"affected"}]}],"references":["https://github.com/Laravel-Backpack/CRUD/security/advisories/GHSA-mrc5-3mm3-45c5","https://github.com/Laravel-Backpack/CRUD/pull/6012","https://github.com/Laravel-Backpack/CRUD/commit/0f2faafc22a15d77c14370f163d8f739f933c28c","https://github.com/Laravel-Backpack/CRUD/commit/1476a3769d94a410a2d2e9576deb522e84002f2a","https://github.com/Laravel-Backpack/CRUD/commit/282ba2a0b88749fb1888b3836678ba462d7023f0","https://github.com/Laravel-Backpack/CRUD/commit/471935e296b1be1a7216fdf10c8823e1f512f601","https://github.com/Laravel-Backpack/CRUD/releases/tag/4.1.72","https://github.com/Laravel-Backpack/CRUD/releases/tag/5.6.2","https://github.com/Laravel-Backpack/CRUD/releases/tag/6.8.13","https://github.com/Laravel-Backpack/CRUD/releases/tag/7.0.36"],"weaknesses":["CWE-20","CWE-78","CWE-116"],"ingestedAt":"2026-10-29T20:12:24.861Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/54xxx/CVE-2026-54182.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-54182","state":"PUBLISHED","datePublished":"2026-09-14T17:48:21.509Z","dateUpdated":"2026-09-14T18:17:49.976Z","assignerShortName":"GitHub_M","assignerOrgId":"a0819718-46f1-4df5-94e2-005712e83aaa","dateReserved":"2026-06-11T21:46:52.382Z"},"containers":{"cna":{"title":"backpack/crud: OS command injection in Stats::makeCurlRequest via attacker-controlled Host header (pre-auth)","descriptions":[{"lang":"en","value":"backpack/crud provides Create, Read, Update & Delete (CRUD) functions for Backpack, a collection of Laravel packages that help users build custom administration panels. Prior to 4.1.70, 5.6.2, 6.8.13, and 7.0.36, Backpack\\CRUD\\Stats::makeCurlRequest in src/Stats.php is reached from BackpackServiceProvider::boot() and constructs a shell command with a URL influenced by the HTTP Host header, which it passes to exec() without adequate shell neutralization. An unauthenticated attacker whose malformed Host value reaches PHP can inject operating-system commands when exec() and curl are available and the 1-in-100 random gate is reached. Repeated requests can reach the random gate. Successful exploitation executes commands as the web-server user, exposing environment secrets, files, and reachable services and permitting data modification or service disruption. Common reverse-proxy Host validation and hardened PHP configurations that disable exec() reduce reachability but do not correct the vulnerable construction. This issue is fixed in versions 4.1.70, 5.6.2, 6.8.13, and 7.0.36."}],"affected":[{"vendor":"Laravel-Backpack","product":"CRUD","versions":[{"version":"< 4.1.70","status":"affected"},{"version":">= 5.0.0, < 5.6.2","status":"affected"},{"version":">= 6.0.0, < 6.8.13","status":"affected"},{"version":">= 7.0.0, < 7.0.36","status":"affected"}]}],"references":[{"url":"https://github.com/Laravel-Backpack/CRUD/security/advisories/GHSA-mrc5-3mm3-45c5","name":"https://github.com/Laravel-Backpack/CRUD/security/advisories/GHSA-mrc5-3mm3-45c5","tags":["x_refsource_CONFIRM"]},{"url":"https://github.com/Laravel-Backpack/CRUD/pull/6012","name":"https://github.com/Laravel-Backpack/CRUD/pull/6012","tags":["x_refsource_MISC"]},{"url":"https://github.com/Laravel-Backpack/CRUD/commit/0f2faafc22a15d77c14370f163d8f739f933c28c","name":"https://github.com/Laravel-Backpack/CRUD/commit/0f2faafc22a15d77c14370f163d8f739f933c28c","tags":["x_refsource_MISC"]},{"url":"https://github.com/Laravel-Backpack/CRUD/commit/1476a3769d94a410a2d2e9576deb522e84002f2a","name":"https://github.com/Laravel-Backpack/CRUD/commit/1476a3769d94a410a2d2e9576deb522e84002f2a","tags":["x_refsource_MISC"]},{"url":"https://github.com/Laravel-Backpack/CRUD/commit/282ba2a0b88749fb1888b3836678ba462d7023f0","name":"https://github.com/Laravel-Backpack/CRUD/commit/282ba2a0b88749fb1888b3836678ba462d7023f0","tags":["x_refsource_MISC"]},{"url":"https://github.com/Laravel-Backpack/CRUD/commit/471935e296b1be1a7216fdf10c8823e1f512f601","name":"https://github.com/Laravel-Backpack/CRUD/commit/471935e296b1be1a7216fdf10c8823e1f512f601","tags":["x_refsource_MISC"]},{"url":"https://github.com/Laravel-Backpack/CRUD/releases/tag/4.1.72","name":"https://github.com/Laravel-Backpack/CRUD/releases/tag/4.1.72","tags":["x_refsource_MISC"]},{"url":"https://github.com/Laravel-Backpack/CRUD/releases/tag/5.6.2","name":"https://github.com/Laravel-Backpack/CRUD/releases/tag/5.6.2","tags":["x_refsource_MISC"]},{"url":"https://github.com/Laravel-Backpack/CRUD/releases/tag/6.8.13","name":"https://github.com/Laravel-Backpack/CRUD/releases/tag/6.8.13","tags":["x_refsource_MISC"]},{"url":"https://github.com/Laravel-Backpack/CRUD/releases/tag/7.0.36","name":"https://github.com/Laravel-Backpack/CRUD/releases/tag/7.0.36","tags":["x_refsource_MISC"]}],"metrics":[{"cvssV3_1":{"attackComplexity":"HIGH","attackVector":"NETWORK","availabilityImpact":"HIGH","baseScore":8.1,"baseSeverity":"HIGH","confidentialityImpact":"HIGH","integrityImpact":"HIGH","privilegesRequired":"NONE","scope":"UNCHANGED","userInteraction":"NONE","vectorString":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H","version":"3.1"}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-20","lang":"en","description":"CWE-20: Improper Input Validation","type":"CWE"}]},{"descriptions":[{"cweId":"CWE-78","lang":"en","description":"CWE-78: Improper Neutralization of Special Elements used in an OS Command ('OS Command Injection')","type":"CWE"}]},{"descriptions":[{"cweId":"CWE-116","lang":"en","description":"CWE-116: Improper Encoding or Escaping of Output","type":"CWE"}]}],"providerMetadata":{"shortName":"GitHub_M","orgId":"a0819718-46f1-4df5-94e2-005712e83aaa","dateUpdated":"2026-09-14T17:48:21.509Z"},"source":{"advisory":"GHSA-mrc5-3mm3-45c5","discovery":"UNKNOWN"}},"adp":[{"title":"CISA ADP Vulnrichment","metrics":[{"other":{"type":"ssvc","content":{"timestamp":"2026-09-14T18:17:38.848658Z","id":"CVE-2026-54182","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"total"}],"role":"CISA Coordinator","version":"2.0.3"}}}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2026-09-14T18:17:49.976Z"}}]}}}