CVE-2025-38331
In the Linux kernel, the following vulnerability has been resolved:
net: ethernet: cortina: Use TOE/TSO on all TCP
It is desireable to push the hardware accelerator to also process non-segmented TCP frames: we pass the skb->len to the "TOE/TSO" offloader and it will handle them.
Without this quirk the driver becomes unstable and lock up and and crash.
I do not know exactly why, but it is probably due to the TOE (TCP offload engine) feature that is coupled with the segmentation feature - it is not possible to turn one part off and not the other, either both TOE and TSO are active, or neither of them.
Leer descripción completaMostrar menos
Not having the TOE part active seems detrimental, as if that hardware feature is not really supposed to be turned off.
The datasheet says:
After numerous tests with the hardware locking up after something between minutes and hours depending on load using iperf3 I have concluded this is necessary to stabilize the hardware.
Detalles técnicos trazas, registros y código del informe original
"Based on packet parsing and TCP connection/NAT table lookup results, the NetEngine puts the packets belonging to the same TCP connection to the same queue for the software to process. The NetEngine puts incoming packets to the buffer or series of buffers for a jumbo packet. With this hardware acceleration, IP/TCP header parsing, checksum validation and connection lookup are offloaded from the software processing."
CVSS
- Versión: 3.1
- Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
- Puntuación base: 5.5
Probabilidad de explotación (EPSS)
- Probabilidad de explotación en los próximos 30 días: 0.34%
- Percentil entre todas las CVEs puntuadas: 25
- Fecha de la puntuación: 6/10/2026
EPSS (Exploit Prediction Scoring System, de FIRST) estima la probabilidad de que una vulnerabilidad sea explotada en 30 días. Complementa a CVSS (impacto) y a CISA KEV (explotación confirmada).
Tecnologías afectadas (2)
CWE
- NVD-CWE-noinfo
Referencias
- https://git.kernel.org/stable/c/1b503b790109d19710ec83c589c3ee59e95347ec
- https://git.kernel.org/stable/c/2bd434bb0eeb680c2b3dd6c68ca319b30cb8d47f
- https://git.kernel.org/stable/c/6a07e3af4973402fa199a80036c10060b922c92c
- https://git.kernel.org/stable/c/a37888a435b0737128d2d9c6f67b8d608f83df7a
- https://git.kernel.org/stable/c/ebe12e232f1d58ebb4b53b6d9149962b707bed91
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html
JSON original (NVD)
Mostrar
{
"id": "CVE-2025-38331",
"cveTags": [],
"metrics": {
"cvssMetricV31": [
{
"type": "Secondary",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"cvssData": {
"scope": "UNCHANGED",
"version": "3.1",
"baseScore": 7.5,
"attackVector": "NETWORK",
"baseSeverity": "HIGH",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H",
"integrityImpact": "NONE",
"userInteraction": "NONE",
"attackComplexity": "LOW",
"availabilityImpact": "HIGH",
"privilegesRequired": "NONE",
"confidentialityImpact": "NONE"
},
"impactScore": 3.6,
"exploitabilityScore": 3.9
},
{
"type": "Primary",
"source": "nvd@nist.gov",
"cvssData": {
"scope": "UNCHANGED",
"version": "3.1",
"baseScore": 5.5,
"attackVector": "LOCAL",
"baseSeverity": "MEDIUM",
"vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H",
"integrityImpact": "NONE",
"userInteraction": "NONE",
"attackComplexity": "LOW",
"availabilityImpact": "HIGH",
"privilegesRequired": "LOW",
"confidentialityImpact": "NONE"
},
"impactScore": 3.6,
"exploitabilityScore": 1.8
}
]
},
"affected": [
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"affectedData": [
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"product": "Linux",
"versions": [
{
"status": "affected",
"version": "4d5ae32f5e1e13f7f36d6439ec3257993b9f5b88",
"lessThan": "1b503b790109d19710ec83c589c3ee59e95347ec",
"versionType": "git"
},
{
"status": "affected",
"version": "4d5ae32f5e1e13f7f36d6439ec3257993b9f5b88",
"lessThan": "a37888a435b0737128d2d9c6f67b8d608f83df7a",
"versionType": "git"
},
{
"status": "affected",
"version": "4d5ae32f5e1e13f7f36d6439ec3257993b9f5b88",
"lessThan": "2bd434bb0eeb680c2b3dd6c68ca319b30cb8d47f",
"versionType": "git"
},
{
"status": "affected",
"version": "4d5ae32f5e1e13f7f36d6439ec3257993b9f5b88",
"lessThan": "ebe12e232f1d58ebb4b53b6d9149962b707bed91",
"versionType": "git"
},
{
"status": "affected",
"version": "4d5ae32f5e1e13f7f36d6439ec3257993b9f5b88",
"lessThan": "6a07e3af4973402fa199a80036c10060b922c92c",
"versionType": "git"
}
],
"programFiles": [
"drivers/net/ethernet/cortina/gemini.c"
],
"defaultStatus": "unaffected"
},
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"product": "Linux",
"versions": [
{
"status": "affected",
"version": "4.16"
},
{
"status": "unaffected",
"version": "0",
"lessThan": "4.16",
"versionType": "semver"
},
{
"status": "unaffected",
"version": "6.1.142",
"versionType": "semver",
"lessThanOrEqual": "6.1.*"
},
{
"status": "unaffected",
"version": "6.6.95",
"versionType": "semver",
"lessThanOrEqual": "6.6.*"
},
{
"status": "unaffected",
"version": "6.12.35",
"versionType": "semver",
"lessThanOrEqual": "6.12.*"
},
{
"status": "unaffected",
"version": "6.15.4",
"versionType": "semver",
"lessThanOrEqual": "6.15.*"
},
{
"status": "unaffected",
"version": "6.16",
"versionType": "original_commit_for_fix",
"lessThanOrEqual": "*"
}
],
"programFiles": [
"drivers/net/ethernet/cortina/gemini.c"
],
"defaultStatus": "affected"
}
]
}
],
"published": "2025-07-10T09:15:27.533",
"references": [
{
"url": "https://git.kernel.org/stable/c/1b503b790109d19710ec83c589c3ee59e95347ec",
"tags": [
"Patch"
],
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/2bd434bb0eeb680c2b3dd6c68ca319b30cb8d47f",
"tags": [
"Patch"
],
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/6a07e3af4973402fa199a80036c10060b922c92c",
"tags": [
"Patch"
],
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/a37888a435b0737128d2d9c6f67b8d608f83df7a",
"tags": [
"Patch"
],
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/ebe12e232f1d58ebb4b53b6d9149962b707bed91",
"tags": [
"Patch"
],
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html",
"tags": [
"Third Party Advisory"
],
"source": "af854a3a-2127-422b-91ae-364da2661108"
}
],
"vulnStatus": "Modified",
"weaknesses": [
{
"type": "Primary",
"source": "nvd@nist.gov",
"description": [
{
"lang": "en",
"value": "NVD-CWE-noinfo"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\nnet: ethernet: cortina: Use TOE/TSO on all TCP\n\nIt is desireable to push the hardware accelerator to also\nprocess non-segmented TCP frames: we pass the skb->len\nto the \"TOE/TSO\" offloader and it will handle them.\n\nWithout this quirk the driver becomes unstable and lock\nup and and crash.\n\nI do not know exactly why, but it is probably due to the\nTOE (TCP offload engine) feature that is coupled with the\nsegmentation feature - it is not possible to turn one\npart off and not the other, either both TOE and TSO are\nactive, or neither of them.\n\nNot having the TOE part active seems detrimental, as if\nthat hardware feature is not really supposed to be turned\noff.\n\nThe datasheet says:\n\n \"Based on packet parsing and TCP connection/NAT table\n lookup results, the NetEngine puts the packets\n belonging to the same TCP connection to the same queue\n for the software to process. The NetEngine puts\n incoming packets to the buffer or series of buffers\n for a jumbo packet. With this hardware acceleration,\n IP/TCP header parsing, checksum validation and\n connection lookup are offloaded from the software\n processing.\"\n\nAfter numerous tests with the hardware locking up after\nsomething between minutes and hours depending on load\nusing iperf3 I have concluded this is necessary to stabilize\nthe hardware."
},
{
"lang": "es",
"value": "En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: net: ethernet: cortina: Usar TOE/TSO en todos los protocolos TCP. Es deseable que el acelerador de hardware también procese tramas TCP no segmentadas: pasamos el comando skb->len al descargador \"TOE/TSO\" y este las gestionará. Sin esta peculiaridad, el controlador se vuelve inestable, se bloquea y se bloquea. No sé exactamente por qué, pero probablemente se deba a la función TOE (motor de descarga TCP) que está acoplada a la función de segmentación: no es posible desactivar una parte y no la otra, ya sea que tanto TOE como TSO estén activos, o ninguno de ellos. No tener activa la función TOE parece perjudicial, como si esa función de hardware no debiera estar desactivada. La hoja de datos indica: \"Con base en el análisis de paquetes y los resultados de la búsqueda de la conexión TCP/tabla NAT, NetEngine coloca los paquetes pertenecientes a la misma conexión TCP en la misma cola para que el software los procese. NetEngine coloca los paquetes entrantes en el búfer o en una serie de búferes para un paquete jumbo. Con esta aceleración de hardware, el análisis de encabezados IP/TCP, la validación de la suma de comprobación y la búsqueda de conexión se descargan del procesamiento del software\". Tras numerosas pruebas con el hardware bloqueándose después de minutos u horas, dependiendo de la carga, utilizando iperf3, he concluido que esto es necesario para estabilizar el hardware."
}
],
"lastModified": "2026-07-30T06:23:07.473",
"configurations": [
{
"nodes": [
{
"negate": false,
"cpeMatch": [
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "CC8BC4B9-FC5B-4C71-9192-437EE722869F",
"versionEndExcluding": "6.1.142",
"versionStartIncluding": "4.16"
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "C5E01853-7048-4D78-9479-9AEE41AC8456",
"versionEndExcluding": "6.6.95",
"versionStartIncluding": "6.2"
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "E569FD34-0076-4428-BE17-EECCF867611C",
"versionEndExcluding": "6.12.35",
"versionStartIncluding": "6.7"
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "DFD174C5-1AA2-4671-BDDC-1A9FCC753655",
"versionEndExcluding": "6.15.4",
"versionStartIncluding": "6.13"
}
],
"operator": "OR"
}
]
},
{
"nodes": [
{
"negate": false,
"cpeMatch": [
{
"criteria": "cpe:2.3:o:debian:debian_linux:11.0:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "FA6FEEC2-9F11-4643-8827-749718254FED"
}
],
"operator": "OR"
}
]
}
],
"sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}