Comment on Do any hardened Linux distributions exist?
ruination@discuss.tchncs.de 1 year agoWhat a coincidence, I’m trying to learn SELinux too! Any tips?
Comment on Do any hardened Linux distributions exist?
ruination@discuss.tchncs.de 1 year agoWhat a coincidence, I’m trying to learn SELinux too! Any tips?
ctr1@fl0w.cc 1 year ago
Awesome! Here are a few things that come to mind:
Make sure you have some aliases/functions for common operations:
audit2allow -a
to view audit violations (or-d
for dmesg audits)-r
to add a requires statement for module constructionrestorecon -Rv
to recursively apply file contexts from policy (or-FRv
to also apply user context)rm -f /var/log/audit/audit.log.* && >/var/log/audit/audit.log
to clear audit logschown -R user:user PATH && chcon -R -u user_u PATH
to recursively change labels to usersemanage fcontext -a -t $TYPE $PATH -s $SEUSER
to add a custom file context to the policysemanage fcontext -a -t “user_secrets_t” “/home/[^/]+/.secrets(/.*)?” -s user_u
.fc
file, but in any case a custom policy is needed to create custom typessemanage fcontext -d $PATH
to remove a custom file contextsemanage fcontext -lC
to list custom file contextssemodule -DB
to rebuild policy with all dontaudit rules disabledaudit2allow
doesn’t show anythingsemodule -B
to rebuild policy (with dontaudit rules)semodule -i MODULE.pp
to install a modulesemodule -r MODULE
to remove a moduleAlso a few scripts for policy creation and management are essential. There are two basic approaches to policy creation:
Modules: can be used to modify AVC rules and are pretty simple
Policy modules: can do anything, but are complicated, and the tools for creating them are mostly based on Red Hat.
Creating a new type:
Creating a new application type:
If your target application is interpreted, you’ll need to write a custom C program that launches the interpreter in a specific context, then write your policy around that application. For example, you should execv something like this:
/usr/bin/runcon -u user_u -t my_script_t /bin/bash PROG
.ruination@discuss.tchncs.de 1 year ago
Thanks! I’ll be copypasting all of these to my notes haha
ctr1@fl0w.cc 1 year ago
np! Hope it helps; it’s a big pain but I do think it’s pretty secure if configured correctly