cve-2024-33847
Vulnerability from cvelistv5
Published
2024-06-24 13:56
Modified
2024-12-19 08:55
Severity ?
EPSS score ?
Summary
In the Linux kernel, the following vulnerability has been resolved:
f2fs: compress: don't allow unaligned truncation on released compress inode
f2fs image may be corrupted after below testcase:
- mkfs.f2fs -O extra_attr,compression -f /dev/vdb
- mount /dev/vdb /mnt/f2fs
- touch /mnt/f2fs/file
- f2fs_io setflags compression /mnt/f2fs/file
- dd if=/dev/zero of=/mnt/f2fs/file bs=4k count=4
- f2fs_io release_cblocks /mnt/f2fs/file
- truncate -s 8192 /mnt/f2fs/file
- umount /mnt/f2fs
- fsck.f2fs /dev/vdb
[ASSERT] (fsck_chk_inode_blk:1256) --> ino: 0x5 has i_blocks: 0x00000002, but has 0x3 blocks
[FSCK] valid_block_count matching with CP [Fail] [0x4, 0x5]
[FSCK] other corrupted bugs [Fail]
The reason is: partial truncation assume compressed inode has reserved
blocks, after partial truncation, valid block count may change w/o
.i_blocks and .total_valid_block_count update, result in corruption.
This patch only allow cluster size aligned truncation on released
compress inode for fixing.
References
Impacted products
Vendor | Product | Version | |||||
---|---|---|---|---|---|---|---|
▼ | Linux | Linux |
Version: 8e1651cd667cd6779db28314844d88b6de8312a3 Version: c61404153eb683da9c35aad133131554861ed561 Version: c61404153eb683da9c35aad133131554861ed561 Version: c61404153eb683da9c35aad133131554861ed561 Version: c61404153eb683da9c35aad133131554861ed561 Version: c61404153eb683da9c35aad133131554861ed561 |
||||
|
{ "containers": { "adp": [ { "metrics": [ { "other": { "content": { "id": "CVE-2024-33847", "options": [ { "Exploitation": "none" }, { "Automatable": "no" }, { "Technical Impact": "partial" } ], "role": "CISA Coordinator", "timestamp": "2024-06-25T13:51:44.928910Z", "version": "2.0.3" }, "type": "ssvc" } } ], "providerMetadata": { "dateUpdated": "2024-06-25T13:51:56.043Z", "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "shortName": "CISA-ADP" }, "title": "CISA ADP Vulnrichment" }, { "providerMetadata": { "dateUpdated": "2024-08-02T02:42:58.909Z", "orgId": "af854a3a-2127-422b-91ae-364da2661108", "shortName": "CVE" }, "references": [ { "tags": [ "x_transferred" ], "url": "https://git.kernel.org/stable/c/b8962cf98595d1ec62f40f23667de830567ec8bc" }, { "tags": [ "x_transferred" ], "url": "https://git.kernel.org/stable/c/8acae047215024d1ac499b3c8337ef1b952f160b" }, { "tags": [ "x_transferred" ], "url": "https://git.kernel.org/stable/c/3ccf5210dc941a7aa0180596ac021568be4d35ec" }, { "tags": [ "x_transferred" ], "url": "https://git.kernel.org/stable/c/9f9341064a9b5246a32a7fe56b9f80c6f7f3c62d" }, { "tags": [ "x_transferred" ], "url": "https://git.kernel.org/stable/c/5268241b41b1c5d0acca75e9b97d4fd719251c8c" }, { "tags": [ "x_transferred" ], "url": "https://git.kernel.org/stable/c/29ed2b5dd521ce7c5d8466cd70bf0cc9d07afeee" } ], "title": "CVE Program Container" } ], "cna": { "affected": [ { "defaultStatus": "unaffected", "product": "Linux", "programFiles": [ "fs/f2fs/file.c" ], "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git", "vendor": "Linux", "versions": [ { "lessThan": "b8962cf98595d1ec62f40f23667de830567ec8bc", "status": "affected", "version": "8e1651cd667cd6779db28314844d88b6de8312a3", "versionType": "git" }, { "lessThan": "8acae047215024d1ac499b3c8337ef1b952f160b", "status": "affected", "version": "c61404153eb683da9c35aad133131554861ed561", "versionType": "git" }, { "lessThan": "3ccf5210dc941a7aa0180596ac021568be4d35ec", "status": "affected", "version": "c61404153eb683da9c35aad133131554861ed561", "versionType": "git" }, { "lessThan": "9f9341064a9b5246a32a7fe56b9f80c6f7f3c62d", "status": "affected", "version": "c61404153eb683da9c35aad133131554861ed561", "versionType": "git" }, { "lessThan": "5268241b41b1c5d0acca75e9b97d4fd719251c8c", "status": "affected", "version": "c61404153eb683da9c35aad133131554861ed561", "versionType": "git" }, { "lessThan": "29ed2b5dd521ce7c5d8466cd70bf0cc9d07afeee", "status": "affected", "version": "c61404153eb683da9c35aad133131554861ed561", "versionType": "git" } ] }, { "defaultStatus": "affected", "product": "Linux", "programFiles": [ "fs/f2fs/file.c" ], "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git", "vendor": "Linux", "versions": [ { "status": "affected", "version": "5.14" }, { "lessThan": "5.14", "status": "unaffected", "version": "0", "versionType": "semver" }, { "lessThanOrEqual": "5.15.*", "status": "unaffected", "version": "5.15.161", "versionType": "semver" }, { "lessThanOrEqual": "6.1.*", "status": "unaffected", "version": "6.1.93", "versionType": "semver" }, { "lessThanOrEqual": "6.6.*", "status": "unaffected", "version": "6.6.33", "versionType": "semver" }, { "lessThanOrEqual": "6.9.*", "status": "unaffected", "version": "6.9.4", "versionType": "semver" }, { "lessThanOrEqual": "*", "status": "unaffected", "version": "6.10", "versionType": "original_commit_for_fix" } ] } ], "descriptions": [ { "lang": "en", "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nf2fs: compress: don\u0027t allow unaligned truncation on released compress inode\n\nf2fs image may be corrupted after below testcase:\n- mkfs.f2fs -O extra_attr,compression -f /dev/vdb\n- mount /dev/vdb /mnt/f2fs\n- touch /mnt/f2fs/file\n- f2fs_io setflags compression /mnt/f2fs/file\n- dd if=/dev/zero of=/mnt/f2fs/file bs=4k count=4\n- f2fs_io release_cblocks /mnt/f2fs/file\n- truncate -s 8192 /mnt/f2fs/file\n- umount /mnt/f2fs\n- fsck.f2fs /dev/vdb\n\n[ASSERT] (fsck_chk_inode_blk:1256) --\u003e ino: 0x5 has i_blocks: 0x00000002, but has 0x3 blocks\n[FSCK] valid_block_count matching with CP [Fail] [0x4, 0x5]\n[FSCK] other corrupted bugs [Fail]\n\nThe reason is: partial truncation assume compressed inode has reserved\nblocks, after partial truncation, valid block count may change w/o\n.i_blocks and .total_valid_block_count update, result in corruption.\n\nThis patch only allow cluster size aligned truncation on released\ncompress inode for fixing." } ], "providerMetadata": { "dateUpdated": "2024-12-19T08:55:00.893Z", "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67", "shortName": "Linux" }, "references": [ { "url": "https://git.kernel.org/stable/c/b8962cf98595d1ec62f40f23667de830567ec8bc" }, { "url": "https://git.kernel.org/stable/c/8acae047215024d1ac499b3c8337ef1b952f160b" }, { "url": "https://git.kernel.org/stable/c/3ccf5210dc941a7aa0180596ac021568be4d35ec" }, { "url": "https://git.kernel.org/stable/c/9f9341064a9b5246a32a7fe56b9f80c6f7f3c62d" }, { "url": "https://git.kernel.org/stable/c/5268241b41b1c5d0acca75e9b97d4fd719251c8c" }, { "url": "https://git.kernel.org/stable/c/29ed2b5dd521ce7c5d8466cd70bf0cc9d07afeee" } ], "title": "f2fs: compress: don\u0027t allow unaligned truncation on released compress inode", "x_generator": { "engine": "bippy-5f407fcff5a0" } } }, "cveMetadata": { "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67", "assignerShortName": "Linux", "cveId": "CVE-2024-33847", "datePublished": "2024-06-24T13:56:48.723Z", "dateReserved": "2024-06-24T13:54:11.027Z", "dateUpdated": "2024-12-19T08:55:00.893Z", "state": "PUBLISHED" }, "dataType": "CVE_RECORD", "dataVersion": "5.1", "vulnerability-lookup:meta": { "nvd": "{\"cve\":{\"id\":\"CVE-2024-33847\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2024-06-24T14:15:11.803\",\"lastModified\":\"2024-11-21T09:17:34.583\",\"vulnStatus\":\"Awaiting Analysis\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\nf2fs: compress: don\u0027t allow unaligned truncation on released compress inode\\n\\nf2fs image may be corrupted after below testcase:\\n- mkfs.f2fs -O extra_attr,compression -f /dev/vdb\\n- mount /dev/vdb /mnt/f2fs\\n- touch /mnt/f2fs/file\\n- f2fs_io setflags compression /mnt/f2fs/file\\n- dd if=/dev/zero of=/mnt/f2fs/file bs=4k count=4\\n- f2fs_io release_cblocks /mnt/f2fs/file\\n- truncate -s 8192 /mnt/f2fs/file\\n- umount /mnt/f2fs\\n- fsck.f2fs /dev/vdb\\n\\n[ASSERT] (fsck_chk_inode_blk:1256) --\u003e ino: 0x5 has i_blocks: 0x00000002, but has 0x3 blocks\\n[FSCK] valid_block_count matching with CP [Fail] [0x4, 0x5]\\n[FSCK] other corrupted bugs [Fail]\\n\\nThe reason is: partial truncation assume compressed inode has reserved\\nblocks, after partial truncation, valid block count may change w/o\\n.i_blocks and .total_valid_block_count update, result in corruption.\\n\\nThis patch only allow cluster size aligned truncation on released\\ncompress inode for fixing.\"},{\"lang\":\"es\",\"value\":\"En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: f2fs: comprimir: no permitir el truncamiento no alineado en el inodo comprimido liberado. La imagen f2fs puede estar da\u00f1ada despu\u00e9s del siguiente caso de prueba: - mkfs.f2fs -O extra_attr,compression -f /dev/vdb - montar /dev/vdb /mnt/f2fs - tocar /mnt/f2fs/file - f2fs_io setflags compresi\u00f3n /mnt/f2fs/file - dd if=/dev/zero of=/mnt/f2fs/file bs=4k count=4 - f2fs_io release_cblocks /mnt/f2fs/file - truncate -s 8192 /mnt/f2fs/file - umount /mnt/f2fs - fsck.f2fs /dev/vdb [ASSERT] (fsck_chk_inode_blk:1256) --\u0026gt; ino: 0x5 tiene i_blocks : 0x00000002, pero tiene bloques 0x3 [FSCK] valid_block_count que coincide con CP [Falla] [0x4, 0x5] [FSCK] otros errores corruptos [Falla] La raz\u00f3n es: truncamiento parcial se supone que el inodo comprimido tiene bloques reservados, despu\u00e9s del truncamiento parcial, bloque v\u00e1lido El recuento puede cambiar sin la actualizaci\u00f3n de .i_blocks y .total_valid_block_count, lo que provoca corrupci\u00f3n. Este parche solo permite el truncamiento alineado con el tama\u00f1o del cl\u00faster en el inodo comprimido liberado para su reparaci\u00f3n.\"}],\"metrics\":{},\"references\":[{\"url\":\"https://git.kernel.org/stable/c/29ed2b5dd521ce7c5d8466cd70bf0cc9d07afeee\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/3ccf5210dc941a7aa0180596ac021568be4d35ec\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/5268241b41b1c5d0acca75e9b97d4fd719251c8c\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/8acae047215024d1ac499b3c8337ef1b952f160b\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/9f9341064a9b5246a32a7fe56b9f80c6f7f3c62d\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/b8962cf98595d1ec62f40f23667de830567ec8bc\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/29ed2b5dd521ce7c5d8466cd70bf0cc9d07afeee\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\"},{\"url\":\"https://git.kernel.org/stable/c/3ccf5210dc941a7aa0180596ac021568be4d35ec\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\"},{\"url\":\"https://git.kernel.org/stable/c/5268241b41b1c5d0acca75e9b97d4fd719251c8c\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\"},{\"url\":\"https://git.kernel.org/stable/c/8acae047215024d1ac499b3c8337ef1b952f160b\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\"},{\"url\":\"https://git.kernel.org/stable/c/9f9341064a9b5246a32a7fe56b9f80c6f7f3c62d\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\"},{\"url\":\"https://git.kernel.org/stable/c/b8962cf98595d1ec62f40f23667de830567ec8bc\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\"}]}}" } }
Loading…
Loading…
Sightings
Author | Source | Type | Date |
---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
- Confirmed: The vulnerability is confirmed from an analyst perspective.
- Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
- Patched: This vulnerability was successfully patched by the user reporting the sighting.
- Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
- Not confirmed: The user expresses doubt about the veracity of the vulnerability.
- Not patched: This vulnerability was not successfully patched by the user reporting the sighting.