Skip to content

Unauthenticated Arbitrary YAML Write/Update leads to Code Execution

Critical
rhukster published GHSA-6f53-6qgv-39pj Apr 6, 2021

Package

Grav Admin Plugin (PHP)

Affected versions

<= 1.10.7

Patched versions

1.10.8

Description

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.

Severity

Critical

CVE ID

CVE-2021-21425

Weaknesses