[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [qemu-xen stable-4.5] pcnet: fix rx buffer overflow(CVE-2015-7512)
commit 3f19ed9b07fb2e14cb99616a15c209fd2e8170eb Author: Jason Wang <jasowang@xxxxxxxxxx> AuthorDate: Mon Nov 30 15:00:06 2015 +0800 Commit: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx> CommitDate: Fri Feb 5 14:55:01 2016 +0000 pcnet: fix rx buffer overflow(CVE-2015-7512) Backends could provide a packet whose length is greater than buffer size. Check for this and truncate the packet to avoid rx buffer overflow in this case. Cc: Prasad J Pandit <pjp@xxxxxxxxxxxxxxxxx> Cc: qemu-stable@xxxxxxxxxx Reviewed-by: Michael S. Tsirkin <mst@xxxxxxxxxx> Signed-off-by: Jason Wang <jasowang@xxxxxxxxxx> --- hw/net/pcnet.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/hw/net/pcnet.c b/hw/net/pcnet.c index fdea333..743a43e 100644 --- a/hw/net/pcnet.c +++ b/hw/net/pcnet.c @@ -1087,6 +1087,12 @@ ssize_t pcnet_receive(NetClientState *nc, const uint8_t *buf, size_t size_) int pktcount = 0; if (!s->looptest) { + if (size > 4092) { +#ifdef PCNET_DEBUG_RMD + fprintf(stderr, "pcnet: truncates rx packet.\n"); +#endif + size = 4092; + } memcpy(src, buf, size); /* no need to compute the CRC */ src[size] = 0; -- generated by git-patchbot for /home/xen/git/qemu-xen.git#stable-4.5 _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |