CVE-2024-50084

net: microchip: vcap api: Fix memory leaks in vcap_api_encode_rule_test()

High · published October 29, 2024

CVSS v3.1
7.8
EPSS
0%
Percentile
10.4
In the wild
Unconfirmed
What it is

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

net: microchip: vcap api: Fix memory leaks in vcap_api_encode_rule_test()

Commit a3c1e45156ad ("net: microchip: vcap: Fix use-after-free error in

kunit test") fixed the use-after-free error, but introduced below

memory leaks by removing necessary vcap_free_rule(), add it to fix it.

unreferenced object 0xffffff80ca58b700 (size 192):

comm "kunit_try_catch", pid 1215, jiffies 4294898264

hex dump (first 32 bytes):

00 12 7a 00 05 00 00 00 0a 00 00 00 64 00 00 00 ..z.........d...

00 00 00 00 00 00 00 00 00 04 0b cc 80 ff ff ff ................

backtrace (crc 9c09c3fe):

[<0000000052a0be73>] kmemleak_alloc+0x34/0x40

[<0000000043605459>] __kmalloc_cache_noprof+0x26c/0x2f4

[<0000000040a01b8d>] vcap_alloc_rule+0x3cc/0x9c4

[<000000003fe86110>] vcap_api_encode_rule_test+0x1ac/0x16b0

[<00000000b3595fc4>] kunit_try_run_case+0x13c/0x3ac

[<0000000010f5d2bf>] kunit_generic_run_threadfn_adapter+0x80/0xec

[<00000000c5d82c9a>] kthread+0x2e8/0x374

[<00000000f4287308>] ret_from_fork+0x10/0x20

unreferenced object 0xffffff80cc0b0400 (size 64):

comm "kunit_try_catch", pid 1215, jiffies 4294898265

hex dump (first 32 bytes):

80 04 0b cc 80 ff ff ff 18 b7 58 ca 80 ff ff ff ..........X.....

39 00 00 00 02 00 00 00 06 05 04 03 02 01 ff ff 9...............

backtrace (crc daf014e9):

[<0000000052a0be73>] kmemleak_alloc+0x34/0x40

[<0000000043605459>] __kmalloc_cache_noprof+0x26c/0x2f4

[<000000000ff63fd4>] vcap_rule_add_key+0x2cc/0x528

[<00000000dfdb1e81>] vcap_api_encode_rule_test+0x224/0x16b0

[<00000000b3595fc4>] kunit_try_run_case+0x13c/0x3ac

[<0000000010f5d2bf>] kunit_generic_run_threadfn_adapter+0x80/0xec

[<00000000c5d82c9a>] kthread+0x2e8/0x374

[<00000000f4287308>] ret_from_fork+0x10/0x20

unreferenced object 0xffffff80cc0b0700 (size 64):

comm "kunit_try_catch", pid 1215, jiffies 4294898265

hex dump (first 32 bytes):

80 07 0b cc 80 ff ff ff 28 b7 58 ca 80 ff ff ff ........(.X.....

3c 00 00 00 00 00 00 00 01 2f 03 b3 ec ff ff ff <......../......

backtrace (crc 8d877792):

[<0000000052a0be73>] kmemleak_alloc+0x34/0x40

[<0000000043605459>] __kmalloc_cache_noprof+0x26c/0x2f4

[<000000006eadfab7>] vcap_rule_add_action+0x2d0/0x52c

[<00000000323475d1>] vcap_api_encode_rule_test+0x4d4/0x16b0

[<00000000b3595fc4>] kunit_try_run_case+0x13c/0x3ac

[<0000000010f5d2bf>] kunit_generic_run_threadfn_adapter+0x80/0xec

[<00000000c5d82c9a>] kthread+0x2e8/0x374

[<00000000f4287308>] ret_from_fork+0x10/0x20

unreferenced object 0xffffff80cc0b0900 (size 64):

comm "kunit_try_catch", pid 1215, jiffies 4294898266

hex dump (first 32 bytes):

80 09 0b cc 80 ff ff ff 80 06 0b cc 80 ff ff ff ................

7d 00 00 00 01 00 00 00 00 00 00 00 ff 00 00 00 }...............

backtrace (crc 34181e56):

[<0000000052a0be73>] kmemleak_alloc+0x34/0x40

[<0000000043605459>] __kmalloc_cache_noprof+0x26c/0x2f4

[<000000000ff63fd4>] vcap_rule_add_key+0x2cc/0x528

[<00000000991e3564>] vcap_val_rule+0xcf0/0x13e8

[<00000000fc9868e5>] vcap_api_encode_rule_test+0x678/0x16b0

[<00000000b3595fc4>] kunit_try_run_case+0x13c/0x3ac

[<0000000010f5d2bf>] kunit_generic_run_threadfn_adapter+0x80/0xec

[<00000000c5d82c9a>] kthread+0x2e8/0x374

[<00000000f4287308>] ret_from_fork+0x10/0x20

unreferenced object 0xffffff80cc0b0980 (size 64):

comm "kunit_try_catch", pid 1215, jiffies 4294898266

hex dump (first 32 bytes):

18 b7 58 ca 80 ff ff ff 00 09 0b cc 80 ff ff ff ..X.............

67 00 00 00 00 00 00 00 01 01 74 88 c0 ff ff ff g.........t.....

backtrace (crc 275fd9be):

[<0000000052a0be73>] kmemleak_alloc+0x34/0x40

[<0000000043605459>] __kmalloc_cache_noprof+0x26c/0x2f4

[<000000000ff63fd4>] vcap_rule_add_key+0x2cc/0x528

[<000000001396a1a2>] test_add_de

---truncated---

The record
Technical detail
CVSS v3.1
7.8 · HIGH
Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CVSS v4.0
Not supplied
EPSS
0.00208 · 10.4th percentile
Published
2024-10-29T00:50Z
EPSS history
Timeline
  • 29 OCT 00:50Z
    net: microchip: vcap api: Fix memory leaks in vcap_api_encode_rule_test()
    cvelistv5