Commit Graph

3198 Commits

Author SHA1 Message Date
Max Moroz d4fc73db43
[fuzzing-puzzles] Disable the project for now, as no one is trying to solve the puzzle. 2019-05-29 09:21:06 -07:00
Evan Miller bf8820fde8 [ReadStat] Enable more fuzzers (#2472)
These additional fuzzers all pass the existing check_build heuristics.

In the future, they would probably benefit from an input grammar file or corpus.
2019-05-29 08:32:24 -07:00
jonathanmetzman 4963f6ed93
Use AFL_DRIVER_DONT_DEFER=1 in AFL checks since bad_build_check doesn't support .options (#2471) 2019-05-28 10:29:16 -07:00
Abhishek Arya 4d3073292a
Update test_all 2019-05-28 09:09:33 -07:00
Abhishek Arya 56259f98d9
Revert "[gnupg] Disable afl (#2447)" (#2467)
This reverts commit b7227fdd01.
2019-05-27 17:38:59 -07:00
Marco Elver 9248c34b82 [hostap] Fix build (#2466)
1. Ensure targets are re-linked after re-compiling libfuzzer_entry.o

2. Don't rely on LIBS to link libfuzzer_entry.o correctly (cannot
   reproduce bot build failure, but log suggests this is the issue).
2019-05-27 09:58:44 -07:00
Catena cyber e790ed5b5f Fixes path for mbedtls crypto library (#2464) 2019-05-27 00:53:55 -07:00
Catena cyber 6a1aa9ef0c Mbedtls needs recusive clone now (#2463) 2019-05-27 11:26:06 +10:00
Abhishek Arya 8e128aa324
Fix JSC build with cmake default FindICU.cmake 2019-05-26 10:57:58 -07:00
Abhishek Arya cac28fd860
Update project.yaml 2019-05-25 09:20:15 -07:00
Janne Grunau e5c8204c58 dav1d: fix afl build by using $LIB_FUZZING_ENGINE (#2462)
Requires https://code.videolan.org/videolan/dav1d/merge_requests/714
2019-05-24 18:20:59 -07:00
Abhishek Arya e2003e1f39
Remove code for copying dataflow scripts (#2461)
Dataflow scripts are removed in
51570280af
2019-05-24 13:01:21 -07:00
jonathanmetzman 12fa975bc3 Update regex for clang revision (#2460) 2019-05-24 11:19:55 -07:00
Evgeny Vereshchagin 91a17744a0 infra: skip files whose names start with afl while looking for fuzz targets (#2445)
This should help to get rid of the "WARNING: corpus for systemd_afl-showmap not found:"
messages (that are harmless but confusing a bit). In general _get_fuzz_targets
should probably be in sync with ./infra/base-images/base-runner/test_all (where a file
is considered a fuzz target if grep can find "ELF" in it and so on).
2019-05-24 11:06:22 -07:00
Garret Rieger 2de6dcc337 Add qxliu@google.com to harfbuzz cc list. (#2456) 2019-05-24 11:05:09 -07:00
Marco Elver d4c9198a03 [hostap] Add hostap fuzzers (#2413) 2019-05-24 05:56:38 -07:00
Vincent Ulitzsch 02a91a656b Extend giflib harness: Cover more functions and add protobuf specification (#2442)
* Add protobuf target prototype

* Generalized architecture and added message stubs for future enhancements

* Added fine grained conversion of global/local color tables, LSD and image data

* Added conversion of extensions

* Flagged important TODOs

* Address important todos and add converter for GraphicControlExtension

* Minor bugfix: m_hasLct now reset for every image

* Fixed minor bugs and added GCExt to plaintext chunk

* Minor change to bug fix just for clarity

* Refactoring and add fuzz_dgif_extended

Refactor the code so that both targets import from dgif_fuzz_common.
Also add fuzz_dgif_extended, which exercises more functionality
of giflib

* Added minor comment

* Add new function that is a replica of Android JNI code

* Minor fix

* print errors (covers gif_err.c)

* bug fix in printing and disable it

* bug fix in printing error desc

* Add version variants to header message

* Add draw function from gif_font.c

* Remove LIB_FUZZING_ENGINE from compilation step and add GifDrawText8x8 API to custom fuzz harness

* WIP

* WIP

* WIP

* WIP

* WIP

* WIP

* Remove unnecessary loop

* Small bugfix: x is no longer unitialized

* Change to consistent formatting

* Fix bug that caused build failure
2019-05-24 05:17:05 -07:00
gnrunge b27b7dbc80 Replaces explicit listing of fuzzer target and corpus files with generic (#2455)
detection of these files using wildcards.
2019-05-22 13:02:31 -07:00
Catena cyber 34a719c97f Gnupg: avoids filling disk with logs (#2453) 2019-05-22 09:09:42 -07:00
Émile Grégoire 174f9caad9 [opendnp3] Fix build by installing modern CMake (#2452)
* Install CMake 3.12.

* Move CMake installation in Dockerfile.
2019-05-22 07:42:56 -07:00
jonathanmetzman b7227fdd01
[gnupg] Disable afl (#2447) 2019-05-20 17:28:55 -07:00
Oliver Chang 11baf9c03e
Install latest cmake for JSC. (#2446) 2019-05-20 13:10:38 -07:00
Stefan Bucur 8537bf73b9 [double-conversion] Import the fuzz target into OSS-Fuzz. (#2444)
* Import the double-conversion fuzz target into OSS-Fuzz. double-conversion is a V8 library for computing and parsing string representations of floating point numbers.
2019-05-20 12:20:19 -07:00
Bhargava Shastry e7f7996260 [mruby] Update Dockerfile and build scripts for proto fuzzer (#2432) 2019-05-20 11:07:30 -07:00
Guido Vranken 1198743824 [cryptofuzz] EverCrypt: Don't explicitly allow AVX instructions (#2441)
* [cryptofuzz] EverCrypt: Don't explicitly allow AVX instructions

Recent crashes involving EverCrypt were found to be caused by
AVX instructions in the EverCrypt library. The Makefile explicitly
allowed the use of AVX instructions via hardcoded CFLAGS. The authors
have released a new version that should resolve this problem.

* [cryptofuzz, bignum-fuzzer] Revert to default OpenSSL build method

Reverts the workaround for OpenSSL broken build script, which is
now fixed.

* [cryptofuzz] Compile with -D_GLIBCXX_DEBUG (runtime C++ UB checks)
2019-05-19 07:59:05 -07:00
Zbigniew Jędrzejewski-Szmek c20c3b8029 [systemd]: add Jóhann B. Guðmundsson (#2438) 2019-05-18 07:04:21 -07:00
tsdgeos 3077e22f2e karchive: Also exercise the compressed tar codepaths (#2439) 2019-05-18 07:03:43 -07:00
jonathanmetzman c079879a2b
[i386][skcms] Fix typo (#2436) 2019-05-17 13:48:36 -07:00
jonathanmetzman bdd9519f44
[i386] Use different bucket for i386 builds. (#2435) 2019-05-17 12:47:11 -07:00
jonathanmetzman 9dd5af0b01
[i386][travis] Add i386 build job (#2434) 2019-05-17 12:21:02 -07:00
jonathanmetzman 9add5745bc
[i386] Do i386 builds of skcms (#2433) 2019-05-17 09:48:40 -07:00
Guido Vranken a8d264b377 [cryptofuzz] Add EverCrypt (#2430) 2019-05-17 08:03:10 -07:00
Martin Matuška a996649c2c [libarchive] process archive_read_next_header() return codes like bsdtar (#2427)
ARCHIVE_EOF and ARCHIVE_FATAL are the only valid exit codes
ARCHIVE_RETRY should read to re-entering the loop
All other codes (ARCHIVE_OK, ARCHIVE_WARN, ARCHIVE_FAILED) do not prohibit
the caller from reading data and next headers.

This behavior is identical with bsdtar (tar/read.c) and enables better
discovery of possible bugs by fuzzing.
2019-05-16 10:11:20 -07:00
Émile Grégoire d64e4db184 Updated build.sh for the additional fuzzers. (#2421) 2019-05-16 07:27:52 -07:00
jonathanmetzman 7073fb976c
[i386] Do i386 builds of projects that have opted-in (#2416) 2019-05-15 14:00:57 -07:00
Bhargava Shastry 012ad644ca [mruby] Update primary email (#2425) 2019-05-15 13:21:38 -07:00
Catena cyber 0c8b8eaa21 [gnupg] Removes a patch applied to gnupg (#2422) 2019-05-15 11:18:54 -07:00
jonathanmetzman 898fc435c6
[travis] Use job matrix to split up builds to avoid timeout (#2423) 2019-05-15 11:01:53 -07:00
jonathanmetzman 95dd538c60
[infra] Update name of check_instrumentation and error messages (#2414) 2019-05-15 10:35:06 -07:00
Bhargava Shastry a8acfd51bd [solidity] Fix failing build (#2418) 2019-05-15 06:55:16 -07:00
Evgeny Vereshchagin 2361c62433 [infra] make it possible to override the percentage of targets that can be broken (#2419)
10% is an absolutely sensible default in general especially for single-purpose
libraries like json-parsers. When large "umbrella" projects (like systemd) are
fuzzed with 30 fuzzers (and counting (hopefully :-)) covering code scattered all
over their repositories it's too easy to introduce a broken fuzzer or break a couple
of fuzzers accidentally even after running `check_build`. Waiting for two to three
days for ClusterFuzz to open an issue isn't ideal from the point of view of large
open-source project maintainers (where generally contributors come and go) so one
solution would be to run something like when PRs are opened
```sh
helper.py check_build ALLOWED_BROKEN_TARGETS_PERCENTAGE=0 ...
```
and catch issues as early as possible (and fix them while the context isn't
completely faded away).

I also considered changing this with `sed` and rebuilding `base-images/base-runner`
locally but it takes too much time, looks too kludgy (even to me) and is likely to be broken
in a week or so :-)
2019-05-15 06:38:09 -07:00
jonathanmetzman 8f9a3fa22b
[infra] Fix check_instrumentation in bad_build_check (#2412) 2019-05-14 10:36:48 -07:00
jonathanmetzman 3976a002af
[i386] Improve linking and bad build check (#2410)
Improve linking by copying i386 libs instead of adding `-L` to `CXXFLAGS`
Get bad_build_check working for i386 binaries and add architecture check.
2019-05-14 10:18:02 -07:00
Guido Vranken 3d4e351c0b [cryptofuzz] Add Crypto++ and libgcrypt (#2401) 2019-05-14 09:45:13 -07:00
jonathanmetzman 3df4e14520
Revert "[infra] Roll clang to r360398 (#2405)" (#2408)
This reverts commit 4a9941d9c4.
2019-05-13 15:07:29 -07:00
jonathanmetzman c60fcd7247
Add initial support for i386 builds (#2347)
This feature is not yet officially supported
2019-05-13 15:01:25 -07:00
htuch 7b6c4674b9 [envoy] Add new project auto CCs. (#2409)
Signed-off-by: Harvey Tuch <htuch@google.com>
2019-05-13 14:54:33 -07:00
jonathanmetzman a181b43364
[travis] Add requirements file for travis and fix diff command (#2406) 2019-05-13 13:04:23 -07:00
Bhargava Shastry 8017ffc384 [mruby] Add mruby compile fuzzer (#2380) 2019-05-13 10:40:34 -07:00
jonathanmetzman 4a9941d9c4
[infra] Roll clang to r360398 (#2405) 2019-05-13 10:26:40 -07:00