9.8
CRITICAL CVSS 3.1
CVE-2026-74267
net/sched: sch_codel: Do not call qdisc_tree_reduce_backlog during peek before restoring qlen
Description

In the Linux kernel, the following vulnerability has been resolved: net/sched: sch_codel: Do not call qdisc_tree_reduce_backlog during peek before restoring qlen Whenever codel drops packets during peek, it calls qdisc_tree_reduce_backlog. An issue arises because it calls qdisc_tree_reduce_backlog before it reincrements the qlen. If qlen drops to zero, but peek returns an skb, the parent's qlen_notify callback will be executed even though codel still has 1 packet on the queue and, thus, will mistakenly deactivate the parent's class causing issues like a wild memory access when qfq has codel as a child: [ 36.339843][ T370] Oops: general protection fault, probably for non-canonical address 0xfbd59c0000000024: 0000 [#1] SMP KASAN NOPTI [ 36.340408][ T370] KASAN: maybe wild-memory-access in range [0xdead000000000120-0xdead000000000127] [ 36.340737][ T370] CPU: 2 UID: 0 PID: 370 Comm: tc Not tainted 7.1.0-rc5-00287-g66e13b626592 #87 PREEMPT(full) [ 36.341113][ T370] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 [ 36.341357][ T370] RIP: 0010:qfq_deactivate_agg (include/linux/list.h:1029 (discriminator 2) include/linux/list.h:1043 (discriminator 2) net/sched/sch_qfq.c:1369 (discriminator 2) net/sched/sch_qfq.c:1395 (discriminator 2)) sch_qfq [ 36.342221][ T370] RSP: 0018:ffff8881100ef370 EFLAGS: 00010216 [ 36.342422][ T370] RAX: 0000000000000000 RBX: ffff8881058a9568 RCX: dffffc0000000000 [ 36.342664][ T370] RDX: 1ffff11021064dc3 RSI: ffff888108326e00 RDI: dffffc0000000000 [ 36.342905][ T370] RBP: ffff8881058a8280 R08: dead000000000122 R09: 1bd5a00000000024 [ 36.343140][ T370] R10: fffffbfff2940329 R11: fffffbfff2940329 R12: 0000000000000000 [ 36.343383][ T370] R13: dead000000000100 R14: ffff8881058a9580 R15: ffff8881058a9578 [ 36.343631][ T370] FS: 00007fc04b0ca780(0000) GS:ffff888184fef000(0000) knlGS:0000000000000000 [ 36.343911][ T370] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 36.344116][ T370] CR2: 0000557c02c02000 CR3: 000000010e0ba000 CR4: 0000000000750ef0 [ 36.344359][ T370] PKRU: 55555554 [ 36.344481][ T370] Call Trace: ... [ 36.345054][ T370] qfq_reset_qdisc (net/sched/sch_qfq.c:357 net/sched/sch_qfq.c:1487) sch_qfq [ 36.345222][ T370] qdisc_reset (net/sched/sch_generic.c:1057) [ 36.345503][ T370] __qdisc_destroy (net/sched/sch_generic.c:1096) [ 36.345677][ T370] qdisc_graft (net/sched/sch_api.c:1062 net/sched/sch_api.c:1053 net/sched/sch_api.c:1159) [ 36.346335][ T370] tc_get_qdisc (net/sched/sch_api.c:1528 net/sched/sch_api.c:1556) Fix this by only calling qdisc_tree_reduce_backlog in peek after the qlen is restored.

INFO

Published Date :

Aug. 15, 2026, 6:22 a.m.

Last Modified :

Aug. 17, 2026, 6:19 a.m.

Remotely Exploit :

Yes !

Source :

416baaa9-dc9f-4396-8d5f-8c081fb06d67
Affected Products

The following products are affected by CVE-2026-74267 vulnerability. Even if cvefeed.io is aware of the exact versions of the products that are affected, the information is not represented in the table below.

ID Vendor Product Action
1 Linux linux_kernel
CVSS Scores
The Common Vulnerability Scoring System is a standardized framework for assessing the severity of vulnerabilities in software and systems. We collect and displays CVSS scores from various sources for each CVE.
Score Version Severity Vector Exploitability Score Impact Score Source
CVSS 3.1 CRITICAL 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Solution
Address memory corruption by ensuring qlen is restored before reducing backlog.
  • Restore qlen before calling qdisc_tree_reduce_backlog in peek.
  • Ensure qdisc_tree_reduce_backlog is called after qlen restoration.
  • Apply the kernel patch to fix the qdisc backlog handling.
  • Update the Linux kernel to the patched version.
CWE - Common Weakness Enumeration

While CVE identifies specific instances of vulnerabilities, CWE categorizes the common flaws or weaknesses that can lead to vulnerabilities. CVE-2026-74267 is associated with the following CWEs:

Common Attack Pattern Enumeration and Classification (CAPEC)

Common Attack Pattern Enumeration and Classification (CAPEC) stores attack patterns, which are descriptions of the common attributes and approaches employed by adversaries to exploit the CVE-2026-74267 weaknesses.

We scan GitHub repositories to detect new proof-of-concept exploits. Following list is a collection of public exploits and proof-of-concepts, which have been published on GitHub (sorted by the most recently updated).

Results are limited to the first 15 repositories due to potential performance issues.

The following list is the news that have been mention CVE-2026-74267 vulnerability anywhere in the article.

The following table lists the changes that have been made to the CVE-2026-74267 vulnerability over time.

Vulnerability history details can be useful for understanding the evolution of a vulnerability, and for identifying the most recent changes that may impact the vulnerability's severity, exploitability, or other characteristics.

  • CVE Modified by 416baaa9-dc9f-4396-8d5f-8c081fb06d67

    Aug. 17, 2026

    Action Type Old Value New Value
    Added CVSS V3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
    Changed Affected [{'repo': 'https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git', 'vendor': 'Linux', 'product': 'Linux', 'versions': [{'status': 'affected', 'version': 'cc71a757da78dd4aa1b4a9b19cb011833730ccf2', 'lessThan': 'bb9cfd874ee884117b33e92a002b9a45b48202f4', 'versionType': 'git'}, {'status': 'affected', 'version': 'eda741fe155ddf5ecd2dd3bfbd4fc3c0c7dbb450', 'lessThan': '7a05af7f58566682b73578b72ca8e53a268c43bd', 'versionType': 'git'}, {'status': 'affected', 'version': '829c49b6b2ff45b043739168fd1245e4e1a91a30', 'lessThan': 'eba49fd85995a3851c597fa2d214f8d21736e1d8', 'versionType': 'git'}, {'status': 'affected', 'version': '2f9761a94bae33d26e6a81b31b36e7d776d93dc1', 'lessThan': 'e8c6dbadf139cb14ea6ed14add6ed6e88504dedd', 'versionType': 'git'}, {'status': 'affected', 'version': '4d55144b12e742404bb3f8fee6038bafbf45619d', 'lessThan': 'e4615aa6bb7802944ae790cb4b3ef8c1b7491af3', 'versionType': 'git'}, {'status': 'affected', 'version': '342debc12183b51773b3345ba267e9263bdfaaef', 'lessThan': '755108bb7a5083e911294c416cfea605dc75632f', 'versionType': 'git'}, {'status': 'affected', 'version': '342debc12183b51773b3345ba267e9263bdfaaef', 'lessThan': '91e0a793a72374c20ab31a40ccec21373e82e973', 'versionType': 'git'}, {'status': 'affected', 'version': '342debc12183b51773b3345ba267e9263bdfaaef', 'lessThan': '52f1da34c9f4d5bdc1e8b44242da5c7ba8db85f3', 'versionType': 'git'}, {'status': 'affected', 'version': '7a742a9506849d1c1aa71e36c89855ceddc7d58e', 'versionType': 'git'}, {'status': 'affected', 'version': 'e73c838c80dccb9e4f19becc11d9f3cb4a27d483', 'versionType': 'git'}, {'status': 'affected', 'version': 'a57fe60ef4cf96bfbb6b58397ec28bdb5a5c6b31', 'versionType': 'git'}, {'status': 'affected', 'version': '5.10.241', 'lessThan': '5.10.261', 'versionType': 'semver'}, {'status': 'affected', 'version': '5.15.190', 'lessThan': '5.15.212', 'versionType': 'semver'}, {'status': 'affected', 'version': '6.1.135', 'lessThan': '6.1.178', 'versionType': 'semver'}, {'status': 'affected', 'version': '6.6.88', 'lessThan': '6.6.145', 'versionType': 'semver'}, {'status': 'affected', 'version': '6.12.24', 'lessThan': '6.12.97', 'versionType': 'semver'}, {'status': 'affected', 'version': '5.4.297', 'lessThan': '5.5', 'versionType': 'semver'}, {'status': 'affected', 'version': '6.13.12', 'lessThan': '6.14', 'versionType': 'semver'}, {'status': 'affected', 'version': '6.14.3', 'lessThan': '6.15', 'versionType': 'semver'}], 'programFiles': ['net/sched/sch_codel.c'], 'defaultStatus': 'unaffected'}, {'repo': 'https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git', 'vendor': 'Linux', 'product': 'Linux', 'versions': [{'status': 'affected', 'version': '6.15'}, {'status': 'unaffected', 'version': '0', 'lessThan': '6.15', 'versionType': 'semver'}, {'status': 'unaffected', 'version': '5.10.261', 'versionType': 'semver', 'lessThanOrEqual': '5.10.*'}, {'status': 'unaffected', 'version': '5.15.212', 'versionType': 'semver', 'lessThanOrEqual': '5.15.*'}, {'status': 'unaffected', 'version': '6.1.178', 'versionType': 'semver', 'lessThanOrEqual': '6.1.*'}, {'status': 'unaffected', 'version': '6.6.145', 'versionType': 'semver', 'lessThanOrEqual': '6.6.*'}, {'status': 'unaffected', 'version': '6.12.97', 'versionType': 'semver', 'lessThanOrEqual': '6.12.*'}, {'status': 'unaffected', 'version': '6.18.40', 'versionType': 'semver', 'lessThanOrEqual': '6.18.*'}, {'status': 'unaffected', 'version': '7.1.5', 'versionType': 'semver', 'lessThanOrEqual': '7.1.*'}, {'status': 'unaffected', 'version': '7.2-rc1', 'versionType': 'original_commit_for_fix', 'lessThanOrEqual': '*'}], 'programFiles': ['net/sched/sch_codel.c'], 'defaultStatus': 'affected'}] [{'repo': 'https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git', 'vendor': 'Linux', 'product': 'Linux', 'versions': [{'status': 'affected', 'version': 'cc71a757da78dd4aa1b4a9b19cb011833730ccf2', 'lessThan': 'bb9cfd874ee884117b33e92a002b9a45b48202f4', 'versionType': 'git'}, {'status': 'affected', 'version': 'eda741fe155ddf5ecd2dd3bfbd4fc3c0c7dbb450', 'lessThan': '7a05af7f58566682b73578b72ca8e53a268c43bd', 'versionType': 'git'}, {'status': 'affected', 'version': '829c49b6b2ff45b043739168fd1245e4e1a91a30', 'lessThan': 'eba49fd85995a3851c597fa2d214f8d21736e1d8', 'versionType': 'git'}, {'status': 'affected', 'version': '2f9761a94bae33d26e6a81b31b36e7d776d93dc1', 'lessThan': 'e8c6dbadf139cb14ea6ed14add6ed6e88504dedd', 'versionType': 'git'}, {'status': 'affected', 'version': '4d55144b12e742404bb3f8fee6038bafbf45619d', 'lessThan': 'e4615aa6bb7802944ae790cb4b3ef8c1b7491af3', 'versionType': 'git'}, {'status': 'affected', 'version': '342debc12183b51773b3345ba267e9263bdfaaef', 'lessThan': '755108bb7a5083e911294c416cfea605dc75632f', 'versionType': 'git'}, {'status': 'affected', 'version': '342debc12183b51773b3345ba267e9263bdfaaef', 'lessThan': '91e0a793a72374c20ab31a40ccec21373e82e973', 'versionType': 'git'}, {'status': 'affected', 'version': '342debc12183b51773b3345ba267e9263bdfaaef', 'lessThan': '52f1da34c9f4d5bdc1e8b44242da5c7ba8db85f3', 'versionType': 'git'}, {'status': 'affected', 'version': '7a742a9506849d1c1aa71e36c89855ceddc7d58e', 'versionType': 'git'}, {'status': 'affected', 'version': 'e73c838c80dccb9e4f19becc11d9f3cb4a27d483', 'versionType': 'git'}, {'status': 'affected', 'version': 'a57fe60ef4cf96bfbb6b58397ec28bdb5a5c6b31', 'versionType': 'git'}, {'status': 'affected', 'version': '5.10.241', 'lessThan': '5.10.261', 'versionType': 'semver'}, {'status': 'affected', 'version': '5.15.190', 'lessThan': '5.15.212', 'versionType': 'semver'}, {'status': 'affected', 'version': '6.1.135', 'lessThan': '6.1.178', 'versionType': 'semver'}, {'status': 'affected', 'version': '6.6.88', 'lessThan': '6.6.145', 'versionType': 'semver'}, {'status': 'affected', 'version': '6.12.24', 'lessThan': '6.12.97', 'versionType': 'semver'}, {'status': 'affected', 'version': '5.4.297', 'lessThan': '5.5', 'versionType': 'semver'}, {'status': 'affected', 'version': '6.13.12', 'lessThan': '6.14', 'versionType': 'semver'}, {'status': 'affected', 'version': '6.14.3', 'lessThan': '6.15', 'versionType': 'semver'}], 'programFiles': ['net/sched/sch_codel.c'], 'defaultStatus': 'unaffected'}, {'repo': 'https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git', 'vendor': 'Linux', 'product': 'Linux', 'versions': [{'status': 'affected', 'version': '6.15'}, {'status': 'unaffected', 'version': '0', 'lessThan': '6.15', 'versionType': 'semver'}, {'status': 'unaffected', 'version': '5.10.261', 'versionType': 'semver', 'lessThanOrEqual': '5.10.*'}, {'status': 'unaffected', 'version': '5.15.212', 'versionType': 'semver', 'lessThanOrEqual': '5.15.*'}, {'status': 'unaffected', 'version': '6.1.178', 'versionType': 'semver', 'lessThanOrEqual': '6.1.*'}, {'status': 'unaffected', 'version': '6.6.145', 'versionType': 'semver', 'lessThanOrEqual': '6.6.*'}, {'status': 'unaffected', 'version': '6.12.97', 'versionType': 'semver', 'lessThanOrEqual': '6.12.*'}, {'status': 'unaffected', 'version': '6.18.40', 'versionType': 'semver', 'lessThanOrEqual': '6.18.*'}, {'status': 'unaffected', 'version': '7.1.5', 'versionType': 'semver', 'lessThanOrEqual': '7.1.*'}, {'status': 'unaffected', 'version': '7.2', 'versionType': 'original_commit_for_fix', 'lessThanOrEqual': '*'}], 'programFiles': ['net/sched/sch_codel.c'], 'defaultStatus': 'affected'}]
  • New CVE Received by 416baaa9-dc9f-4396-8d5f-8c081fb06d67

    Aug. 15, 2026

    Action Type Old Value New Value
    Added Affected [{'repo': 'https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git', 'vendor': 'Linux', 'product': 'Linux', 'versions': [{'status': 'affected', 'version': 'cc71a757da78dd4aa1b4a9b19cb011833730ccf2', 'lessThan': 'bb9cfd874ee884117b33e92a002b9a45b48202f4', 'versionType': 'git'}, {'status': 'affected', 'version': 'eda741fe155ddf5ecd2dd3bfbd4fc3c0c7dbb450', 'lessThan': '7a05af7f58566682b73578b72ca8e53a268c43bd', 'versionType': 'git'}, {'status': 'affected', 'version': '829c49b6b2ff45b043739168fd1245e4e1a91a30', 'lessThan': 'eba49fd85995a3851c597fa2d214f8d21736e1d8', 'versionType': 'git'}, {'status': 'affected', 'version': '2f9761a94bae33d26e6a81b31b36e7d776d93dc1', 'lessThan': 'e8c6dbadf139cb14ea6ed14add6ed6e88504dedd', 'versionType': 'git'}, {'status': 'affected', 'version': '4d55144b12e742404bb3f8fee6038bafbf45619d', 'lessThan': 'e4615aa6bb7802944ae790cb4b3ef8c1b7491af3', 'versionType': 'git'}, {'status': 'affected', 'version': '342debc12183b51773b3345ba267e9263bdfaaef', 'lessThan': '755108bb7a5083e911294c416cfea605dc75632f', 'versionType': 'git'}, {'status': 'affected', 'version': '342debc12183b51773b3345ba267e9263bdfaaef', 'lessThan': '91e0a793a72374c20ab31a40ccec21373e82e973', 'versionType': 'git'}, {'status': 'affected', 'version': '342debc12183b51773b3345ba267e9263bdfaaef', 'lessThan': '52f1da34c9f4d5bdc1e8b44242da5c7ba8db85f3', 'versionType': 'git'}, {'status': 'affected', 'version': '7a742a9506849d1c1aa71e36c89855ceddc7d58e', 'versionType': 'git'}, {'status': 'affected', 'version': 'e73c838c80dccb9e4f19becc11d9f3cb4a27d483', 'versionType': 'git'}, {'status': 'affected', 'version': 'a57fe60ef4cf96bfbb6b58397ec28bdb5a5c6b31', 'versionType': 'git'}, {'status': 'affected', 'version': '5.10.241', 'lessThan': '5.10.261', 'versionType': 'semver'}, {'status': 'affected', 'version': '5.15.190', 'lessThan': '5.15.212', 'versionType': 'semver'}, {'status': 'affected', 'version': '6.1.135', 'lessThan': '6.1.178', 'versionType': 'semver'}, {'status': 'affected', 'version': '6.6.88', 'lessThan': '6.6.145', 'versionType': 'semver'}, {'status': 'affected', 'version': '6.12.24', 'lessThan': '6.12.97', 'versionType': 'semver'}, {'status': 'affected', 'version': '5.4.297', 'lessThan': '5.5', 'versionType': 'semver'}, {'status': 'affected', 'version': '6.13.12', 'lessThan': '6.14', 'versionType': 'semver'}, {'status': 'affected', 'version': '6.14.3', 'lessThan': '6.15', 'versionType': 'semver'}], 'programFiles': ['net/sched/sch_codel.c'], 'defaultStatus': 'unaffected'}, {'repo': 'https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git', 'vendor': 'Linux', 'product': 'Linux', 'versions': [{'status': 'affected', 'version': '6.15'}, {'status': 'unaffected', 'version': '0', 'lessThan': '6.15', 'versionType': 'semver'}, {'status': 'unaffected', 'version': '5.10.261', 'versionType': 'semver', 'lessThanOrEqual': '5.10.*'}, {'status': 'unaffected', 'version': '5.15.212', 'versionType': 'semver', 'lessThanOrEqual': '5.15.*'}, {'status': 'unaffected', 'version': '6.1.178', 'versionType': 'semver', 'lessThanOrEqual': '6.1.*'}, {'status': 'unaffected', 'version': '6.6.145', 'versionType': 'semver', 'lessThanOrEqual': '6.6.*'}, {'status': 'unaffected', 'version': '6.12.97', 'versionType': 'semver', 'lessThanOrEqual': '6.12.*'}, {'status': 'unaffected', 'version': '6.18.40', 'versionType': 'semver', 'lessThanOrEqual': '6.18.*'}, {'status': 'unaffected', 'version': '7.1.5', 'versionType': 'semver', 'lessThanOrEqual': '7.1.*'}, {'status': 'unaffected', 'version': '7.2-rc1', 'versionType': 'original_commit_for_fix', 'lessThanOrEqual': '*'}], 'programFiles': ['net/sched/sch_codel.c'], 'defaultStatus': 'affected'}]
    Added Description In the Linux kernel, the following vulnerability has been resolved: net/sched: sch_codel: Do not call qdisc_tree_reduce_backlog during peek before restoring qlen Whenever codel drops packets during peek, it calls qdisc_tree_reduce_backlog. An issue arises because it calls qdisc_tree_reduce_backlog before it reincrements the qlen. If qlen drops to zero, but peek returns an skb, the parent's qlen_notify callback will be executed even though codel still has 1 packet on the queue and, thus, will mistakenly deactivate the parent's class causing issues like a wild memory access when qfq has codel as a child: [ 36.339843][ T370] Oops: general protection fault, probably for non-canonical address 0xfbd59c0000000024: 0000 [#1] SMP KASAN NOPTI [ 36.340408][ T370] KASAN: maybe wild-memory-access in range [0xdead000000000120-0xdead000000000127] [ 36.340737][ T370] CPU: 2 UID: 0 PID: 370 Comm: tc Not tainted 7.1.0-rc5-00287-g66e13b626592 #87 PREEMPT(full) [ 36.341113][ T370] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 [ 36.341357][ T370] RIP: 0010:qfq_deactivate_agg (include/linux/list.h:1029 (discriminator 2) include/linux/list.h:1043 (discriminator 2) net/sched/sch_qfq.c:1369 (discriminator 2) net/sched/sch_qfq.c:1395 (discriminator 2)) sch_qfq [ 36.342221][ T370] RSP: 0018:ffff8881100ef370 EFLAGS: 00010216 [ 36.342422][ T370] RAX: 0000000000000000 RBX: ffff8881058a9568 RCX: dffffc0000000000 [ 36.342664][ T370] RDX: 1ffff11021064dc3 RSI: ffff888108326e00 RDI: dffffc0000000000 [ 36.342905][ T370] RBP: ffff8881058a8280 R08: dead000000000122 R09: 1bd5a00000000024 [ 36.343140][ T370] R10: fffffbfff2940329 R11: fffffbfff2940329 R12: 0000000000000000 [ 36.343383][ T370] R13: dead000000000100 R14: ffff8881058a9580 R15: ffff8881058a9578 [ 36.343631][ T370] FS: 00007fc04b0ca780(0000) GS:ffff888184fef000(0000) knlGS:0000000000000000 [ 36.343911][ T370] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 36.344116][ T370] CR2: 0000557c02c02000 CR3: 000000010e0ba000 CR4: 0000000000750ef0 [ 36.344359][ T370] PKRU: 55555554 [ 36.344481][ T370] Call Trace: ... [ 36.345054][ T370] qfq_reset_qdisc (net/sched/sch_qfq.c:357 net/sched/sch_qfq.c:1487) sch_qfq [ 36.345222][ T370] qdisc_reset (net/sched/sch_generic.c:1057) [ 36.345503][ T370] __qdisc_destroy (net/sched/sch_generic.c:1096) [ 36.345677][ T370] qdisc_graft (net/sched/sch_api.c:1062 net/sched/sch_api.c:1053 net/sched/sch_api.c:1159) [ 36.346335][ T370] tc_get_qdisc (net/sched/sch_api.c:1528 net/sched/sch_api.c:1556) Fix this by only calling qdisc_tree_reduce_backlog in peek after the qlen is restored.
    Added Reference https://git.kernel.org/stable/c/52f1da34c9f4d5bdc1e8b44242da5c7ba8db85f3
    Added Reference https://git.kernel.org/stable/c/755108bb7a5083e911294c416cfea605dc75632f
    Added Reference https://git.kernel.org/stable/c/7a05af7f58566682b73578b72ca8e53a268c43bd
    Added Reference https://git.kernel.org/stable/c/91e0a793a72374c20ab31a40ccec21373e82e973
    Added Reference https://git.kernel.org/stable/c/bb9cfd874ee884117b33e92a002b9a45b48202f4
    Added Reference https://git.kernel.org/stable/c/e4615aa6bb7802944ae790cb4b3ef8c1b7491af3
    Added Reference https://git.kernel.org/stable/c/e8c6dbadf139cb14ea6ed14add6ed6e88504dedd
    Added Reference https://git.kernel.org/stable/c/eba49fd85995a3851c597fa2d214f8d21736e1d8
EPSS is a daily estimate of the probability of exploitation activity being observed over the next 30 days. Following chart shows the EPSS score history of the vulnerability.