Commit Graph

4926 Commits

Author SHA1 Message Date
DavidKorczynski c28f4d8412
serenity: fix entire project build. (#4738) 2020-11-28 08:28:22 -08:00
tsdgeos 753a2a4c5b
Build the new fuzzers (#4733)
The memory sanitizer doesn't build the glib part because it fails, but the cpp and qt5 fuzzers are still built

Code based on code by ecalp-tps from bc358f33ad
2020-11-27 21:04:58 -08:00
Abhishek Arya eaa8b4c5fd
Revert "[Libmediaart] Initial integration (#4701)" (#4727)
This reverts commit 42d01f9c43.
2020-11-27 08:03:33 -08:00
Abhishek Arya 675d138642
Revert "New fuzzers for Poppler (#4635)" (#4726)
This reverts commit bc358f33ad.
2020-11-27 07:56:21 -08:00
ecalp-tps 42d01f9c43
[Libmediaart] Initial integration (#4701)
* Build works. Dict and corpus files - WIP

* Changing primary contact

* Building fuzz targets individually - ld cannot find libgcc_s

* Test if checks work

* mkstemp fails

* Build script done

* Minor

* Exclude get_file and process_file fuzzers for now

* Some comments

* Fix license

* Remove MSan

* Move tar extraction to Dockerfile. Fix dictionary and seed corpus.

* Change dict and corpus

* Small fix
2020-11-26 09:38:52 -08:00
ecalp-tps 945e74805a
[Cairo] Initial integration (#4703)
* Initial commit with build script and Dockerfile

* Corpus and dictionary added

* Some comments

* Trigger build check

* Remove MSan

* Move glib extraction to Dockerfile

* Move fuzzers into this repo. Fetch cairo from the upstream repo.

* Add missing license headers

* Fix dictionary and seed corpus

* Replace malloc with calloc. Remove unused variable. Replace DEFINE with const.

Minor fix
2020-11-26 09:38:10 -08:00
ecalp-tps 27c07b5192
[Gdk pixbuf] Initial integration (#4704)
* initial commit

* ld cannot find libgcc_s

* Build check passes - TODO: dict and corpus

* Corpus and dict added

* Line fix

* Some comments

* Remove MSan

* Move glib extraction to Dockerfile

* Move fuzzers into this repo. Fetch gdk-pixbuf from the upstream repo.

* Add missing license header

* Fix dictionary and seed corpus

* Temporarily using security-tps as the primary contact

* Replace malloc with calloc

* Randomize rotation amount
2020-11-26 09:37:05 -08:00
ecalp-tps bc358f33ad
New fuzzers for Poppler (#4635)
* Initial commit: cpp and glib work. qt5 compilation fails

* changing static libs to shared libs (freetype, lcms, openjp2)

* qt5 compiles

* build works for all three libs - todo: dict names

* Creating copies of dict for each fuzz target

* Remove tail command from build script

* Trying to fix build checks - export LD_LIBRARY_PATH

* change libpng and libz to static libraries

* retrigger checks

* ld cannot find -lgcc_s

* WIP for qt5

* Build check passes locally

* Remove -fno-rtti to make undefined sanitizer work. Remove MSan.
2020-11-26 09:26:40 -08:00
Randy d6957a1a36
stb: add more inputs (#4722) 2020-11-25 23:01:23 -08:00
Oliver Chang d94295fc05
Update project.yaml 2020-11-26 16:05:44 +11:00
DRC 31ed1ac120
[libjpeg-turbo] DRC’s Google acct—>primary_contact (#4721)
This will enable the libjpeg-turbo maintainer to see oss-fuzz bug reports.
2020-11-25 19:54:08 -08:00
Guido Vranken 824b9f85d8
[Cryptofuzz] Several updates (#4715)
* [cryptofuzz] Add trezor

* [cryptofuzz] Disable SymCrypt UBSAN build

* [cryptofuzz] wolfCrypt: Enable cryptocb

* [cryptofuzz] wolfCrypt: Enable ECIES

* [cryptofuzz] Fix symbol collision
2020-11-25 13:20:01 -08:00
DavidKorczynski 8c8f6ef31e
serenity: update cmake file (#4719)
fixes has been made in upstream Serenity on the Js fuzzer so it will compile (https://github.com/SerenityOS/serenity/pull/4164)
2020-11-25 13:17:44 -08:00
Guido Vranken e883ecfb48
pillow, golang updates (#4692)
* [pillow] Remove project.

Despite my best efforts this has never worked properly.
No reward was ever requested or given for this integration.

* [golang] Remove my e-mail address

I helped integrate this project. I'm no longer involved with this project
and don't need to receive bug reports.
2020-11-25 09:00:19 -08:00
DavidKorczynski efd77dbe90
leveldb: fix memory leak in fuzzer. (#4712)
* leveldb: fix memory leak in fuzzer.

* leveldb: remove old code.
2020-11-25 07:41:34 -08:00
Catena cyber 6c9bd20f54
Golang modules documentation (#4711)
* Clones golang-protobuf into the expected directory

* Improves the documentation for golang projects with modules
2020-11-25 07:40:15 -08:00
Will d126898bde
Use compile_go_fuzzer (#4710) 2020-11-24 19:20:21 -08:00
mbarbella-chromium ea136f5106
Add documentation for Python fuzzing. (#4709)
* Add documentation for Python fuzzing.

* Minor formatting/wording changes
2020-11-24 16:19:45 -08:00
DavidKorczynski dd8ad0aa04
[Serenity] initial integration (#4696) 2020-11-24 13:56:55 -08:00
Abhishek Arya cd9477213a
Fix ujson project and infra/ for python atheris. (#4706) 2020-11-24 11:36:42 -08:00
jonathanmetzman ec5491853d
[infra] Add retry decorator and use it. (#4702) 2020-11-24 09:51:56 -08:00
jonathanmetzman a43c85a54c [CIFuzz] Set CIFUZZ env var when building/checking/running CIFuzz fuzzers. (#4699)
Fixes https://github.com/google/oss-fuzz/issues/4604
2020-11-24 08:10:05 -08:00
jonathanmetzman 4b9b56783d
[cifuzz] disable failing test (#4700) 2020-11-24 08:03:59 -08:00
Catena cyber 181c036c5b
Self-hosts golang scripts for golang coverage (#4698)
* Self-hosts golang scripts for golang coverage

* fixup remove useless readmes

* Update Dockerfile

Co-authored-by: Abhishek Arya <inferno@chromium.org>
2020-11-24 07:37:56 -08:00
jonathanmetzman a85de2b3a7
Make CIFuzz more debuggable by allowing one to run off a branch (#4666)
Make it possible to run CIFuzz from a non-master branch
2020-11-24 06:32:23 -08:00
AdamKorcz 9d183d9bb5
[hugo] initial integration (#4589)
* [hugo] initial integration

* Running integration tests again

* Added maintainer email address

* Switched to compile_go_fuzzer

* Attempted fix for build error
2020-11-24 05:10:30 -08:00
Catena cyber 831e4cd96a
Golang coverage reports for projects with modules (#4690)
such as coredns
cloning into GOPATH
2020-11-24 05:08:57 -08:00
AdamKorcz 2814601694
[Flatbuffers] Added maintainer email address (#4693) 2020-11-23 09:25:48 -08:00
Guido Vranken 392e5f8557
[libressl] Fix Cryptofuzz build (#4691) 2020-11-23 06:26:15 -08:00
Catena cyber 91a6a12dbe
Go json coverage (#4689)
* Good fuzz target for golang coverage with modules

* Place target in right directory for go-json-iterator

So that coverage gets access to the right package
2020-11-22 11:05:32 -08:00
Abhishek Arya bb8b2fb354
Fix kubernetes coverage build. (#4687) 2020-11-21 10:55:15 -08:00
Abhishek Arya 57ebc0c76a
Workaround for unbound var GO111MODULE 2020-11-21 09:09:01 -08:00
Catena cyber 2db56c4174
Golang project uses compile_go_fuzzer script (#4685)
* Golang project uses compile_go_fuzzer script

* Kubernetes project uses compile_go_fuzzer script

* Adds golang to ci covergae builds

* fixup

* Golang coverage with go modules

cf coredns project
2020-11-21 07:11:43 -08:00
Max Moroz e534f4fecc
[infra] Save logs when generating code coverage for Go projects (#2817, #2714). (#4683) 2020-11-20 14:02:36 -08:00
Abhishek Arya e7921e7795
Python fuzzing fixes - disable leak checking, remove flags in atheris. (#4681)
* Python fuzzing fixes - disable leak checking, remove flags in atheris.

* Fix flags printing.

* Dont export, use directly.

* Try unset.

* Unset flags when python was built.
2020-11-20 11:10:51 -08:00
Catena cyber c031d50ec9
[infra] Golang coverage summary for each fuzz target (#2817, #2714). (#4671)
* Golang coverage summary for each fuzz target

* Document usage of compile_go_fuzzer

* update the documentation change

Co-authored-by: Max Moroz <mmoroz@chromium.org>
2020-11-20 10:55:33 -08:00
jonathanmetzman ee7031c4a5
Fix permission denied errors on CI in unittests (#4664)
Also remove usrstcp from the repos we do tests since they no longer work with usrstcp (repo history seems to have been rewritten).
2020-11-20 10:39:19 -08:00
jonathanmetzman a28d03be6e
Build base-images before building projects in CI (#4679)
This will help us catch breaking changes to the base-images.
Unfortunately caching seems to fail here when I expect it to help. 
For example, base-builder doesn't build from cache when I do it locally.
This means that every other image I try to build doesn't use the cache. 
That means that base-clang would take forever to rebuild. 
So to compromise, I don't rebuild base-clang here.
This means that this PR won't catch breaking changes to base-image or base-clang that break in base-builder.
But it will catch breaking changes to base-image that break in base-runner and it will catch breaking changes to base-runner and base-builder.
2020-11-20 10:09:17 -08:00
jonathanmetzman 486c1c3e9d
[CI] Build a canary project on infra/ changes. (#4675)
[CI] Build a canary project on infra/ changes.

Build a specific project, sckms, that does msan, ubsan, asan, i386
builds quickly, when infra/ code is changed. This can let us know
when infra/ changes break proper functioning of OSS-Fuzz.
For this to work more thoroughly we also need to rebuild images.
2020-11-20 08:40:47 -08:00
Chris Fallin 5fdc24206e
wasmtime: add register allocator to fuzz targets. (#4669)
Wasmtime uses
[regalloc.rs](https://github.com/bytecodealliance/regalloc.rs), a
register allocator written in Rust that was developed for use in
Cranelift (but is also an independently-usable crate). While it will be
indirectly fuzzed by wasmtime itself once we start fuzzing the new
backends that use it, we should also fuzz it directly, since it exposes
targets just for this. The regalloc fuzzing makes use of a symbolic
checker as an oracle for allocation results, so should be relatively
high-quality. This PR enables the `bt` (backtracking) allocator's fuzz
target, as this is the default allocator.
2020-11-20 07:37:16 -08:00
jonathanmetzman 640a9c2bcf
Fix test_all breakage (#4673)
Specify fuzzing language.
Intended to fix https://github.com/google/oss-fuzz/issues/4672
2020-11-20 07:24:06 -08:00
Abhishek Arya 5e3f47dba6
Fix ujson python fuzzing. (#4667)
* Fix ujson python fuzzing.

* Fix.

* Improve integration.

* Remove preload, stick with wrapper with /bin/sh.

* Update build.sh
2020-11-19 22:41:12 -08:00
asraa e81d27e287
remove third_party (#4665)
Signed-off-by: Asra Ali <asraa@google.com>
2020-11-19 18:10:14 -08:00
Oliver Chang 5da57c9128
Fix requirements.txt for GCB functions. (#4670) 2020-11-20 12:07:09 +11:00
Max Moroz b97f6e296a
[infra] Allow coverage for Go project on GCB (#2817, #2714). (#4668) 2020-11-19 16:07:35 -08:00
Catena cyber 217175212b
[infra] Use generic compile_go_fuzzer for golang projects (#4659)
* Use generic compile_go_fuzzer for golang projects

* fix the copyright in the new script

Co-authored-by: Max Moroz <mmoroz@chromium.org>
2020-11-19 14:18:25 -08:00
Abhishek Arya 772d0efef5
Add missing ldconfig for shared lib path of python libs (#4663) 2020-11-19 10:43:21 -08:00
Abhishek Arya 98fa319760
Improve ujson build.sh to build fuzzers. (#4662)
Still ASAN lib preload is missing.
2020-11-19 10:35:53 -08:00
Abhishek Arya 38b7c5e162
Enable shared build for python deps, needed for pyinstaller (#4661) 2020-11-19 09:54:21 -08:00
mbarbella-chromium e36bb8f7c6
Initial support for ujson (as a Python fuzzing sample). (#4657)
* Initial support for ujson (as a Python fuzzing sample).

* Add python to supported languages.

* Fix TODO.

* Update presubmit to ignore python in projects.

* Format

* Remove explicit addition of -fsanitize=fuzzer-no-link

* Only fuzz using libFuzzer.

Co-authored-by: Martin Barbella <mbarbella@google.com>
2020-11-19 07:40:10 -08:00