Commit Graph

5244 Commits

Author SHA1 Message Date
jonathanmetzman a21e218511
[cifuzz][NFC] Rename cifuzz.py to build_fuzzers.py (#5107)
Since cifuzz.py now only deals with building fuzzers, change the
name to build_fuzzers.py
2021-02-04 06:52:22 -08:00
AdamKorcz 14281d26a0
[Fasthttp] Fix failing coverage build (#5109) 2021-02-04 05:44:22 -08:00
AdamKorcz b0f092614e
[Gitea] Fix failing coverage build (#5110) 2021-02-04 05:43:34 -08:00
AdamKorcz 60d9b0d9a7
[grpc-gateway] Fix failing build (#5111) 2021-02-04 05:43:10 -08:00
AdamKorcz 79ce55b888
[tidb] Fix failing build (#5112) 2021-02-04 05:41:50 -08:00
jonathanmetzman 43c9e9138c
[cifuzz][NFC] Refactor tests (#5106)
1. Use pyfakefs when possible instead of tempdir
2. Favor decorators instead of contextmanagers when mocking for less indentation and greater consistency.
2021-02-03 15:18:56 -08:00
Evgeny Vereshchagin ef2f42b3b1
[selinux] build the project more often (#5105)
It should help to prevent OSS-Fuzz from reporting bugs that
have already been fixed.
2021-02-04 09:44:35 +11:00
jonathanmetzman 7f150fe75e
[cifuzz] Abstract-away OSS-Fuzz specific bits (#5088)
Abstract away OSS-Fuzz specific bits into the OSSFuzz implementation
of the ClusterFuzzDeployment class. This will make it easier to implement
support for other deployments of ClusterFuzz (including ClusterFuzzLite).
2021-02-03 12:46:19 -08:00
Ali Zhang e7bd7fc5e3
pigweed: Update auto_ccs (#5102) 2021-02-03 11:36:43 -08:00
Ali Zhang 92e78de4ce
pigweed: Filter out example fuzzers in pw_fuzzer (#5101)
Do not run example fuzzers in pw_fuzzer as those are for demonstration
purposes.

Test: run `python infra/helper.py build_fuzzers  pigweed` and observe
      pw_fuzzer/toy_fuzzer in pw_fuzzer is NOT copied to out directory.
2021-02-03 11:36:37 -08:00
Stefan Bucur 50cb57808e
Simplify the Envoy integration by using the new rules_fuzzing primitives. (#5062)
* Simplify the Envoy integration by using the new rules_fuzzing primitives.

* Tweak ASAN instrumentation.
2021-02-03 08:09:04 -08:00
Eugene Kliuchnikov 23622cd4da
Fix https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=30030 (#5100)
Recent build commit has changed artifacts path.
2021-02-03 06:54:51 -08:00
Abhishek Arya 40913e07ba
Update build.sh 2021-02-03 00:12:49 -08:00
Abhishek Arya dd083db4a6
Update build.sh 2021-02-02 23:45:48 -08:00
Ali Zhang 4ea64fc735
pigweed: Restore fuzzing (#5099)
Fuzzing was broken due to toolchain refactoring. This change brings
things back.

Test: Locally built and run the example toy_fuzzer per
      https://google.github.io/oss-fuzz/getting-started/new-project-guide/#testing-locally
2021-02-03 17:24:27 +11:00
tsdgeos 7dd8e7abbb
Fix karchive and kimageformats afl build (#5098)
* Fix karchive and kimageformats afl build

* Remove unneeded /bin/bash line

Co-authored-by: Abhishek Arya <inferno@chromium.org>
2021-02-02 21:20:47 -08:00
Todd C. Miller 1ca56df17e
sudoers: use in-tree fuzzers and add new one for the sudoers parser (#5089) 2021-02-02 15:59:02 -08:00
DavidKorczynski e518f6e22e
Fix nodejs build after experimental-quic flag removed. (#5094) 2021-02-02 09:59:09 -08:00
Abhishek Arya 0af227644e
Update afl++ to 1f71b85426f837ebcae8381897d44a3a67c73a4f (#5095)
For https://github.com/google/oss-fuzz/issues/4280#issuecomment-771495411
2021-02-02 08:37:12 -08:00
Julien Pivotto e0531d092a
Update Prometheus team members (#5091)
Dear OSS-Fuzz maintainers,

Brian Brazil has resigned from the Prometheus project, and we have
decided to put Björn Rabenstein in place for the OSS-Fuzz reports.

Thanks

Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu>
2021-02-02 07:50:07 -08:00
Abhishek Arya 692647fe1e
Update bazel.md 2021-02-01 22:53:11 -08:00
Stefan Bucur 71371440a9
Add a subsection on Bazel projects in the New Project Guide. (#5069)
* Add a subsection on Bazel projects in the New Project Guide.

* Turned the Bazel doc into a stand-alone page with detailed instructions.
2021-02-01 22:49:32 -08:00
Abhishek Arya ebe4848a52
Properly fix stripping of -fsanitize=fuzzer-no-link for afl++ (#5090)
Fixes several builds - ibmswtpm2, tpm2-tss, etc
2021-02-01 21:16:56 -08:00
van Hauser 05cac485d3
Fixes afl++ installation (#5087)
* fix afl++ installation

* update to experimental afl++ checkout, setting afl-clang-fast

* update afl++ commit id to prevent unnecessary compile warnings

* Remove dictionary links addition.

Co-authored-by: Abhishek Arya <inferno@chromium.org>
2021-02-01 16:20:18 -08:00
jonathanmetzman 95d3905ec9
[cifuzz] Support a batch fuzzing mode (#5073)
In this mode, CIFuzz will keep fuzzing until the time limit is reached, even if a crash was found.
2021-02-01 10:49:33 -08:00
Abhishek Arya b19e700192
Revert "Switch to using afl-clang-fast for afl++. (#5074)" (#5086)
This reverts commit 42018eeb1c.
2021-02-01 07:44:13 -08:00
AdamKorcz 958e0abd68
[pngquant] Initial integration (#5078)
* [teleport] Initial integration

* Minor update to run tests again

* [pngquant] Initial integration

* Small fix

* Removed afl

* Updated build files

* Update to Dockerfile

* Removed fuzzer
2021-02-01 07:06:19 -08:00
Guido Vranken 6723257f41
[wolfmqtt] Add project (#5054) 2021-02-01 09:48:28 +11:00
AdamKorcz 03fad2084e
[lotus] Initial integration (#4957)
* [teleport] Initial integration

* Minor update to run tests again

* [lotus] Initial integration

* Updated lotus files

* Experimental fix

* Removed cbor fuzzer from build script

* Changed copyright header

* Fixed nits
2021-01-31 11:30:02 -08:00
Abhishek Arya 93eb6024f4
Add AFL_MAP_SIZE in run_fuzzer
Otherwise get errors like these for libsass.

[+] All right - fork server is up.

[-] PROGRAM ABORT : AFL_MAP_SIZE is not set and fuzzing target reports that the required size is very large. Solution: Run the fuzzing target stand-alone with the environment variable AFL_DEBUG=1 set and set the value for __afl_final_loc in the AFL_MAP_SIZE environment variable for afl-fuzz.
         Location : report_error_and_exit(), src/afl-forkserver.c:321
2021-01-31 10:48:04 -08:00
Abhishek Arya 42018eeb1c
Switch to using afl-clang-fast for afl++. (#5074) 2021-01-31 09:11:42 -08:00
Catena cyber c38c48cb3d
No longer disables asm for gcrypt in ecc-diff-fuzzer (#5082) 2021-01-31 09:10:19 -08:00
Tom Thorogood b1916104d5
Add @tmthrgd to go-dns fuzzing project access (#5083)
* Add myself to go-dns fuzzing project

https://github.com/miekg/dns/graphs/contributors should adequately explain why.

* Add missing main_repo

Co-authored-by: Abhishek Arya <inferno@chromium.org>
2021-01-31 09:09:59 -08:00
Michael Jezierny db59caa2d2
Update download URL for InChI library. (#5075)
One of the InChI maintainers contacted me over email to inform us of the
new release, so I'm updating the URL.
2021-01-29 16:18:39 -08:00
DavidKorczynski 97e2bbd234
Civetweb: initial integration (#4983)
* civitweb: initial integration.

* updated the project.yaml

* Trying with a different port.

* Trying port 8002.

* new port.

* Updated the project configurations for civetweb and removed changing of port.
2021-01-29 14:20:31 -08:00
Randy 0e678a37db
Add project utf8proc (#5030)
* Add project utf8proc

* add Dockerfile, build.sh

* dummy commit

* dummy commit

* speculative fix

* Update build.sh

* Update build.sh

* Update build.sh

* Remove afl sanitizer.

Co-authored-by: Abhishek Arya <inferno@chromium.org>
2021-01-29 14:05:27 -08:00
jonathanmetzman 4c4b137a70
[cifuzz][external] Use ssh_url and fix affected fuzzers (#5072)
1. Use ssh_url.

This only affects external (non-oss-fuzz) users.
Since there are none, it doesn't affect anyone.
Even if it did, exploitation would require owning the network
Github actions runs on.
This is to prevent MITM attacks.

2. Affected fuzzers bug:
We accidentally were skipping the remove unaffected functionality.
2021-01-29 10:33:36 -08:00
Florian Mayer 5740711ba1
Remove taylori from cc list (#5067) 2021-01-29 10:06:05 -08:00
tsdgeos 7866ec6566
poppler: Don't force an old meson version (#5065) 2021-01-28 18:14:47 -08:00
Damien Miller 62f70575c5
Enable fuzzing of key exchange (#5066)
* enable null cipher for fuzz tests

* hook key exchange fuzzer into build

Co-authored-by: Damien Miller <djm@google.com>
2021-01-28 16:51:47 -08:00
jonathanmetzman de2ecf8553
[cifuzz] Allow specifying corpus for run_fuzzer (#5064) 2021-01-28 15:04:43 -08:00
jonathanmetzman f2756d7321
[CIFuzz] Move run_fuzzers to new config system (#5063)
Also, decide is_github based on something not used/faked by Skia.
2021-01-29 09:49:03 +11:00
jonathanmetzman d7e85a20b0
[CIFuzz] Fix diffing + Refactor (#5032)
* [CIFuzz] Fix diffing + Refactor

Make diffing work in two scenarios where it previously failed:
1. Commit fuzzing. In this case, we diff $COMMIT against
$COMMIT^1 because the intent here is to fuzz the commit.
2. Fuzzing PRs that aren't to master. In this case, we previously
were diffing against origin/master. Instead, diff against the local
version of the base repo. This also has the nice effect of handling
PRs that havent pulled from master recently enough.

Also do refactoring.
1. Move code that is different for differenct CI systems to continuous_integration.py
2. Change how configuration in build_fuzzers is handled.
Previously configuration was gotten in build_fuzzers_entrypoint
and passed as individual params. This made code ugly and hard to
read. Instead, move code dealing with config to it's own module
config_utils. This module implements a config class which can
be used to create objects that are passed around to code that needs
it. Making the code much easier to read.
TODO: Move run_fuzzers code to new config system.
2021-01-28 12:10:57 -08:00
DavidKorczynski fdcd425579
sudoers: update fuzzers (#5058)
* updates to sudoers fuzzers.

* Updated the fuzzers for sudoers

* Updated the sudoers parse fuzzer

* Remove whitespace
2021-01-28 11:13:28 -08:00
Florian Mayer 00e8c6c5a7
perfetto: run fuzzers with UBSan (#5059)
Our build now supports this as well.
2021-01-28 18:39:29 +00:00
Stefan Bucur 41e24edb3c
Fix argument order in run_fuzzer command example. (#5060) 2021-01-28 08:53:18 -08:00
Abhishek Arya d45336243a
Simplify changed files logic. (#5056) 2021-01-27 17:43:15 -08:00
Abhishek Arya aeb1be4b6e
Fix get_changed_files in infra/ci. (#5055)
Fixes https://github.com/google/oss-fuzz/issues/5022
2021-01-28 11:06:04 +11:00
Abhishek Arya 23e24a4bac
Get list of changed files from branch head, instead of master. (#5048)
* Get list of changed files from branch head, instead of master.

Fixes https://github.com/google/oss-fuzz/issues/5022

* Add debug with subprocess.call.

* Try again debugginig.

* Try again

* Fix works!
2021-01-27 14:28:27 -08:00
Florian Mayer 21c3e09de9
Run fuzzers using AFL now we have fixed the build. (#5053)
Built and ran `python infra/helper.py check_build --engine afl perfetto ...` on all our fuzzers successfully.
2021-01-27 13:29:00 -08:00