From 2f7c24295357240da704cb28c4240ecef36bcd7c Mon Sep 17 00:00:00 2001 From: Andreas Rammhold Date: Tue, 9 Oct 2018 22:44:29 +0200 Subject: net_snmp: fix CVE-2018-18065 --- .../monitoring/net-snmp/CVE-2018-18065.patch | 30 ++++++++++++++++++++++ pkgs/servers/monitoring/net-snmp/default.nix | 1 + 2 files changed, 31 insertions(+) create mode 100644 pkgs/servers/monitoring/net-snmp/CVE-2018-18065.patch (limited to 'pkgs') diff --git a/pkgs/servers/monitoring/net-snmp/CVE-2018-18065.patch b/pkgs/servers/monitoring/net-snmp/CVE-2018-18065.patch new file mode 100644 index 000000000000..c33f7bb03fa8 --- /dev/null +++ b/pkgs/servers/monitoring/net-snmp/CVE-2018-18065.patch @@ -0,0 +1,30 @@ +commit 7ffb8e25a0db851953155de91f0170e9bf8c457d +Author: Robert Story +Date: Thu Oct 6 10:43:10 2016 -0400 + + CHANGES: BUG: 2743: snmpd crashes when receiving a GetNext PDU with multiple Varbinds + + skip out-of-range varbinds when calling next handler + +diff --git a/agent/helpers/table.c b/agent/helpers/table.c +index 32a08033a..2666638b5 100644 +--- a/agent/helpers/table.c ++++ b/agent/helpers/table.c +@@ -340,6 +340,8 @@ table_helper_handler(netsnmp_mib_handler *handler, + else if (reqinfo->mode == MODE_GET) + table_helper_cleanup(reqinfo, request, + SNMP_NOSUCHOBJECT); ++ else ++ request->processed = 1; /* skip if next handler called */ + continue; + } + +@@ -409,6 +411,8 @@ table_helper_handler(netsnmp_mib_handler *handler, + else if (reqinfo->mode == MODE_GET) + table_helper_cleanup(reqinfo, request, + SNMP_NOSUCHOBJECT); ++ else ++ request->processed = 1; /* skip if next handler called */ + continue; + } + /* diff --git a/pkgs/servers/monitoring/net-snmp/default.nix b/pkgs/servers/monitoring/net-snmp/default.nix index a6b738270a9a..0e7a53306eb4 100644 --- a/pkgs/servers/monitoring/net-snmp/default.nix +++ b/pkgs/servers/monitoring/net-snmp/default.nix @@ -19,6 +19,7 @@ stdenv.mkDerivation rec { (fetchAlpinePatch "fix-includes.patch" "0zpkbb6k366qpq4dax5wknwprhwnhighcp402mlm7950d39zfa3m") (fetchAlpinePatch "netsnmp-swinst-crash.patch" "0gh164wy6zfiwiszh58fsvr25k0ns14r3099664qykgpmickkqid") (fetchAlpinePatch "remove-U64-typedef.patch" "1msxyhcqkvhqa03dwb50288g7f6nbrcd9cs036m9xc8jdgjb8k8j") + ./CVE-2018-18065.patch ]; preConfigure = -- cgit 1.4.1