CVE-2023-53106

nfc: st-nci: Fix use after free bug in ndlc_remove due to race condition

State
Published
Severity
Not scored
Published
May 2, 2025
Updated
May 11, 2026
Reserved
May 2, 2025

Read the record on cve.org

Description

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

nfc: st-nci: Fix use after free bug in ndlc_remove due to race condition

This bug influences both st_nci_i2c_remove and st_nci_spi_remove. Take st_nci_i2c_remove as an example.

In st_nci_i2c_probe, it called ndlc_probe and bound &ndlc->sm_work with llt_ndlc_sm_work.

When it calls ndlc_recv or timeout handler, it will finally call schedule_work to start the work.

When we call st_nci_i2c_remove to remove the driver, there may be a sequence as follows:

Fix it by finishing the work before cleanup in ndlc_remove

CPU0 CPU1

|llt_ndlc_sm_work st_nci_i2c_remove | ndlc_remove | st_nci_remove | nci_free_device| kfree(ndev) | //free ndlc->ndev | |llt_ndlc_rcv_queue |nci_recv_frame |//use ndlc->ndev

Scores

The record has no CVSS score.

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • 35630df68d6030daf12dde12ed07bbe26324e6ac to before 2156490c4b7cacda9a18ec99929940b8376dc0e3Affected
  • 35630df68d6030daf12dde12ed07bbe26324e6ac to before 3405eb641dafcc8b28d174784b203c1622c121bfAffected
  • 35630df68d6030daf12dde12ed07bbe26324e6ac to before b0c202a8dc63008205a5d546559736507a9aae66Affected
  • 35630df68d6030daf12dde12ed07bbe26324e6ac to before 43aa468df246175207a7d5d7d6d31b231f15b49cAffected
  • 35630df68d6030daf12dde12ed07bbe26324e6ac to before 84dd9cc34014e3a3dcce0eb6d54b8a067e97676bAffected
  • 35630df68d6030daf12dde12ed07bbe26324e6ac to before 5e331022b448fbc5e76f24349cd0246844dcad25Affected
  • 35630df68d6030daf12dde12ed07bbe26324e6ac to before f589e5b56c562d99ea74e05b1c3f0eab78aa17a3Affected
  • 35630df68d6030daf12dde12ed07bbe26324e6ac to before 5000fe6c27827a61d8250a7e4a1d26c3298ef4f6Affected
LinuxLinux
  • 3.17Affected
  • before 3.17Not affected
  • 4.14.311 through 4.14.*Not affected
  • 4.19.279 through 4.19.*Not affected
  • 5.4.238 through 5.4.*Not affected
  • 5.10.176 through 5.10.*Not affected
  • 5.15.104 through 5.15.*Not affected
  • 6.1.21 through 6.1.*Not affected
  • 6.2.8 through 6.2.*Not affected
  • 6.3 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.