diff options
author | Cy Schubert <cy@FreeBSD.org> | 2021-05-25 18:54:49 +0000 |
---|---|---|
committer | Cy Schubert <cy@FreeBSD.org> | 2021-05-25 18:58:14 +0000 |
commit | 323a4e2c4e285e6f8eee8db3fe2cb7490a734da0 (patch) | |
tree | cafff0964a39ea3878a36a6cab7336793ac2b062 | |
parent | d72cd275187c6399caf0ca4125292dc7e55fa478 (diff) |
ipfilter: Fix ip_nat memory leak and use-after-free
Unfortunately the wrong elemet is freed, also resulting in use-after-free.
PR: 255859
Submitted by: lylgood@foxmail.com
Reported by: lylgood@foxmail.com
MFC after: 3 days
-rw-r--r-- | sys/contrib/ipfilter/netinet/ip_nat.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/contrib/ipfilter/netinet/ip_nat.c b/sys/contrib/ipfilter/netinet/ip_nat.c index 41e51880b3dd..0475a4386079 100644 --- a/sys/contrib/ipfilter/netinet/ip_nat.c +++ b/sys/contrib/ipfilter/netinet/ip_nat.c @@ -6245,7 +6245,7 @@ ipf_nat_rule_deref(softc, inp) if (n->in_tqehead[0] != NULL) { if (ipf_deletetimeoutqueue(n->in_tqehead[0]) == 0) { - ipf_freetimeoutqueue(softc, n->in_tqehead[1]); + ipf_freetimeoutqueue(softc, n->in_tqehead[0]); } } |