CVE-2015-5621: Integer Overflow
It was discovered that the snmppduparse() function could leave incompletely parsed varBind variables in the list of variables in case the parsing of the SNMP PDU failed. If later processing tries to operate on the stale and incompletely processed varBind (e.g. when printing the variables), this can lead to e.g. crashes or, possibly, execution of arbitrary code (although I've only seen NULL pointer dereferences during my testing, I currently can't rule out code execution completely).
The snmppduparse() function stores varBind variables in a list of netsnmpvariablelist structures. Each time the function parses a new varBind, a new netsnmpvariablelist item is allocated on the heap and linked to the list of variables. The problem is that this item is not removed from the list, even if snmppduparse() fails to complete the parsing.
The "type" member of the stale netsnmpvariablelist is not properly initialized in case snmppduparse() returns early from the parsing. However, the "type" member is used to determine later code paths, which is why we see crashes in a variety of functions, although the root cause for all of these is the same.
References:
Upstream patch: https://sourceforge.net/p/net-snmp/code/ci/f23bcd3ac6ddee5d0a48f9703007ccc738914791/
Upstream bug: https://sourceforge.net/p/net-snmp/bugs/2615/ (possibly restricted)
Reporter's mail to oss-security: http://www.openwall.com/lists/oss-security/2015/04/13/1
Other sources
The snmppduparse function in snmpapi.c in net-snmp 5.7.2 and earlier does not remove the varBind variable in a netsnmpvariablelist item when parsing of the SNMP PDU fails, which allows remote attackers to cause a denial of service (crash) and possibly execute arbitrary code via a crafted packet.
Affected Software
Event History
Frequently Asked Questions
What is the severity of CVE-2015-5621?
CVE-2015-5621 has a medium severity rating due to potential issues in processing SNMP PDUs.
How do I fix CVE-2015-5621?
To fix CVE-2015-5621, update your net-snmp package to version 5.7.3+dfsg-1.1 or later.
What systems are affected by CVE-2015-5621?
CVE-2015-5621 affects net-snmp versions up to 5.7.3+dfsg-1 and specific Debian package versions.
What are the potential impacts of CVE-2015-5621?
The impact of CVE-2015-5621 may include incomplete variable processing leading to application instability.
Is there a workaround for CVE-2015-5621 until I can apply a fix?
A temporary workaround for CVE-2015-5621 involves avoiding the use of affected net-snmp versions until they can be updated.