Description (CNA)
In the Linux kernel, the following vulnerability has been resolved: l2tp: fix tunnel and session refcount leak on seq_file release In pppol2tp_proc_open() and l2tp_dfs_seq_open(), iteration state (pd->tunnel and pd->session) is kept in seq_file private data to allow iteration across multiple read() system calls. However, if userspace closes /proc/net/pppol2tp or /sys/kernel/debug/l2tp/tunnels before reading to end-of-file (EOF), any tunnel or session reference stored in pd->tunnel / pd->session is left un-dropped when seq_file private data is freed. Fix this by dropping any remaining pd->tunnel and pd->session references in pppol2tp_proc_release() and l2tp_dfs_seq_release() when closing the file.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected 0e0c3fee3a59a387aeecc4fca6f3a2e9615a5443 before bd897e414451fb34dfdf08b31899180e5ab7149b; affected 0e0c3fee3a59a387aeecc4fca6f3a2e9615a5443 before bdf83613781956cc39798ed08321f74ab0467f4d; affected 0e0c3fee3a59a387aeecc4fca6f3a2e9615a5443 before 8c4fde01bcf91f22b9c7ded8c3e14addd7ddd500; affected 0e0c3fee3a59a387aeecc4fca6f3a2e9615a5443 before ebe2774e956482dd3c70b8991f6f7654356339e6; affected 0e0c3fee3a59a387aeecc4fca6f3a2e9615a5443 before 9006c116dd111d457bf5d074990210f70a4ad2c8; affected f6104e9ae04462523c372928b1173766a771ef95; affected 7f8e401f9e612df2a95c1ef76217c00181389bb5; affected c712ed63e9b33d9a282fbd92ce25c64918c3129f; affected 9a8863e8a8def9d88583cd9c60db38a008e6b8cf; affected 3.16.60 before 3.17; affected 4.16.6 before 4.17 |
| Linux / Linux | affected 4.17; unaffected 0 before 4.17; unaffected 6.6.160 through 6.6.*; unaffected 6.12.111 through 6.12.*; unaffected 6.18.53 through 6.18.*; unaffected 7.1.10 through 7.1.*; unaffected 7.2 through * |
CWE
No CWE identifiers supplied.
References
- https://git.kernel.org/stable/c/bd897e414451fb34dfdf08b31899180e5ab7149b
- https://git.kernel.org/stable/c/bdf83613781956cc39798ed08321f74ab0467f4d
- https://git.kernel.org/stable/c/8c4fde01bcf91f22b9c7ded8c3e14addd7ddd500
- https://git.kernel.org/stable/c/ebe2774e956482dd3c70b8991f6f7654356339e6
- https://git.kernel.org/stable/c/9006c116dd111d457bf5d074990210f70a4ad2c8