I can understand that NetBSD's sh derives (unless set -o posix is given) from SUS in cases where SUS documents brain-dead historical behaviour.
However, passing fd's opened by exec to commands called later on doesn't appear obviously brain-dead to me. Wouldn't it be more appropriate to have a close-everything-on-exec flag that /etc/rc can use instead of violating SUS on purpose?