165 lines
7.9 KiB
JSON
165 lines
7.9 KiB
JSON
{
|
|
"dataType": "CVE_RECORD",
|
|
"dataVersion": "5.2",
|
|
"cveMetadata": {
|
|
"cveId": "CVE-2026-3419",
|
|
"assignerOrgId": "ce714d77-add3-4f53-aff5-83d477b104bb",
|
|
"state": "PUBLISHED",
|
|
"assignerShortName": "openjs",
|
|
"dateReserved": "2026-03-01T18:56:49.613Z",
|
|
"datePublished": "2026-03-06T17:50:58.714Z",
|
|
"dateUpdated": "2026-03-09T14:55:21.011Z"
|
|
},
|
|
"containers": {
|
|
"cna": {
|
|
"providerMetadata": {
|
|
"orgId": "ce714d77-add3-4f53-aff5-83d477b104bb",
|
|
"shortName": "openjs",
|
|
"dateUpdated": "2026-03-06T17:54:33.542Z"
|
|
},
|
|
"descriptions": [
|
|
{
|
|
"lang": "en",
|
|
"value": "Fastify incorrectly accepts malformed `Content-Type` headers containing trailing characters after the subtype token, in violation of RFC 9110 §8.3.1(https://httpwg.org/specs/rfc9110.html#field.content-type). For example, a request sent with Content-Type: application/json garbage passes validation and is processed normally, rather than being rejected with 415 Unsupported Media Type.\n\nWhen regex-based content-type parsers are in use (a documented Fastify feature), the malformed value is matched against registered parsers using the full string including the trailing garbage. This means a request with an invalid content-type may be routed to and processed by a parser it should never have reached.\n\nImpact:\nAn attacker can send requests with RFC-invalid Content-Type headers that bypass validity checks, reach content-type parser matching, and be processed by the server. Requests that should be rejected at the validation stage are instead handled as if the content-type were valid.\n\nWorkarounds:\nDeploy a WAF rule to protect against this\n\nFix:\n\nThe fix is available starting with v5.8.1.",
|
|
"supportingMedia": [
|
|
{
|
|
"type": "text/html",
|
|
"base64": false,
|
|
"value": "Fastify incorrectly accepts malformed `Content-Type` headers containing trailing characters after the subtype token, in violation of RFC 9110 §8.3.1(https://httpwg.org/specs/rfc9110.html#field.content-type). For example, a request sent with Content-Type: application/json garbage passes validation and is processed normally, rather than being rejected with 415 Unsupported Media Type.\n\nWhen regex-based content-type parsers are in use (a documented Fastify feature), the malformed value is matched against registered parsers using the full string including the trailing garbage. This means a request with an invalid content-type may be routed to and processed by a parser it should never have reached.\n\nImpact:\nAn attacker can send requests with RFC-invalid Content-Type headers that bypass validity checks, reach content-type parser matching, and be processed by the server. Requests that should be rejected at the validation stage are instead handled as if the content-type were valid.\n\nWorkarounds:\nDeploy a WAF rule to protect against this\n\nFix:\n\nThe fix is available starting with v5.8.1."
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"affected": [
|
|
{
|
|
"vendor": "fastify",
|
|
"product": "fastify",
|
|
"defaultStatus": "unaffected",
|
|
"versions": [
|
|
{
|
|
"versionType": "semver",
|
|
"status": "affected",
|
|
"version": "5.7.2",
|
|
"lessThan": "5.8.1"
|
|
},
|
|
{
|
|
"versionType": "semver",
|
|
"status": "unaffected",
|
|
"version": "5.8.1"
|
|
}
|
|
],
|
|
"packageURL": "pkg:npm/fastify"
|
|
}
|
|
],
|
|
"references": [
|
|
{
|
|
"url": "https://github.com/fastify/fastify/security/advisories/GHSA-573f-x89g-hqp9"
|
|
},
|
|
{
|
|
"url": "https://github.com/fastify/fastify/commit/67f6c9b32cb3623d3c9470cc17ed830dd2f083d7"
|
|
},
|
|
{
|
|
"url": "https://httpwg.org/specs/rfc9110.html#field.content-type"
|
|
},
|
|
{
|
|
"url": "https://github.com/advisories/GHSA-573f-x89g-hqp9"
|
|
},
|
|
{
|
|
"url": "https://cna.openjsf.org/security-advisories.html"
|
|
},
|
|
{
|
|
"url": "https://www.cve.org/CVERecord?id=CVE-2026-3419"
|
|
}
|
|
],
|
|
"credits": [
|
|
{
|
|
"lang": "en",
|
|
"type": "reporter",
|
|
"value": "Saad FELLAHI"
|
|
},
|
|
{
|
|
"lang": "en",
|
|
"type": "remediation developer",
|
|
"value": "James Sumners"
|
|
},
|
|
{
|
|
"lang": "en",
|
|
"type": "coordinator",
|
|
"value": "Matteo Collina"
|
|
},
|
|
{
|
|
"lang": "en",
|
|
"type": "remediation reviewer",
|
|
"value": "Ulises Gascón"
|
|
}
|
|
],
|
|
"title": "Fastify's Missing End Anchor in \"subtypeNameReg\" Allows Malformed Content-Types to Pass Validation",
|
|
"metrics": [
|
|
{
|
|
"format": "CVSS",
|
|
"cvssV3_1": {
|
|
"version": "3.1",
|
|
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N",
|
|
"baseScore": 5.3,
|
|
"baseSeverity": "MEDIUM"
|
|
},
|
|
"scenarios": [
|
|
{
|
|
"lang": "en",
|
|
"value": "GENERAL"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"problemTypes": [
|
|
{
|
|
"descriptions": [
|
|
{
|
|
"cweId": "CWE-185",
|
|
"lang": "en",
|
|
"description": "CWE-185: Incorrect Regular Expression",
|
|
"type": "CWE"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"x_generator": {
|
|
"engine": "cve-kit 1.0.0"
|
|
}
|
|
},
|
|
"adp": [
|
|
{
|
|
"metrics": [
|
|
{
|
|
"other": {
|
|
"type": "ssvc",
|
|
"content": {
|
|
"timestamp": "2026-03-09T14:55:13.971640Z",
|
|
"id": "CVE-2026-3419",
|
|
"options": [
|
|
{
|
|
"Exploitation": "none"
|
|
},
|
|
{
|
|
"Automatable": "yes"
|
|
},
|
|
{
|
|
"Technical Impact": "partial"
|
|
}
|
|
],
|
|
"role": "CISA Coordinator",
|
|
"version": "2.0.3"
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"title": "CISA ADP Vulnrichment",
|
|
"providerMetadata": {
|
|
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
|
|
"shortName": "CISA-ADP",
|
|
"dateUpdated": "2026-03-09T14:55:21.011Z"
|
|
}
|
|
}
|
|
]
|
|
}
|
|
} |