Re: [PATCH v4.10] netfilter: nf_conntrack_h323: lost .data_len definition for Q.931/ipv6

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 6/24/20 3:12 PM, Pablo Neira Ayuso wrote:
> CC'ing stable@xxxxxxxxxxxxxxx
> 
> On Tue, Jun 09, 2020 at 10:53:22AM +0300, Vasily Averin wrote:
>> Could you please push this patch into stable@?
>> it fixes memory corruption in kernels  v3.5 .. v4.10
>>
>> Lost .data_len definition leads to write beyond end of
>> struct nf_ct_h323_master. Usually it corrupts following
>> struct nf_conn_nat, however if nat is not loaded it corrupts
>> following slab object.
>>
>> In mainline this problem went away in v4.11,
>> after commit 9f0f3ebeda47 ("netfilter: helpers: remove data_len usage
>> for inkernel helpers") however many stable kernels are still affected.
> 
> -stable maintainers of: 3.16, 4.4 and 4.9.
> 
> Please apply this patch, thanks.

It fixes CVE-2020-14305
https://access.redhat.com/security/cve/CVE-2020-14305

>> cc: stable@xxxxxxxxxxxxxxx
>> Fixes: 1afc56794e03 ("netfilter: nf_ct_helper: implement variable length helper private data") # v3.5
>> Signed-off-by: Vasily Averin <vvs@xxxxxxxxxxxxx>
>> ---
>>  net/netfilter/nf_conntrack_h323_main.c | 1 +
>>  1 file changed, 1 insertion(+)
>>
>> diff --git a/net/netfilter/nf_conntrack_h323_main.c b/net/netfilter/nf_conntrack_h323_main.c
>> index f65d93639d12..29fe1e7eac88 100644
>> --- a/net/netfilter/nf_conntrack_h323_main.c
>> +++ b/net/netfilter/nf_conntrack_h323_main.c
>> @@ -1225,6 +1225,7 @@ static struct nf_conntrack_helper nf_conntrack_helper_q931[] __read_mostly = {
>>  	{
>>  		.name			= "Q.931",
>>  		.me			= THIS_MODULE,
>> +		.data_len		= sizeof(struct nf_ct_h323_master),
>>  		.tuple.src.l3num	= AF_INET6,
>>  		.tuple.src.u.tcp.port	= cpu_to_be16(Q931_PORT),
>>  		.tuple.dst.protonum	= IPPROTO_TCP,
>> -- 
>> 2.17.1
>>



[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux