Stage File Proxy
The module does not properly check file web addresses for malicious content. Someone could use this to run malicious scripts and change or add data. They could not do this unless they can upload a malicious file to the live website.
- Who could do thisAnyone visiting the site. No login needed.
- Does it apply to youThis development module is turned on and an attacker can upload a malicious file to the live server.
- Has it been used in attacksNo sign of it.
- How urgentDrupal rates this critical. Cyber Essentials expects a fix within 14 days. Do it this week.
Tell your developerUpdate Stage File Proxy to 4.0.1 or 3.1.7, whichever branch you are on.
For developers: what the fix changed
The fix updates `DownloadManager::fetch()` to ensure that fallback retrieval on a 404 error only processes paths starting with `styles/`, preventing malicious content in file URLs from triggering a cross-site scripting vulnerability.
Also in this release Added WebP support, an interval option for Drush downloads, and fixed hotlink redirects for filenames with multiple dots.
.cspell-project-words.txt+2 −0.gitlab-ci.yml+8 −57composer.json+5 −1src/Controller/ImageStyleDownloadController.php+10 −12src/DownloadManager.php+30 −1 fixsrc/DownloadManagerInterface.php+11 −0src/Drush/Commands/StageFileProxyCommands.php+6 −0src/EventSubscriber/StageFileProxySubscriber.php+8 −2src/Hook/FileHooks.php+29 −0