This repository has been created for the talk (KRWX: A tool to learn and assist Kernel Exploitation) given at NoHat @2023.
./setup.sh
- As a beginner friendly repository everything is hard-coded. By default, it will compiles a 6.4 kernel and a debian image from the syzkaller repository. If you want to further customize it, see the
./helpers/
folder.
./start.sh ./code/hello_world.c
for a first dry run. You can write your own C code and specifiy it- When the qemu instance boots up you can type
root
and you're in. Then./run
to install KRWX module and execute the compiled binary
Tested on x86_64 ubuntu machine. Ubuntu is not strictly required, but if you want to use another distro, change the apt
command from setup.sh
based on your distro (or comment the 2 lines and install necessary requirements by yourself).
sudo
is required for some operations (grep -R sudo *
if you are suspicious)