CVE-2024-56780
In the Linux kernel, the following vulnerability has been resolved:
quota: flush quota_release_work upon quota writeback
One of the paths quota writeback is called from is:
Since we currently don't always flush the quota_release_work queue in this path, we can end up with the following race:
1. dquot are added to releasing_dquots list during regular operations. 2. FS Freeze starts, however, this does not flush the quota_release_work queue. 3. Freeze completes. 4. Kernel eventually tries to flush the workqueue while FS is frozen which hits a WARN_ON since transaction gets started during frozen state:
Leer descripción completaMostrar menos
Which is the following line:
Which ultimately results in generic/390 failing due to dmesg noise. This was detected on powerpc machine 15 cores.
To avoid this, make sure to flush the workqueue during dquot_writeback_dquots() so we dont have any pending workitems after freeze.
Detalles técnicos trazas, registros y código del informe original
freeze_super()
sync_filesystem()
ext4_sync_fs()
dquot_writeback_dquots()
ext4_journal_check_start+0x28/0x110 [ext4] (unreliable)
__ext4_journal_start_sb+0x64/0x1c0 [ext4]
ext4_release_dquot+0x90/0x1d0 [ext4]
quota_release_workfn+0x43c/0x4d0
WARN_ON(sb->s_writers.frozen == SB_FREEZE_COMPLETE);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.21%
- Percentil entre todas las CVEs puntuadas: 10
- 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 (1)
CWE
- NVD-CWE-noinfo
Referencias
- https://git.kernel.org/stable/c/3e6ff207cd5bd924ad94cd1a7c633bcdac0ba1cb
- https://git.kernel.org/stable/c/6f3821acd7c3143145999248087de5fb4b48cf26
- https://git.kernel.org/stable/c/8ea87e34792258825d290f4dc5216276e91cb224
- https://git.kernel.org/stable/c/a5abba5e0e586e258ded3e798fe5f69c66fec198
- https://git.kernel.org/stable/c/ab6cfcf8ed2c7496f55d020b65b1d8cd55d9a2cb
- https://git.kernel.org/stable/c/ac6f420291b3fee1113f21d612fa88b628afab5b
- https://git.kernel.org/stable/c/bcacb52a985f1b6d280f698a470b873dfe52728a
- https://lists.debian.org/debian-lts-announce/2025/03/msg00001.html
- https://lists.debian.org/debian-lts-announce/2025/03/msg00002.html
JSON original (NVD)
Mostrar
{
"id": "CVE-2024-56780",
"cveTags": [],
"metrics": {
"ssvcV203": [
{
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"ssvcData": {
"id": "CVE-2024-56780",
"role": "CISA Coordinator",
"options": [
{
"exploitation": "none"
},
{
"automatable": "no"
},
{
"technicalImpact": "partial"
}
],
"version": "2.0.3",
"timestamp": "2025-10-01T19:56:25.354258Z"
}
}
],
"cvssMetricV31": [
{
"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
},
{
"type": "Secondary",
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"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": "d40c192e119892799dd4ddf94f5cea6fa93775ef",
"lessThan": "a5abba5e0e586e258ded3e798fe5f69c66fec198",
"versionType": "git"
},
{
"status": "affected",
"version": "86d89987f0998c98f57d641e308b40452a994045",
"lessThan": "6f3821acd7c3143145999248087de5fb4b48cf26",
"versionType": "git"
},
{
"status": "affected",
"version": "89602de9a2d7080b7a4029d5c1bf8f78d295ff5f",
"lessThan": "ab6cfcf8ed2c7496f55d020b65b1d8cd55d9a2cb",
"versionType": "git"
},
{
"status": "affected",
"version": "3027e200dd58d5b437f16634dbbd355b29ffe0a6",
"lessThan": "3e6ff207cd5bd924ad94cd1a7c633bcdac0ba1cb",
"versionType": "git"
},
{
"status": "affected",
"version": "dabc8b20756601b9e1cc85a81d47d3f98ed4d13a",
"lessThan": "bcacb52a985f1b6d280f698a470b873dfe52728a",
"versionType": "git"
},
{
"status": "affected",
"version": "dabc8b20756601b9e1cc85a81d47d3f98ed4d13a",
"lessThan": "8ea87e34792258825d290f4dc5216276e91cb224",
"versionType": "git"
},
{
"status": "affected",
"version": "dabc8b20756601b9e1cc85a81d47d3f98ed4d13a",
"lessThan": "ac6f420291b3fee1113f21d612fa88b628afab5b",
"versionType": "git"
},
{
"status": "affected",
"version": "f3e9a2bbdeb8987508dd6bb2b701dea911d4daec",
"versionType": "git"
},
{
"status": "affected",
"version": "903fc5d8cb48b0d2de7095ef40e39fd32bb27bd0",
"versionType": "git"
},
{
"status": "affected",
"version": "31bed65eecbc5ce57592cfe31947eaa64e3d678e",
"versionType": "git"
},
{
"status": "affected",
"version": "5.4.257",
"lessThan": "5.4.287",
"versionType": "semver"
},
{
"status": "affected",
"version": "5.10.195",
"lessThan": "5.10.231",
"versionType": "semver"
},
{
"status": "affected",
"version": "5.15.132",
"lessThan": "5.15.174",
"versionType": "semver"
},
{
"status": "affected",
"version": "6.1.53",
"lessThan": "6.1.120",
"versionType": "semver"
},
{
"status": "affected",
"version": "4.19.295",
"lessThan": "4.20",
"versionType": "semver"
},
{
"status": "affected",
"version": "6.4.16",
"lessThan": "6.5",
"versionType": "semver"
},
{
"status": "affected",
"version": "6.5.3",
"lessThan": "6.6",
"versionType": "semver"
}
],
"programFiles": [
"fs/quota/dquot.c"
],
"defaultStatus": "unaffected"
},
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"product": "Linux",
"versions": [
{
"status": "affected",
"version": "6.6"
},
{
"status": "unaffected",
"version": "0",
"lessThan": "6.6",
"versionType": "semver"
},
{
"status": "unaffected",
"version": "5.4.287",
"versionType": "semver",
"lessThanOrEqual": "5.4.*"
},
{
"status": "unaffected",
"version": "5.10.231",
"versionType": "semver",
"lessThanOrEqual": "5.10.*"
},
{
"status": "unaffected",
"version": "5.15.174",
"versionType": "semver",
"lessThanOrEqual": "5.15.*"
},
{
"status": "unaffected",
"version": "6.1.120",
"versionType": "semver",
"lessThanOrEqual": "6.1.*"
},
{
"status": "unaffected",
"version": "6.6.64",
"versionType": "semver",
"lessThanOrEqual": "6.6.*"
},
{
"status": "unaffected",
"version": "6.12.4",
"versionType": "semver",
"lessThanOrEqual": "6.12.*"
},
{
"status": "unaffected",
"version": "6.13",
"versionType": "original_commit_for_fix",
"lessThanOrEqual": "*"
}
],
"programFiles": [
"fs/quota/dquot.c"
],
"defaultStatus": "affected"
}
]
}
],
"published": "2025-01-08T18:15:18.910",
"references": [
{
"url": "https://git.kernel.org/stable/c/3e6ff207cd5bd924ad94cd1a7c633bcdac0ba1cb",
"tags": [
"Patch"
],
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/6f3821acd7c3143145999248087de5fb4b48cf26",
"tags": [
"Patch"
],
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/8ea87e34792258825d290f4dc5216276e91cb224",
"tags": [
"Patch"
],
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/a5abba5e0e586e258ded3e798fe5f69c66fec198",
"tags": [
"Patch"
],
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/ab6cfcf8ed2c7496f55d020b65b1d8cd55d9a2cb",
"tags": [
"Patch"
],
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/ac6f420291b3fee1113f21d612fa88b628afab5b",
"tags": [
"Patch"
],
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/bcacb52a985f1b6d280f698a470b873dfe52728a",
"tags": [
"Patch"
],
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://lists.debian.org/debian-lts-announce/2025/03/msg00001.html",
"source": "af854a3a-2127-422b-91ae-364da2661108"
},
{
"url": "https://lists.debian.org/debian-lts-announce/2025/03/msg00002.html",
"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\nquota: flush quota_release_work upon quota writeback\n\nOne of the paths quota writeback is called from is:\n\nfreeze_super()\n sync_filesystem()\n ext4_sync_fs()\n dquot_writeback_dquots()\n\nSince we currently don't always flush the quota_release_work queue in\nthis path, we can end up with the following race:\n\n 1. dquot are added to releasing_dquots list during regular operations.\n 2. FS Freeze starts, however, this does not flush the quota_release_work queue.\n 3. Freeze completes.\n 4. Kernel eventually tries to flush the workqueue while FS is frozen which\n hits a WARN_ON since transaction gets started during frozen state:\n\n ext4_journal_check_start+0x28/0x110 [ext4] (unreliable)\n __ext4_journal_start_sb+0x64/0x1c0 [ext4]\n ext4_release_dquot+0x90/0x1d0 [ext4]\n quota_release_workfn+0x43c/0x4d0\n\nWhich is the following line:\n\n WARN_ON(sb->s_writers.frozen == SB_FREEZE_COMPLETE);\n\nWhich ultimately results in generic/390 failing due to dmesg\nnoise. This was detected on powerpc machine 15 cores.\n\nTo avoid this, make sure to flush the workqueue during\ndquot_writeback_dquots() so we dont have any pending workitems after\nfreeze."
},
{
"lang": "es",
"value": "En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: quota: vaciar quota_release_work al reescribir la cuota Una de las rutas desde las que se llama a la reescritura de cuota es: freeze_super() sync_filesystem() ext4_sync_fs() dquot_writeback_dquots() Dado que actualmente no siempre vaciamos la cola quota_release_work en esta ruta, podemos terminar con la siguiente ejecución: 1. dquot se agregan a la lista release_dquots durante las operaciones regulares. 2. FS Freeze comienza, sin embargo, esto no vacía la cola quota_release_work. 3. Freeze se completa. 4. El kernel finalmente intenta vaciar la cola de trabajo mientras FS está congelado, lo que genera un WARN_ON ya que la transacción se inicia durante el estado congelado: ext4_journal_check_start+0x28/0x110 [ext4] (no confiable) __ext4_journal_start_sb+0x64/0x1c0 [ext4] ext4_release_dquot+0x90/0x1d0 [ext4] quota_release_workfn+0x43c/0x4d0 Que es la siguiente línea: WARN_ON(sb->s_writers.frozen == SB_FREEZE_COMPLETE); Lo que finalmente da como resultado que generic/390 falle debido al ruido de dmesg. Esto se detectó en una máquina PowerPC de 15 núcleos. Para evitar esto, asegúrese de vaciar la cola de trabajo durante dquot_writeback_dquots() para que no tengamos ningún elemento de trabajo pendiente después del congelamiento."
}
],
"lastModified": "2026-06-17T08:12:58.673",
"configurations": [
{
"nodes": [
{
"negate": false,
"cpeMatch": [
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "17432972-1EC7-4C0A-9A09-36F90BE8963A",
"versionEndExcluding": "4.20",
"versionStartIncluding": "4.19.295"
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "95D33EF5-7C1B-4CC4-AA45-A372E660A8FF",
"versionEndExcluding": "5.4.287",
"versionStartIncluding": "5.4.257"
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "22259BCA-C415-4B49-82E6-AF53F0942450",
"versionEndExcluding": "5.10.231",
"versionStartIncluding": "5.10.195"
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "48D64CF9-6F08-4ED9-A1A0-4BB057B44945",
"versionEndExcluding": "5.15.174",
"versionStartIncluding": "5.15.132"
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "4328D19A-54C2-4D2B-BBA7-D85BE5956B7D",
"versionEndExcluding": "6.1.120",
"versionStartIncluding": "6.1.53"
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "A5099559-2D15-42A5-A561-71B34FEFF36F",
"versionEndExcluding": "6.5",
"versionStartIncluding": "6.4.16"
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "713AA9D9-DD05-4AE0-8B46-932A79D99EF8",
"versionEndExcluding": "6.6.64",
"versionStartIncluding": "6.5.3"
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "04756810-D093-4B43-B1D9-CF5035968061",
"versionEndExcluding": "6.12.4",
"versionStartIncluding": "6.7"
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:6.13:rc1:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "62567B3C-6CEE-46D0-BC2E-B3717FBF7D13"
}
],
"operator": "OR"
}
]
}
],
"sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}