Todd C. Miller
2a0ba4008c
Check aliases in fuzz_sudoers if the policy parsed correctly.
2021-02-23 18:48:47 -07:00
Todd C. Miller
c71a397368
We don't need to link fuzz_sudoers with file.c.
2021-02-23 16:39:32 -07:00
Todd C. Miller
e0761b9e3b
Also free safe_cmnd so it doesn't leak.
2021-02-22 20:18:49 -07:00
Todd C. Miller
f92080be62
Prime user/group cached and set the interface list.
...
Also match parsed policy against multiple users.
2021-02-22 10:59:58 -07:00
Todd C. Miller
df42c0c1d2
Perform matching in fuzz_sudoers for inputs that parse correctly.
...
The fuzzer now exercised the normal match code as well as the
pseudo-command (list, validate, etc) match code.
Privileges are also listed for well-formed sudoers file.
2021-02-21 14:59:29 -07:00
Todd C. Miller
30d9497eb6
Add stub library that just feeds files to the fuzzing target.
...
This will allow the fuzzers to be run as part of "make check".
2021-02-07 15:43:51 -07:00
Todd C. Miller
a72d743ec8
Fall back to a temp file if fmemopen() is not available().
2021-02-07 13:56:15 -07:00
Todd C. Miller
4480e26972
Build (but don't run) fuzzers as part of "make check".
...
Uses a stub to make it possible to link w/o libfuzzer.
The goal is to ensure the fuzzers are always buildable and avoid bit rot.
2021-02-06 08:38:38 -07:00
Todd C. Miller
e675f4c078
Don't allow the sudoers fuzzer to open include files.
...
If we allow the fuzzer to choose include paths it will include
random files in the file system. This leads to bug reports that
cannot be reproduced.
2021-02-03 15:20:54 -07:00
Todd C. Miller
3237a18ee3
Use sudoersrestart() in fuzz_sudoers.c
...
Since we run the parser multiple times we need to restart it each time.
2021-02-03 12:52:15 -07:00
Todd C. Miller
e66b132d76
Parser needs user_shost for the %h escape in @include expansion.
...
Fixes oss-fuzz issue #30238
2021-02-03 08:56:32 -07:00
Todd C. Miller
8f2254594f
close sudoersin, not fp, and reset it to be safe
2021-02-02 14:12:43 -07:00
Todd C. Miller
20b3904f4f
Add missing fclose(3) of fmemopen(3) stream; it does not modify the data.
2021-02-02 13:58:31 -07:00
Todd C. Miller
d3735b98e9
Call init_parser() after parsing to clean up completely.
2021-02-01 20:37:59 -07:00
Todd C. Miller
1e3cecc608
Add initial fuzzers to be used by oss-fuzz.
...
These are not yet hooked up to the sudo build.
2021-02-01 15:17:57 -07:00