Headline
GHSA-3c5g-73f7-grvm: Neos Information Disclosure Security Note
Due to reports it has been validated that internal workspaces in Neos are accessible without authentication. Some users assumed this is a planned feature but it is not. A workspace preview should be an additional feature with respective security measures in place.
Note that this only allows reading of internal workspaces not writing. And for clarification, an internal workspace is a workspace that is non public and doesn’t have an owner.
Given that an internal workspace exists in your installation, it is possible to view a page in context of that workspace by opening a link in this format:
https://domain/path/to/page.html@workspace-name
The issue is quite problematic when exploited but at the same time slightly less impactful than it sounds. First of all there is no default internal workspace, so the issue affects only workspaces created by users. That also means the workspace-name, which will also always include a hash is individual to a project and an exploiter must get hold of the workspace-name including the hash. This is non trivial as there is no indication of the existence of it, but obviously brute force and educated guessed can be made.
- GitHub Advisory Database
- GitHub Reviewed
- GHSA-3c5g-73f7-grvm
Neos Information Disclosure Security Note
High severity GitHub Reviewed Published May 17, 2024 to the GitHub Advisory Database • Updated May 17, 2024
Package
Affected versions
>= 2.3.0, < 3.0.20
>= 3.1.0, < 3.1.18
>= 3.2.0, < 3.2.14
>= 3.3.0, < 3.3.23
>= 4.0.0, < 4.0.17
>= 4.1.0, < 4.1.16
>= 4.2.0, < 4.2.12
>= 4.3.0, < 4.3.3
Patched versions
3.0.20
3.1.18
3.2.14
3.3.23
4.0.17
4.1.16
4.2.12
4.3.3
Due to reports it has been validated that internal workspaces in Neos are accessible without authentication. Some users assumed this is a planned feature but it is not. A workspace preview should be an additional feature with respective security measures in place.
Note that this only allows reading of internal workspaces not writing. And for clarification, an internal workspace is a workspace that is non public and doesn’t have an owner.
Given that an internal workspace exists in your installation, it is possible to view a page in context of that workspace by opening a link in this format:
https://domain/path/to/page.html@workspace-name
The issue is quite problematic when exploited but at the same time slightly less impactful than it sounds. First of all there is no default internal workspace, so the issue affects only workspaces created by users. That also means the workspace-name, which will also always include a hash is individual to a project and an exploiter must get hold of the workspace-name including the hash. This is non trivial as there is no indication of the existence of it, but obviously brute force and educated guessed can be made.
References
- https://github.com/FriendsOfPHP/security-advisories/blob/master/neos/neos/2019-06-17.yaml
- https://www.neos.io/blog/neos-workspace-disclosure-security.html
Published to the GitHub Advisory Database
May 17, 2024
Last updated
May 17, 2024