-

CVE-2022-50435

In the Linux kernel, the following vulnerability has been resolved:

ext4: avoid crash when inline data creation follows DIO write

When inode is created and written to using direct IO, there is nothing
to clear the EXT4_STATE_MAY_INLINE_DATA flag. Thus when inode gets
truncated later to say 1 byte and written using normal write, we will
try to store the data as inline data. This confuses the code later
because the inode now has both normal block and inline data allocated
and the confusion manifests for example as:

kernel BUG at fs/ext4/inode.c:2721!
invalid opcode: 0000 [#1] PREEMPT SMP KASAN
CPU: 0 PID: 359 Comm: repro Not tainted 5.19.0-rc8-00001-g31ba1e3b8305-dirty #15
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.16.0-1.fc36 04/01/2014
RIP: 0010:ext4_writepages+0x363d/0x3660
RSP: 0018:ffffc90000ccf260 EFLAGS: 00010293
RAX: ffffffff81e1abcd RBX: 0000008000000000 RCX: ffff88810842a180
RDX: 0000000000000000 RSI: 0000008000000000 RDI: 0000000000000000
RBP: ffffc90000ccf650 R08: ffffffff81e17d58 R09: ffffed10222c680b
R10: dfffe910222c680c R11: 1ffff110222c680a R12: ffff888111634128
R13: ffffc90000ccf880 R14: 0000008410000000 R15: 0000000000000001
FS:  00007f72635d2640(0000) GS:ffff88811b000000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000565243379180 CR3: 000000010aa74000 CR4: 0000000000150eb0
Call Trace:
 <TASK>
 do_writepages+0x397/0x640
 filemap_fdatawrite_wbc+0x151/0x1b0
 file_write_and_wait_range+0x1c9/0x2b0
 ext4_sync_file+0x19e/0xa00
 vfs_fsync_range+0x17b/0x190
 ext4_buffered_write_iter+0x488/0x530
 ext4_file_write_iter+0x449/0x1b90
 vfs_write+0xbcd/0xf40
 ksys_write+0x198/0x2c0
 __x64_sys_write+0x7b/0x90
 do_syscall_64+0x3d/0x90
 entry_SYSCALL_64_after_hwframe+0x63/0xcd
 </TASK>

Fix the problem by clearing EXT4_STATE_MAY_INLINE_DATA when we are doing
direct IO write to a file.

Verknüpft mit AI von unstrukturierten Daten zu bestehenden CPE der NVD
This information is available to logged-in users.
Daten sind bereitgestellt durch das CVE Programm von einer CVE Numbering Authority (CNA) (Unstrukturiert).
VendorLinux
Product Linux
Default Statusunaffected
Version < 3b31cc533665899965e351aae6cc3c3f3b9cc076
Version 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2
Status affected
Version < 43ed16910af200e2fcfe16986bee1a67fba94992
Version 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2
Status affected
Version < 59b108630a4987f71e1dc1dc50b8062e992b49c6
Version 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2
Status affected
Version < a22f52d883313bbfaf864669c14003f9456d4f8f
Version 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2
Status affected
Version < fb98cb61efff3b2a1964939465ccaaf906af1d4f
Version 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2
Status affected
Version < d8e4af8314df54d94cf2a541cf9c8626afe81d41
Version 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2
Status affected
Version < 89db2b50469bdbccb06ab072096d9d403124abac
Version 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2
Status affected
Version < 771f15782d95760cde352c8d4bfd6f2c70719568
Version 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2
Status affected
Version < 4bb26f2885ac6930984ee451b952c5a6042f2c0e
Version 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2
Status affected
VendorLinux
Product Linux
Default Statusaffected
Version <= 4.9.*
Version 4.9.331
Status unaffected
Version <= 4.14.*
Version 4.14.296
Status unaffected
Version <= 4.19.*
Version 4.19.262
Status unaffected
Version <= 5.4.*
Version 5.4.220
Status unaffected
Version <= 5.10.*
Version 5.10.150
Status unaffected
Version <= 5.15.*
Version 5.15.75
Status unaffected
Version <= 5.19.*
Version 5.19.17
Status unaffected
Version <= 6.0.*
Version 6.0.3
Status unaffected
Version <= *
Version 6.1
Status unaffected
Zu dieser CVE wurde keine CISA KEV oder CERT.AT-Warnung gefunden.
EPSS Metriken
Type Source Score Percentile
EPSS FIRST.org 0.04% 0.129
CVSS Metriken
Source Base Score Exploit Score Impact Score Vector string