This patch adds a bunch of language parsing tests for ptrace. Signed-off-by: Steve Beattie <[email protected]> --- parser/tst/simple_tests/ptrace/bad_01.sd | 8 ++++++++ parser/tst/simple_tests/ptrace/bad_02.sd | 8 ++++++++ parser/tst/simple_tests/ptrace/bad_03.sd | 8 ++++++++ parser/tst/simple_tests/ptrace/bad_04.sd | 8 ++++++++ parser/tst/simple_tests/ptrace/bad_05.sd | 8 ++++++++ parser/tst/simple_tests/ptrace/bad_06.sd | 8 ++++++++ parser/tst/simple_tests/ptrace/bad_07.sd | 8 ++++++++ parser/tst/simple_tests/ptrace/bad_08.sd | 8 ++++++++ parser/tst/simple_tests/ptrace/bad_09.sd | 8 ++++++++ parser/tst/simple_tests/ptrace/bad_10.sd | 8 ++++++++ parser/tst/simple_tests/ptrace/ok_01.sd | 8 ++++++++ parser/tst/simple_tests/ptrace/ok_02.sd | 8 ++++++++ parser/tst/simple_tests/ptrace/ok_03.sd | 8 ++++++++ parser/tst/simple_tests/ptrace/ok_04.sd | 8 ++++++++ parser/tst/simple_tests/ptrace/ok_05.sd | 8 ++++++++ parser/tst/simple_tests/ptrace/ok_06.sd | 8 ++++++++ parser/tst/simple_tests/ptrace/ok_07.sd | 8 ++++++++ parser/tst/simple_tests/ptrace/ok_08.sd | 8 ++++++++ parser/tst/simple_tests/ptrace/ok_09.sd | 8 ++++++++ parser/tst/simple_tests/ptrace/ok_10.sd | 8 ++++++++ parser/tst/simple_tests/ptrace/ok_11.sd | 12 ++++++++++++ parser/tst/simple_tests/ptrace/ok_12.sd | 11 +++++++++++ parser/tst/simple_tests/ptrace/ok_13.sd | 13 +++++++++++++ parser/tst/simple_tests/ptrace/ok_14.sd | 8 ++++++++ parser/tst/simple_tests/ptrace/ok_15.sd | 8 ++++++++ parser/tst/simple_tests/ptrace/ok_16.sd | 14 ++++++++++++++ parser/tst/simple_tests/ptrace/ok_17.sd | 10 ++++++++++ parser/tst/simple_tests/ptrace/ok_18.sd | 11 +++++++++++ parser/tst/simple_tests/ptrace/ok_19.sd | 15 +++++++++++++++ parser/tst/simple_tests/ptrace/ok_20.sd | 9 +++++++++ parser/tst/simple_tests/ptrace/ok_21.sd | 9 +++++++++ parser/tst/simple_tests/ptrace/ok_22.sd | 15 +++++++++++++++ 32 files changed, 295 insertions(+)
Index: b/parser/tst/simple_tests/ptrace/ok_01.sd
===================================================================
--- /dev/null
+++ b/parser/tst/simple_tests/ptrace/ok_01.sd
@@ -0,0 +1,8 @@
+#
+#=Description basic ptrace all rule
+#=EXRESULT PASS
+#
+/usr/bin/foo {
+ ptrace,
+
+ }
Index: b/parser/tst/simple_tests/ptrace/ok_02.sd
===================================================================
--- /dev/null
+++ b/parser/tst/simple_tests/ptrace/ok_02.sd
@@ -0,0 +1,8 @@
+#
+#=Description basic deny ptrace all rule
+#=EXRESULT PASS
+#
+/usr/bin/foo {
+ deny ptrace,
+
+ }
Index: b/parser/tst/simple_tests/ptrace/ok_03.sd
===================================================================
--- /dev/null
+++ b/parser/tst/simple_tests/ptrace/ok_03.sd
@@ -0,0 +1,8 @@
+#
+#=Description basic allow ptrace all rule
+#=EXRESULT PASS
+#
+/usr/bin/foo {
+ allow ptrace,
+
+ }
Index: b/parser/tst/simple_tests/ptrace/ok_04.sd
===================================================================
--- /dev/null
+++ b/parser/tst/simple_tests/ptrace/ok_04.sd
@@ -0,0 +1,8 @@
+#
+#=Description basic audit ptrace all rule
+#=EXRESULT PASS
+#
+/usr/bin/foo {
+ audit ptrace,
+
+ }
Index: b/parser/tst/simple_tests/ptrace/ok_05.sd
===================================================================
--- /dev/null
+++ b/parser/tst/simple_tests/ptrace/ok_05.sd
@@ -0,0 +1,8 @@
+#
+#=Description basic ptrace read rule
+#=EXRESULT PASS
+#
+/usr/bin/foo {
+ ptrace read,
+
+ }
Index: b/parser/tst/simple_tests/ptrace/ok_06.sd
===================================================================
--- /dev/null
+++ b/parser/tst/simple_tests/ptrace/ok_06.sd
@@ -0,0 +1,8 @@
+#
+#=Description basic ptrace trace rule
+#=EXRESULT PASS
+#
+/usr/bin/foo {
+ ptrace trace,
+
+ }
Index: b/parser/tst/simple_tests/ptrace/ok_07.sd
===================================================================
--- /dev/null
+++ b/parser/tst/simple_tests/ptrace/ok_07.sd
@@ -0,0 +1,8 @@
+#
+#=Description basic ptrace readby rule
+#=EXRESULT PASS
+#
+/usr/bin/foo {
+ ptrace readby,
+
+ }
Index: b/parser/tst/simple_tests/ptrace/ok_08.sd
===================================================================
--- /dev/null
+++ b/parser/tst/simple_tests/ptrace/ok_08.sd
@@ -0,0 +1,8 @@
+#
+#=Description basic ptrace tracedby all rule
+#=EXRESULT PASS
+#
+/usr/bin/foo {
+ ptrace tracedby,
+
+ }
Index: b/parser/tst/simple_tests/ptrace/ok_09.sd
===================================================================
--- /dev/null
+++ b/parser/tst/simple_tests/ptrace/ok_09.sd
@@ -0,0 +1,8 @@
+#
+#=Description basic ptrace read and trace all rule
+#=EXRESULT PASS
+#
+/usr/bin/foo {
+ ptrace (read, trace) ,
+
+ }
Index: b/parser/tst/simple_tests/ptrace/ok_10.sd
===================================================================
--- /dev/null
+++ b/parser/tst/simple_tests/ptrace/ok_10.sd
@@ -0,0 +1,8 @@
+#
+#=Description basic ptrace readby and tracedby all rule
+#=EXRESULT PASS
+#
+/usr/bin/foo {
+ ptrace (readby, tracedby) ,
+
+ }
Index: b/parser/tst/simple_tests/ptrace/ok_11.sd
===================================================================
--- /dev/null
+++ b/parser/tst/simple_tests/ptrace/ok_11.sd
@@ -0,0 +1,12 @@
+#
+#=Description basic ptrace all perms rule
+#=EXRESULT PASS
+#
+/usr/bin/foo {
+ ptrace (read, readby, trace, tracedby) ,
+ ptrace read,
+ ptrace readby,
+ ptrace trace,
+ ptrace tracedby,
+
+ }
Index: b/parser/tst/simple_tests/ptrace/bad_01.sd
===================================================================
--- /dev/null
+++ b/parser/tst/simple_tests/ptrace/bad_01.sd
@@ -0,0 +1,8 @@
+#
+#=Description basic ptrace all perms rule
+#=EXRESULT FAIL
+#
+/usr/bin/foo {
+ ptrace read readby trace tracedby ,
+
+ }
Index: b/parser/tst/simple_tests/ptrace/ok_12.sd
===================================================================
--- /dev/null
+++ b/parser/tst/simple_tests/ptrace/ok_12.sd
@@ -0,0 +1,11 @@
+#
+#=Description basic ptrace all perms rule
+#=EXRESULT PASS
+#
+/usr/bin/foo {
+ ptrace (read readby trace tracedby) ,
+ ptrace (read, readby) ,
+ ptrace trace,
+ ptrace tracedby,
+
+ }
Index: b/parser/tst/simple_tests/ptrace/ok_13.sd
===================================================================
--- /dev/null
+++ b/parser/tst/simple_tests/ptrace/ok_13.sd
@@ -0,0 +1,13 @@
+#
+#=Description basic ptrace all perms rule
+#=EXRESULT PASS
+#
+/usr/bin/foo {
+ ptrace (read readby trace write tracedby r w rw) ,
+ ptrace (w read, r rw, write) ,
+ ptrace r,
+ ptrace rw,
+ ptrace w,
+ ptrace write,
+
+ }
Index: b/parser/tst/simple_tests/ptrace/ok_14.sd
===================================================================
--- /dev/null
+++ b/parser/tst/simple_tests/ptrace/ok_14.sd
@@ -0,0 +1,8 @@
+#
+#=Description basic ptrace list perms rule
+#=EXRESULT PASS
+#
+/usr/bin/foo {
+ ptrace (w read, r rw,,,, tracedby ) ,
+
+ }
Index: b/parser/tst/simple_tests/ptrace/bad_02.sd
===================================================================
--- /dev/null
+++ b/parser/tst/simple_tests/ptrace/bad_02.sd
@@ -0,0 +1,8 @@
+#
+#=Description basic ptrace bad peer rule
+#=EXRESULT FAIL
+#
+/usr/bin/foo {
+ ptrace /bin/true ,
+
+ }
Index: b/parser/tst/simple_tests/ptrace/ok_15.sd
===================================================================
--- /dev/null
+++ b/parser/tst/simple_tests/ptrace/ok_15.sd
@@ -0,0 +1,8 @@
+#
+#=Description basic ptrace peer perms rule
+#=EXRESULT PASS
+#
+/usr/bin/foo {
+ ptrace peer=/bin/true,
+
+ }
Index: b/parser/tst/simple_tests/ptrace/bad_03.sd
===================================================================
--- /dev/null
+++ b/parser/tst/simple_tests/ptrace/bad_03.sd
@@ -0,0 +1,8 @@
+#
+#=Description basic ptrace bad peer rule
+#=EXRESULT FAIL
+#
+/usr/bin/foo {
+ ptrace read peer=/sbin/init /bin/bash,
+
+ }
Index: b/parser/tst/simple_tests/ptrace/bad_04.sd
===================================================================
--- /dev/null
+++ b/parser/tst/simple_tests/ptrace/bad_04.sd
@@ -0,0 +1,8 @@
+#
+#=Description basic ptrace bad multi-peer perms rule
+#=EXRESULT FAIL
+#
+/usr/bin/foo {
+ ptrace peer=/bin/true peer=/sbin/init peer=MY_PROFILE,
+
+ }
Index: b/parser/tst/simple_tests/ptrace/ok_16.sd
===================================================================
--- /dev/null
+++ b/parser/tst/simple_tests/ptrace/ok_16.sd
@@ -0,0 +1,14 @@
+#
+#=Description basic ptrace peer perms rule
+#=EXRESULT PASS
+#
+
+@{SHELL}=/bin/bash
+
+/usr/bin/foo {
+ ptrace peer=/bin/true,
+ ptrace peer=/sbin/init,
+ ptrace peer=@{SHELL},
+ ptrace peer=SOME_OTHER_PROFILE,
+
+ }
Index: b/parser/tst/simple_tests/ptrace/ok_17.sd
===================================================================
--- /dev/null
+++ b/parser/tst/simple_tests/ptrace/ok_17.sd
@@ -0,0 +1,10 @@
+#
+#=Description ptrace peer w/implicit profile name rule
+#=EXRESULT PASS
+#
+
+
+/usr/bin/foo {
+ ptrace peer=@{profile_name},
+
+ }
Index: b/parser/tst/simple_tests/ptrace/ok_18.sd
===================================================================
--- /dev/null
+++ b/parser/tst/simple_tests/ptrace/ok_18.sd
@@ -0,0 +1,11 @@
+#
+#=Description ptrace peer w/multiple var names rule
+#=EXRESULT PASS
+#
+
+@{SHELLS}=/bin/bash /bin/dash /bin/tcsh
+
+/usr/bin/foo {
+ ptrace peer=@{SHELLS},
+
+ }
Index: b/parser/tst/simple_tests/ptrace/ok_19.sd
===================================================================
--- /dev/null
+++ b/parser/tst/simple_tests/ptrace/ok_19.sd
@@ -0,0 +1,15 @@
+#
+#=Description ptrace peer w/perms rule
+#=EXRESULT PASS
+#
+
+/usr/bin/foo {
+ ptrace read peer=/bin/sh,
+ ptrace write peer=/bin/true,
+ ptrace trace peer=/bin/false,
+ ptrace readby peer=/sbin/init,
+ ptrace tracedby peer=/usr/bin/gdb,
+ ptrace rw peer=/usr/bin/top,
+ ptrace (readby, tracedby) peer=/usr/bin/valgrind,
+
+ }
Index: b/parser/tst/simple_tests/ptrace/ok_20.sd
===================================================================
--- /dev/null
+++ b/parser/tst/simple_tests/ptrace/ok_20.sd
@@ -0,0 +1,9 @@
+#
+#=Description ptrace regex peer rule
+#=EXRESULT PASS
+#
+
+/usr/bin/foo {
+ ptrace read peer=/{**/,}bin/{sh,true},
+
+ }
Index: b/parser/tst/simple_tests/ptrace/bad_05.sd
===================================================================
--- /dev/null
+++ b/parser/tst/simple_tests/ptrace/bad_05.sd
@@ -0,0 +1,8 @@
+#
+#=Description capability + ptrace merged rule
+#=EXRESULT FAIL
+#
+/usr/bin/foo {
+ capability ptrace trace,
+
+}
Index: b/parser/tst/simple_tests/ptrace/bad_06.sd
===================================================================
--- /dev/null
+++ b/parser/tst/simple_tests/ptrace/bad_06.sd
@@ -0,0 +1,8 @@
+#
+#=Description capability + ptrace merged rule
+#=EXRESULT FAIL
+#
+/usr/bin/foo {
+ capability sys_ptrace peer=/dev/null,
+
+}
Index: b/parser/tst/simple_tests/ptrace/bad_07.sd
===================================================================
--- /dev/null
+++ b/parser/tst/simple_tests/ptrace/bad_07.sd
@@ -0,0 +1,8 @@
+#
+#=Description peer not allowed perms list
+#=EXRESULT FAIL
+#
+/usr/bin/foo {
+ ptrace (read readby peer=/dev/null),
+
+}
Index: b/parser/tst/simple_tests/ptrace/bad_08.sd
===================================================================
--- /dev/null
+++ b/parser/tst/simple_tests/ptrace/bad_08.sd
@@ -0,0 +1,8 @@
+#
+#=Description ptrace w/non ptrace modifier
+#=EXRESULT FAIL
+#
+/usr/bin/foo {
+ ptrace bus=session,
+
+}
Index: b/parser/tst/simple_tests/ptrace/ok_21.sd
===================================================================
--- /dev/null
+++ b/parser/tst/simple_tests/ptrace/ok_21.sd
@@ -0,0 +1,9 @@
+#
+#=Description ptrace regex peer rule
+#=EXRESULT PASS
+#
+
+/usr/bin/foo {
+ deny ptrace read peer=/{**/,}bin/{sh,true},
+
+ }
Index: b/parser/tst/simple_tests/ptrace/ok_22.sd
===================================================================
--- /dev/null
+++ b/parser/tst/simple_tests/ptrace/ok_22.sd
@@ -0,0 +1,15 @@
+#
+#=Description ptrace peer w/perms and misc modifiers rule
+#=EXRESULT PASS
+#
+
+/usr/bin/foo {
+ deny ptrace read peer=/bin/sh,
+ allow ptrace write peer=/bin/true,
+ audit ptrace trace peer=/bin/false,
+ audit deny ptrace readby peer=/sbin/init,
+ audit allow ptrace tracedby peer=/usr/bin/gdb,
+ ptrace rw peer=/usr/bin/top,
+ deny ptrace (readby, tracedby) peer=/usr/bin/valgrind,
+
+ }
Index: b/parser/tst/simple_tests/ptrace/bad_09.sd
===================================================================
--- /dev/null
+++ b/parser/tst/simple_tests/ptrace/bad_09.sd
@@ -0,0 +1,8 @@
+#
+#=Description ptrace w/owner
+#=EXRESULT FAIL
+#
+/usr/bin/foo {
+ owner ptrace r,
+
+}
Index: b/parser/tst/simple_tests/ptrace/bad_10.sd
===================================================================
--- /dev/null
+++ b/parser/tst/simple_tests/ptrace/bad_10.sd
@@ -0,0 +1,8 @@
+#
+#=Description ptrace w/bad regex expansion
+#=EXRESULT FAIL
+#
+/usr/bin/foo {
+ ptrace peer={/bin/true,
+
+}
--
Steve Beattie
<[email protected]>
http://NxNW.org/~steve/
signature.asc
Description: Digital signature
-- AppArmor mailing list [email protected] Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/apparmor
