Skip to content

ironmanna/ebpf-fuzzer

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

969,688 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

eBPF-fuzzer

Build and Test LKL

0) Install Prerequisites

Use the docker image with required dependencies:

docker pull nkhusain/ebpf_fuzzer
docker run -ti nkhusain/ebpf_fuzzer /bin/bash

or

Install in your machine directly (on Ubuntu 22.04):

sudo apt-get install -y flex bison libelf-dev python-is-python3

# Install Clang-15
wget https://apt.llvm.org/llvm.sh
chmod +x llvm.sh
sudo ./llvm.sh 15

1) Build LKL Kernel

If you used docker, run docker run -ti nkhusain/ebpf_fuzzer /bin/bash

git clone --single-branch -b dev https://github.com/ssrg-vt/ebpf-fuzzer.git
cd ebpf-fuzzer
cp lkl_ebpf_config arch/lkl/configs/defconfig
make ARCH=lkl defconfig CC=clang-15

2) Build the LKL Tools

make -C tools/lkl ARCH=lkl CC=clang-15 -j8

3) Build the Sample Program

tools/lkl/bytecode/hello.c

cd tools/lkl/bytecode/
./build.sh hello

Run eBPF Fuzzer

cd tools/lkl/bytecode/
python ebpf_gen.py

About

A fuzzer for Linux eBPF module; build on top of LKL

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • C 98.2%
  • Assembly 1.1%
  • Shell 0.3%
  • Makefile 0.2%
  • Python 0.1%
  • Perl 0.1%