CVE-2022-50638

Belirsiz

Açıklama

Linux kernel'de aşağıdaki güvenlik açığı giderilmiştir: ext4: hatalı boot loader inode nedeniyle __es_tree_search fonksiyonunda oluşan bug_on hatası düzeltildi Aşağıdaki sorun tespit edilmiştir: ================================================================== kernel BUG at fs/ext4/extents_status.c:203! invalid opcode: 0000 [#1] PREEMPT SMP CPU: 1 PID: 945 Comm: cat Not tainted 6.0.0-next-20221007-dirty #349 RIP: 0010:ext4_es_end.isra.0+0x34/0x42 RSP: 0018:ffffc9000143b768 EFLAGS: 00010203 RAX: 0000000000000000 RBX: ffff8881769cd0b8 RCX: 0000000000000000 RDX: 0000000000000000 RSI: ffffffff8fc27cf7 RDI: 00000000ffffffff RBP: ffff8881769cd0bc R08: 0000000000000000 R09: ffffc9000143b5f8 R10: 0000000000000001 R11: 0000000000000001 R12: ffff8881769cd0a0 R13: ffff8881768e5668 R14: 00000000768e52f0 R15: 0000000000000000 FS: 00007f359f7f05c0(0000)GS:ffff88842fd00000(0000)knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007f359f5a2000 CR3: 000000017130c000 CR4: 00000000000006e0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace: <TASK> __es_tree_search.isra.0+0x6d/0xf5 ext4_es_cache_extent+0xfa/0x230 ext4_cache_extents+0xd2/0x110 ext4_find_extent+0x5d5/0x8c0 ext4_ext_map_blocks+0x9c/0x1d30 ext4_map_blocks+0x431/0xa50 ext4_mpage_readpages+0x48e/0xe40 ext4_readahead+0x47/0x50 read_pages+0x82/0x530 page_cache_ra_unbounded+0x199/0x2a0 do_page_cache_ra+0x47/0x70 page_cache_ra_order+0x242/0x400 ondemand_readahead+0x1e8/0x4b0 page_cache_sync_ra+0xf4/0x110 filemap_get_pages+0x131/0xb20 filemap_read+0xda/0x4b0 generic_file_read_iter+0x13a/0x250 ext4_file_read_iter+0x59/0x1d0 vfs_read+0x28f/0x460 ksys_read+0x73/0x160 __x64_sys_read+0x1e/0x30 do_syscall_64+0x35/0x80 entry_SYSCALL_64_after_hwframe+0x63/0xcd </TASK> ================================================================== Yukarıdaki sorunda, ioctl komutu inode<5> ve inode<12>'yi takas etmek için swap_inode_boot_loader fonksiyonunu çağırır. Ancak, inode<5> hatalı bir imode ve düzensiz extentler içerir ve i_nlink değeri 1 olarak ayarlanmıştır. ext4_iget fonksiyonundaki inode için yapılan extent kontrolü, 5 değeri EXT4_BOOT_LOADER_INO olduğu için atlanabilir. links_count 1 olarak ayarlanmışken, swap_inode_boot_loader içerisinde extentler başlatılmaz. ioctl komutu başarıyla yürütüldükten sonra extentler inode<12>'ye aktarılır; bu durumda inode<12>'yi görüntülemek için `cat` komutu çalıştırıldığında, hatalı extentler nedeniyle Bug_ON tetiklenir. Boot loader inode başlatılmadığında, imode şunlardan biri olabilir: 1) imode hatalı bir türdür, bu durum ext4_iget içinde bad_inode olarak işaretlenir ve S_IFREG olarak ayarlanır. 2) imode geçerli bir türdür ancak S_IFREG değildir. 3) imode S_IFREG'dir. BUG_ON, 1. ve 2. durumlardaki kontrollerin atlanmasıyla tetiklenebilir. Bu nedenle, boot loader inode bad_inode olduğunda veya imode değeri S_IFREG olmadığında, BUG oluşmasını önlemek için inode başlatılır.

ÖnemBelirsiz
CVSS—
İstismar olasılığı—
ÜrünLinux
Yayın9 Ara 2025
İlk görülme9 Ara 2025

Nasıl düzeltilir

Güncelleyin
  • Linux Linuxe76ede9d2c9e0af4573342b56d7cdbf757c18084, a95ba369255ddcdc5e43d38bc5203537bdf3a518, 5f8d36abd2059bf1bd016b17d1fe78d8613deddd, 78e335fb573e6a85718c4c24d5a052718a99a9ed, 71e99ec1315fe98d322b17b9a28f204aaf15ffee, d480a49c15c465cb9a16db1379f4996e9b5bb9cc, feec0ea94c5ef4aa118750284c8a921698733ef2, a125c8806b7d3c3815b6f9f59d395b9d7527b0ef, 991ed014de0840c5dc405b679168924afb2952ac ya da sonraki bir sürüm

Etkilenen ürünler

ÜrünEtkilenen sürümlerDüzeltildiği sürüm
Linux Linux393d1d1d76933886d5e1ce603214c9987589c6d5 ≤ v < e76ede9d2c9e0af4573342b56d7cdbf757c18084, 393d1d1d76933886d5e1ce603214c9987589c6d5 ≤ v < a95ba369255ddcdc5e43d38bc5203537bdf3a518, 393d1d1d76933886d5e1ce603214c9987589c6d5 ≤ v < 5f8d36abd2059bf1bd016b17d1fe78d8613deddd, 393d1d1d76933886d5e1ce603214c9987589c6d5 ≤ v < 78e335fb573e6a85718c4c24d5a052718a99a9ed, 393d1d1d76933886d5e1ce603214c9987589c6d5 ≤ v < 71e99ec1315fe98d322b17b9a28f204aaf15ffee, 393d1d1d76933886d5e1ce603214c9987589c6d5 ≤ v < d480a49c15c465cb9a16db1379f4996e9b5bb9cc, 393d1d1d76933886d5e1ce603214c9987589c6d5 ≤ v < feec0ea94c5ef4aa118750284c8a921698733ef2, 393d1d1d76933886d5e1ce603214c9987589c6d5 ≤ v < a125c8806b7d3c3815b6f9f59d395b9d7527b0ef, 393d1d1d76933886d5e1ce603214c9987589c6d5 ≤ v < 991ed014de0840c5dc405b679168924afb2952ac, 3.10e76ede9d2c9e0af4573342b56d7cdbf757c18084, a95ba369255ddcdc5e43d38bc5203537bdf3a518, 5f8d36abd2059bf1bd016b17d1fe78d8613deddd, 78e335fb573e6a85718c4c24d5a052718a99a9ed, 71e99ec1315fe98d322b17b9a28f204aaf15ffee, d480a49c15c465cb9a16db1379f4996e9b5bb9cc, feec0ea94c5ef4aa118750284c8a921698733ef2, a125c8806b7d3c3815b6f9f59d395b9d7527b0ef, 991ed014de0840c5dc405b679168924afb2952ac

Sürümünüzü kontrol edin

Ürünü seçin ve kullandığınız sürümü yazın; sürümün etkilenen aralıkta olup olmadığını görün.

Intelligence 360 paketinde

Attack Surface Management

Alan adlarınıza bağlı varlıkları, bu varlıklarda çalışan teknolojileri ve bilinen zafiyetleri tek listede görün.