Skip to content
Commit 2965be1f authored by Gerd Hoffmann's avatar Gerd Hoffmann Committed by Michael Roth
Browse files

vga: stop passing pointers to vga_draw_line* functions



Instead pass around the address (aka offset into vga memory).
Add vga_read_* helper functions which apply vbe_size_mask to
the address, to make sure the address stays within the valid
range, similar to the cirrus blitter fixes (commits ffaf8577
and 026aeffc).

Impact:  DoS for privileged guest users.  qemu crashes with
a segfault, when hitting the guard page after vga memory
allocation, while reading vga memory for display updates.

Fixes: CVE-2017-13672
Cc: P J P <ppandit@redhat.com>
Reported-by: default avatarDavid Buchanan <d@vidbuchanan.co.uk>
Signed-off-by: default avatarGerd Hoffmann <kraxel@redhat.com>
Message-id: 20170828122906.18993-1-kraxel@redhat.com
(cherry picked from commit 3d90c625)
Signed-off-by: default avatarMichael Roth <mdroth@linux.vnet.ibm.com>
parent d6f7f3b0
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment