CVE-2022-49802
N/A
Summary
In the Linux kernel, the following vulnerability has been resolved:
ftrace: Fix null pointer dereference in ftrace_add_mod()
The @ftrace_mod is allocated by kzalloc(), so both the members {prev,next} of @ftrace_mode->list are NULL, it's not a valid state to call list_del(). If kstrdup() for @ftrace_mod->{func|module} fails, it goes to @out_free tag and calls free_ftrace_mod() to destroy @ftrace_mod, then list_del() will write prev->next and next->prev, where null pointer dereference happens.
BUG: kernel NULL pointer dereference, address: 0000000000000008 Oops: 0002 [#1] PREEMPT SMP NOPTI Call Trace: <TASK> ftrace_mod_callback+0x20d/0x220 ? do_filp_open+0xd9/0x140 ftrace_process_regex.isra.51+0xbf/0x130 ftrace_regex_write.isra.52.part.53+0x6e/0x90 vfs_write+0xee/0x3a0 ? __audit_filter_op+0xb1/0x100 ? auditd_test_task+0x38/0x50 ksys_write+0xa5/0xe0 do_syscall_64+0x3a/0x90 entry_SYSCALL_64_after_hwframe+0x63/0xcd Kernel panic - not syncing: Fatal exception
So call INIT_LIST_HEAD() to initialize the list member to fix this issue.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | 673feb9d76ab3eddde7acfd94b206e321cfc90b9 < 665b4c6648bf2b91f69b33817f4321cf4c3cafe9 | affected |
| Linux | Linux | 673feb9d76ab3eddde7acfd94b206e321cfc90b9 < b5bfc61f541d3f092b13dedcfe000d86eb8e133c | affected |
| Linux | Linux | 673feb9d76ab3eddde7acfd94b206e321cfc90b9 < f715f31559b82e3f75ce047fa476de63d8107584 | affected |
| Linux | Linux | 673feb9d76ab3eddde7acfd94b206e321cfc90b9 < 6a14828caddad0d989495a72af678adf60992704 | affected |
| Linux | Linux | 673feb9d76ab3eddde7acfd94b206e321cfc90b9 < 1bea037a1abb23a6729bef36a2265a4565f5ea77 | affected |
| Linux | Linux | 673feb9d76ab3eddde7acfd94b206e321cfc90b9 < 6e50eb4b1807017f6c2d5089064256ce2de8aef1 | affected |
| Linux | Linux | 673feb9d76ab3eddde7acfd94b206e321cfc90b9 < 19ba6c8af9382c4c05dc6a0a79af3013b9a35cd0 | affected |
| Linux | Linux | 4.13 | affected |
| Linux | Linux | 0 < 4.13 | unaffected |
| Linux | Linux | 4.14.300 <= 4.14.* | unaffected |
| Linux | Linux | 4.19.267 <= 4.19.* | unaffected |
| Linux | Linux | 5.4.225 <= 5.4.* | unaffected |
| Linux | Linux | 5.10.156 <= 5.10.* | unaffected |
| Linux | Linux | 5.15.80 <= 5.15.* | unaffected |
| Linux | Linux | 6.0.10 <= 6.0.* | unaffected |
| Linux | Linux | 6.1 <= * | unaffected |
Weaknesses
References
- https://git.kernel.org/stable/c/665b4c6648bf2b91f69b33817f4321cf4c3cafe9
- https://git.kernel.org/stable/c/b5bfc61f541d3f092b13dedcfe000d86eb8e133c
- https://git.kernel.org/stable/c/f715f31559b82e3f75ce047fa476de63d8107584
- https://git.kernel.org/stable/c/6a14828caddad0d989495a72af678adf60992704
- https://git.kernel.org/stable/c/1bea037a1abb23a6729bef36a2265a4565f5ea77
- https://git.kernel.org/stable/c/6e50eb4b1807017f6c2d5089064256ce2de8aef1
- https://git.kernel.org/stable/c/19ba6c8af9382c4c05dc6a0a79af3013b9a35cd0
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.