vt: fix unchecked __put_user() in tioclinux ioctls
authorAdam Borowski <kilobyte@angband.pl>
Sat, 3 Jun 2017 07:35:06 +0000 (09:35 +0200)
committerBen Hutchings <ben@decadent.org.uk>
Thu, 12 Oct 2017 14:27:17 +0000 (15:27 +0100)
commit65e992fc50593ad2fac03c0e4a682fb871b65336
treec315ca9bc97ed4ee7015a95463f078abf2fd2af7
parent8370870a98ad925fe7b550fa4a17c6d29513e6f2
vt: fix unchecked __put_user() in tioclinux ioctls

commit 6987dc8a70976561d22450b5858fc9767788cc1c upstream.

Only read access is checked before this call.

Actually, at the moment this is not an issue, as every in-tree arch does
the same manual checks for VERIFY_READ vs VERIFY_WRITE, relying on the MMU
to tell them apart, but this wasn't the case in the past and may happen
again on some odd arch in the future.

If anyone cares about 3.7 and earlier, this is a security hole (untested)
on real 80386 CPUs.

Signed-off-by: Adam Borowski <kilobyte@angband.pl>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
[bwh: Backported to 3.2: adjust context]
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
drivers/tty/vt/vt.c