• G
    vga: stop passing pointers to vga_draw_line* functions · 3d90c625
    Gerd Hoffmann 提交于
    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: NDavid Buchanan <d@vidbuchanan.co.uk>
    Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
    Message-id: 20170828122906.18993-1-kraxel@redhat.com
    3d90c625
vga_int.h 7.8 KB