esp: check command buffer length before write(CVE-2016-4439)
commit0a5e3685ea10c578f8063ca0dbb009af45693d85
authorPrasad J Pandit <pjp@fedoraproject.org>
Thu, 19 May 2016 10:39:30 +0000 (19 16:09 +0530)
committerMichael Roth <mdroth@linux.vnet.ibm.com>
Thu, 4 Aug 2016 21:41:59 +0000 (4 16:41 -0500)
tree622d09386569b6ca6667fa3588e8291146d4bd67
parent2522f0fcd17218a0c8f513663ce868410dc120c9
esp: check command buffer length before write(CVE-2016-4439)

The 53C9X Fast SCSI Controller(FSC) comes with an internal 16-byte
FIFO buffer. It is used to handle command and data transfer. While
writing to this command buffer 's->cmdbuf[TI_BUFSZ=16]', a check
was missing to validate input length. Add check to avoid OOB write
access.

Fixes CVE-2016-4439.

Reported-by: Li Qiang <liqiang6-s@360.cn>
Cc: qemu-stable@nongnu.org
Signed-off-by: Prasad J Pandit <pjp@fedoraproject.org>
Message-Id: <1463654371-11169-2-git-send-email-ppandit@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
(cherry picked from commit c98c6c105f66f05aa0b7c1d2a4a3f716450907ef)
Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
hw/scsi/esp.c