netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] netfilter: h323: bug in parsing of ASN1 SEQOF field
@ 2011-03-22 11:55 David Sterba
  2011-03-23  2:33 ` David Miller
  0 siblings, 1 reply; 3+ messages in thread
From: David Sterba @ 2011-03-22 11:55 UTC (permalink / raw)
  To: netdev; +Cc: linux-kernel, David Sterba, David Miller, stable

Static analyzer of clang found a dead store which appears to be a bug in
reading count of items in SEQOF field, only the lower byte of word is
stored. This may lead to corrupted read and communication shutdown.

The bug has been in the module since it's first inclusion into linux
kernel.

Signed-off-by: David Sterba <dsterba@suse.cz>
CC: David Miller <davem@davemloft.net>
CC: netdev@vger.kernel.org
CC: stable@kernel.org
---
 net/netfilter/nf_conntrack_h323_asn1.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/net/netfilter/nf_conntrack_h323_asn1.c b/net/netfilter/nf_conntrack_h323_asn1.c
index 8678823..bcd5ed6 100644
--- a/net/netfilter/nf_conntrack_h323_asn1.c
+++ b/net/netfilter/nf_conntrack_h323_asn1.c
@@ -631,7 +631,7 @@ static int decode_seqof(bitstr_t *bs, const struct field_t *f,
 		CHECK_BOUND(bs, 2);
 		count = *bs->cur++;
 		count <<= 8;
-		count = *bs->cur++;
+		count += *bs->cur++;
 		break;
 	case SEMI:
 		BYTE_ALIGN(bs);
-- 
1.7.4.1.176.g501cc

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] netfilter: h323: bug in parsing of ASN1 SEQOF field
  2011-03-22 11:55 [PATCH] netfilter: h323: bug in parsing of ASN1 SEQOF field David Sterba
@ 2011-03-23  2:33 ` David Miller
  2011-04-04 13:24   ` Patrick McHardy
  0 siblings, 1 reply; 3+ messages in thread
From: David Miller @ 2011-03-23  2:33 UTC (permalink / raw)
  To: dsterba; +Cc: netdev, linux-kernel, stable, netfilter-, kaber

From: David Sterba <dsterba@suse.cz>
Date: Tue, 22 Mar 2011 12:55:29 +0100

> Static analyzer of clang found a dead store which appears to be a bug in
> reading count of items in SEQOF field, only the lower byte of word is
> stored. This may lead to corrupted read and communication shutdown.
> 
> The bug has been in the module since it's first inclusion into linux
> kernel.
> 
> Signed-off-by: David Sterba <dsterba@suse.cz>

Please send netfilter patches to the listed netfilter maintainer
and appropriate mailing lists.  I've added them to the CC:

Otherwise your patch will not be looked at by the right people.

> CC: David Miller <davem@davemloft.net>
> CC: netdev@vger.kernel.org
> CC: stable@kernel.org
> ---
>  net/netfilter/nf_conntrack_h323_asn1.c |    2 +-
>  1 files changed, 1 insertions(+), 1 deletions(-)
> 
> diff --git a/net/netfilter/nf_conntrack_h323_asn1.c b/net/netfilter/nf_conntrack_h323_asn1.c
> index 8678823..bcd5ed6 100644
> --- a/net/netfilter/nf_conntrack_h323_asn1.c
> +++ b/net/netfilter/nf_conntrack_h323_asn1.c
> @@ -631,7 +631,7 @@ static int decode_seqof(bitstr_t *bs, const struct field_t *f,
>  		CHECK_BOUND(bs, 2);
>  		count = *bs->cur++;
>  		count <<= 8;
> -		count = *bs->cur++;
> +		count += *bs->cur++;
>  		break;
>  	case SEMI:
>  		BYTE_ALIGN(bs);
> -- 
> 1.7.4.1.176.g501cc
> 

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] netfilter: h323: bug in parsing of ASN1 SEQOF field
  2011-03-23  2:33 ` David Miller
@ 2011-04-04 13:24   ` Patrick McHardy
  0 siblings, 0 replies; 3+ messages in thread
From: Patrick McHardy @ 2011-04-04 13:24 UTC (permalink / raw)
  To: David Miller
  Cc: dsterba, netdev, linux-kernel, stable, Netfilter Development Mailinglist

On 23.03.2011 03:33, David Miller wrote:
> From: David Sterba <dsterba@suse.cz>
> Date: Tue, 22 Mar 2011 12:55:29 +0100
> 
>> Static analyzer of clang found a dead store which appears to be a bug in
>> reading count of items in SEQOF field, only the lower byte of word is
>> stored. This may lead to corrupted read and communication shutdown.
>>
>> The bug has been in the module since it's first inclusion into linux
>> kernel.
>>
>> Signed-off-by: David Sterba <dsterba@suse.cz>
> 
> Please send netfilter patches to the listed netfilter maintainer
> and appropriate mailing lists.  I've added them to the CC:
> 
> Otherwise your patch will not be looked at by the right people.
> 
>> CC: David Miller <davem@davemloft.net>
>> CC: netdev@vger.kernel.org
>> CC: stable@kernel.org
>> ---
>>  net/netfilter/nf_conntrack_h323_asn1.c |    2 +-
>>  1 files changed, 1 insertions(+), 1 deletions(-)
>>
>> diff --git a/net/netfilter/nf_conntrack_h323_asn1.c b/net/netfilter/nf_conntrack_h323_asn1.c
>> index 8678823..bcd5ed6 100644
>> --- a/net/netfilter/nf_conntrack_h323_asn1.c
>> +++ b/net/netfilter/nf_conntrack_h323_asn1.c
>> @@ -631,7 +631,7 @@ static int decode_seqof(bitstr_t *bs, const struct field_t *f,
>>  		CHECK_BOUND(bs, 2);
>>  		count = *bs->cur++;
>>  		count <<= 8;
>> -		count = *bs->cur++;
>> +		count += *bs->cur++;
>>  		break;

This looks correct to me. The problem is without practical consequence
though, the largest amount of sequence-of members we parse is 30.

Applied, thanks.

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2011-04-04 13:24 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-03-22 11:55 [PATCH] netfilter: h323: bug in parsing of ASN1 SEQOF field David Sterba
2011-03-23  2:33 ` David Miller
2011-04-04 13:24   ` Patrick McHardy

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).