Commit Graph

6496 Commits

Author SHA1 Message Date
DavidKorczynski 8d6d825b9f
docs: remove statement on naming seed with sha1 values as it is no longer valid (#6754) 2021-11-03 16:09:56 -04:00
Navidem 176e32b9c0
fix Dockerfile COPY command (#6757) 2021-11-03 15:49:42 -04:00
DavidKorczynski d92411cd2d
binutils: cleanup seeds (#6753) 2021-11-03 15:14:54 +00:00
Oliver Chang a75844def0
Don't check for novel crash in batch fuzzing. (#6749)
* Don't check for novel crash in batch fuzzing.

* format
2021-11-03 10:10:42 -04:00
Oliver Chang 2affa1e8e7
Use nargs='*' instead of REMAINDER for helper.py. (#6750)
argparse.REMAINDER is too greedy and will consume known optional
arguments as well.

Fixes #6686.
2021-11-03 10:09:55 -04:00
Oliver Chang a72ef3884f
Don't set seed for batch fuzzing. (#6736)
Fixes #6714.
2021-11-03 14:22:12 +11:00
Mitchel Herman caf9958a8f
Add DOCKER_IN_DOCKER and filestore to platform config (#6744)
Do this to reduce configuration required for GCB and Prow.
2021-11-03 02:03:18 +00:00
DavidKorczynski 2ef92e60d8
binutils: fix afl build so we dont run into false positives (#6748) 2021-11-02 22:58:36 +00:00
Peter Foley dfaf20a5e2
Avoid calling strlen on uninitialized data (#6747)
GetINCHIfromINCHI calls strlen on szOptions, which leads to undefined behavior as it's not a valid null-terminated byte string.
Explicitly NULL out the char* to avoid this.
2021-11-02 21:41:37 +00:00
Hilko Bengen ed02a7d820
Add bison, flex (#6745)
Some PRs require parsers to be rebuilt. Fix oss-fuzz failures for
those cases.
2021-11-02 21:13:46 +00:00
Mitchel Herman 6634315600
Add Prow PlatformConfig (#6732) 2021-11-02 16:14:56 -04:00
DavidKorczynski f7d466f949
libdwarf: use github with latest repo instead of souurceforge (#6743) 2021-11-02 19:57:22 +00:00
Nikita Popov 3b501d3ac3
[php] Make reports public (#6741)
We have some fuzzers that are security-critical (json, exif), but
these haven't found anything genuinely new in a long time. It seems
unlikely that they will find something that is not a regression in
a pre-release version (and as such okay to be public).

The other fuzzers are not classified as security-critical by the
the PHP project (unserialize, unserializehash, parser, execute,
function-jit, tracing-jit). The latter three produce the vast
majority of new reports.

I think it would be more valuable to make fuzzing reports public
and have a larger set of people who can work on them.
2021-11-02 13:08:48 -04:00
Arran Cudbard-Bell b81ef0bd75
Pass the correct flags to enable coverage profiling (#6740)
...and hopefully fix the the coverage builds.
2021-11-02 14:02:43 +00:00
jonathanmetzman 7693e9640c
[clusterfuzzlite] Make timeout and OOM reporting optional. (#6711)
OOMs will be reported by default. Timeouts wont.
Fixes: https://github.com/google/oss-fuzz/issues/6703
Should also fix: https://github.com/google/oss-fuzz/issues/6619
Fixes: https://github.com/google/oss-fuzz/issues/3432
Related: https://github.com/google/oss-fuzz/issues/6685
2021-11-02 08:01:46 -04:00
Philip Withnall 3f26615977
Add additional maintainer CC to GLib configuration (#6738)
Add Sebastian Dröge as an additional CC to oss-fuzz issues for GLib. He’s a maintainer (see https://gitlab.gnome.org/GNOME/glib/-/blob/main/docs/CODEOWNERS and https://gitlab.gnome.org/sdroege).
2021-11-02 11:58:18 +00:00
DavidKorczynski 80ee8added
libdwarf: ensure error is a valid pointer to avoid early exit (#6739)
Signed-off-by: David Korczynski <david@adalogics.com>
2021-11-02 11:34:04 +00:00
DavidKorczynski 52c91ce83a
net-snmp: cleanup following upstream changes (#6737) 2021-11-02 11:33:48 +00:00
Oliver Chang ef0e5413c9
CFLite: Logging fixes. (#6715)
Don't output stacktrace again in detected bug log message.

Disable Python buffering to avoid log interleaving issues.
2021-11-02 16:50:59 +11:00
DavidKorczynski e9109e929b
libdwarf: initial integration (#6705)
* libdwarf: initial integration

* libdwarf: finalize integration
2021-11-02 12:28:15 +11:00
DavidKorczynski d070b0208a
net-snmp: disable leaks for api fuzzer (#6735) 2021-11-01 21:45:18 +00:00
jonathanmetzman 010865ad76
Fix typo (#6731) 2021-11-01 15:39:27 -04:00
jonathanmetzman 922daf2d81
Fix pushing clusterfuzzlite-build-fuzzers (#6730) 2021-11-01 15:33:06 -04:00
jonathanmetzman 36e5931a19
Make a better api for platform specific config. (#6708)
1. Move most of the generic stuff into BasePlatformConfig.
2. Make a GCB platform config that sets WORKSPACE and PROJECT_SRC_PATH so users don't have to.
3. Make a skeleton prow platform_config for Mitchel to fill out.
4. Make users explicitly specify the CFL_PLATFORM so we can pick CI environments
2021-11-01 12:29:38 +00:00
DavidKorczynski 446b56c31b
binutils: remove strings corpus and fix AFL build (#6717) 2021-11-01 11:36:38 +00:00
jonathanmetzman 1ece14aeb2
Abstract away duplicate code in prepare_for_fuzzer_build (#6706)
Share more code between the 4 implementations of `prepare_for_fuzzer_build`.

This simplifies the code of these implementations, reduces repetition and makes them easier to
understand.

Create helper functions/methods for:
1. Creating a failed `BuildPreparationResult`: `get_build_preparation_failure`
2. Building an external project docker image: `_build_external_project_docker_image` 
3. Cloning a repo and checking out the specified commit/pr: `_clone_repo_and_checkout`
4. Detecting the main repo `_detect_main_repo`
5. Creating a repo manager from an existing checkout: `_create_repo_manager_for_project_src_path`

Change `ExternalGeneric` implementation of `prepare_for_fuzzer_build` to:
1. Call `_create_repo_manager_for_project_src_path`
2. Call `_build_external_project_docker_image`

Change `InternalGeneric` implementation of `prepare_for_fuzzer_build` to:
1. Call `_detect_main_repo`
2. Call `_create_repo_manager_for_project_src_path`

Change `ExternalGithub` implementation of `prepare_for_fuzzer_build` to:
1. Call `_clone_repo_and_checkout`
2. Call `_build_external_project_docker_image`

Change `InternalGithub` implementation of `prepare_for_fuzzer_build` to:
1. Call `_detect_main_repo`
2. Call `_clone_repo_and_checkout`
2021-11-01 02:59:44 +00:00
jonathanmetzman 4ce563f882
Fix diffing on non-GitHub and improve config (#6707)
Fix diffing on non-GitHub and improve config

1. Remove obsolete comments.
2. Remove unused function get_pr_ref
3. Correct comment on git_sha
4. Rename commit_sha to git_sha
5. Make base_commit, pr_ref, and base_ref non-github specific and move to
CiEnvironment.
6. Hoist get_diff_base to base class to allow diffing
7. Fix downloading coverage on non-Github.
8. Add TODO so that we don't assume github actions is run on github.com
(enterprise users)
9. Rename repo_url to git_url.
10. Add missing git_url method base class.
11. Clarify what git_url, git_sha and pr_ref are for and leave TODOs about how
we can eliminate them.
12. Fix typos.
2021-10-31 20:36:07 -04:00
jonathanmetzman 4fd64a3792
[clusterfuzzlite] Upload builds after doing bad build check (#6712)
Builds shouldn't be uploaded if the check fails.
Fixes: https://github.com/google/oss-fuzz/issues/6667
2021-11-01 11:26:59 +11:00
izzeem 459217ef10
elfutils/readelf (#6670)
* add elfutils/readelf

* Update project.yaml

Co-authored-by: jonathanmetzman <31354670+jonathanmetzman@users.noreply.github.com>
2021-10-31 13:02:36 -04:00
jonathanmetzman 32bf394e2a
[build-images.sh] Improve testing (#6709) 2021-10-31 09:54:39 -04:00
DavidKorczynski 6fb4ca2c83
binutils: enable dwarf decoding analysis (#6704) 2021-10-30 19:36:24 +01:00
DavidKorczynski cdd7871f22
opendnp3: fix afl build (#6702) 2021-10-30 16:08:47 +01:00
DavidKorczynski 38e18a9cce
freeradius: fix build (#6701) 2021-10-30 16:08:31 +01:00
DavidKorczynski f32e7a6d2d
librdkafka: fix build (#6700) 2021-10-30 16:08:15 +01:00
DavidKorczynski 89f9287918
tensorflow-py: fix build (#6699) 2021-10-30 16:07:57 +01:00
DavidKorczynski a915e85916
binutils: add main_repo and clean up set up (#6697) 2021-10-30 16:07:37 +01:00
DavidKorczynski 9c0f00efac
tdengine: fix build (#6698) 2021-10-30 16:06:59 +01:00
DavidKorczynski 7c9c2358f0
binutils: Add targeted bfd architecture fuzzer and extended corpus (#6693)
* binutils: Add targeted bfd architecture fuzzer

* binutils: add proper seed-corpus

* binutils: typo fix

* binutils: create corpus for more fuzzers
2021-10-29 18:37:58 +01:00
Oliver Chang 3c564bca6c
Fix download_latest_build for pull requests. (#6688)
Getting the LATEST_BUILD_WINDOW latest commits from HEAD^ is wrong. We
should use the diff base instead.

Also modify the Ci.get_diff_base methods to not include "..." in the
return value. This will be appended in get_changed_code_under_test
instead.

This also potentially fixes a behaviour mismatch with GitHub
PRs and diffing against the latest base branch rather than
git merge-base base-branch HEAD.
2021-10-29 09:23:33 -04:00
DavidKorczynski 11310a70d5
binutils: 3 new fuzzers {windres, strings, ranlib} and build cleanup (#6690)
* binutils: 3 new fuzzers {windres, strings, ranlib} and build cleanup

* binutils: reduce fuzzers built in CI
2021-10-29 14:09:16 +01:00
Tomasz Zawadzki 1d3112e443
Adding CC to SPDK project (#6691) 2021-10-29 11:48:26 +01:00
Even Rouault 59dae9c080
[GDAL] Fix path to main script, due to GDAL source tree reorganization (#6687) 2021-10-29 10:38:55 +01:00
DavidKorczynski 6053054a09
binutils: add dlltool fuzzer (#6675)
* binutils: add dlltool fuzzer

* binutils: build in a loop to try multiple times

* binutils: disable GAS building as AFLPP has problems with it

* disable building ld to make aflpp work

* binutils: simplify build

* binutils: reenable gas fuzzer

* binutils: conditionally build gas fuzzer
2021-10-28 22:06:40 +01:00
DavidKorczynski cf73e69f6f
duckdb: fix build to work with CI (#6684)
* duckdb: fix build to work with CI

* Update build.sh
2021-10-28 19:54:08 +00:00
jonathanmetzman b2fa3547b2
[clusterfuzzlite] Fixes for gsutil (#6683)
1 Fix usage of gsutil tool.
2 Get rid of run_fuzzers_mode and change to mode. Fixes: #6677
3 Install requirements before copying source code to make iterative development of cifuzz code faster.
2021-10-28 15:00:44 -04:00
Adi (Suissa) Peleg 2d10d2b533
Increasing Envoy per-CPU memory (#6682)
* Increasing Envoy per-CPU memory
Signed-off-by: Adi Suissa-Peleg <adip@google.com>
2021-10-28 13:26:32 -05:00
AdamKorcz 42934572e8
[fluxcd] Initial integration (#6539) 2021-10-28 08:31:47 -04:00
jonathanmetzman b6375d601f
[clusterfuzzlite] Don't use cifuzz term in image name (#6661)
Make images that dont reference cifuzz but which reference
clusterfuzzlite instead.
2021-10-28 08:30:09 -04:00
DavidKorczynski 9804465f3a
binutils: Extending and refining fuzzers (#6674)
Improve binutils fuzzing in three ways:
- Extend objdump and objcopy fuzzers. Make a version of objdump fuzzing
that is more stable
- New targetted disassembly fuzzer for mep architecture
- Include more extensive corpus

Signed-off-by: David Korczynski <david@adalogics.com>
2021-10-28 11:24:01 +01:00
Wan-Teh Chang 223bed30a7
libavif: change primary_contact to wtc (#6672)
Move joedrago to auto_ccs.
2021-10-28 10:41:19 +01:00