CVE-2021-4439

isdn: cpai: check ctr->cnr to avoid array index out of bound

State
Published
Severity
Not scored
Published
Jun 20, 2024
Updated
May 11, 2026
Reserved
Jun 20, 2024

Read the record on cve.org

Description

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

isdn: cpai: check ctr->cnr to avoid array index out of bound

The cmtp_add_connection() would add a cmtp session to a controller and run a kernel thread to process cmtp.

__module_get(THIS_MODULE); session->task = kthread_run(cmtp_session, session, "kcmtpd_ctr_%d", session->num);

During this process, the kernel thread would call detach_capi_ctr() to detach a register controller. if the controller was not attached yet, detach_capi_ctr() would trigger an array-index-out-bounds bug.

[ 46.866069][ T6479] UBSAN: array-index-out-of-bounds in drivers/isdn/capi/kcapi.c:483:21 [ 46.867196][ T6479] index -1 is out of range for type 'capi_ctr *[32]' [ 46.867982][ T6479] CPU: 1 PID: 6479 Comm: kcmtpd_ctr_0 Not tainted 5.15.0-rc2+ #8 [ 46.869002][ T6479] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.14.0-2 04/01/2014 [ 46.870107][ T6479] Call Trace: [ 46.870473][ T6479] dump_stack_lvl+0x57/0x7d [ 46.870974][ T6479] ubsan_epilogue+0x5/0x40 [ 46.871458][ T6479] __ubsan_handle_out_of_bounds.cold+0x43/0x48 [ 46.872135][ T6479] detach_capi_ctr+0x64/0xc0 [ 46.872639][ T6479] cmtp_session+0x5c8/0x5d0 [ 46.873131][ T6479] ? __init_waitqueue_head+0x60/0x60 [ 46.873712][ T6479] ? cmtp_add_msgpart+0x120/0x120 [ 46.874256][ T6479] kthread+0x147/0x170 [ 46.874709][ T6479] ? set_kthread_struct+0x40/0x40 [ 46.875248][ T6479] ret_from_fork+0x1f/0x30 [ 46.875773][ T6479]

Scores

The record has no CVSS score.

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 to before e8b8de17e164c9f1b7777f1c6f99d05539000036Affected
  • 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 to before 24219a977bfe3d658687e45615c70998acdbac5aAffected
  • 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 to before 9b6b2db77bc3121fe435f1d4b56e34de443bec75Affected
  • 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 to before 7d91adc0ccb060ce564103315189466eb822cc6aAffected
  • 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 to before 285e9210b1fab96a11c0be3ed5cea9dd48b6ac54Affected
  • 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 to before 7f221ccbee4ec662e2292d490a43ce6c314c4594Affected
  • 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 to before cc20226e218a2375d50dd9ac14fb4121b43375ffAffected
  • 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 to before 1f3e2e97c003f80c4b087092b225c8787ff91e4dAffected
LinuxLinux
  • 2.6.12Affected
  • before 2.6.12Not affected
  • 4.4.290 through 4.4.*Not affected
  • 4.9.288 through 4.9.*Not affected
  • 4.14.253 through 4.14.*Not affected
  • 4.19.214 through 4.19.*Not affected
  • 5.4.156 through 5.4.*Not affected
  • 5.10.76 through 5.10.*Not affected
  • 5.14.15 through 5.14.*Not affected
  • 5.15 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.