🔍 CVE-2024-26838

7.8
CVSS Score
HIGH
2024-04-17
2026-08-04 11:17
✅ 완료

🇰🇷 한글 설명

Linux 커널의 RDMA/irdma 드라이버에서 인터럽트(IRQ)를 삭제하는 과정 중 tasklet이 다른 코어에서 실행 중일 때 발생하는 KASAN 이슈입니다. 인터럽트 삭제 후에도 예약된 tasklet이 남아 있어 경합 상태(Race Condition)를 유발할 수 있습니다.

💡 쉬운 설명

컴퓨터의 특정 작업이 끝났다고 생각하고 관련 장치를 꺼버렸는데, 다른 부분에서 아직 그 작업을 처리하려고 시도하면서 충돌이 발생하는 문제입니다. 이로 인해 시스템이 불안정해지거나 오류가 발생할 수 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: RDMA/irdma: Fix KASAN issue with tasklet KASAN testing revealed the following issue assocated with freeing an IRQ. [50006.466686] Call Trace: [50006.466691] <IRQ> [50006.489538] dump_stack+0x5c/0x80 [50006.493475] print_address_description.constprop.6+0x1a/0x150 [50006.499872] ? irdma_sc_process_ceq+0x483/0x790 [irdma] [50006.505742] ? irdma_sc_process_ceq+0x483/0x790 [irdma] [50006.511644] kasan_report.cold.11+0x7f/0x118 [50006.516572] ? irdma_sc_process_ceq+0x483/0x790 [irdma] [50006.522473] irdma_sc_process_ceq+0x483/0x790 [irdma] [50006.528232] irdma_process_ceq+0xb2/0x400 [irdma] [50006.533601] ? irdma_hw_flush_wqes_callback+0x370/0x370 [irdma] [50006.540298] irdma_ceq_dpc+0x44/0x100 [irdma] [50006.545306] tasklet_action_common.isra.14+0x148/0x2c0 [50006.551096] __do_softirq+0x1d0/0xaf8 [50006.555396] irq_exit_rcu+0x219/0x260 [50006.559670] irq_exit+0xa/0x20 [50006.563320] smp_apic_timer_interrupt+0x1bf/0x690 [50006.568645] apic_timer_interrupt+0xf/0x20 [50006.573341] </IRQ> The issue is that a tasklet could be pending on another core racing the delete of the irq. Fix by insuring any scheduled tasklet is killed after deleting the irq.

📍 영향받는 시스템

Linux kernel (RDMA/irdma driver components)

⚔️ 공격 벡터

로컬 공격자가 특정 네트워크 트래픽이나 드라이버 조작을 통해 경합 상태를 유도하여 시스템 오류 유발

🛡️ 대응 방법

인터럽트 삭제 후 예약된 모든 tasklet이 종료되었는지 확인하도록 커널 패치 적용

🔧 검증 코드

현재 실행 중인 커널 버전을 확인하여 해당 취약점이 해결된 최신 보안 패치 버전인지 확인합니다.

Shell / Script
uname -r

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

💻 영향받는 소프트웨어

Linux Kernel