Grav CMS 2.0.7 through 2.0.10 Arbitrary Method Invocation via Blueprint
Default status is the baseline for the product, each version can override it (e.g. patched versions marked unaffected).
| Vendor | Product | Default status | Versions | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| getgrav | grav | unaffected |
|
No data.
No data.
| Vendor | Product | Versions | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Getgrav | Grav |
|
| Source | ID | Title |
|---|---|---|
Github GHSA |
GHSA-7pgq-cr25-xvc8 | Grav: Incomplete callable validation in blueprint dynamic fields allows arbitrary static method invocation and file disclosure |
No CVSS v3.0
No CVSS v2
This CVE is not in the KEV list.
Exploit prediction score: < 1% (0.295% probability within 30 days)
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
| Type | Values Removed | Values Added |
|---|---|---|
| Description | Grav CMS versions 2.0.7 through 2.0.10 fail to validate fully-qualified static method calls (Class::method) in blueprint dynamic-field directives because Blueprint::isSafeDynamicCall() only applies its dangerous-callable denylist to strings that do not contain '::'. An account with only page-editing rights (admin.pages, not super-admin or admin.pages_twig) can plant a directive in a page's form-field frontmatter that invokes an arbitrary public static PHP method with attacker-controlled arguments. Using built-in gadget methods this allows reading of any server-readable file (disclosed to anonymous visitors of the crafted page) and arbitrary creation/copying of files and directories under the web-server account. Fixed in 2.0.11. | |
| Title | Grav CMS 2.0.7 through 2.0.10 Arbitrary Method Invocation via Blueprint | |
| First Time appeared |
Getgrav
Getgrav grav |
|
| Weaknesses | CWE-94 | |
| CPEs | cpe:2.3:a:getgrav:grav:1.7.53.1:*:*:*:*:*:*:* cpe:2.3:a:getgrav:grav:1.7.53.2:*:*:*:*:*:*:* cpe:2.3:a:getgrav:grav:1.7.53:*:*:*:*:*:*:* cpe:2.3:a:getgrav:grav:2.0.0:-:*:*:*:*:*:* cpe:2.3:a:getgrav:grav:2.0.0:rc10:*:*:*:*:*:* cpe:2.3:a:getgrav:grav:2.0.0:rc5:*:*:*:*:*:* cpe:2.3:a:getgrav:grav:2.0.0:rc6:*:*:*:*:*:* cpe:2.3:a:getgrav:grav:2.0.0:rc7:*:*:*:*:*:* cpe:2.3:a:getgrav:grav:2.0.0:rc8:*:*:*:*:*:* cpe:2.3:a:getgrav:grav:2.0.0:rc9:*:*:*:*:*:* cpe:2.3:a:getgrav:grav:2.0.10:*:*:*:*:*:*:* cpe:2.3:a:getgrav:grav:2.0.1:*:*:*:*:*:*:* cpe:2.3:a:getgrav:grav:2.0.2:*:*:*:*:*:*:* cpe:2.3:a:getgrav:grav:2.0.3:*:*:*:*:*:*:* cpe:2.3:a:getgrav:grav:2.0.4:*:*:*:*:*:*:* cpe:2.3:a:getgrav:grav:2.0.5:*:*:*:*:*:*:* cpe:2.3:a:getgrav:grav:2.0.6:*:*:*:*:*:*:* cpe:2.3:a:getgrav:grav:2.0.7:*:*:*:*:*:*:* cpe:2.3:a:getgrav:grav:2.0.8:*:*:*:*:*:*:* cpe:2.3:a:getgrav:grav:2.0.9:*:*:*:*:*:*:* |
|
| Vendors & Products |
Getgrav
Getgrav grav |
|
| References |
| |
| Metrics |
cvssV3_1
|