<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:webfeeds="http://webfeeds.org/rss/1.0"><channel><title>Backpack for Laravel - CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/products/backpack-for-laravel/</link><description>Trending threats, MITRE ATT&amp;CK coverage, and detection metadata. Fed continuously.</description><generator>Hugo</generator><language>en</language><managingEditor>hello@craftedsignal.io</managingEditor><webMaster>hello@craftedsignal.io</webMaster><lastBuildDate>Thu, 20 Aug 2026 19:13:33 +0000</lastBuildDate><atom:link href="https://feed.craftedsignal.io/products/backpack-for-laravel/feed.xml" rel="self" type="application/rss+xml"/><image><url>https://feed.craftedsignal.io/favicon-32x32.png</url><title>CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/</link><width>32</width><height>32</height></image><webfeeds:icon>https://feed.craftedsignal.io/favicon.svg</webfeeds:icon><item><title>Remote Code Execution in Laravel Backpack via Host Header Injection</title><link>https://feed.craftedsignal.io/briefs/2026-08-laravel-backpack-rce/</link><pubDate>Thu, 20 Aug 2026 19:13:33 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-08-laravel-backpack-rce/</guid><description>An unauthenticated command injection vulnerability in Laravel Backpack's Stats::makeCurlRequest method allows remote code execution by exploiting unsanitized Host header input passed to an exec() shell command.</description><content:encoded><![CDATA[<p>Laravel Backpack contains a high-severity remote code execution vulnerability (CVE-2026-54182) within its <code>Stats::makeCurlRequest</code> method. The vulnerability arises because the package constructs a shell command using unescaped input derived from the HTTP <code>Host</code> header and executes it via the PHP <code>exec()</code> function. This vulnerability is reachable pre-authentication during the <code>BackpackServiceProvider::boot()</code> process, which executes on every request in production.</p>
<p>While the application includes a 1-in-100 random execution gate, attackers can trigger the exploit reliably through automated retries. Successful exploitation requires a server environment where the PHP <code>exec()</code> function is enabled and the web server (e.g., Nginx or Apache) fails to normalize or reject malformed <code>Host</code> headers. If these conditions are met, an attacker can gain command execution under the privileges of the web user, leading to full compromise of the application environment, including access to secrets stored in <code>.env</code> files and internal network resources.</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li>Attacker identifies a target application running a vulnerable version of Backpack for Laravel.</li>
<li>Attacker crafts an HTTP request with a malicious <code>Host</code> header containing shell injection payloads (e.g., <code>; command; #</code>).</li>
<li>The request reaches the web server, which forwards the request to the PHP backend without stripping the malicious <code>Host</code> header.</li>
<li><code>BackpackServiceProvider::boot()</code> is triggered during the standard request lifecycle.</li>
<li>The application execution hits the 1-in-100 random gate; the attacker retries the request until the logic proceeds to <code>Stats::makeCurlRequest</code>.</li>
<li>The <code>makeCurlRequest</code> method injects the header into a string passed to the PHP <code>exec()</code> function.</li>
<li>The operating system spawns a shell process to execute the injected payload with the privileges of the web server user.</li>
<li>The attacker achieves code execution to exfiltrate environment variables, modify local files, or move laterally within the network.</li>
</ol>
<h2 id="impact">Impact</h2>
<p>Successful exploitation results in full unauthenticated remote code execution. Attackers can exfiltrate sensitive configuration data, including <code>APP_KEY</code>, database credentials, and third-party API keys. This provides a vector for full data exfiltration, service disruption, and potential lateral movement into internal infrastructure connected to the compromised web host. The number of affected deployments is widespread across applications utilizing the Backpack for Laravel framework.</p>
<h2 id="recommendation">Recommendation</h2>
<p>Prioritized, concrete actions for detection engineering teams:</p>
<ul>
<li>Upgrade all instances of Backpack for Laravel to the patched versions (4.1.70, 5.6.2, 6.8.13, 7.0.36) immediately to remove the <code>makeCurlRequest</code> method.</li>
<li>Audit web server configurations to ensure that <code>Host</code> headers are validated against an allowlist of expected domains and that invalid requests are dropped before reaching the application layer.</li>
<li>Configure PHP to disable the <code>exec()</code>, <code>shell_exec()</code>, and <code>passthru()</code> functions in production environments if they are not strictly required for application functionality.</li>
<li>Deploy web server logging to monitor for anomalous characters (semicolons, backticks, pipe symbols) within the <code>Host</code> header field of incoming HTTP requests.</li>
</ul>
]]></content:encoded><category domain="severity">high</category><category domain="type">advisory</category></item></channel></rss>