From: Peter Lieven <pl@kamp.de>
To: Gerd Hoffmann <kraxel@redhat.com>, Peter Lieven <pl@kamp.de>
Cc: "qemu-devel@nongnu.org" <qemu-devel@nongnu.org>
Subject: Re: [Qemu-devel] possible denial of service via VNC
Date: Mon, 30 Jun 2014 09:45:36 +0200 [thread overview]
Message-ID: <53B115A0.9040602@kamp.de> (raw)
In-Reply-To: <1404113633.17465.3.camel@nilsson.home.kraxel.org>
On 30.06.2014 09:33, Gerd Hoffmann wrote:
> On So, 2014-06-29 at 14:16 +0200, Peter Lieven wrote:
>> Hi,
>>
>> while debugging a VNC issue I found this:
>>
>> case VNC_MSG_CLIENT_CUT_TEXT:
>> if (len == 1)
>> return 8;
>>
>> if (len == 8) {
>> uint32_t dlen = read_u32(data, 4);
>> if (dlen > 0)
>> return 8 + dlen;
>> }
>>
>> client_cut_text(vs, read_u32(data, 4), data + 8);
>> break;
>>
>> in protocol_client_msg().
>>
>> Is this really a good idea? This allows for letting the vs->input buffer to grow
>> up to 2^32 + 8 byte which will possibly result in an out of memory condition.
> Applying a limit there looks reasonable to me. Patches welcome.
> As this is text only a megabyte should be more than enough for all
> practical purposes. Question is what to do when the limit is exceeded?
> Disconnect? Read & throw away?
I would also think something in the order of megabytes should be fine.
I would vote for disconnect as soon as the limit specified is too big. Otherwise
we had to rewrite the whole receive logic which could introduce additional
bugs.
Peter
--
Mit freundlichen Grüßen
Peter Lieven
...........................................................
KAMP Netzwerkdienste GmbH
Vestische Str. 89-91 | 46117 Oberhausen
Tel: +49 (0) 208.89 402-50 | Fax: +49 (0) 208.89 402-40
pl@kamp.de | http://www.kamp.de
Geschäftsführer: Heiner Lante | Michael Lante
Amtsgericht Duisburg | HRB Nr. 12154
USt-Id-Nr.: DE 120607556
...........................................................
next prev parent reply other threads:[~2014-06-30 7:45 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-06-29 12:16 [Qemu-devel] possible denial of service via VNC Peter Lieven
2014-06-29 17:12 ` Anthony Liguori
2014-06-30 7:33 ` Gerd Hoffmann
2014-06-30 7:45 ` Peter Lieven [this message]
2014-06-30 7:46 ` Gerd Hoffmann
2014-06-30 7:51 ` Peter Lieven
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=53B115A0.9040602@kamp.de \
--to=pl@kamp.de \
--cc=kraxel@redhat.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.