Your message dated Sun, 25 Oct 2009 19:57:40 +0000
with message-id <[email protected]>
and subject line Bug#533347: fixed in wireshark 1.0.2-3+lenny6
has caused the Debian Bug report #533347,
regarding wireshark: new upstream version (1.0.8) available with security fixes
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)


-- 
533347: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=533347
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Source: wireshark
Version: 1.0.2-3+lenny5
Severity: critical
Tags: patch security

Hi,

There is a new upstream version available:
http://www.wireshark.org/docs/relnotes/wireshark-1.0.8.html

It contains several security related fixes, collected in the attached patch.

Cheers,
Balint
Index: debian/patches/28_uat_proto_name_use_strndup.dpatch
===================================================================
--- debian/patches/28_uat_proto_name_use_strndup.dpatch	(revision 0)
+++ debian/patches/28_uat_proto_name_use_strndup.dpatch	(revision 0)
@@ -0,0 +1,66 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## 22_uat_proto_name_use_strndup.dpatch by  <[email protected]>
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP: Use g_strndup() instead of ep_strndup() to avoid freeing it up too early
+
+...@dpatch@
+
+Index: trunk/epan/uat.h
+===================================================================
+--- trunk/epan/uat.h	(revision 27662)
++++ trunk/epan/uat.h	(revision 27663)
+@@ -452,7 +452,7 @@
+ #define UAT_PROTO_DEF(basename, field_name, dissector_field, name_field, rec_t) \
+ static void basename ## _ ## field_name ## _set_cb(void* rec, const char* buf, unsigned len, void* u1 _U_, void* u2 _U_) {\
+ 	if (len) { \
+-		((rec_t*)rec)->name_field = ep_strndup(buf,len); g_strdown(((rec_t*)rec)->name_field ); g_strchug(((rec_t*)rec)->name_field); \
++		((rec_t*)rec)->name_field = g_strndup(buf,len); g_strdown(((rec_t*)rec)->name_field ); g_strchug(((rec_t*)rec)->name_field); \
+ 		((rec_t*)rec)->dissector_field = find_dissector(((rec_t*)rec)->name_field); \
+ 	} else { \
+ 		((rec_t*)rec)->dissector_field = find_dissector("data"); \
+Index: trunk/epan/dissectors/packet-user_encap.c
+===================================================================
+--- trunk/epan/dissectors/packet-user_encap.c	(revision 27662)
++++ trunk/epan/dissectors/packet-user_encap.c	(revision 27663)
+@@ -126,9 +126,27 @@
+ 	}
+ }
+ 
+-static void user_update_cb(void* r _U_, const char** err _U_) {
++static void* user_copy_cb(void* dest, const void* orig, unsigned len _U_) 
++{
++  const user_encap_t *o = orig;
++  user_encap_t *d = dest;
++
++  d->payload_proto_name = g_strdup(o->payload_proto_name);
++  d->header_proto_name  = g_strdup(o->header_proto_name);
++  d->trailer_proto_name = g_strdup(o->trailer_proto_name);
++
++  return d;
+ }
+ 
++static void user_free_cb(void* record)
++{
++  user_encap_t *u = record;
++
++  if (u->payload_proto_name) g_free(u->payload_proto_name);
++  if (u->header_proto_name)  g_free(u->header_proto_name);
++  if (u->trailer_proto_name) g_free(u->trailer_proto_name);
++}
++
+ UAT_VS_DEF(user_encap, encap, user_encap_t, WTAP_ENCAP_USER0, ENCAP0_STR)
+ UAT_PROTO_DEF(user_encap, payload_proto, payload_proto, payload_proto_name, user_encap_t)
+ UAT_DEC_CB_DEF(user_encap, header_size, user_encap_t)
+@@ -177,9 +195,9 @@
+ 						 &num_encaps,
+ 						 UAT_CAT_FFMT,
+ 						 "ChUserDLTsSection",
++						 user_copy_cb,
+ 						 NULL,
+-						 user_update_cb,
+-						 NULL,
++						 user_free_cb,
+ 						 user_flds );
+ 	
+ 	prefs_register_uat_preference(module,

Property changes on: debian/patches/28_uat_proto_name_use_strndup.dpatch
___________________________________________________________________
Added: svn:mergeinfo

Index: debian/patches/31_ndmp_crash_fix.dpatch
===================================================================
--- debian/patches/31_ndmp_crash_fix.dpatch	(revision 0)
+++ debian/patches/31_ndmp_crash_fix.dpatch	(revision 0)
@@ -0,0 +1,57 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## 25_ndmp_crash_fix.dpatch by  <[email protected]>
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP: Check pointers in NDMP dissector to prevent crash
+
+...@dpatch@
+
+Index: trunk/epan/dissectors/packet-ndmp.c
+===================================================================
+--- trunk/epan/dissectors/packet-ndmp.c	(revision 28408)
++++ trunk/epan/dissectors/packet-ndmp.c	(revision 28409)
+@@ -1181,7 +1181,7 @@
+ 			tvb_rlen=16;
+ 		cdb_tvb=tvb_new_subset(tvb, offset, tvb_len, tvb_rlen);
+ 
+-		if(!ndmp_conv_data->task->itlq){
++		if(ndmp_conv_data->task && !ndmp_conv_data->task->itlq){
+ 			ndmp_conv_data->task->itlq=se_alloc(sizeof(itlq_nexus_t));
+ 			ndmp_conv_data->task->itlq->lun=0xffff;
+ 			ndmp_conv_data->task->itlq->first_exchange_frame=pinfo->fd->num;
+@@ -1195,7 +1195,7 @@
+ 			ndmp_conv_data->task->itlq->fc_time=pinfo->fd->abs_ts;
+ 			ndmp_conv_data->task->itlq->extra_data=NULL;
+ 		}
+-		if(ndmp_conv_data->task->itlq){
++		if(ndmp_conv_data->task && ndmp_conv_data->task->itlq){
+ 			dissect_scsi_cdb(cdb_tvb, pinfo, top_tree, devtype, ndmp_conv_data->task->itlq, get_itl_nexus(ndmp_conv_data, pinfo, FALSE));
+ 		}
+ 		offset += cdb_len_full;
+@@ -1239,7 +1239,7 @@
+ 	    		tvb_rlen=payload_len;
+ 		data_tvb=tvb_new_subset(tvb, offset, tvb_len, tvb_rlen);
+ 
+-		if(ndmp_conv_data->task->itlq){
++		if(ndmp_conv_data->task && ndmp_conv_data->task->itlq){
+ 			/* ndmp conceptually always send both read and write
+ 			 * data and always a full nonfragmented pdu
+ 			 */
+@@ -1335,7 +1335,7 @@
+ 	offset += 4;
+ 
+ 	if (sns_len != 0) {
+-		if(ndmp_conv_data->task->itlq){
++		if(ndmp_conv_data->task && ndmp_conv_data->task->itlq){
+ 			dissect_scsi_snsinfo(tvb, pinfo, top_tree, offset, sns_len, ndmp_conv_data->task->itlq, get_itl_nexus(ndmp_conv_data, pinfo, FALSE));
+ 		}
+ 		offset += sns_len_full;
+@@ -1356,7 +1356,7 @@
+ 	/* status */
+ 	proto_tree_add_item(tree, hf_ndmp_execute_cdb_status, tvb, offset, 4, FALSE);
+ 	status=tvb_get_ntohl(tvb, offset);
+-	if(ndmp_conv_data->task->itlq){
++	if(ndmp_conv_data->task && ndmp_conv_data->task->itlq){
+ 		dissect_scsi_rsp(tvb, pinfo, top_tree, ndmp_conv_data->task->itlq, get_itl_nexus(ndmp_conv_data, pinfo, FALSE), (guint8)status);
+ 	}
+ 	offset += 4;

Property changes on: debian/patches/31_ndmp_crash_fix.dpatch
___________________________________________________________________
Added: svn:mergeinfo

Index: debian/patches/29_sccp_crash_fix.dpatch
===================================================================
--- debian/patches/29_sccp_crash_fix.dpatch	(revision 0)
+++ debian/patches/29_sccp_crash_fix.dpatch	(revision 0)
@@ -0,0 +1,26 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## 23_sccp_crash_fix.dpatch by  <[email protected]>
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP: Fix uninitialized variable to prevent crash
+
+...@dpatch@
+
+Index: trunk/epan/dissectors/packet-sccp.c
+===================================================================
+--- trunk/epan/dissectors/packet-sccp.c	(revision 28057)
++++ trunk/epan/dissectors/packet-sccp.c	(revision 28058)
+@@ -805,11 +805,12 @@
+ 	a->called_ssn = INVALID_SSN;
+ 	a->has_fw_key = FALSE;
+ 	a->has_bw_key = FALSE;
++	a->msgs = NULL;
++	a->curr_msg = NULL;
+ 	a->payload = SCCP_PLOAD_NONE;
+ 	a->calling_party = NULL;
+ 	a->called_party = NULL;
+ 	a->extra_info = NULL;
+-	a->msgs = NULL;
+ 
+ 	return a;
+ }

Property changes on: debian/patches/29_sccp_crash_fix.dpatch
___________________________________________________________________
Added: svn:mergeinfo

Index: debian/patches/30_pcnfsd_crash_fix.dpatch
===================================================================
--- debian/patches/30_pcnfsd_crash_fix.dpatch	(revision 0)
+++ debian/patches/30_pcnfsd_crash_fix.dpatch	(revision 0)
@@ -0,0 +1,84 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## 24__pcnfsd_crash_fix.dpatch by  <[email protected]>
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP: Fix buffer allocation to prevent crash
+
+...@dpatch@
+
+Index: trunk/epan/dissectors/packet-pcnfsd.c
+===================================================================
+--- trunk/epan/dissectors/packet-pcnfsd.c	(revision 28127)
++++ trunk/epan/dissectors/packet-pcnfsd.c	(revision 28128)
+@@ -211,7 +211,10 @@
+ 	}
+ 
+ 	if (ident) {
+-		pcnfsd_decode_obscure(ident, strlen(ident));
++		/* Only attempt to decode the ident if it has been specified */
++		if (strcmp(ident, RPC_STRING_EMPTY))	
++			pcnfsd_decode_obscure(ident, (int)strlen(ident));
++
+ 		if (ident_tree)
+ 			proto_tree_add_string(ident_tree,
+ 				hf_pcnfsd_auth_ident_clear,
+@@ -238,7 +241,10 @@
+ 	}
+ 
+ 	if (password) {
+-		pcnfsd_decode_obscure(password, strlen(password));
++		/* Only attempt to decode the password if it has been specified */
++		if (strcmp(password, RPC_STRING_EMPTY))	
++			pcnfsd_decode_obscure(password, (int)strlen(password));
++
+ 		if (password_tree)
+ 			proto_tree_add_string(password_tree,
+ 				hf_pcnfsd_auth_password_clear,
+Index: trunk/epan/dissectors/packet-rpc.c
+===================================================================
+--- trunk/epan/dissectors/packet-rpc.c	(revision 28127)
++++ trunk/epan/dissectors/packet-rpc.c	(revision 28128)
+@@ -626,24 +626,21 @@
+ 				char *formatted;
+ 
+ 				formatted = format_text(string_buffer, strlen(string_buffer));
+-				/* alloc maximum data area */
+-#define STRING_BUFFER_PRINT_MAX_LEN (strlen(formatted)+12+1)
+-				string_buffer_print = (char*)ep_alloc(STRING_BUFFER_PRINT_MAX_LEN);
+ 				/* copy over the data and append <TRUNCATED> */
+-				g_snprintf(string_buffer_print, STRING_BUFFER_PRINT_MAX_LEN, "%s<TRUNCATED>", formatted);
++				string_buffer_print=ep_strdup_printf("%s%s", formatted, RPC_STRING_TRUNCATED);
+ 			} else {
+-				string_buffer_print="<DATA><TRUNCATED>";
++				string_buffer_print=RPC_STRING_DATA RPC_STRING_TRUNCATED;
+ 			}
+ 		} else {
+ 			if (string_data) {
+ 				string_buffer_print =
+ 				    ep_strdup(format_text(string_buffer, strlen(string_buffer)));
+ 			} else {
+-				string_buffer_print="<DATA>";
++				string_buffer_print=RPC_STRING_DATA;
+ 			}
+ 		}
+ 	} else {
+-		string_buffer_print="<EMPTY>";
++		string_buffer_print=RPC_STRING_EMPTY;
+ 	}
+ 
+ 	if (tree) {
+Index: trunk/epan/dissectors/packet-rpc.h
+===================================================================
+--- trunk/epan/dissectors/packet-rpc.h	(revision 28127)
++++ trunk/epan/dissectors/packet-rpc.h	(revision 28128)
+@@ -93,6 +93,10 @@
+ #define AUTHDES_NAMEKIND_FULLNAME 0
+ #define AUTHDES_NAMEKIND_NICKNAME 1
+ 
++#define RPC_STRING_EMPTY "<EMPTY>"
++#define RPC_STRING_DATA "<DATA>"
++#define RPC_STRING_TRUNCATED "<TRUNCATED>"
++
+ extern value_string rpc_authgss_svc[];
+ typedef enum {
+ 	FLAVOR_UNKNOWN,		/* authentication flavor unknown */

Property changes on: debian/patches/30_pcnfsd_crash_fix.dpatch
___________________________________________________________________
Added: svn:mergeinfo

Index: debian/patches/32_dcm_memleak_fix.dpatch
===================================================================
--- debian/patches/32_dcm_memleak_fix.dpatch	(revision 0)
+++ debian/patches/32_dcm_memleak_fix.dpatch	(revision 0)
@@ -0,0 +1,29 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## 26_dcm_memleak_fix.dpatch by  <[email protected]>
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP: Fix memory leak in DCM dissector
+
+...@dpatch@
+
+Index: trunk-1.0/epan/dissectors/packet-dcm.c
+===================================================================
+--- trunk-1.0/epan/dissectors/packet-dcm.c	(revision 28410)
++++ trunk-1.0/epan/dissectors/packet-dcm.c	(revision 28411)
+@@ -289,15 +289,10 @@
+ {
+     dcmState_t *ds;
+ 
+-    if (NULL == (ds = (dcmState_t *) g_malloc(sizeof(dcmState_t)))) {
++    if (NULL == (ds = (dcmState_t *) se_alloc0(sizeof(dcmState_t)))) {
+ 	return NULL;
+     }
+-    ds->pdu = 0;
+-    ds->tlen = ds->rlen = 0;
+     ds->valid = TRUE;
+-    memset(ds->orig, 0, sizeof(ds->orig));
+-    memset(ds->targ, 0, sizeof(ds->targ));
+-    memset(ds->resp, 0, sizeof(ds->resp));
+     ds->first = ds->last = NULL;
+     return ds;
+ }

Property changes on: debian/patches/32_dcm_memleak_fix.dpatch
___________________________________________________________________
Added: svn:mergeinfo


--- End Message ---
--- Begin Message ---
Source: wireshark
Source-Version: 1.0.2-3+lenny6

We believe that the bug you reported is fixed in the latest version of
wireshark, which is due to be installed in the Debian FTP archive:

tshark_1.0.2-3+lenny6_amd64.deb
  to pool/main/w/wireshark/tshark_1.0.2-3+lenny6_amd64.deb
wireshark-common_1.0.2-3+lenny6_amd64.deb
  to pool/main/w/wireshark/wireshark-common_1.0.2-3+lenny6_amd64.deb
wireshark-dev_1.0.2-3+lenny6_amd64.deb
  to pool/main/w/wireshark/wireshark-dev_1.0.2-3+lenny6_amd64.deb
wireshark_1.0.2-3+lenny6.diff.gz
  to pool/main/w/wireshark/wireshark_1.0.2-3+lenny6.diff.gz
wireshark_1.0.2-3+lenny6.dsc
  to pool/main/w/wireshark/wireshark_1.0.2-3+lenny6.dsc
wireshark_1.0.2-3+lenny6_amd64.deb
  to pool/main/w/wireshark/wireshark_1.0.2-3+lenny6_amd64.deb



A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to [email protected],
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Balint Reczey <[email protected]> (supplier of updated wireshark package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [email protected])


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Format: 1.8
Date: Mon, 28 Sep 2009 13:05:13 +0100
Source: wireshark
Binary: wireshark-common wireshark tshark wireshark-dev
Architecture: source amd64
Version: 1.0.2-3+lenny6
Distribution: stable
Urgency: high
Maintainer: Frederic Peters <[email protected]>
Changed-By: Balint Reczey <[email protected]>
Description: 
 tshark     - network traffic analyzer (console)
 wireshark  - network traffic analyzer
 wireshark-common - network traffic analyser (common files)
 wireshark-dev - network traffic analyser (development tools)
Closes: 533347
Changes: 
 wireshark (1.0.2-3+lenny6) stable; urgency=high
 .
   * security fixes from Wireshark 1.0.8 and 1.0.9:
     - The PCNFSD dissector could crash (CVE-2009-1829)
     - The AFS dissector could crash (CVE-2009-2562)
     - The OpcUa dissector could use excessive CPU and memory (CVE-2009-3241)
    (Closes: #533347)
Checksums-Sha1: 
 96c2acea83751731f4abb5d6c68ff7f7204eb1d8 1502 wireshark_1.0.2-3+lenny6.dsc
 55b7a62a3f27d64c3495d02998058046232e44ad 108231 
wireshark_1.0.2-3+lenny6.diff.gz
 6d5238352d94c0e4632c70dd3674af77ade45634 11869580 
wireshark-common_1.0.2-3+lenny6_amd64.deb
 7e1451ca5cbee1220c77c09db9f0684c966a3837 659488 
wireshark_1.0.2-3+lenny6_amd64.deb
 2e77f54fb94c009b41a391b639bd7175401df975 118956 tshark_1.0.2-3+lenny6_amd64.deb
 83015fe8461409825a4a2c749bae1b70d1c38f88 583828 
wireshark-dev_1.0.2-3+lenny6_amd64.deb
Checksums-Sha256: 
 1298d19c5a1f052b884472059567170eb23662fdcb0f658d4b9393766760b016 1502 
wireshark_1.0.2-3+lenny6.dsc
 907442c2b32acc66c55f18e3403c38c16910e49c15b874d356f82314014043f4 108231 
wireshark_1.0.2-3+lenny6.diff.gz
 10992420294f41e44eccfc71f1857b467b281034ed0e82ba565be5d047943e44 11869580 
wireshark-common_1.0.2-3+lenny6_amd64.deb
 2313452c858ba61dc484b5dc061011e6eef6ceb8ae383cf9c169c1064eb16af3 659488 
wireshark_1.0.2-3+lenny6_amd64.deb
 4a0060984c319d2a66e4d1b520ee4b1e6abc0dd45576da665c9ba465c4646752 118956 
tshark_1.0.2-3+lenny6_amd64.deb
 f1a8ddb0678877a4386fdb148572ac78bdad2f044148f434dad4c931299d5ff8 583828 
wireshark-dev_1.0.2-3+lenny6_amd64.deb
Files: 
 97ea494c96895163a77a38d7048e8fcf 1502 net optional wireshark_1.0.2-3+lenny6.dsc
 fa57cd3cd571ca4f2d69d1d93bc184ef 108231 net optional 
wireshark_1.0.2-3+lenny6.diff.gz
 bbfaabd1f45c4596fab2b837f07e150c 11869580 net optional 
wireshark-common_1.0.2-3+lenny6_amd64.deb
 2326810e565f04f96aba54a5ac216635 659488 net optional 
wireshark_1.0.2-3+lenny6_amd64.deb
 49c8d30aa56824db7264a70653d76a5b 118956 net optional 
tshark_1.0.2-3+lenny6_amd64.deb
 8e4c5a0f0963ed641ef104debc24ba68 583828 devel optional 
wireshark-dev_1.0.2-3+lenny6_amd64.deb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)

iEYEARECAAYFAkrivJgACgkQ0/r2+3z8lN3JcACgserPJW8IbcC7O/O89wwId55a
WaoAoKjXDJE3fV/IT6S02F0qjEZLQ4Cy
=zF7F
-----END PGP SIGNATURE-----



--- End Message ---

Reply via email to