diff options
author | FUJISHIMA Satsuki <sf@FreeBSD.org> | 2001-04-05 19:59:25 +0000 |
---|---|---|
committer | FUJISHIMA Satsuki <sf@FreeBSD.org> | 2001-04-05 19:59:25 +0000 |
commit | 47c044032938bb347debae6879ef13652f4c9439 (patch) | |
tree | f4058447ef78c06a1e61eaba5060066fce4b1f86 /net/ntp | |
parent | Add acorn 0.3, a meta-port for the Worldforge Client uclient. (diff) |
o Fix a potential ROOT-exploit in NTPD.
(grabbed from src/contrib/ntp/ntpd)
o new maintainer.
PR: 26369
Submitted by: Cy Schubert <Cy.Schubert@uumail.gov.bc.ca>
Notes
Notes:
svn path=/head/; revision=40915
Diffstat (limited to 'net/ntp')
-rw-r--r-- | net/ntp/Makefile | 3 | ||||
-rw-r--r-- | net/ntp/files/patch-ntp_control.c | 24 |
2 files changed, 26 insertions, 1 deletions
diff --git a/net/ntp/Makefile b/net/ntp/Makefile index eafe2cc378ef..171a7bb004ee 100644 --- a/net/ntp/Makefile +++ b/net/ntp/Makefile @@ -7,10 +7,11 @@ PORTNAME= ntp PORTVERSION= 4.0.99k +PORTREVISION= 1 CATEGORIES= net MASTER_SITES= ftp://ftp.udel.edu/pub/ntp/ntp4/ -MAINTAINER= ports@FreeBSD.org +MAINTAINER= Cy.Schubert@uumail.gov.bc.ca # ntp's configure script created by autoconf 2.14.1 doesn't work # if GNU_CONFIGURE is defined diff --git a/net/ntp/files/patch-ntp_control.c b/net/ntp/files/patch-ntp_control.c new file mode 100644 index 000000000000..a0faa4906d04 --- /dev/null +++ b/net/ntp/files/patch-ntp_control.c @@ -0,0 +1,24 @@ +--- ntpd/ntp_control.c.orig Sat Jul 15 23:46:05 2000 ++++ ntpd/ntp_control.c Fri Apr 6 01:05:57 2001 +@@ -1821,9 +1821,19 @@ + while (cp < reqend && + isspace((int)*cp)) + cp++; +- while (cp < reqend && *cp != +- ',') ++ while (cp < reqend && *cp != ',') { + *tp++ = *cp++; ++ if (tp > buf + sizeof(buf)) { ++ msyslog(LOG_WARNING, "Attempted \"ntpdx\" exploit from IP %d.%d.%d.%d:%d (possibly spoofed)\n", ++ (ntohl(rmt_addr->sin_addr.s_addr) >> 24) & 0xff, ++ (ntohl(rmt_addr->sin_addr.s_addr) >> 16) & 0xff, ++ (ntohl(rmt_addr->sin_addr.s_addr) >> 8) & 0xff, ++ (ntohl(rmt_addr->sin_addr.s_addr) >> 0) & 0xff, ++ ntohs(rmt_addr->sin_port) ++); ++ return (0); ++ } ++ } + if (cp < reqend) + cp++; + *tp = '\0'; |