CVE-2026-56709

Grav before 3.9.2 Host Header Injection via sendInvitationEmail

Published Aug 25, 2026 CVSS 4.0 · 8.7 High EPSS < 1% KEV · Not listed
Description
Grav before 3.9.2 fails to validate untrusted Host headers in the sendInvitationEmail() function when constructing token-bearing invitation links. Attackers can manipulate the Host header to poison invitation links and redirect users to attacker-controlled domains, bypassing the require_trusted_host protection which only covers password reset flows.

Analysis

AI-generated

Technical impact

Grav CMS versions before 3.9.2 do not validate the Host header used when the sendInvitationEmail() routine creates a token‑bearing invitation link. The result is that an attacker can supply a forged Host header, causing the system to construct a link that points to an arbitrary domain of the attacker’s choice. When a user receives the poisoned invitation and clicks the link, the victim is redirected to a malicious site where credentials can be harvested or malware can be delivered. This flaw is a form of forgery in trusted input (CWE‑350).

Affected Systems

All installations of getgrav’s Grav CMS that expose the sendInvitationEmail feature and are running any release before 3.9.2 are vulnerable. The flaw does not depend on any particular sub‑version or host configuration, so any instance that accepts external invitation email requests can be compromised.

Risk and Exploitability

Based on the description, it is inferred that the attack vector involves sending a crafted HTTP request containing a forged Host header to the publicly accessible sendInvitationEmail endpoint. The CVSS score of 8.7 reflects a high severity related to phishing, and the EPSS score is currently unavailable, which suggests that exploitation is possible but may not be widespread. The vulnerability is not listed in the CISA KEV catalog, so there is no known active exploitation in the wild yet. Nevertheless, a low‑to‑moderate risk of exploitation exists, particularly in environments that expose the invitation endpoint to unauthenticated users.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Update Grav CMS to version 3.9.2 or later.
  • If an immediate upgrade is not possible, limit exposure of the sendInvitationEmail endpoint by configuring your web server or firewall to allow requests only from trusted internal hosts.
  • Enforce host header validation on the application or web server so that only requests with the site’s legitimate domain are accepted, rejecting any request that contains a forged Host header.
  • If a web application firewall is available, create a rule that blocks requests with a non‑matching Host header when accessing the sendInvitationEmail path.

Generated by OpenCVE AI on August 25, 2026 at 05:21 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories available
History
Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}

Type Values Removed Values Added
Description Grav before 3.9.2 fails to validate untrusted Host headers in the sendInvitationEmail() function when constructing token-bearing invitation links. Attackers can manipulate the Host header to poison invitation links and redirect users to attacker-controlled domains, bypassing the require_trusted_host protection which only covers password reset flows.
Title Grav before 3.9.2 Host Header Injection via sendInvitationEmail
First Time appeared Getgrav
Getgrav grav
Weaknesses CWE-350
CPEs cpe:2.3:a:getgrav:grav:*:*:*:*:*:*:*:*
Vendors & Products Getgrav
Getgrav grav
References
Metrics cvssV3_1

{'score': 7.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N'}

cvssV4_0

{'score': 8.7, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N'}

Weaknesses
  • CWE-350

    Reliance on Reverse DNS Resolution for a Security-Critical Action

Sources

Status
PUBLISHED
Assigner
VulnCheck
Published
Updated
Aug 26, 2026, 4:12 PM
Reserved
Jun 22, 2026, 6:48 PM
Status
Deferred
Published
Aug 25, 2026, 2:16 AM
Modified
Oct 12, 2026, 3:10 PM