Grav CMS Scheduler Webhook Authentication Bypass via Null Short-Circuit
Default status is the baseline for the product, each version can override it (e.g. patched versions marked unaffected).
| Vendor | Product | Default status | Versions | ||||||
|---|---|---|---|---|---|---|---|---|---|
| Trilby Media | grav-plugin-scheduler-webhook | affected |
|
||||||
| Trilby Media | getgrav/grav | affected |
|
No data.
No data.
| Vendor | Product | Versions | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Trilby Media | Getgrav/grav |
|
||||||||
| Trilby Media | Grav Cms Scheduler-webhook Plugin |
|
No CVSS v3.0
No CVSS v2
This CVE is not in the KEV list.
Exploit prediction score: < 1% (0.958% probability within 30 days)
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Getgrav
Getgrav grav |
|
| CPEs | cpe:2.3:a:getgrav:grav:*:*:*:*:*:*:*:* | |
| Vendors & Products |
Getgrav
Getgrav grav |
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Trilby Media
Trilby Media getgrav/grav Trilby Media grav Cms Scheduler-webhook Plugin |
|
| Vendors & Products |
Trilby Media
Trilby Media getgrav/grav Trilby Media grav Cms Scheduler-webhook Plugin |
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
| Type | Values Removed | Values Added |
|---|---|---|
| Description | Grav CMS's scheduler-webhook plugin contains an authentication bypass in the webhook token check. When the webhook feature is enabled but no webhookToken is configured, a compound conditional short-circuits and skips token validation, so an unauthenticated remote attacker who can reach POST /scheduler/webhook can trigger the operator's already-configured scheduled jobs by sending a single request. The primitive is triggering-existing-jobs, not attacker-chosen command execution: the attacker controls when the jobs run and which one runs (via ?job=), but does not control what the jobs do. Code execution follows only when the operator has configured a job that shells out, and even then the attacker controls timing rather than payload. Not a default-install issue: reaching the endpoint requires the separate scheduler-webhook GPM plugin to be installed, scheduler.modern.webhook.enabled to be true (default false), and no webhookToken to be configured; a stock Grav or Grav-Admin install exposes nothing here. | |
| Title | Grav CMS Scheduler Webhook Authentication Bypass via Null Short-Circuit | |
| Weaknesses | CWE-303 | |
| References |
| |
| Metrics |
cvssV3_1
|