Skip to content

Conversation

@jaydrogers
Copy link
Member

@jaydrogers jaydrogers commented Jan 16, 2026

Background

In July 2025, there was a 9.2 CVE disclosed for Laravel Livewire that allowed unauthenticated attackers to achieve remote command execution in specific scenarios.

How this exploit was used in the wild

One of our community members (@xaimes) noticed in some scenarios, attackers were using the vulnerability to preform further code execution by executing PHP scripts from the Laravel /storage directory.

How this applies to serversideup/php

Although the exploit was not from the serversideup/php image itself, we're using this as an opportunity to further harden our images to protect the community.

What this PR does

This PR prevents any .php file from being executed that is found in the /storage/* path.

For example, if someone visits:

https://example.com/storage/nested/in/some/deep/path/exploit.php

A 403 Forbidden message will be returned.

Note

This rule applies regardless if you're using Laravel or not. We felt this is a general enough of a directory name it is safe to apply to all PHP application types.

Variations this affects

This rule applies to:

  1. FrankenPHP
  2. FPM-NGINX
  3. FPM-Apache

Implemented restrictions across Apache, NGINX, and FrankenPHP configurations to prevent the execution of PHP files in the /storage directory, addressing potential vulnerabilities related to arbitrary file uploads (GHSA-29cq-5w36-x7w3).
@jaydrogers jaydrogers merged commit 919fd47 into release/bugfixes-and-dependency-updates Jan 16, 2026
83 checks passed
@jaydrogers jaydrogers deleted the improvement/prevent-php-execution-in-uploads branch January 16, 2026 19:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants