CVE-2025-66300
Grav is a file-based Web platform. Prior to 1.8.0-beta.27, A low privilege user account with page editing privilege can read any server files using "Frontmatter" form. This includes Grav user account files (/grav/user/accounts/*.yaml), which store hashed user password, 2FA secret, and the password reset token. This can allow an adversary to compromise any registered account by resetting a password for a user to get access to the password reset token from the file or by cracking the hashed password. This vulnerability is fixed in 1.8.0-beta.27.
CVSS
- Version: 3.1
- Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:L
- Base score: 8.5
Exploitation probability (EPSS)
- Probability of exploitation in the next 30 days: 0.45%
- Percentile among all scored CVEs: 37
- Score date: 10/6/2026
EPSS (Exploit Prediction Scoring System, FIRST) estimates how likely a vulnerability is to be exploited in the wild within 30 days. It complements CVSS (impact) and CISA KEV (confirmed exploitation).
🎯 ATT&CK techniques
How this vulnerability is exploited and what the attacker gains, in MITRE ATT&CK terms.
- Exploitation
T1210Exploitation of Remote Serviceslateral movement85 % - Primary impact
T1005Data from Local Systemcollection90 % - Secondary impact
T1110.004Credential Stuffingcredential access70 % - Secondary impact
T1556.004Network Device Authenticationdefense impairment · persistence · credential access75 %
Usuario autenticado con permisos bajos accede a archivos del servidor vía formulario Frontmatter (T1005). Obtiene tokens reset y hashes de contraseña para comprometer cuentas (T1556.004, T1110.004). Vector AV:N con PR:L sugiere T1210 (servicio remoto requerimiento de privilegios).
Inferred by our analysis agent from the official description, CVSS vector and CWE, and checked by a supervisor. May contain errors.
🛡️ ATT&CK mitigations that cover these techniques
Affected technologies (1)
CWEs
- CWE-22
References
Raw JSON (NVD)
Show
{
"id": "CVE-2025-66300",
"cveTags": [],
"metrics": {
"ssvcV203": [
{
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"ssvcData": {
"id": "CVE-2025-66300",
"role": "CISA Coordinator",
"options": [
{
"exploitation": "poc"
},
{
"automatable": "no"
},
{
"technicalImpact": "partial"
}
],
"version": "2.0.3",
"timestamp": "2025-12-02T14:08:33.958066Z"
}
}
],
"cvssMetricV31": [
{
"type": "Secondary",
"source": "security-advisories@github.com",
"cvssData": {
"scope": "CHANGED",
"version": "3.1",
"baseScore": 8.5,
"attackVector": "NETWORK",
"baseSeverity": "HIGH",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:L",
"integrityImpact": "NONE",
"userInteraction": "NONE",
"attackComplexity": "LOW",
"availabilityImpact": "LOW",
"privilegesRequired": "LOW",
"confidentialityImpact": "HIGH"
},
"impactScore": 4.7,
"exploitabilityScore": 3.1
}
]
},
"affected": [
{
"source": "security-advisories@github.com",
"affectedData": [
{
"vendor": "getgrav",
"product": "grav",
"versions": [
{
"status": "affected",
"version": "< 1.8.0-beta.27"
}
]
}
]
}
],
"published": "2025-12-01T22:15:49.447",
"references": [
{
"url": "https://github.com/getgrav/grav/commit/ed640a13143c4177af013cf001969ed2c5e197ee",
"tags": [
"Patch"
],
"source": "security-advisories@github.com"
},
{
"url": "https://github.com/getgrav/grav/security/advisories/GHSA-p4ww-mcp9-j6f2",
"tags": [
"Exploit",
"Third Party Advisory"
],
"source": "security-advisories@github.com"
}
],
"vulnStatus": "Analyzed",
"weaknesses": [
{
"type": "Secondary",
"source": "security-advisories@github.com",
"description": [
{
"lang": "en",
"value": "CWE-22"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "Grav is a file-based Web platform. Prior to 1.8.0-beta.27, A low privilege user account with page editing privilege can read any server files using \"Frontmatter\" form. This includes Grav user account files (/grav/user/accounts/*.yaml), which store hashed user password, 2FA secret, and the password reset token. This can allow an adversary to compromise any registered account by resetting a password for a user to get access to the password reset token from the file or by cracking the hashed password. This vulnerability is fixed in 1.8.0-beta.27."
},
{
"lang": "es",
"value": "Grav es una plataforma web basada en archivos. Versiones anteriores a 1.8.0-beta.27, una cuenta de usuario con bajos privilegios y con privilegios de edición de página puede leer cualquier archivo del servidor utilizando el formulario “Frontmatter”. Esto incluye los archivos de cuenta de usuario de Grav (/grav/user/accounts/*.yaml), que almacenan la contraseña de usuario con hash, el secreto 2FA y el token de restablecimiento de contraseña. Esto puede permitir a un adversario comprometer cualquier cuenta registrada restableciendo una contraseña para un usuario para obtener acceso al token de restablecimiento de contraseña del archivo o descifrando la contraseña con hash. Esta vulnerabilidad se corrige en 1.8.0-beta.27."
}
],
"lastModified": "2026-09-26T00:10:00.127",
"configurations": [
{
"nodes": [
{
"negate": false,
"cpeMatch": [
{
"criteria": "cpe:2.3:a:getgrav:grav:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "0F068841-DBCC-41D5-8B24-BFCE51841E2E",
"versionEndExcluding": "1.8.0"
},
{
"criteria": "cpe:2.3:a:getgrav:grav:1.8.0:beta1:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "8A383F2E-C6BA-440B-B648-A3313B7D91C3"
},
{
"criteria": "cpe:2.3:a:getgrav:grav:1.8.0:beta10:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "F7EF2DEC-2798-4D0D-9C27-0F01BAFEAEFD"
},
{
"criteria": "cpe:2.3:a:getgrav:grav:1.8.0:beta11:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "530C6F64-F30B-4E93-9A12-D9625EA57483"
},
{
"criteria": "cpe:2.3:a:getgrav:grav:1.8.0:beta12:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "9AC28BF9-626D-4514-91F0-F81DAB5D3602"
},
{
"criteria": "cpe:2.3:a:getgrav:grav:1.8.0:beta13:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "307AA375-E531-4AE5-BA79-2F9D4DE7A05F"
},
{
"criteria": "cpe:2.3:a:getgrav:grav:1.8.0:beta14:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "C2E3E312-485D-42B0-B465-64B6438CDCAE"
},
{
"criteria": "cpe:2.3:a:getgrav:grav:1.8.0:beta15:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "5BE4B2F9-1B6D-4D18-916A-5C95A3213222"
},
{
"criteria": "cpe:2.3:a:getgrav:grav:1.8.0:beta16:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "763207F0-92D1-4274-A30A-DE634C5852C3"
},
{
"criteria": "cpe:2.3:a:getgrav:grav:1.8.0:beta17:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "1DE8F350-BA07-4DAA-AE4B-5E0A532B6828"
},
{
"criteria": "cpe:2.3:a:getgrav:grav:1.8.0:beta18:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "F9150B94-0DF3-43F3-9806-39787A6C0E4D"
},
{
"criteria": "cpe:2.3:a:getgrav:grav:1.8.0:beta19:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "BAA7C7EC-8FB2-445D-8A02-1743D87F5416"
},
{
"criteria": "cpe:2.3:a:getgrav:grav:1.8.0:beta2:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "7A6BEA2A-D534-4C9E-811A-8A46E214C46D"
},
{
"criteria": "cpe:2.3:a:getgrav:grav:1.8.0:beta20:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "7A644F57-FF39-4262-9796-7C4F3B0851C1"
},
{
"criteria": "cpe:2.3:a:getgrav:grav:1.8.0:beta21:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "B2AFB9E7-084E-497B-B0FC-CA6A5033C5BF"
},
{
"criteria": "cpe:2.3:a:getgrav:grav:1.8.0:beta22:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "5C5E8823-9083-4FFA-9897-CAD0340DCE68"
},
{
"criteria": "cpe:2.3:a:getgrav:grav:1.8.0:beta23:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "9C048938-E0EC-4AD0-9847-FD74E6770FE2"
},
{
"criteria": "cpe:2.3:a:getgrav:grav:1.8.0:beta24:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "F7B43876-1445-418A-9707-E692FDF62C4D"
},
{
"criteria": "cpe:2.3:a:getgrav:grav:1.8.0:beta25:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "94B209DE-01C6-41BA-B912-CF57849A9F7A"
},
{
"criteria": "cpe:2.3:a:getgrav:grav:1.8.0:beta26:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "AB53AA10-87A5-4010-8019-BF4AA5ABC12B"
},
{
"criteria": "cpe:2.3:a:getgrav:grav:1.8.0:beta3:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "775E0913-F3EF-4A55-B162-5BF9C6E2E641"
},
{
"criteria": "cpe:2.3:a:getgrav:grav:1.8.0:beta4:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "3C3E022E-35CB-40AD-959A-F39949E38BD3"
},
{
"criteria": "cpe:2.3:a:getgrav:grav:1.8.0:beta5:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "8779C813-A81A-4E21-AB86-6193933568BC"
},
{
"criteria": "cpe:2.3:a:getgrav:grav:1.8.0:beta6:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "B608EDD4-207A-41A7-A60D-496FDA8EAFEA"
},
{
"criteria": "cpe:2.3:a:getgrav:grav:1.8.0:beta7:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "AE1F2253-3EE0-4ADD-B8A5-C882A60FC626"
},
{
"criteria": "cpe:2.3:a:getgrav:grav:1.8.0:beta8:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "81D4C859-5560-42F1-ACD9-65210E523F28"
},
{
"criteria": "cpe:2.3:a:getgrav:grav:1.8.0:beta9:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "156707A7-9507-4AC1-9CD0-90E32836E9DF"
}
],
"operator": "OR"
}
]
}
],
"sourceIdentifier": "security-advisories@github.com"
}