Silverstripe uses TinyMCE which allows svg files linked in object tags
Published 17 Jul 2024 · Updated 1 Dec 2024
Affected package
- Affected
- <5.2.16
- Fixed in
- 5.2.16
composer require silverstripe/framework:^5.2.16Details
Impact
TinyMCE v6 has a configuration value convert_unsafe_embeds set to false which allows svg files containing javascript to be used in <object> or <embed> tags, which can be used as a vector for XSS attacks.
Note that <embed> tags are not allowed by default.
After patching the default value of convert_unsafe_embeds will be set to true. This means that <object> tags will be converted to iframes instead the next time the page is saved, which may break any pages that rely upon previously saved <object> tags. Developers can override this configuration if desired to revert to the original behaviour.
We reviewed the potential impact of this vulnerability within the context of Silverstripe CMS. We concluded this is a medium impact vulnerability given how TinyMCE is used by Silverstripe CMS.
References:
- https://www.silverstripe.org/download/security-releases/ss-2024-001
- https://github.com/advisories/GHSA-5359-pvf2-pw78
Is GHSA-52cw-pvq9-9m5v 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 silverstripe/framework, and gives you the command that fixes it.
References
- Linkgithub.com/silverstripe/silverstripe-framework/security/advisories/GHSA-52cw-pvq9-9m5v
- Linkgithub.com/FriendsOfPHP/security-advisories/blob/master/silverstripe/framework/SS-2024-001.yaml
- Advisorygithub.com/advisories/GHSA-5359-pvf2-pw78
- Packagegithub.com/silverstripe/silverstripe-framework
- Linkwww.silverstripe.org/download/security-releases/ss-2024-001
Advisory data from OSV.dev (opens OSV.dev in a new tab), refreshed daily.