CVE-2021-21425 in the critical feed json
Unauthenticated Arbitrary YAML Write/Update leads to Code Execution
published 2021-04-07 5 y ago modified 2026-06-17 4 mo ago also EUVD-2021-8706
- cvss
- 9.3
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 80.6%
- EPSS 80.6% chance of exploitation in 30 days, percentile 99.6%
- public exploits
- 2
- Metasploit, Exploit-DB
Summary
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.
Patch / fix
- getgrav grav-plugin-admin 1.10.8
Timeline
- First public exploit (Metasploit exploit/linux/http/gravcms_exec)
- Published
Exploit prediction
80.60% chance of exploitation in the next 30 days, higher than 99.6% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- Metasploit exploit/linux/http/gravcms_exec GravCMS Remote Command Execution metasploit exploit, normal rank, 2021-03-29
- EDB-49788 GravCMS 1.10.7 - Unauthenticated Arbitrary File Write (Metasploit) webapps, 2021-04-21
- pentest.blog https://pentest.blog/unexpected-journey-7-gravcms-unauthenticated-arbitrary-yaml-write-update-leads-to-code-execution/ referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 9.3 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:H/A:N |
| NVD | 3.1 | 9.8 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| NVD | 2.0 | 7.5 | AV:N/AC:L/Au:N/C:P/I:P/A:P |
Affected products
- getgrav grav-plugin-admin
Classification
- Weakness
-
- CWE-284 Improper Access Control
References
-
pentest.blog
/unexpected-journey-7-gravcms-unauthenticated-arbitrary-yaml-write-update-leads-to-code-execution/
exploit, third-party-advisory
-
github.com
/getgrav/grav-plugin-admin/security/advisories/GHSA-6f53-6qgv-39pj
third-party-advisory
-
packetstormsecurity.com
/files/162283/GravCMS-1.10.7-Remote-Command-Execution.html
third-party-advisory, vdb-entry
-
packetstormsecurity.com
/files/162457/GravCMS-1.10.7-Remote-Command-Execution.html
third-party-advisory, vdb-entry
Sources
- CVE List CVE-2021-21425
- NVD CVE-2021-21425
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.