October CMS upload process vulnerable to RCE via Race Condition
Published 13 Jul 2022 · Updated 8 Nov 2023
Affected packages
- Affected
- <1.0.476
- Fixed in
- 1.0.476
composer require october/system:^1.0.476- Affected
- >=1.1.0 <1.1.12
- Fixed in
- 1.1.12
composer require october/system:^1.1.12- Affected
- >=2.0.0 <2.2.15
- Fixed in
- 2.2.15
composer require october/system:^2.2.15Details
Impact
This advisory affects plugins that expose the October\Rain\Database\Attach\File::fromData as a public interface. This vulnerability does not affect vanilla installations of October CMS since this method is not exposed or used by the system internally or externally.
When the developer allows the user to specify their own filename in the fromData method, an unauthenticated user can perform remote code execution (RCE) by exploiting a race condition in the temporary storage directory.
Patches
The issue has been patched in Build 476 (v1.0.476) and v1.1.12 and v2.2.15.
Workarounds
Apply https://github.com/octobercms/library/commit/fe569f3babf3f593be2b1e0a4ae0283506127a83 to your installation manually if unable to upgrade to Build 476 (v1.0.476) or v1.1.12 or v2.2.15.
References
Credits to:
- DucNT, HungTD and GiangVQ from RedTeam@VNG Security Response Center.
For more information
If you have any questions or comments about this advisory:
- Email us at [hello@octobercms.com](mailto:hello@octobercms.com)
Is GHSA-8v7h-cpc2-r8jp in any of your client repos?
Checking one package by hand is fine. Checking it across forty client projects is not. NPMscan reads the lockfiles in every GitHub repo you pick, finds each project with an affected october/system, and gives you the command that fixes it.
References
Advisory data from OSV.dev (opens OSV.dev in a new tab), refreshed daily.