History log of /illumos-kvm-cmd/hw/ide/core.c (Results 1 - 3 of 3)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: 20150917, 20150709, 20150806
# 26424130 03-Jun-2015 Kevin Wolf

ide: Clear DRQ after handling all expected accesses

This is additional hardening against an end_transfer_func that fails to
clear the DRQ status bit. The bit must be unset as soon as the

ide: Clear DRQ after handling all expected accesses

This is additional hardening against an end_transfer_func that fails to
clear the DRQ status bit. The bit must be unset as soon as the PIO
transfer has completed, so it's better to do this in a central place
instead of duplicating the code in all commands (and forgetting it in
some).

Signed-off-by: Kevin Wolf <kwolf@redhat.com>

show more ...


# 9990b6ec 27-Jul-2015 Kevin Wolf

ide: Check array bounds before writing to io_buffer (CVE-2015-5154)

If the end_transfer_func of a command is called because enough data has
been read or written for the current PIO trans

ide: Check array bounds before writing to io_buffer (CVE-2015-5154)

If the end_transfer_func of a command is called because enough data has
been read or written for the current PIO transfer, and it fails to
correctly call the command completion functions, the DRQ bit in the
status register and s->end_transfer_func may remain set. This allows the
guest to access further bytes in s->io_buffer beyond s->data_end, and
eventually overflowing the io_buffer.

One case where this currently happens is emulation of the ATAPI command
START STOP UNIT.

This patch fixes the problem by adding explicit array bounds checks
before accessing the buffer instead of relying on end_transfer_func to
function correctly.

show more ...


Revision tags: 20150611, 20150514, 20150430, 20150205, 20141225, 20140821, 20140417, 20140403, 20140320, 20131128, 20130919, 20130627, 20130515, 20130110, 20121129, 20121101, 20121004, 20120906, 20120809, 20120528, 20120517
# 68396ea9 24-Jun-2011 Robert Mustacchi

Initial commit of d32e8d0b8d9e0ef7cf7ab2e74548982972789dfc from qemu-kvm