Commit Graph

73 Commits

Author SHA1 Message Date
Radoslav Gerganov
b70f2394ec docs/linux: add instructions for fuzzing on VMware hosted hypervisors
Add new page for fuzzing x86-64 Linux kernel on VMware VMs.
It explains how to create a VMDK image and how to run it on Ubuntu host
with Workstation installed. For now only the isolated mode of syzkaller
is supported.
2020-09-23 17:13:28 +02:00
Aleksandr Nogikh
eb2b629d3c CONTRIBUTORS: add Aleksandr Nogikh to the file 2020-09-22 10:12:23 +02:00
Jouni Hogander
9e1fa68ee1 CONTRIBUTORS: add name to CONTRIBUTORS file 2020-09-21 11:23:04 +02:00
m5imunovic
a7abe2602c CONTRIBUTORS: add Marijo Simunovic 2020-09-15 15:50:24 +02:00
Heyuan Shi
6989d6f61d docs: clarify coverage point in different compliers 2020-09-15 09:39:09 +02:00
zizizi
140970f4be CONTRIBUTORS: add Matthew Halchyshak 2020-08-10 12:06:25 +02:00
Stefano Duo
06f8f7fbcd CONTRIBUTORS: add Stefano Duo 2020-08-05 08:59:53 +02:00
Ioana-Ruxandra Stancioi
554af3885f CONTRIBUTORS: add Ioana-Ruxandra Stancioi 2020-07-24 12:25:04 +02:00
Cheng-Min Chiang
146a394c19 CONTRIBUTORS: add Cheng-Min Chiang
Add Cheng-Min Chiang (me) to the contributors list.
2020-07-10 13:02:07 -07:00
Necip Fazil Yildiran
125d86d101 CONTRIBUTORS: add Necip Fazil Yildiran 2020-06-23 10:34:37 +02:00
Albert van der Linde
e471d8612c CONTRIBUTORS: add Albert van der Linde 2020-06-19 14:44:08 +02:00
Jiaheng Hu
c4293ba092 CONTRIBUTORS: add Jiaheng Hu 2020-06-18 09:38:16 -07:00
Alexander Egorenkov
9466f7f96e executor: enable KVM generator only on AMD64 arch
Executor KVM generator works only on amd64 linux machines.

Signed-off-by: Alexander Egorenkov <Alexander.Egorenkov@ibm.com>
2020-06-17 17:43:56 +02:00
Jukka Kaartinen
f56b572638 tools/syz-crush: Add feature to run C-program
usage:
  syz-crush -config=config.json creprog.c

Produced output is same as syz-manager produces.
New directory called reproduced_with is added that lists all the
reproducers that triggered the crash.

Example:

~/workdir/crashes  $ tree
.
├── 2a8fff76c6267ecfeaf3530a602ed48afbc4a151
│   ├── description
│   ├── log0
│   ├── log1
│   ├── log2
│   ├── report0
│   ├── report1
│   ├── report2
│   └── reproduced_with
│       └── 17a6ed226769660f3e5dad7b22b13466b938e290.c
├── 2b6b921457afe8cebd0a96ca40f8569e6ee95174
│   ├── description
│   ├── log0
│   ├── log1
│   ├── log2
│   ├── log3
│   ├── log4
│   ├── log5
│   ├── report0
│   ├── report1
│   ├── report2
│   ├── report3
│   ├── report4
│   ├── report5
│   └── reproduced_with
│       ├── 9fb2f5b37bf4428382334e336bbbb201634c7c4c.c
│       └── ab27002b46d19cafb1ebb8b040f0a3b0f8f88974.c

Signed-off-by: Jukka Kaartinen <jukka.kaartinen@unikie.com>
2020-06-15 18:41:13 +02:00
Ricardo Cañuelo
c5e085d96d sys/linux: specific descriptions for vim2m (v4l2)
Add a set of descriptions to focus the fuzzing process on the V4L2 vim2m
test driver. This should be useful to test the M2M framework.

The syscalls are based on a specific file descriptor for the vim2m
device and a selection of v4l2 ioctls that operate on it. Some of the
existing v4l2 data structure definitions have been extended to allow
restricting and selecting some options in order to narrow down the
fuzzing process.

Initial support for Request API added.
2020-06-09 15:58:40 +02:00
Matt Morehouse
b0d1c0d578 docs/linux: fix example qemu command 2020-06-04 02:49:18 +02:00
Daimeng Wang
f7fbb18cba syz-manager: add detailed coverage logging
Originally, syz-manager confusingly logs corpusSignal as "cover".
Change syz-manager's logging to output corpusSignal, corpusCover
and maxSignal.
Add a field in Stats to store maxSignal.
2020-05-30 08:04:19 +02:00
Dipanjan Das
203d1b0208
vm/isolated: fix hang when target_reboot is not set
* updated the contributor list

* Fixes #1750, syz-manager hangs with "target_reboot:" false in isolated VM mode

If in the isolated VM mode, "target_reboot": false option is set in the
syz-manager's configuration, it hangs forever. syz-manager essentially
keeps on waiting for the VM to reboot, while a reboot is never triggered
due to target_reboot option being set to false. The fix is to perform the
waitRebootAndSSH() check only when target_reboot is set to true.

File(s) changed:

    vm/isolated/isolated.go: Move the waitRebootAndSSH() check inside the correct block
2020-05-21 09:08:32 +02:00
Andy Nguyen
bd365072bf sys: add more specific ipv6 options
Additionally fix a type for ipv6_hopopts_ext_header
2020-04-29 16:46:34 +02:00
André Almeida
d0d8e8bc77
sys/linux: add new FUTEX_WAIT_MULTIPLE operation
Create individual file for futex syscall and add description for the new
operation FUTEX_WAIT_MULTIPLE.

Signed-off-by: André Almeida <andrealmeid@collabora.com>
2020-02-17 06:27:23 +01:00
Christoph Paasch
326d4c7836 sys/linux: add IPPROTO_MPTCP support
Adding support for IPPROTO_MPTCP. Like SMC, it is on top of TCP and can
thus be treated like a regular TCP socket.
2020-02-01 11:14:31 +01:00
Jann Horn
432c7650d5 pkg/report: generalize general protection fault pattern
An upcoming patch for Linux will change the error reporting pattern for
general protection faults such that the colon doesn't necessarily come
immediately after the string "general protection fault" (see
https://lore.kernel.org/lkml/20191118142144.GC6363@zn.tnic/).
Change the pattern in syzkaller before that happens.

Note that this is not necessarily the final format; in particular, the
ordering of the KASAN note and the "general protection fault" line might
swap.
2019-11-19 08:07:30 +01:00
Zwb
b5268b89c2 tools/create-image.sh: add a new option seek
The usage of current create-image.sh:

    ```
    ./create-image.sh -d=stretch -f=minimal --add-perf

    The options are in the following:

    -d, --distribution         Set on which debian distribution to create
    -f, --feature              Check what packages to install in the image, options are minimal, full
    -s, --seek                 Image size (MB), default 2048 (2G)
    -p, --add-perf             Add perf support with this option enabled

    The default image size may too small (2G) in some debugging scenarios, so change it to configurable.
2019-10-15 12:40:28 +02:00
mspecter
d2f63c9b49 pkg/host: improve openat check
* Add support for non-obvious open commands

* Adding Michael Specter to CONTRIBUTORS

* update

* /pkg/host/host_linux.go: leverage .txt for OpenAt

Allows users to specify OpenAt flags. Currently, Syzkaller will
automatically attempt to open device nodes at startup, and ignore
descriptions that do not exist. Unfortunately, Syzkaller only opens with
read-only permissions, and some device drivers will
return -EINVAL or likewise if the correct flags are not specified.
2019-06-11 12:06:50 +02:00
Andrew Turner
5457ef3463 sys/freebsd: Add support for fuzzing FreeBSD/i386
Add support to fuzz 32 bit FreeBSD system calls.
2019-05-29 14:28:59 +02:00
munjinoo
001e36bc78 executor: change syscall argument type to intptr_t
The type size of long depends on compiler.
Therefore, changing to intptr_t makes it depends on architecture.
2019-05-07 08:48:35 +02:00
Cody Holliday
e5d1b3ac44 sys/targets: fix arm target compiler prefix
sys/targets/targets.go: Change 'arm-linux-gnueabihf-' to 'arm-linux-gnueabi-' in the arm target since target ISA is armv6 and armhf is armv7+.
2019-04-04 14:57:50 +02:00
Noa Osherovich
b454dce22d update CONTRIBUTORS
Signed-off-by: Noa Osherovich <noaos@mellanox.com>
2019-03-27 14:31:07 +01:00
Mark Johnston
5fb683f0da AUTHORS/CONTRIBUTORS: register myself as an author and a contributor 2019-03-07 19:46:55 +01:00
Dan Robertson
13f1d0047a sys/linux: add NDISC packet formats to vnet.txt
Add the basic NDISC (RFC 4861) packet formats to sys/linux/vnet.txt.
2019-02-11 18:10:35 +01:00
Siddharth M
7ffdc16788 docs/netbsd.md: updated documentation for NetBSD
Refactored the document and updated the changes.
2019-01-14 09:51:10 +01:00
Kamil Rytarowski
432a811564 AUTHORS/CONTRIBUTORS: register myself as an author and a contributor 2019-01-09 07:19:02 +01:00
houjingyi
fdc2fbc53d Update CONTRIBUTORS 2019-01-07 10:01:28 +01:00
Victor Hsieh
f4815544c1 sys/linux: add fs-verity ioctls
This adds 2 ioctls and an argument type:
 - FS_IOC_ENABLE_VERITY
 - FS_IOC_MEASURE_VERITY
 - struct fsverity_digest

Note fs-verity on-disk structs are not yet added.
2018-12-18 10:34:52 +01:00
Michael Tüxen
271b354c51 vm/qemu: improve debug output
* vm/qemu: Improve debug output.

When running in debug mode, the number of VMs is reduced to 1.
State this in the debug output.

* vm/qemu: Don't start debug output with a capital letter.

As requested by Dimitry.

* vm: Provide debug message when reduing number of VMs.

Apply this change to all affected platforms for consistency.
Suggested by Dmitry.

* Add myself to AUTHORS/CONTRIBUTORS files.

* vm: Fix compilation issues missed in earlier commit.

* vm: Use logging to write debug message.
2018-11-30 17:12:03 +00:00
shankarapailoor
362ef76397 sys/linux: add additional constants for trace2syz 2018-10-30 10:58:45 +01:00
Tobin C. Harding
c1b59a23a0 Add Tobin to CONTRIBUTORS
Prior to raising first PR add 'Tobin Harding' to CONTRIBUTORS as directed by
contributing.md.

Signed-off-by: Tobin C. Harding <me@tobin.cc>
2018-09-11 07:06:01 +02:00
Anton Lindqvist
de20bcbb68 vm/vmm: support for vmm found on OpenBSD (#678)
vm/vmm: add vmm implementation found on OpenBSD
2018-08-18 13:06:44 -07:00
Dan Austin
14f8a76fe7 executor: checkpoint net namespace in the right namespace
With checkpoint_net_namespace moved to setup_common,
and Android fuzzing session terminates prematurely due to
ipv4_tables not being initialized at this time.
Moving the call back to loop fixes this behavior.
2018-08-08 11:03:33 +02:00
Jiangen Jiao
f69c5fcd76 syz-manager: Support kernelSrc and vmlinux from different tree
If vmlinux built from different tree from kernelSrc, cover page will failed to
show. So match only the path without prefix.
2018-07-23 09:52:04 +02:00
Daniel Borkmann
b17ae9398c bpf: enable full unwind and kallsym export support for jited images
Helps syzkaller in particular for unwinding full stack in case
of warnings or crashes.

Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
2018-06-07 12:39:12 +03:00
Ondrej Mosnacek
a50d873b17 sys/linux: add MORUS and AEGIS AEAD algorithms 2018-06-04 14:57:38 +03:00
Denis Efremov
4f18337d89 sys/linux: add i2c generic description
Basic description of i2c from SIL2LinuxMP workshop.
2018-04-19 11:34:29 +02:00
Mitchell Horne
5e1ccffca2 Update AUTHORS and CONTRIBUTORS files 2018-04-05 11:18:53 +02:00
Sumukha Pk
08dacaa0b9 netbsd.md: Changes made in file about missing clarity (#535)
* Changes made in the netbsd.md file, syzkaller made easier to install

* Name added to list of contributors

* Added name to CONTRIBUTORS file

* Changes in file regarding format issues
2018-03-13 12:33:05 +03:00
Julia Hansbrough
a1bc9d40ad syz/syz-extract: Update Fuchsia extractor with current Fuchsia paths.
A change in Zircon a while back moved around where sysroots are located
in Fuchsia; this update will allow for proper extraction.
2018-02-04 12:21:23 +01:00
Ed Maste
81fe66b42a Makefile: fix git "modified tree" test
Makefile falsely detected a modified git tree when the first ifeq
argument was unquoted. Also switch to the $(shell ... style for
consistency.

As requested, add myself to AUTHORS and CONTRIBUTORS.
2017-12-21 13:53:39 +01:00
Tim Tianyang Chen
ac20b98c1b syz-manager: add simple email support
Users can specify an email address to reveive notifications when a
bug is discovered for the first time, without setting up a full fledged
dashboard. The supported mailer is mailx.

Signed-off-by: Tim Tianyang Chen <soapcn@gmail.com>
2017-12-14 08:57:27 +01:00
Atul Prakash
1ad2f8f9d2 Makefile: compilation for arm should now work. Added arm target to presubmit tests 2017-11-22 10:18:01 +01:00
Tobias Klauser
784eb9c23c sys/freebsd: add POLLINIGNEOF 2017-11-08 19:30:10 +03:00