A proof of concept for spoofing face verification software and the like.
This repository contains modifications to the Linux (6.9.5) uvcvideo
driver, with the modified files residing in the drivers/media/usb/uvc
directory.
It also contains scripts in Python & Bash for the spoofing workflow.
- Run
./inst.sh
to install the kernel module, and replace the defaultuvcvideo
driver. - Run
./switchrecord
to switch the module to RECORD mode. - Turn on the camera, e.g. via Cheese. Multiple streams possible.
- Run
./styx.py k2u recorded
to transfer the frames from kernelspace to userspace (as a nested directory of images namedrecorded
). - (Opt.) Run
./mirror.sh recorded/ mirrored/
to mirror (horisontally flip) the frames. This will produce a directorymirrored
. - Run
sudo ./styx.py u2k mirrored
to transfer the modified frames back to kernelspace. - Run
./switchreplay
to switch to REPLAY mode. - Turn on the camera again. Now the frames should be mirrored.