Skip to content
  • Stefan Richter's avatar
    firewire: net: guard against rx buffer overflows · 667121ac
    Stefan Richter authored
    
    
    The IP-over-1394 driver firewire-net lacked input validation when
    handling incoming fragmented datagrams.  A maliciously formed fragment
    with a respectively large datagram_offset would cause a memcpy past the
    datagram buffer.
    
    So, drop any packets carrying a fragment with offset + length larger
    than datagram_size.
    
    In addition, ensure that
      - GASP header, unfragmented encapsulation header, or fragment
        encapsulation header actually exists before we access it,
      - the encapsulated datagram or fragment is of nonzero size.
    
    Reported-by: default avatarEyal Itkin <eyal.itkin@gmail.com>
    Reviewed-by: default avatarEyal Itkin <eyal.itkin@gmail.com>
    Fixes: CVE 2016-8633
    Cc: stable@vger.kernel.org
    Signed-off-by: default avatarStefan Richter <stefanr@s5r6.in-berlin.de>
    667121ac