Vulnerability
An unauthenticated user can execute some methods of administrator controller without needing any credentials. Particular method execution will result in arbitrary YAML file creation or content change of existing YAML files on the system.
Impact
Successfully exploitation of that vulnerability results in configuration changes, such as general site information change, custom scheduler job definition, etc. Due to the nature of the vulnerability, an adversary can change some part of the webpage, or hijack an administrator account, or execute operating system command under the context of the web-server user.
Workarounds
Blocking access to the /admin
path from untrusted sources can be applied as a workaround.
References
https://pentest.blog/unexpected-journey-7-gravcms-unauthenticated-arbitrary-yaml-write-update-leads-to-code-execution/
At the time of this report, the above URL that contains technical details about the vulnerability is password protected. Password is shared with the only core development team as a part of the responsible disclosure process.
Vulnerability
An unauthenticated user can execute some methods of administrator controller without needing any credentials. Particular method execution will result in arbitrary YAML file creation or content change of existing YAML files on the system.
Impact
Successfully exploitation of that vulnerability results in configuration changes, such as general site information change, custom scheduler job definition, etc. Due to the nature of the vulnerability, an adversary can change some part of the webpage, or hijack an administrator account, or execute operating system command under the context of the web-server user.
Workarounds
Blocking access to the
/admin
path from untrusted sources can be applied as a workaround.References
https://pentest.blog/unexpected-journey-7-gravcms-unauthenticated-arbitrary-yaml-write-update-leads-to-code-execution/
At the time of this report, the above URL that contains technical details about the vulnerability is password protected. Password is shared with the only core development team as a part of the responsible disclosure process.