[Git][NTPsec/ntpsec][master] Fix authentication
Daniel Fox Franke
gitlab at mg.gitlab.com
Wed Nov 23 21:31:01 UTC 2016
Daniel Fox Franke pushed to branch master at NTPsec / ntpsec
Commits:
4911e2df by Daniel Fox Franke at 2016-11-23T16:30:34-05:00
Fix authentication
This corrects two evil bugs, one of which was introduced during the
protocol refactor. That one would have been a vulnerability but
fortunately 1. the other was masking it, and 2. this bug never made
it in a release. Phew.
First bug: missing exit after failed authentication, which would have
allowed misauthenticated packets to be accepted. Yikes!
Second bug: Even correctly authenticated packets were getting rejected
by different security check. handle_procpkt() checks that there's a
request in flight before it's willing to process any response. But due
to a bug that predates the fork from NTP Classic, authenticated
requests never got their outcount incremented.
This is why we test things...
- - - - -
1 changed file:
- ntpd/ntp_proto.c
Changes:
=====================================
ntpd/ntp_proto.c
=====================================
--- a/ntpd/ntp_proto.c
+++ b/ntpd/ntp_proto.c
@@ -787,6 +787,7 @@ receive(
peer->badauth++;
peer->flash |= BOGON5;
}
+ goto done;
} else {
authenticated = true;
}
@@ -2228,6 +2229,7 @@ peer_xmit(
sendpkt(&peer->srcadr, peer->dstadr, sys_ttl[peer->ttl], &xpkt,
sendlen);
peer->sent++;
+ peer->outcount++;
peer->throttle += (1 << peer->minpoll) - 2;
#ifdef DEBUG
if (debug)
View it on GitLab: https://gitlab.com/NTPsec/ntpsec/commit/4911e2df0c54414a539685545780168757879434
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ntpsec.org/pipermail/vc/attachments/20161123/afd4318a/attachment.html>
More information about the vc
mailing list