From: Mimi Zohar <zohar@linux.ibm.com>
To: ltp@lists.linux.it
Cc: Mimi Zohar <zohar@linux.ibm.com>,
Stefan Berger <stefanb@linux.ibm.com>,
Petr Vorel <pvorel@suse.cz>,
linux-integrity@vger.kernel.org
Subject: [PATCH v2 3/4] ima_violations.sh: additional open-writer violation tests
Date: Tue, 4 Mar 2025 06:53:30 -0500 [thread overview]
Message-ID: <20250304115331.524842-3-zohar@linux.ibm.com> (raw)
In-Reply-To: <20250304115331.524842-1-zohar@linux.ibm.com>
Kernel patch "ima: limit the number of open-writers integrity
violations" prevents superfluous "open-writers" violations. Add
corresponding LTP tests.
Link: https://lore.kernel.org/linux-integrity/20250228205505.476845-2-zohar@linux.ibm.com/
Signed-off-by: Mimi Zohar <zohar@linux.ibm.com>
---
.../integrity/ima/tests/ima_violations.sh | 87 ++++++++++++++++++-
1 file changed, 86 insertions(+), 1 deletion(-)
diff --git a/testcases/kernel/security/integrity/ima/tests/ima_violations.sh b/testcases/kernel/security/integrity/ima/tests/ima_violations.sh
index 3f9f1d342..578cb1402 100755
--- a/testcases/kernel/security/integrity/ima/tests/ima_violations.sh
+++ b/testcases/kernel/security/integrity/ima/tests/ima_violations.sh
@@ -8,7 +8,7 @@
TST_SETUP="setup"
TST_CLEANUP="cleanup"
-TST_CNT=3
+TST_CNT=6
REQUIRED_BUILTIN_POLICY="tcb"
REQUIRED_POLICY_CONTENT='violations.policy'
@@ -61,6 +61,17 @@ close_file_write()
exec 4>&-
}
+open_file_write2()
+{
+ exec 5> $FILE || tst_brk TBROK "exec 5> $FILE failed"
+ echo 'test writing2' >&5
+}
+
+close_file_write2()
+{
+ exec 5>&-
+}
+
get_count()
{
local search="$1"
@@ -161,6 +172,80 @@ test3()
tst_sleep 2s
}
+test4()
+{
+ tst_res TINFO "verify limiting single open writer violation"
+
+ local search="open_writers"
+ local count num_violations
+
+ read num_violations < $IMA_VIOLATIONS
+ count="$(get_count $search)"
+
+ open_file_write
+ open_file_read
+ close_file_read
+
+ open_file_read
+ close_file_read
+
+ close_file_write
+
+ validate "$num_violations" "$count" "$search" 1
+}
+
+test5()
+{
+ tst_res TINFO "verify limiting multiple open writers violations"
+
+ local search="open_writers"
+ local count num_violations
+
+ read num_violations < $IMA_VIOLATIONS
+ count="$(get_count $search)"
+
+ open_file_write
+ open_file_read
+ close_file_read
+
+ open_file_write2
+ open_file_read
+ close_file_read
+ close_file_write2
+
+ open_file_read
+ close_file_read
+
+ close_file_write
+
+ validate "$num_violations" "$count" "$search" 1
+}
+
+test6()
+{
+ tst_res TINFO "verify new open writer causes additional violation"
+
+ local search="open_writers"
+ local count num_violations
+
+ read num_violations < $IMA_VIOLATIONS
+ count="$(get_count $search)"
+
+ open_file_write
+ open_file_read
+ close_file_read
+
+ open_file_read
+ close_file_read
+ close_file_write
+
+ open_file_write
+ open_file_read
+ close_file_read
+ close_file_write
+ validate "$num_violations" "$count" "$search" 2
+}
+
. ima_setup.sh
. daemonlib.sh
tst_run
--
2.48.1
next prev parent reply other threads:[~2025-03-04 11:53 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-03-04 11:53 [PATCH v2 1/4] ima_violations.sh: force $LOG ToMToU violation earlier Mimi Zohar
2025-03-04 11:53 ` [PATCH v2 2/4] ima_violations.sh: Update validate() to support multiple violations Mimi Zohar
2025-03-04 13:31 ` Petr Vorel
2025-03-04 14:44 ` Mimi Zohar
2025-03-04 14:59 ` Mimi Zohar
2025-03-04 17:43 ` Petr Vorel
2025-03-04 21:33 ` Mimi Zohar
2025-03-04 11:53 ` Mimi Zohar [this message]
2025-03-04 11:53 ` [PATCH v2 4/4] ima_violations.sh: additional ToMToU violation tests Mimi Zohar
2025-03-04 12:57 ` [PATCH v2 1/4] ima_violations.sh: force $LOG ToMToU violation earlier Petr Vorel
2025-03-04 13:06 ` Mimi Zohar
2025-03-04 13:34 ` Petr Vorel
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250304115331.524842-3-zohar@linux.ibm.com \
--to=zohar@linux.ibm.com \
--cc=linux-integrity@vger.kernel.org \
--cc=ltp@lists.linux.it \
--cc=pvorel@suse.cz \
--cc=stefanb@linux.ibm.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox