]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
pf: Improve ioctl() input validation
authorkp <kp@FreeBSD.org>
Sun, 19 Apr 2020 16:10:20 +0000 (16:10 +0000)
committerkp <kp@FreeBSD.org>
Sun, 19 Apr 2020 16:10:20 +0000 (16:10 +0000)
commit96abf553f822fcd7b15a8c61c7e21dbafc685aa6
tree4e4507eae20c2136d8cb7de8feebf9b346f9e7f8
parent2307b590f84b660bfe144da4adfd94b5804fb1d6
pf: Improve ioctl() input validation

Both DIOCCHANGEADDR and DIOCADDADDR take a struct pf_pooladdr from
userspace. They failed to validate the dyn pointer contained in its
struct pf_addr_wrap member structure.

This triggered assertion failures under fuzz testing in
pfi_dynaddr_setup(). Happily the dyn variable was overruled there, but
we should verify that it's set to NULL anyway.

Reported-by: syzbot+93e93150bc29f9b4b85f@syzkaller.appspotmail.com
Reviewed by: emaste
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D24431
sys/netpfil/pf/pf_ioctl.c