Commit Graph

7259 Commits

Author SHA1 Message Date
DavidKorczynski e36b080f59
ansible: extend fuzzers (#7811)
* ansible: rename fuzzers

* ansible: add encryption fuzzer
2022-06-07 10:54:40 +01:00
DavidKorczynski 14340a4277
janet: fix build (#7812)
Following
c9f33bbde0
2022-06-07 10:54:11 +01:00
Dongge Liu 639cc9588e
Execsan syntax error (minor fixes) (#7806)
* Removes the `: ` prefix in our previous pattern to capture case ii and reduce false negatives:
   1. Our previous pattern (i.e. `: Syntax error`) is designed to reduce false positives, but it relies on `dash` to print out an error message within one `write` syscall. E.g. `sh: 1: Syntax error: "invalid_command" unexpected`.
   2. In some cases, `dash` breaks the message into multiple `write` syscalls. E.g. it invokes 2 `writes` whose buffers respectively contain `sh: 1:`, ` Syntax error: "invalid_command" unexpected`.

* Fix outdated wording

* A TODO about using more specific patterns of error messages
2022-06-07 11:50:30 +10:00
Henry Lin 4eb1930dda
Tomcat: initial integration (#7790)
Initial integration
2022-06-07 11:34:49 +10:00
afosscontact 69fcf0a86f
opencv: new Fuzzer for readNetFromTensorflow (#7781)
* opencv: new Fuzzer for readNetFromTensorflow

* Add license.

* Fix. Use buffer instead of filepath to call readNetFromTensorflow.

* Fix. Fuzzing only readNetFromTensorflow function.
2022-06-07 11:34:11 +10:00
Catena cyber 09c104b9a8
ngolo-fuzzing: try to get coverage (#7808)
By removing runtime target which times out the whole coverage
2022-06-06 20:58:57 +00:00
DavidKorczynski 4fe3b59a60
gdk-pixbuf: fix build (#7807)
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=47473
2022-06-06 12:01:35 +01:00
Dongge Liu 62f034e81d
Detect shell injection based on syntax errors (#7795)
* Remove redundant tripwire from Makefile

* Detect shell corruption based on syntax errors

* Type, name, format, typo, etc.

* Error pattern matching logic

* clang-format

* Code structure fix

* Extend the pathname length of shell to be safe

* Remove redundant operations on memory read from regs

* More specific patterns

* Identify sh

* Remove redudant substr

* Document shell corruption in README.md

* Clang-format

* Organise printf/debug_log/cerr

* Remove a completed TODO

* Use readlink instead of `file`

* Clang-format
2022-06-06 14:14:01 +10:00
Navidem ae83c88a54
Upgrade infra and projects to go1.18 (#7791)
* Replace go get with go install in the scritp

* Remove go get from projects

* Replace gotip with go

* Fix CI

* Add missing dependency for cryptofuzz
2022-06-06 11:31:04 +10:00
Cyril Tovena f99ec824ca
Update logql package location (#7399) 2022-06-03 11:32:27 +01:00
Catena cyber 258dec7e31
ngolo-fuzzing: use DNDEBUG for libprotobufmutator fuzzer (#7792)
* ngolo-fuzzing: use DNDEBUG for libprotobufmutator fuzzer

* ngolo-fuzzing: temporary workaround to work with latest go
2022-06-03 10:27:58 +01:00
Arthur Chan 5af82b8e38
ansible: initial integration (#7732)
* ansible: initial integration
initial fuzzer setup
2022-06-02 16:59:18 +01:00
Navidem 863f16e280
Give introspector builds a timeout same as other builds (#7794)
Give introspector buids same TO
2022-06-02 10:32:01 -05:00
Kobrin Eli d533911bf3
[tensorflow] Fix libfuzzer-undefined build. (#7780) 2022-06-01 22:28:21 -04:00
Alan32Liu 5c56efe1c2 Revert "Remove redundant tripwire from Makefile"
This reverts commit 514d2928bd.
2022-06-02 11:10:41 +10:00
Alan32Liu 3cb7bae824 Revert "Detect shell corruption based on syntax errors"
This reverts commit 5bb187777b.
2022-06-02 11:10:32 +10:00
Alan32Liu 5bb187777b Detect shell corruption based on syntax errors 2022-06-02 11:05:03 +10:00
Alan32Liu 514d2928bd Remove redundant tripwire from Makefile 2022-06-02 10:44:40 +10:00
Navidem d8a7e45314
Remove unnecessary step in fuzz introspector (#7793)
Remove unncessary step in fuzz introspector
2022-06-01 18:00:22 -05:00
Brandon Weeks c065902ddd
go-attestation: fix build (#6988) 2022-06-01 20:34:13 +01:00
DavidKorczynski dc435d0be5
infra: set fuzz-introspector to work with O0 (#7788)
-O0 will skip fuzz-introspector when -flegacy-pass-manager is used, but
not when the new pass manager is used.
2022-06-01 16:52:21 +01:00
Arthur Chan 4a879e62d4
airflow-py: initial integration (#7731)
* airflow-py: initial integration
initial fuzzer setup

* Fix fuzzer
2022-06-01 09:42:09 +01:00
DavidKorczynski 9f6368db95
google-py-crc32c: initial integration (#7742) 2022-06-01 09:41:07 +01:00
Oliver Chang 2af5e25a48
Print sanitizer stacktrace for execSan bugs. (#7782)
Send SIGABRT to the root process being fuzzed to generate a stacktrace.

Also distinguish between syscall enter and exit.
2022-06-01 08:57:27 +10:00
Evgeny Vereshchagin a4befa22a0
[base-runner] no longer fail silently in test_one.py (#7776)
It should make it easier to figure out why exactly
`./infra/helper.py check_build project fuzz-target` fails
by turning
```
INFO: performing bad build checks for /tmp/not-out/tmpa4lph9dr/fuzz-bus-message
ERROR:root:Check build failed.
```
into something like
```
INFO: performing bad build checks for /tmp/not-out/tmpa4lph9dr/fuzz-bus-message
BAD BUILD: /tmp/not-out/tmpa4lph9dr/fuzz-bus-message seems to have either startup crash or exit:
/tmp/not-out/tmpa4lph9dr/fuzz-bus-message -rss_limit_mb=2560 -timeout=25 -seed=1337 -runs=4 < /dev/null
/tmp/not-out/tmpa4lph9dr/fuzz-bus-message: error while loading shared libraries: libcap.so.2: cannot open shared object file: No such file or directory

ERROR:root:Check build failed.
```
2022-05-31 17:07:52 -04:00
DavidKorczynski 1beea533a6
infra: bump fuzz-introspector (#7774)
* infra: bump fuzz-introspector

Bump includes the upgrades:
- calltree overview image improvements:
https://github.com/ossf/fuzz-introspector/pull/284
- UI improvements in calltree page:
https://github.com/ossf/fuzz-introspector/pull/277
- Branch-blocker logic:
https://github.com/ossf/fuzz-introspector/pull/269
- Bug fix: https://github.com/ossf/fuzz-introspector/pull/261

* bump
2022-05-31 11:56:25 -05:00
DavidKorczynski a72b785e95
pyxdg: refine build and extend fuzzers (#7786)
Adds 3 new fuzzers and build pyxdg by way of pip3 install rather than
python3 setup.py
2022-05-31 17:33:25 +01:00
DavidKorczynski f0f58d51ee
aiohttp: add web_http request fuzzer (#7785)
* aiohttp: add web_http request fuzzer

* nit
2022-05-31 13:01:29 +01:00
Evgeny Vereshchagin aaac6a9686
[systemd] turn on i386 (#7777)
https://github.com/systemd/systemd/issues/23532
2022-05-30 13:47:21 +10:00
Oliver Chang a5d3ab8cb0
execSan: Follow forks. (#7771)
* execSan: Follow forks.

- ptrace all child processes.
- Look for execve() calls with /tmp/tripwire as the first argument.
  There's no need for it to actually run.
- Convert to C++.

* remove ununused tripwire code

* comments
2022-05-30 10:31:12 +10:00
Kleis Auke Wolthuizen cbaaca1806
libvips: enable WebP/JPEG support in libtiff (#7775) 2022-05-28 22:20:43 +01:00
psy a0701f06d0
spring-boot: initial integration (#7743)
* Initial integration
2022-05-27 10:57:00 +10:00
DavidKorczynski 7376d3f077
xlrd: initial integration (#7733) 2022-05-27 10:55:59 +10:00
happy-qop 45176751e8
initial integration for fuzzing zip4j (#7748)
* initial integration for fuzzing zip4j

* update developer's email
2022-05-27 10:55:27 +10:00
happy-qop 285405387f
Initial integration of Junrar (#7750)
initial integration of junrar
2022-05-27 10:54:58 +10:00
AdamKorcz 51e8fdeb42
[kubeedge] Initial integration (#7755)
KubeEdge is an open source system for extending native containerized application orchestration capabilities to hosts at Edge. It is a CNCF project that is being used by several large and publicly traded companies in China includig Huawei and Raisecom.

A non-exhaustive list of adopters can be found here: https://github.com/kubeedge/kubeedge/blob/master/ADOPTERS.md
CNCF profile: https://www.cncf.io/projects/kubeedge/
2022-05-27 10:26:26 +10:00
AdamKorcz c7e7c454ca
[containerd] Fix broken build (#7767) 2022-05-26 12:11:23 +01:00
DavidKorczynski c2c093ddac
aiohttp: ensure compiled python runs (#7768) 2022-05-26 12:09:22 +01:00
Emmanuel Bourg 35d9b115e7
jsign: load the keystore from the classpath (#7762) 2022-05-26 11:22:19 +01:00
Dongge Liu d75b3c28aa
pin the version of protobuf (#7766)
pin the version of `protobuf` to fix infra test errors.
2022-05-26 16:12:38 +10:00
Dongge Liu e249bcc669
An attempt to detect shell injection with `ptrace` (#7757)
* An attempt to detect shell injection with ptrace

* Relocate sanitizer files

* Add headers and file descriptions

* Better cleanup

* Name and analogy

* TODOs

* safer cleanup

* More descriptive name

* More descriptive README.md

* More descriptive file names

* One more TODOs
2022-05-26 15:37:04 +10:00
DavidKorczynski a615678670
infra: use only valid targets for python coverage (#7746)
* infra: use only valid targets for python coverage

Some python coverage reports gets clobbered because non-fuzz targets are
included in FUZZ_TARGETS. The consequence of this is that some reports
will have erroneous data. This commit ensures only valid targets are
used when running coverage, which consequently fixes the reports.

* Move executable logic into python fuzzer builder instead
2022-05-26 14:52:30 +10:00
Tim Wojtulewicz a6dbb91560
zeek: Add libfl-dev dependency, remove mobile-ipv6 flag (#7745)
zeek: Add libfl-dev dependency, remove mobile-ipv6 flag, disable spicy plugin
2022-05-25 22:41:36 +01:00
DavidKorczynski 379868d7a9
aiohttp: enable analysis of Pure python code (#7761)
This is in addition to the existing fuzzers that analyse compiled code.
2022-05-25 14:08:22 +01:00
DavidKorczynski 83b5bfcae8
mruby: fix build (#7759)
* mruby: fix build

Ref: https://github.com/google/oss-fuzz/issues/7736

* nit
2022-05-25 11:42:00 +01:00
DavidKorczynski 7baa40678e
pycrypto: initial integration (#7747)
* pycrypto: initial integration

* Add roundtrip fuzzer
2022-05-25 16:33:03 +10:00
Arthur Chan 4bad1173e0
pyca-cryptography: initial integration (#7729)
* pyca-cryptography: initial integration
initial fuzzer setup

* pyca-cryptography: fix ci

* Fix fuzzer

* Fix project.yaml

* Fix project yaml
2022-05-25 16:32:42 +10:00
jonathanmetzman a465bde1f6
Fix trial_build.py (#7752)
1. Make sure we build base images again.
2. Make sure we handle multiple build types properly.
3. Return nonzero on failure.
4. Make a better attempt at introspector builds.
Related: https://github.com/google/oss-fuzz/issues/7726
2022-05-24 17:58:56 -04:00
Navidem c5be869e4e
Add commands to collect branch coverage (#7709)
* Add commands to collect branch coverage

* Add -g flag

* Switch branch coverage option placement

* Set guarding env variable

Co-authored-by: Oliver Chang <oliverchang@users.noreply.github.com>
2022-05-24 16:10:38 +10:00
DavidKorczynski 94b400c520
dask: initial integration (#7688)
* dask: initial integration

* dask: add fuse fuzzer

* update project yaml to match
https://github.com/google/oss-fuzz/pull/7698
2022-05-24 12:06:25 +10:00