Commit Graph

2778 Commits

Author SHA1 Message Date
Ebrahim Byagowi 441da6f40e [harfbuzz] Add new seeds path (#1970)
See also https://github.com/harfbuzz/harfbuzz/pull/1395
2018-11-25 09:14:31 -08:00
Max Moroz 1e67fae34c [libxml2] Disable HTTP functionality since it is blocked in the sandbox. 2018-11-21 13:38:36 -08:00
Max Moroz e1ded36332 [libxml2] Use seed corpus from libxml2/test for all fuzz targets + xml.dict. 2018-11-21 12:31:39 -08:00
Stefan Bucur 0622421290 [libxml2] Add a libXML fuzzer that exercises its file-based parsing interface. (#1967) 2018-11-21 12:21:56 -08:00
James Zern 2e74eaebf5 [libvpx] update memory limit for msan (#1966)
Reduce VPX_MAX_ALLOCABLE_MEMORY in msan builds as it has a higher overhead causing more frequent OOMs in this configuration. This matches the limits in libaom.
2018-11-21 12:04:23 -08:00
wwcv 7995868cdc [libwebp] use explicit SRC path (#1965) 2018-11-20 11:24:41 -08:00
wwcv 23dd904766 [libaom] use ADD to retrieve file (#1964)
* [libaom] use ADD to retrieve file

libwebp uses ADD here which appears to be the canonical way to download a file.

* Update Dockerfile
2018-11-20 10:50:19 -08:00
wwcv 7551f34eba libvpx: reorder build directory cleaning (#1963)
Remove the build directory to ensure dot files are deleted.

Skip 'make clean' because the build directory was just cleaned. This removes
a lot of log spam.
2018-11-20 06:17:49 -08:00
wwcv 15a5ccca9a [libvpx] use CXX for linking (#1962)
Fixes a build failure when linking with UBSAN

https://github.com/google/oss-fuzz/issues/1961
2018-11-19 14:47:42 -08:00
Max Moroz 8ac2c969ff
[docs] Fix a typo in new_project_guide.md. 2018-11-19 14:05:01 -08:00
Max Moroz 4e3be11bfa
[docs] Update new_project_guide.md to be explicit about linking with clang++.
This regularly comes up, e.g. https://github.com/google/oss-fuzz/issues/1961.
2018-11-19 14:04:12 -08:00
Max Moroz 76686d085b
Update reproducing.md 2018-11-19 11:55:18 -08:00
steadmon 3702af93a9 Typo fix: hongfuzz -> honggfuzz (#1960) 2018-11-19 09:58:15 -08:00
steadmon 646fca1b50 Don't install 'recommended' packages, to save on build time and image size. (#1957) 2018-11-15 16:51:13 +11:00
Harish Mahendrakar 7a141190cf Add projects/libvpx (#1914)
* libvpx: Add project

Added projects/libvpx

* libvpx: Use local ivf_read_frame

ivf_read_frame inside libvpx results in lot of prints due to invalid
frame size. This clutters output prints.

* libvpx: Do not return error for incomplete frame read in read_frame

* libvpx: Initialize threads using 32nd byte instead of 1st

In most cases, the first byte in corpus of *.ivf files is 'D'.
So using first byte results in same thread count in most cases.
Using 32nd byte in the data (one of the bytes that signals size of
the frame) will help in testing for different thread configurations.

* libvpx: Updated configure options and removed redundant cflags

Removed generic-gnu as target
Added --disable-webm-io as that is not needed here
Added --enable-debug to enable asserts
Removed redundant cflags and cxxflags

* libvpx: Removed threaded mode from build.sh

vpx_dec_fuzzer.cc in libvpx now tests both single and multi-thread
configurations using a single binary.

* libvpx: Removed vpx_dec_fuzzer.cc and README.md

Removed vpx_dec_fuzzer.cc and README.md from projects/libvpx
vpx_dec_fuzzer.cc is now part of libvpx
2018-11-15 16:50:54 +11:00
sebpop 4b7c09e037 [zlib] add test for fast crc32 (#1954)
Add a check for the recently added routines to combine crc32 checksums.  This
change adds more code coverage, however the checksum_fuzzer still does not pass
the complexity check: (the threshold is at 100)

oss-fuzz$ build/out/zlib/checksum_fuzzer -runs=10 2>&1 | grep -Po "INFO: Loaded [[:digit:]]+ module.*\(.*(counters|guards)\):[[:space:]]+\K[[:digit:]]+"
92
2018-11-14 14:00:16 -08:00
htuch 8541fad5d1 [envoy] fix non-referrant symlinks in coverage build. (#1953)
Signed-off-by: Harvey Tuch <htuch@google.com>
2018-11-14 09:53:41 -08:00
Behdad Esfahbod 22dd200571 [harfbuzz] Build static libraries (#1952)
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11384
https://github.com/google/oss-fuzz/pull/1950
2018-11-14 09:08:44 -08:00
Abhishek Arya a95ce27699
Revert "[harfbuzz] Copy shared libraries to out (#1950)" (#1951)
This reverts commit 2918edc696.
2018-11-14 07:07:34 -08:00
Behdad Esfahbod 2918edc696 [harfbuzz] Copy shared libraries to out (#1950)
Now that we link against shared libraries, this is necessary.

Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11384
2018-11-14 07:06:31 -08:00
Nathan Moinvaziri 9efa078739 [minizip] Set CXX cmake flags for linking with libFuzzer. (#1948) 2018-11-13 10:17:29 -08:00
Nathan Moinvaziri 784c793314 [minizip] Fuzz minizip (#1945)
* Added minizip project.

* Added minizip project google/oss-fuzz#1940.

* Fixed comments.
2018-11-12 11:59:21 -08:00
Janne Grunau 54f8203588 [dav1d] remove experimental flag (#1947)
* dav1d/coverage: exclude include/common/dump.h

It includes only functions used during development and is expected to be
unused.

* dav1d: remove experimental flag
2018-11-12 11:57:24 -08:00
Behdad Esfahbod 3a88d49132 [harfbuzz] Link against shared library (#1946)
We don't want to build fuzzing-specific limited version of library
anymore, as we like to test exactly what the production version
does.
2018-11-12 10:48:57 -08:00
Tim Rühsen aa01541a0a [wget2] Build MHD from latest tarball (#1943) 2018-11-12 09:09:53 -08:00
Abhishek Arya 7de7a3afad
Add checksum_fuzzer to bad build check exclusions
This is due to small number of edges in the fuzz target
2018-11-11 07:16:34 -08:00
obgm 0db7736b95 [libcoap] build.sh: disable DTLS (#1942)
OSS fuzzing currently is done without DTLS support. As of
4.2.0-rc2, libcoap's configuration builds against OpenSSL by
default and thus `--disable-dtls` must be passed to the
configuration script.

Fixes issue 11309
2018-11-11 07:08:08 -08:00
steadmon 89c53fee79 [git] Add basic config for git fuzzing. (#1938)
* Add basic config for git fuzzing.

* Fix CFLAGS/CXXFLAGS issue when building Git fuzzers.

* Build corpora from packfiles and add libfuzzer options.
2018-11-09 15:10:24 -08:00
Max Moroz 6def182595
[infra] Clarify "run_fuzzer" and "shell" commands and remove "profile". (#1939) 2018-11-09 09:24:54 -08:00
Evgeny Vereshchagin 3358b336be [infra]: place the findings of fuzzers run with `helper.py run_fuzzer` in $OUT (#1922)
When `libFuzzer` is used as a fuzzing engine it conveniently puts
everything it finds into its working directory, which happens to
be $OUT. When any other engine is used, the output is sent to /tmp,
which disappears as soon as the container stops. That makes it
unnecessarily hard to extract reproducers found by afl for further analysis
without joining the mount namespace of a running container and
almost impossible with `honggfuzz`, that exits immediately after a crash.
2018-11-08 09:27:46 +11:00
YannisGuyon 1ad8633819 webp_animencoder: Add target to fuzz animation encoding (#1935)
* Add new fuzz target for encoding and misc

- Add fuzz_webp_enc_dec and adapt Dockerfile, build.sh
- Lint existing targets
- Add license headers
- Increase fuzz.dict

* webp_enc_dec: Convert input images to inline C arrays

Local files are not available on oss-fuzz servers.

* webp_enc_dec: Fix timeout by skipping crusher

The target fuzz_webp_enc_dec with msan crashes (timeout)
on a 128*128px image encoding with max compression (crusher).
Reduce crusher encoding to 16*16px and below.
Bug report 10423

* webp_enc_dec: Replace cruncher by lossy alpha encoding

The target fuzz_webp_enc_dec with msan crashes (timeout)
during encoding with max compression (cruncher).
Reduce alpha cruncher encoding to 16*16px and below.
Bug report 10634

* webp_enc_dec: Clamp slow parameters for big images

The target fuzz_webp_enc_dec with ubsan crashes (timeout)
during encoding with heavy compression. The cause can not
be easily removed without reducing performance.
Clamp compression parameters for images bigger than 16*16.
Bug report 10700

* webp_enc_dec: Limit alpha_quality to 99 when method is 6

The target fuzz_webp_enc_dec with asan crashes (timeout)
during encoding with heavy alpha compression.
Clamp alpha compression parameters for images bigger than 16*16.
Bug report 10838

* webp_animencoder: Add target to fuzz animation encoding

Add fuzz_webp_animencoder.cc and modify Dockerfile, build.sh
accordingly.
The thresholds for input size and encoding parameters are low
to prevent timeouts.
Some functions used by fuzz_webp_animencoder and fuzz_webp_enc_dec
have been moved to fuzz.h.
2018-11-07 11:17:08 -08:00
sebpop 08bb5d9bd7 [zlib] add fuzzers (#1780) 2018-11-07 10:20:02 -08:00
sebpop 3a57b3ed7c [zlib-ng] point to official git repo (#1936)
We now can point the git clone of oss-fuzz to the upstream project git:
4999e84a04
2018-11-07 10:18:35 -08:00
mancoast 661c8e7bd3 Update projects/mandelbulber/project.yaml (#1933) 2018-11-07 06:33:21 -08:00
Martin Storsjö 4d1a886356 ffmpeg: Build fdk-aac with -fno-sanitize=shift-base (#1932)
The upstream fdk-aac project at Fraunhofer currently have no active
plans to avoid left shifts of negative values, so disable this
checker to help find other potential issues.
2018-11-07 06:22:01 -08:00
clem1 94ae92013a yara: enable dotnet module for fuzzing (#1931) 2018-11-07 06:21:24 -08:00
Luca Berton b05d5d8b26 Fix typos in docs (#1934) 2018-11-07 06:20:13 -08:00
Janne Grunau 8bbf279cc3 dav1d: build fuzzing binaries with meson (#1929)
Use the multi-threaded fuzzing target and share the seed corpus.
2018-11-06 21:10:02 -08:00
Brian Smith 166cb246a7 [ring] Add project (#1930) 2018-11-06 18:51:37 -08:00
Abhishek Arya bbac75cdef
Revert "Revert "[infra] also pass dictionaries when `afl` or `honggfuzz` is used as a fuzzing engine (#1925)" (#1927)" (#1928)
This reverts commit 6c6934dc8b.
2018-11-06 08:30:58 -08:00
Max Moroz 6c6934dc8b
Revert "[infra] also pass dictionaries when `afl` or `honggfuzz` is used as a fuzzing engine (#1925)" (#1927)
This reverts commit 56fc756fc9.
2018-11-06 08:00:43 -08:00
Evgeny Vereshchagin 56fc756fc9 [infra] also pass dictionaries when `afl` or `honggfuzz` is used as a fuzzing engine (#1925)
Currently, dictionaries are taken into account only when `libfuzzer` is
used as a fuzzing engine (and also apparently `none` but I'm not sure what it is).
This patch makes it possible to make use of dictionaries with other fuzzing
engines too. I didn't touch the code handling options passed to libFuzzer
so as not to break anything :-)
2018-11-06 07:52:24 -08:00
Franziskus Kiefer f1b27ccd1e Update project.yaml (#1926)
Adding CC for NSS contributor.
2018-11-06 06:14:11 -08:00
Tim Rühsen 16fcc34ac8 [libpsl] Fix build: convert PSL to NFC (#1924) 2018-11-04 14:50:45 -08:00
Caolán McNamara 46b1adfd89 libreoffice build requires en_US.UTF-8 locale now (#1923) 2018-11-04 08:45:21 -08:00
Abhishek Arya d29c322809
Revert "Update requests version 2.2.0" (#1921)
* Revert "Update requests version (#1913)"

This reverts commit 96fce46d4a.
2018-11-03 07:40:30 -07:00
Bhargava Shastry eb52530096 xz: Add the xz/lzma decompressor to oss-fuzz (#1919) 2018-11-02 16:51:39 -07:00
Varun Khaneja 5cca3a6d07 [unrar] Fuzz unrar v5.6.8 before merging that to master (#1920) 2018-11-02 16:44:21 -07:00
htuch 991bf32f47 envoy: use Bazel to build corpora. (#1917)
* envoy: use Bazel to build corpora.

Rather than scraping this out of the source tree, build each corpus
under Bazel. The advantage is that we can now support synthesized
corpora, e.g. automated generation from unit tests.

Signed-off-by: Harvey Tuch <htuch@google.com>

* Review feedback.

Signed-off-by: Harvey Tuch <htuch@google.com>
2018-11-02 07:41:32 -07:00
jonathanmetzman 96fce46d4a
Update requests version (#1913) 2018-10-30 13:16:15 -07:00