Vulnerability · Published Apr 7, 2021 · Assigned by GitHub_M

CVE-2021-21425Unauthenticated Arbitrary YAML Write/Update leads to Code Execution

Critical 9.3

In plain English

A critical-severity improper access control in grav-plugin-admin from getgrav. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 80.6% (higher than 99.6% of all known vulnerabilities). Ready-made attack tooling exists: Metasploit, public proof-of-concept code.

Severity (CVSS 3.1)9.3Critical
Exploit odds (30 days)80.6%top 0.4% of all CVEs
Exploited in the wildNo reportsnot in CISA KEV
Attack tooling2Metasploit, Public PoC

Official description

Grav Admin Plugin is an HTML user interface that provides a way to configure Grav and create and modify pages. In versions 1.10.7 and earlier, 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. 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. This vulnerability is fixed in version 1.10.8. Blocking access to the `/admin` path from untrusted sources can be applied as a workaround.

Affected products (as reported)

VendorProductVersions
getgrav grav-plugin-admin <= 1.10.7

Weakness: CWE-284 · Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:H/A:N

References