[Devel] [PATCH RHEL7 COMMIT] ms/tcp: avoid infinite loop in tcp_splice_read()
Evgenii Shatokhin
eshatokhin at virtuozzo.com
Mon Feb 27 06:06:48 PST 2017
On 27.02.2017 16:55, Konstantin Khorenko wrote:
> Please consider this to ReadyKernel.
Queued, thanks.
>
> https://readykernel.com/
>
> --
> Best regards,
>
> Konstantin Khorenko,
> Virtuozzo Linux Kernel Team
>
> On 02/27/2017 04:53 PM, Konstantin Khorenko wrote:
>> The commit is pushed to "branch-rh7-3.10.0-514.6.1.vz7.28.x-ovz" and
>> will appear at https://src.openvz.org/scm/ovz/vzkernel.git
>> after rh7-3.10.0-514.6.1.vz7.28.7
>> ------>
>> commit b207397b05680d0d47b484ff3090194eb10f5cc8
>> Author: Eric Dumazet <edumazet at google.com>
>> Date: Fri Feb 3 14:59:38 2017 -0800
>>
>> ms/tcp: avoid infinite loop in tcp_splice_read()
>>
>> Splicing from TCP socket is vulnerable when a packet with URG flag is
>> received and stored into receive queue.
>>
>> __tcp_splice_read() returns 0, and sk_wait_data() immediately
>> returns since there is the problematic skb in queue.
>>
>> This is a nice way to burn cpu (aka infinite loop) and trigger
>> soft lockups.
>>
>> Again, this gem was found by syzkaller tool.
>>
>> Fixes: 9c55e01c0cc8 ("[TCP]: Splice receive support.")
>> Signed-off-by: Eric Dumazet <edumazet at google.com>
>> Reported-by: Dmitry Vyukov <dvyukov at google.com>
>> Cc: Willy Tarreau <w at 1wt.eu>
>> Signed-off-by: David S. Miller <davem at davemloft.net>
>>
>> https://jira.sw.ru/browse/PSBM-61135
>> https://bugzilla.redhat.com/show_bug.cgi?id=1426542
>> CVE-2017-6214 kernel: ipv4/tcp: Infinite loop in tcp_splice_read()
>>
>> (cherry picked from commit ccf7abb93af09ad0868ae9033d1ca8108bdaec82)
>> Signed-off-by: Konstantin Khorenko <khorenko at virtuozzo.com>
> .
>
More information about the Devel
mailing list