padata: fix UAF in padata_reorder
Summary
| CVE | CVE-2025-21727 |
|---|---|
| State | PUBLISHED |
| Assigner | Linux |
| Source Priority | CVE Program / NVD first with legacy fallback |
| Published | 2025-02-27 02:15:16 UTC |
| Updated | 2026-05-12 13:16:33 UTC |
| Description | In the Linux kernel, the following vulnerability has been resolved: padata: fix UAF in padata_reorder A bug was found when run ltp test: BUG: KASAN: slab-use-after-free in padata_find_next+0x29/0x1a0 Read of size 4 at addr ffff88bbfe003524 by task kworker/u113:2/3039206 CPU: 0 PID: 3039206 Comm: kworker/u113:2 Kdump: loaded Not tainted 6.6.0+ Workqueue: pdecrypt_parallel padata_parallel_worker Call Trace: <TASK> dump_stack_lvl+0x32/0x50 print_address_description.constprop.0+0x6b/0x3d0 print_report+0xdd/0x2c0 kasan_report+0xa5/0xd0 padata_find_next+0x29/0x1a0 padata_reorder+0x131/0x220 padata_parallel_worker+0x3d/0xc0 process_one_work+0x2ec/0x5a0 If 'mdelay(10)' is added before calling 'padata_find_next' in the 'padata_reorder' function, this issue could be reproduced easily with ltp test (pcrypt_aead01). This can be explained as bellow: pcrypt_aead_encrypt ... padata_do_parallel refcount_inc(&pd->refcnt); // add refcnt ... padata_do_serial padata_reorder // pd while (1) { padata_find_next(pd, true); // using pd queue_work_on ... padata_serial_worker crypto_del_alg padata_put_pd_cnt // sub refcnt padata_free_shell padata_put_pd(ps->pd); // pd is freed // loop again, but pd is freed // call padata_find_next, UAF } In the padata_reorder function, when it loops in 'while', if the alg is deleted, the refcnt may be decreased to 0 before entering 'padata_find_next', which leads to UAF. As mentioned in [1], do_serial is supposed to be called with BHs disabled and always happen under RCU protection, to address this issue, add synchronize_rcu() in 'padata_free_shell' wait for all _do_serial calls to finish. [1] https://lore.kernel.org/all/[email protected]/ [2] https://lore.kernel.org/linux-kernel/jfjz5d7zwbytztackem7ibzalm5lnxldi2eofeiczqmqs2m7o6@fq426cwnjtkm/ |
Risk And Classification
Primary CVSS: v3.1 7.8 HIGH from ADP
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Problem Types: CWE-416 | CWE-416 CWE-416 Use After Free
| Version | Source | Type | Score | Severity | Vector |
|---|---|---|---|---|---|
| 3.1 | ADP | DECLARED | 7.8 | HIGH | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
| 3.1 | 134c704f-9b21-4f2e-91b3-4a467353bcc0 | Secondary | 7.8 | HIGH | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
CVSS v3.1 Breakdown
Attack Vector
LocalAttack Complexity
LowPrivileges Required
LowUser Interaction
NoneScope
UnchangedConfidentiality
HighIntegrity
HighAvailability
HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
NVD Known Affected Configurations (CPE 2.3)
| Type | Vendor | Product | Version | Update | Edition | Language |
|---|---|---|---|---|---|---|
| Operating System | Linux | Linux Kernel | All | All | All | All |
Vendor Declared Affected Products
| Source | Vendor | Product | Version | Platforms |
|---|---|---|---|---|
| CNA | Linux | Linux | affected b128a30409356df65f1a51cff3eb986cac8cfedc f78170bee51469734b1a306a74fc5f777bb22ba6 git | Not specified |
| CNA | Linux | Linux | affected b128a30409356df65f1a51cff3eb986cac8cfedc f3e0b9f790f8e8065d59e67b565a83154d9f3079 git | Not specified |
| CNA | Linux | Linux | affected b128a30409356df65f1a51cff3eb986cac8cfedc 0ae2f332cfd2d74cf3ce344ec9938cf3e29c3ccd git | Not specified |
| CNA | Linux | Linux | affected b128a30409356df65f1a51cff3eb986cac8cfedc bbccae982e9fa1d7abcb23a5ec81cb0ec883f7de git | Not specified |
| CNA | Linux | Linux | affected b128a30409356df65f1a51cff3eb986cac8cfedc 573ac9c70bf7885dc85d82fa44550581bfc3b738 git | Not specified |
| CNA | Linux | Linux | affected b128a30409356df65f1a51cff3eb986cac8cfedc 80231f069240d52e98b6a317456c67b2eafd0781 git | Not specified |
| CNA | Linux | Linux | affected b128a30409356df65f1a51cff3eb986cac8cfedc e01780ea4661172734118d2a5f41bc9720765668 git | Not specified |
| CNA | Linux | Linux | affected 5.4 | Not specified |
| CNA | Linux | Linux | unaffected 5.4 semver | Not specified |
| CNA | Linux | Linux | unaffected 5.10.235 5.10.* semver | Not specified |
| CNA | Linux | Linux | unaffected 5.15.179 5.15.* semver | Not specified |
| CNA | Linux | Linux | unaffected 6.1.129 6.1.* semver | Not specified |
| CNA | Linux | Linux | unaffected 6.6.76 6.6.* semver | Not specified |
| CNA | Linux | Linux | unaffected 6.12.13 6.12.* semver | Not specified |
| CNA | Linux | Linux | unaffected 6.13.2 6.13.* semver | Not specified |
| CNA | Linux | Linux | unaffected 6.14 * original_commit_for_fix | Not specified |
| ADP | Siemens | SIMATIC S7-1500 TM MFP - GNU/Linux Subsystem | affected * custom | Not specified |
References
| Reference | Source | Link | Tags |
|---|---|---|---|
| lists.debian.org/debian-lts-announce/2025/05/msg00030.html | af854a3a-2127-422b-91ae-364da2661108 | lists.debian.org | |
| git.kernel.org/stable/c/f78170bee51469734b1a306a74fc5f777bb22ba6 | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 | git.kernel.org | Patch |
| git.kernel.org/stable/c/573ac9c70bf7885dc85d82fa44550581bfc3b738 | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 | git.kernel.org | Patch |
| git.kernel.org/stable/c/e01780ea4661172734118d2a5f41bc9720765668 | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 | git.kernel.org | Patch |
| git.kernel.org/stable/c/80231f069240d52e98b6a317456c67b2eafd0781 | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 | git.kernel.org | Patch |
| git.kernel.org/stable/c/f3e0b9f790f8e8065d59e67b565a83154d9f3079 | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 | git.kernel.org | Patch |
| cert-portal.siemens.com/productcert/html/ssa-265688.html | 0b142b55-0307-4c5a-b3c9-f314f3fb7c5e | cert-portal.siemens.com | |
| git.kernel.org/stable/c/0ae2f332cfd2d74cf3ce344ec9938cf3e29c3ccd | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 | git.kernel.org | Patch |
| git.kernel.org/stable/c/bbccae982e9fa1d7abcb23a5ec81cb0ec883f7de | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 | git.kernel.org | Patch |
| lists.debian.org/debian-lts-announce/2025/03/msg00028.html | af854a3a-2127-422b-91ae-364da2661108 | lists.debian.org | |
| CVE Program record | CVE.ORG | www.cve.org | canonical |
| NVD vulnerability detail | NVD | nvd.nist.gov | canonical, analysis |
No vendor comments have been submitted for this CVE.
There are currently no legacy QID mappings associated with this CVE.