On Tue, Nov 14, 2017 at 03:46:30PM -0500, Stephen Smalley wrote: > Hi, > > 4.14 is failing the selinux-testsuite labeled IPSEC tests despite > having just been fixed in commit cf37966751747727 ("xfrm: do > unconditional template resolution before pcpu cache check"). The > breaking commit is the very next one, commit c9f3f813d462c72d ("xfrm: > Fix stack-out-of-bounds read in xfrm_state_find."). Unlike the earlier > breakage, which caused use of the wrong SA, this one leads to a failure > on connect(). Running ip xfrm monitor during one of the failing tests > shows the following: > acquire proto ah > sel src 127.0.0.1/32 dst 127.0.0.1/32 proto tcp sport 0 dport 65535 > dev lo > policy src 127.0.0.1/32 dst 127.0.0.1/32 proto tcp > security context > unconfined_u:unconfined_r:test_inet_client_t:s0-s0:c0.c1023 > dir out priority 0 ptype main > tmpl src 0.0.0.0 dst 0.0.0.0 > proto ah reqid 0 mode transport
Yes, I see. This is because there are wildcard src and dst addresses on the template. I'll revert this one for now. I slowly start to think that the concept of having a socket policy on a IPv6 socket that maps to IPv4 is fundamentally broken. The bug I tried to fix here is not the first one that were reported from syzkaller for this szenario and I fear it is not the last one. Thanks for reporting this!