From 33af50c8e8cf5f6fa42b8f97d15e9eecc9250cb7 Mon Sep 17 00:00:00 2001 From: delphij Date: Wed, 5 Aug 2015 22:05:24 +0000 Subject: [PATCH] Fix routed remote denial of service vulnerability. [SA-15:19] Approved by: so git-svn-id: svn://svn.freebsd.org/base/releng/9.3@286352 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f --- UPDATING | 4 ++++ sbin/routed/input.c | 6 ++++++ sys/conf/newvers.sh | 2 +- 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/UPDATING b/UPDATING index c5a388117..7d95b1d5c 100644 --- a/UPDATING +++ b/UPDATING @@ -11,6 +11,10 @@ handbook: Items affecting the ports and packages system can be found in /usr/ports/UPDATING. Please read that file before running portupgrade. +20150805: p22 FreeBSD-SA-15:19.routed + + Fix routed remote denial of service vulnerability. + 20150728: p21 FreeBSD-SA-15:15.tcp FreeBSD-SA-15:16.openssh FreeBSD-SA-15:17.bind diff --git a/sbin/routed/input.c b/sbin/routed/input.c index aaef37c68..6fc5529ae 100644 --- a/sbin/routed/input.c +++ b/sbin/routed/input.c @@ -160,6 +160,12 @@ input(struct sockaddr_in *from, /* received from this IP address */ trace_rip("Recv", "from", from, sifp, rip, cc); + if (sifp == 0) { + trace_pkt(" discard a request from an indirect router" + " (possibly an attack)"); + return; + } + if (rip->rip_vers == 0) { msglim(&bad_router, FROM_NADDR, "RIP version 0, cmd %d, packet received from %s", diff --git a/sys/conf/newvers.sh b/sys/conf/newvers.sh index 658f8a57c..97f3fe8d0 100644 --- a/sys/conf/newvers.sh +++ b/sys/conf/newvers.sh @@ -32,7 +32,7 @@ TYPE="FreeBSD" REVISION="9.3" -BRANCH="RELEASE-p21" +BRANCH="RELEASE-p22" if [ "X${BRANCH_OVERRIDE}" != "X" ]; then BRANCH=${BRANCH_OVERRIDE} fi -- 2.45.0