Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1336 CNY

100%

CVE-2024-26880— dm: call the resume method on internal suspend

CVSS 7.8 · High EPSS 0.71% · P50

Affected Version Matrix 20

VendorProductVersion RangeStatus
LinuxLinuxffcc39364160663cda1a3c358f4537302a92459b< 69836d9329f0b4c58faaf3d886a7748ddb5bf718affected
ffcc39364160663cda1a3c358f4537302a92459b< da7ece2197101b1469853e6b5e915be1e3896d52affected
ffcc39364160663cda1a3c358f4537302a92459b< f89bd27709376d37ff883067193320c58a8c1d5aaffected
ffcc39364160663cda1a3c358f4537302a92459b< 03ad5ad53e51abf3a4c7538c1bc67a5982b41dc5affected
ffcc39364160663cda1a3c358f4537302a92459b< ad10289f68f45649816cc68eb93f45fd5ec48a15affected
ffcc39364160663cda1a3c358f4537302a92459b< 15a3fc5c8774c17589dabfe1d642d40685c985afaffected
ffcc39364160663cda1a3c358f4537302a92459b< ef02d8edf738557af2865c5bfb66a03c4e071be7affected
ffcc39364160663cda1a3c358f4537302a92459b< 360a7d1be8112654f1fb328ed3862be630bca3f4affected
… +12 more rows
Get alerts for future matching vulnerabilitiesLog in to subscribe

I. Basic Information for CVE-2024-26880

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
dm: call the resume method on internal suspend
Source: CVE Program / CVE List V5
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: dm: call the resume method on internal suspend There is this reported crash when experimenting with the lvm2 testsuite. The list corruption is caused by the fact that the postsuspend and resume methods were not paired correctly; there were two consecutive calls to the origin_postsuspend function. The second call attempts to remove the "hash_list" entry from a list, while it was already removed by the first call. Fix __dm_internal_resume so that it calls the preresume and resume methods of the table's targets. If a preresume method of some target fails, we are in a tricky situation. We can't return an error because dm_internal_resume isn't supposed to return errors. We can't return success, because then the "resume" and "postsuspend" methods would not be paired correctly. So, we set the DMF_SUSPENDED flag and we fake normal suspend - it may confuse userspace tools, but it won't cause a kernel crash. ------------[ cut here ]------------ kernel BUG at lib/list_debug.c:56! invalid opcode: 0000 [#1] PREEMPT SMP CPU: 1 PID: 8343 Comm: dmsetup Not tainted 6.8.0-rc6 #4 Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.14.0-2 04/01/2014 RIP: 0010:__list_del_entry_valid_or_report+0x77/0xc0 <snip> RSP: 0018:ffff8881b831bcc0 EFLAGS: 00010282 RAX: 000000000000004e RBX: ffff888143b6eb80 RCX: 0000000000000000 RDX: 0000000000000001 RSI: ffffffff819053d0 RDI: 00000000ffffffff RBP: ffff8881b83a3400 R08: 00000000fffeffff R09: 0000000000000058 R10: 0000000000000000 R11: ffffffff81a24080 R12: 0000000000000001 R13: ffff88814538e000 R14: ffff888143bc6dc0 R15: ffffffffa02e4bb0 FS: 00000000f7c0f780(0000) GS:ffff8893f0a40000(0000) knlGS:0000000000000000 CS: 0010 DS: 002b ES: 002b CR0: 0000000080050033 CR2: 0000000057fb5000 CR3: 0000000143474000 CR4: 00000000000006b0 Call Trace: <TASK> ? die+0x2d/0x80 ? do_trap+0xeb/0xf0 ? __list_del_entry_valid_or_report+0x77/0xc0 ? do_error_trap+0x60/0x80 ? __list_del_entry_valid_or_report+0x77/0xc0 ? exc_invalid_op+0x49/0x60 ? __list_del_entry_valid_or_report+0x77/0xc0 ? asm_exc_invalid_op+0x16/0x20 ? table_deps+0x1b0/0x1b0 [dm_mod] ? __list_del_entry_valid_or_report+0x77/0xc0 origin_postsuspend+0x1a/0x50 [dm_snapshot] dm_table_postsuspend_targets+0x34/0x50 [dm_mod] dm_suspend+0xd8/0xf0 [dm_mod] dev_suspend+0x1f2/0x2f0 [dm_mod] ? table_deps+0x1b0/0x1b0 [dm_mod] ctl_ioctl+0x300/0x5f0 [dm_mod] dm_compat_ctl_ioctl+0x7/0x10 [dm_mod] __x64_compat_sys_ioctl+0x104/0x170 do_syscall_64+0x184/0x1b0 entry_SYSCALL_64_after_hwframe+0x46/0x4e RIP: 0033:0xf7e6aead <snip> ---[ end trace 0000000000000000 ]---
Source: CVE Program / CVE List V5
CVSS Information
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Source: CVE Program / CVE List V5
Vulnerability Type
N/A
Source: CVE Program / CVE List V5
Vulnerability Title
Linux kernel 安全漏洞
Source: CNNVD (China National Vulnerability Database)
Vulnerability Description
Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel存在安全漏洞,该漏洞源于postsuspend 和resume 方法未正确配对。
Source: CNNVD (China National Vulnerability Database)
CVSS Information
N/A
Source: CNNVD (China National Vulnerability Database)
Vulnerability Type
N/A
Source: CNNVD (China National Vulnerability Database)

Affected Products

VendorProductAffected VersionsCPESubscribe
LinuxLinux ffcc39364160663cda1a3c358f4537302a92459b ~ 69836d9329f0b4c58faaf3d886a7748ddb5bf718 -
LinuxLinux 3.19 -

II. Public POCs for CVE-2024-26880

#POC DescriptionSource LinkShenlong Link
AI-Generated POCPremium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2024-26880

登录查看更多情报信息。

Mailing List Discussions for CVE-2024-26880 (2)

Other References for CVE-2024-26880 (7)

Same Patch Batch · Linux · 2024-04-17 · 100 CVEs total

CVE-2024-268779.8 CRITICALcrypto: xilinx - call finalize with bh disabled
CVE-2024-268539.8 CRITICALigc: avoid returning frame twice in XDP_REDIRECT
CVE-2024-268289.4 CRITICALcifs: fix underflow in parse_server_interfaces()
CVE-2024-268568.8 HIGHnet: sparx5: Fix use after free inside sparx5_del_mact_entry
CVE-2024-268228.7 HIGHsmb: client: set correct id, uid and cruid for multiuser automounts
CVE-2024-268308.4 HIGHi40e: Do not allow untrusted VF to remove administratively set MAC
CVE-2024-268957.8 HIGHwifi: wilc1000: prevent use-after-free on vif when cleaning up all interfaces
CVE-2024-268907.8 HIGHBluetooth: btrtl: fix out of bounds memory access
CVE-2024-268387.8 HIGHRDMA/irdma: Fix KASAN issue with tasklet
CVE-2024-268527.8 HIGHnet/ipv6: avoid possible UAF in ip6_route_mpath_notify()
CVE-2024-268987.8 HIGHaoe: fix the potential use-after-free problem in aoecmd_cfg_pkts
CVE-2024-268647.8 HIGHtcp: Fix refcnt handling in __inet_hash_connect().
CVE-2024-269117.8 HIGHdrm/buddy: Fix alloc_range() error handling code
CVE-2024-268657.8 HIGHrds: tcp: Fix use-after-free of net in reqsk_timer_handler().
CVE-2024-268237.8 HIGHirqchip/gic-v3-its: Restore quirk probing for ACPI-based systems
CVE-2024-268847.8 HIGHbpf: Fix hashtab overflow check on 32-bit arches
CVE-2024-268247.8 HIGHcrypto: algif_hash - Remove bogus SGL free on zero-length error path
CVE-2024-268857.8 HIGHbpf: Fix DEVMAP_HASH overflow check on 32-bit arches
CVE-2024-268837.8 HIGHbpf: Fix stackmap overflow check on 32-bit arches
CVE-2024-269197.8 HIGHusb: ulpi: Fix debugfs directory leak

Showing top 20 of 100 CVEs. View all on vendor page &rarr; →

IV. Related Vulnerabilities

V. Comments for CVE-2024-26880

No comments yet


Leave a comment