> III. Detection > > This problem has been detected and tested on latest versions: > snmptrapd from cmu-snmp-linux-3.7 package > snmptrapd from cmu-snmp-linux-3.6 package
This seems to be the following code: int snmp_input(op, session, reqid, pdu, magic) int op; struct snmp_session *session; int reqid; struct snmp_pdu *pdu; void *magic; { struct variable_list *vars; char buf[64], sbuf [10240]; if (op == RECEIVED_MESSAGE && pdu->command == TRP_REQ_MSG){ if (Print){ [...] } else { [...] sprintf (sbuf, "%s: %s Trap (%d) Uptime: %s", inet_ntoa(pdu->agent_addr.sin_addr), trap_description(pdu->trap_type), pdu->specific_type, uptime_string(pdu->time, buf)); [...] for (vars = pdu->variables; vars; vars = vars->next_variable) { /* XXX: check buffer space avail */ strcat (sbuf, " "); sprint_variable (sbuf + strlen (sbuf), vars->name, vars->name_length, vars); } syslog(LOG_WARNING, sbuf); } [...] } Apparently, this code has not made its way into the UCD-SNMP and NET-SNMP source (or the official CMU-SNMP sources). This means that the number of affected systems should be minimal.