Add syzkaller docker image

This commit is contained in:
Andrei Vagin 2020-12-09 21:45:56 -08:00
parent 0fa534f116
commit 44e0a0eac9
3 changed files with 58 additions and 0 deletions

View File

@ -0,0 +1,9 @@
FROM gcr.io/syzkaller/env
RUN apt update && apt install -y git vim strace gdb procps
WORKDIR /syzkaller/gopath/src/github.com/google/syzkaller
RUN git init . && git remote add origin https://github.com/google/syzkaller && git fetch origin && git checkout origin/master && make
ENTRYPOINT ./bin/syz-manager --config /tmp/syzkaller/syzkaller.cfg

View File

@ -0,0 +1,34 @@
syzkaller is an unsupervised coverage-guided kernel fuzzer.
* [Github](https://github.com/google/syzkaller)
* [gVisor dashboard](https://syzkaller.appspot.com/gvisor)
# How to run syzkaller.
* Build the syzkaller docker image
```
make load-syzkaller
```
* Build runsc and place it in /tmp/syzkaller.
```
make RUNTIME_DIR=/tmp/syzkaller refresh
```
* Copy the syzkaller config in /tmp/syzkaller
```
cp images/syzkaller/default-gvisor-config.cfg /tmp/syzkaller/syzkaller.cfg
```
* Run syzkaller
```
docker run --privileged -it --rm -v /tmp/syzkaller:/tmp/syzkaller gvisor.dev/images/syzkaller:latest
```
# How to run a syz repro.
* Repeate all steps except the last one from the previous section.
* Save a syzkaller repro in /tmp/syzkaller/repro
* Run syz-repro
```
docker run --privileged -it --rm -v /tmp/syzkaller:/tmp/syzkaller --entrypoint="" gvisor.dev/images/syzkaller:latest ./bin/syz-repro -config /tmp/syzkaller/syzkaller.cfg /tmp/syzkaller/repro
```

View File

@ -0,0 +1,15 @@
{
"name": "gvisor",
"target": "linux/amd64",
"http": ":80",
"workdir": "/tmp/syzkaller/workdir/",
"image": "/tmp/syzkaller/runsc",
"syzkaller": "/syzkaller/gopath/src/github.com/google/syzkaller",
"cover": false,
"procs": 1,
"type": "gvisor",
"vm": {
"count": 1,
"runsc_args": "--debug --network none --platform ptrace --vfs2 --fuse -net-raw -watchdog-action=panic"
}
}