Page MenuHomeFreeBSD

ipsec: Validate the protocol identifier in ipsec4_ctlinput()
ClosedPublic

Authored by markj on Sep 9 2021, 5:11 PM.
Tags
None
Referenced Files
F160387163: D31890.diff
Wed, Jun 24, 12:25 AM
Unknown Object (File)
Sun, Jun 21, 11:09 PM
Unknown Object (File)
Sat, Jun 20, 10:39 PM
Unknown Object (File)
Sat, May 30, 9:25 AM
Unknown Object (File)
Sat, May 30, 9:20 AM
Unknown Object (File)
Sat, May 30, 1:38 AM
Unknown Object (File)
Wed, May 27, 6:27 AM
Unknown Object (File)
Wed, May 27, 6:17 AM
Subscribers

Details

Summary

key_allocsa() expects to handle only IPSec protocols and has an
assertion to this effect. However, ipsec4_ctlinput() has to handle
messages from ICMP unreachable packets and was not validating the
protocol number. In practice I believe such a packet would simply fail
to match any SADB entries and would thus be ignored.

Reported by: syzbot+6a9ef6fcfadb9f3877fe@syzkaller.appspotmail.com

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 41446
Build 38335: arc lint + arc unit