2
0
mirror of https://github.com/sudo-project/sudo.git synced 2025-08-30 22:05:46 +00:00

Fix fuzz_sudoers output matching.

This commit is contained in:
Todd C. Miller
2021-02-22 16:43:34 -07:00
parent 4adc11e335
commit 5fc6b8c177
2 changed files with 389 additions and 2 deletions

View File

@@ -250,7 +250,31 @@ FUZZ_SUDOERS_OBJS = file.lo fuzz_sudoers.o fmtsudoers.lo parse.lo locale.lo \
stubs.o sudo_printf.o
FUZZ_SUDOERS_CORPUS = $(top_srcdir)/examples/sudoers \
$(srcdir)/regress/sudoers/*.in
$(srcdir)/regress/sudoers/test1.in \
$(srcdir)/regress/sudoers/test2.in \
$(srcdir)/regress/sudoers/test3.in \
$(srcdir)/regress/sudoers/test4.in \
$(srcdir)/regress/sudoers/test5.in \
$(srcdir)/regress/sudoers/test6.in \
$(srcdir)/regress/sudoers/test7.in \
$(srcdir)/regress/sudoers/test8.in \
$(srcdir)/regress/sudoers/test9.in \
$(srcdir)/regress/sudoers/test10.in \
$(srcdir)/regress/sudoers/test11.in \
$(srcdir)/regress/sudoers/test12.in \
$(srcdir)/regress/sudoers/test13.in \
$(srcdir)/regress/sudoers/test14.in \
$(srcdir)/regress/sudoers/test15.in \
$(srcdir)/regress/sudoers/test16.in \
$(srcdir)/regress/sudoers/test17.in \
$(srcdir)/regress/sudoers/test18.in \
$(srcdir)/regress/sudoers/test19.in \
$(srcdir)/regress/sudoers/test20.in \
$(srcdir)/regress/sudoers/test21.in \
$(srcdir)/regress/sudoers/test22.in \
$(srcdir)/regress/sudoers/test23.in \
$(srcdir)/regress/sudoers/test24.in \
$(srcdir)/regress/sudoers/test25.in
FUZZ_SUDOERS_LDIF_OBJS = fuzz_sudoers_ldif.o parse_ldif.o ldap_util.lo \
fmtsudoers.lo locale.lo stubs.o sudo_printf.o
@@ -526,11 +550,13 @@ pvs-studio: $(POBJS)
fuzz: $(FUZZ_PROGS)
@if test X"$(cross_compiling)" != X"yes"; then \
LC_ALL=C; export LC_ALL; \
unset LANG || LANG=; \
MALLOC_OPTIONS=S; export MALLOC_OPTIONS; \
MALLOC_CONF="abort:true,junk:true"; export MALLOC_CONF; \
echo "fuzz_sudoers: verifying corpus"; \
mkdir -p regress/fuzz; \
./fuzz_sudoers $(FUZZ_SUDOERS_CORPUS) > regress/fuzz/fuzz_sudoers.out 2>&1; \
./fuzz_sudoers $(FUZZ_SUDOERS_CORPUS) 2>&1 | sed -e 's/^\(Running: \).*\(examples\)/\1\2/' -e 's/^\(Executed \).*\(examples.*\) in [0-9]* ms$$/\1\2/' -e 's/^\(Running: \).*\(regress\)/\1\2/' -e 's/^\(Executed \).*\(regress.*\) in [0-9]* ms$$/\1\2/' > regress/fuzz/fuzz_sudoers.out; \
diff $(srcdir)/regress/fuzz/fuzz_sudoers.out.ok regress/fuzz/fuzz_sudoers.out; \
echo "fuzz_sudoers-ldif: verifying corpus"; \
./fuzz_sudoers_ldif $(FUZZ_SUDOERS_LDIF_CORPUS); \

View File

@@ -1,3 +1,4 @@
Running: examples/sudoers
Matching Defaults entries for root on localhost:
syslog=auth, runcwd=~
@@ -97,3 +98,363 @@ Sudoers entry:
sudoedit /etc/printcap
/usr/oper/bin/
Executed examples/sudoers
Running: regress/sudoers/test1.in
User root is not allowed to run sudo on localhost.
User root is not allowed to run sudo on localhost.
User millert is not allowed to run sudo on localhost.
User millert is not allowed to run sudo on localhost.
User operator is not allowed to run sudo on localhost.
User operator is not allowed to run sudo on localhost.
Executed regress/sudoers/test1.in
Running: regress/sudoers/test2.in
User root is not allowed to run sudo on localhost.
User root is not allowed to run sudo on localhost.
User millert is not allowed to run sudo on localhost.
User millert is not allowed to run sudo on localhost.
User operator is not allowed to run sudo on localhost.
User operator is not allowed to run sudo on localhost.
Executed regress/sudoers/test2.in
Running: regress/sudoers/test3.in
User root is not allowed to run sudo on localhost.
User root is not allowed to run sudo on localhost.
User millert is not allowed to run sudo on localhost.
User millert is not allowed to run sudo on localhost.
User operator is not allowed to run sudo on localhost.
User operator is not allowed to run sudo on localhost.
Executed regress/sudoers/test3.in
Running: regress/sudoers/test4.in
sudoers:7:1: invalid line continuation
User_Alias BAR = bar
^~~~~~~~~~
Executed regress/sudoers/test4.in
Running: regress/sudoers/test5.in
sudoers:2:19: empty string
User_Alias FOO = ""
^
sudoers:3:2: empty string
"" ALL = ALL
^
Executed regress/sudoers/test5.in
Running: regress/sudoers/test6.in
Runas and Command-specific defaults for root:
Defaults>#123 set_home
Defaults>#123 set_home
User root may run the following commands on localhost:
(root) ALL
(#0 : #0) ALL
(root) ALL
(#0 : #0) ALL
(root) ALL
(root) ALL
Runas and Command-specific defaults for root:
Defaults>#123 set_home
Defaults>#123 set_home
User root may run the following commands on localhost:
Sudoers entry:
RunAsUsers: root
Commands:
ALL
Sudoers entry:
RunAsUsers: #0
RunAsGroups: #0
Commands:
ALL
Sudoers entry:
RunAsUsers: root
Commands:
ALL
Sudoers entry:
RunAsUsers: #0
RunAsGroups: #0
Commands:
ALL
Sudoers entry:
RunAsUsers: root
Commands:
ALL
Sudoers entry:
RunAsUsers: root
Commands:
ALL
Runas and Command-specific defaults for millert:
Defaults>#123 set_home
Defaults>#123 set_home
User millert may run the following commands on localhost:
(root) ALL
(root) ALL
Runas and Command-specific defaults for millert:
Defaults>#123 set_home
Defaults>#123 set_home
User millert may run the following commands on localhost:
Sudoers entry:
RunAsUsers: root
Commands:
ALL
Sudoers entry:
RunAsUsers: root
Commands:
ALL
User operator is not allowed to run sudo on localhost.
User operator is not allowed to run sudo on localhost.
Executed regress/sudoers/test6.in
Running: regress/sudoers/test7.in
sudoers:2:21: empty group
User_Alias FOO1 = "%"
^
sudoers:3:22: empty group
User_Alias FOO2 = "%:"
^
sudoers:4:21: empty netgroup
User_Alias FOO3 = "+"
^
sudoers:5:19: empty group
User_Alias FOO4 = %
^
sudoers:6:19: empty group
User_Alias FOO5 = %:
^~
sudoers:7:19: empty netgroup
User_Alias FOO6 = +
^
Executed regress/sudoers/test7.in
Running: regress/sudoers/test8.in
sudoers:8:20: unexpected line break in string
User_Alias UA4 = "x
^
Executed regress/sudoers/test8.in
Running: regress/sudoers/test9.in
Executed regress/sudoers/test9.in
Running: regress/sudoers/test10.in
Executed regress/sudoers/test10.in
Running: regress/sudoers/test11.in
sudoers:1:6: syntax error
bogus
^
Executed regress/sudoers/test11.in
Running: regress/sudoers/test12.in
sudoers:1:17: syntax error
user ALL = (ALL)
^
Executed regress/sudoers/test12.in
Running: regress/sudoers/test13.in
sudoers:1:17: syntax error
user ALL = (ALL)
^
Executed regress/sudoers/test13.in
Running: regress/sudoers/test14.in
User root is not allowed to run sudo on localhost.
User root is not allowed to run sudo on localhost.
User millert may run the following commands on localhost:
(root) sha224:d06a2617c98d377c250edd470fd5e576327748d82915d6e33b5f8db1, sha224:d7910e1967342b4605cb73a550944044c631cd3514001900966962ac /bin/ls, sha256:hOtoe/iK6SlGg7w4BfZBBdSsXjUmTJ5+ts51yjh7vkM=, sha256:1IXHRCxXgSnIEnb+xBz4PAfWaPdXIBWKFF0QCwxJ5G4= /bin/sh, sha512:srzYEQ2aqzm+it3f74opTMkIImZRLxBARVpb0g9RSouJYdLt7DTRMEY4Ry9NyaOiDoUIplpNjqYH0JMYPVdFnw /bin/kill
User millert may run the following commands on localhost:
Sudoers entry:
RunAsUsers: root
Commands:
sha224:d06a2617c98d377c250edd470fd5e576327748d82915d6e33b5f8db1, sha224:d7910e1967342b4605cb73a550944044c631cd3514001900966962ac /bin/ls
sha256:hOtoe/iK6SlGg7w4BfZBBdSsXjUmTJ5+ts51yjh7vkM=, sha256:1IXHRCxXgSnIEnb+xBz4PAfWaPdXIBWKFF0QCwxJ5G4= /bin/sh
sha512:srzYEQ2aqzm+it3f74opTMkIImZRLxBARVpb0g9RSouJYdLt7DTRMEY4Ry9NyaOiDoUIplpNjqYH0JMYPVdFnw /bin/kill
User operator may run the following commands on localhost:
(root) sha256:hOtoe/iK6SlGg7w4BfZBBdSsXjUmTJ5+ts51yjh7vkM=, sha256:1IXHRCxXgSnIEnb+xBz4PAfWaPdXIBWKFF0QCwxJ5G4= ALL
User operator may run the following commands on localhost:
Sudoers entry:
RunAsUsers: root
Commands:
sha256:hOtoe/iK6SlGg7w4BfZBBdSsXjUmTJ5+ts51yjh7vkM=, sha256:1IXHRCxXgSnIEnb+xBz4PAfWaPdXIBWKFF0QCwxJ5G4= ALL
Executed regress/sudoers/test14.in
Running: regress/sudoers/test15.in
User root is not allowed to run sudo on localhost.
User root is not allowed to run sudo on localhost.
User millert is not allowed to run sudo on localhost.
User millert is not allowed to run sudo on localhost.
User operator is not allowed to run sudo on localhost.
User operator is not allowed to run sudo on localhost.
Executed regress/sudoers/test15.in
Running: regress/sudoers/test16.in
User root is not allowed to run sudo on localhost.
User root is not allowed to run sudo on localhost.
User millert is not allowed to run sudo on localhost.
User millert is not allowed to run sudo on localhost.
User operator is not allowed to run sudo on localhost.
User operator is not allowed to run sudo on localhost.
Executed regress/sudoers/test16.in
Running: regress/sudoers/test17.in
User root is not allowed to run sudo on localhost.
User root is not allowed to run sudo on localhost.
User millert is not allowed to run sudo on localhost.
User millert is not allowed to run sudo on localhost.
User operator is not allowed to run sudo on localhost.
User operator is not allowed to run sudo on localhost.
Executed regress/sudoers/test17.in
Running: regress/sudoers/test18.in
sudoers:4:21: invalid timeout value
user0 ALL = TIMEOUT=7dd4h10m30s /usr/bin/id, /usr/bin/who, TIMEOUT=0 /bin/ls
^~~~~~~~~~~
sudoers:5:21: invalid timeout value
user1 ALL = TIMEOUT=7d4h10mm30s /usr/bin/id
^~~~~~~~~~~
sudoers:6:21: invalid timeout value
user2 ALL = TIMEOUT=4hg10m30s /usr/bin/id
^~~~~~~~~
sudoers:7:21: invalid timeout value
user3 ALL = TIMEOUT=10m30ss /usr/bin/id
^~~~~~~
sudoers:8:21: invalid timeout value
user4 ALL = TIMEOUT=14g /usr/bin/id
^~~
Executed regress/sudoers/test18.in
Running: regress/sudoers/test19.in
User root is not allowed to run sudo on localhost.
User root is not allowed to run sudo on localhost.
User millert is not allowed to run sudo on localhost.
User millert is not allowed to run sudo on localhost.
User operator is not allowed to run sudo on localhost.
User operator is not allowed to run sudo on localhost.
Executed regress/sudoers/test19.in
Running: regress/sudoers/test20.in
User root is not allowed to run sudo on localhost.
User root is not allowed to run sudo on localhost.
User millert is not allowed to run sudo on localhost.
User millert is not allowed to run sudo on localhost.
User operator is not allowed to run sudo on localhost.
User operator is not allowed to run sudo on localhost.
Executed regress/sudoers/test20.in
Running: regress/sudoers/test21.in
User root is not allowed to run sudo on localhost.
User root is not allowed to run sudo on localhost.
User millert is not allowed to run sudo on localhost.
User millert is not allowed to run sudo on localhost.
User operator is not allowed to run sudo on localhost.
User operator is not allowed to run sudo on localhost.
Executed regress/sudoers/test21.in
Running: regress/sudoers/test22.in
User root is not allowed to run sudo on localhost.
User root is not allowed to run sudo on localhost.
User millert is not allowed to run sudo on localhost.
User millert is not allowed to run sudo on localhost.
User operator is not allowed to run sudo on localhost.
User operator is not allowed to run sudo on localhost.
Executed regress/sudoers/test22.in
Running: regress/sudoers/test23.in
User root is not allowed to run sudo on localhost.
User root is not allowed to run sudo on localhost.
User millert is not allowed to run sudo on localhost.
User millert is not allowed to run sudo on localhost.
User operator is not allowed to run sudo on localhost.
User operator is not allowed to run sudo on localhost.
Executed regress/sudoers/test23.in
Running: regress/sudoers/test24.in
User root is not allowed to run sudo on localhost.
User root is not allowed to run sudo on localhost.
User millert is not allowed to run sudo on localhost.
User millert is not allowed to run sudo on localhost.
User operator is not allowed to run sudo on localhost.
User operator is not allowed to run sudo on localhost.
Executed regress/sudoers/test24.in
Running: regress/sudoers/test25.in
sudoers:4:28: syntax error
foo ALL = CWD=~ron /bin/ls \
^~
Executed regress/sudoers/test25.in