Wireshark 1.4.0 Malformed SNMP V1 Packet Denial of Service


------------------------------------------------------------------

I. Summary



A flaw has been identified in Wireshark 1.4.0 concerning the ASN.1/BER 
dissector that will cause a denial of service (stack overflow and null pointer 
dereference in exception handling code).



------------------------------------------------------------------

II. Description



Wireshark makes use of protocol dissectors to parse packet data and organize 
its contents into a meaningful representation. Upon encountering an SNMP v1 
packet, the ASN.1/BER dissector, as implemented in 
$SRC_ROOT/epan/dissectors/packet-ber.c, will be invoked to process the BER 
encoded content, i.e. variable bindings in the SNMP PDU. If this field is 
filled with an extremely long string,  e.g. a sequence of 14000 'A's, a 
recursive call in function dissect_unknown_ber() would consume too much stack 
space, causing stack overflow in most configurations and later a null pointer 
deference in the exception handling code.



------------------------------------------------------------------

III. Impact



Denial of service (null pointer deference and application crash)



------------------------------------------------------------------

IV. Affected



Wireshark 1.4.0, tested with Windows XP SP2. Previous versions may also be 
affected due to code reuse.



------------------------------------------------------------------

V. Solution



Since the ASN.1/BER dissector is used by several protocol dissectors, it may be 
inadequate to disable SNMP protocol dissection only. There is no known 
workaround at this time.



------------------------------------------------------------------

VI. Credit



The penetration test team Of NCNIPC (China) is credited for this vulnerability.

Reply via email to