Impact
A user could upload PHP files through image upload functions, which would allow them to execute code on the host system remotely. They would then have the permissions of the PHP process.
This most impacts scenarios where non-trusted users are given permission to upload images in any area of the application.
Patches
The issue was addressed in a series of patches: v0.25.3, v0.25.4 & v0.25.5.
Users should upgrade to at least v0.25.5 to avoid this patch but ideally the latest BookStack version as previous versions are un-supported.
Workarounds
Depending on BookStack version, you could use the local_secure image storage option, or use s3 or a similar compatible service.
Preventing direct execution of any php
files, apart from the public/index.php
file, though web-server configuration would also prevent this.
References
BookStack Beta v0.25.3
BookStack Beta v0.25.4
BookStack Beta v0.25.5
Attribution
- Thanks to inc0x0 for originally discovering and reporting this vulnerability.
- Thanks to Thiago Mayllart for discovering & reporting more ways to exploit this vulnerability & advising the creation of a CVE for this issue.
For more information
If you have any questions or comments about this advisory:
Impact
A user could upload PHP files through image upload functions, which would allow them to execute code on the host system remotely. They would then have the permissions of the PHP process.
This most impacts scenarios where non-trusted users are given permission to upload images in any area of the application.
Patches
The issue was addressed in a series of patches: v0.25.3, v0.25.4 & v0.25.5.
Users should upgrade to at least v0.25.5 to avoid this patch but ideally the latest BookStack version as previous versions are un-supported.
Workarounds
Depending on BookStack version, you could use the local_secure image storage option, or use s3 or a similar compatible service.
Preventing direct execution of any
php
files, apart from thepublic/index.php
file, though web-server configuration would also prevent this.References
BookStack Beta v0.25.3
BookStack Beta v0.25.4
BookStack Beta v0.25.5
Attribution
For more information
If you have any questions or comments about this advisory: