Skip to content
Discussion options

You must be logged in to vote

Hi Bodo!

It's platform dependent considering we use Landlock(Linux) and Seatbelt(macOS) consisting of their own primitive semantics and specifications. I'll try outline both below

  • Linux (Landlock): strictly allow-list, and it fails closed rather than mis-enforcing. Landlock has no way to carve a deny out of an allowed subtree; allow and deny aren't layered rules evaluated in order, there's just a set of allowed paths. So if your config expresses allow A → deny A/B → allow A/B/C → deny A/B/C/D, nono doesn't quietly grant the whole thing as if the denies weren't there. Instead, validate_deny_overlaps detects that a deny.access path (A/B, A/B/C/D) sits underneath an allowed parent (A) and …

Replies: 1 comment

Comment options

You must be logged in to vote
0 replies
Answer selected by bodograumann
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Q&A
Labels
None yet
2 participants