-
Notifications
You must be signed in to change notification settings - Fork 9
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
App firewall through netfilter & landlock #35
Comments
Just thinking a little bit more about the sandboxer GUI. Hope some will find these ideas and use it ... |
Hi Rémi,
Thanks, I bootstrapped the project but we're now a few working on Landlock. 😉
An application firewall able to filter the content of packets would be interesting, but that poses some challenges. The main one is that Netfilter is not designed to handle rules written by attackers, so I think it would not be trivial to get such guarantee, and of course the Netfilter maintainers need to be convince this is a good idea. Landlock's design is flexible enough and should not require a new syscall but new access rights and rules, but it's not clear to me how to create safe and simple filtering rules that would still be flexible. Our thinking about the current Lanlock's TCP port filtering is that it is simple and it addresses a lot of app firewall requirements. For instance, controlling remote peer addresses may not make sense without name resolution. There is also a work in progress with socket creation control #6 and UDP port filtering #10. Help for such work is welcome!
I started working on a new sandboxer, but there is a lot of foundational work required before thinking about a GUI.
I'm looking forward this RFC! As a reminder, Linux development doesn't happen on GitHub with PRs. Please make sure the Netfilter community is in the loop.
All this would be nice but it's out of scope for Landlock which is a kernel feature focused on sandboxing (i.e. access control). However, feel free to share your progress on implementing such sandboxing app using Landlock, seccomp, and other security features! |
Sure, I was just in a silly mood ... but I think at last it could become useful for developers and for helping security. |
Hi Mickaël
First thanks for your marvelous job.
This is not an issue, more a feature request.
Second for being able to create an app firewall it would be interesting to be able to have a landlock syscall for installing a process bound netfilter firewall rule. Of course a specific netfilter patch could be necessary (at least a netfilter module). What could be also interesting would be to let an application activate some packet validation modules (through queues that could then be used in userland in a dedicated app as suricata). Providing a packet inspection should be easy at the app level.
And finally a sandboxer with a GUI would be something really valuable (didn't yet check the rust sandboxer, I will). It could generate the locking code.
I'd like to hear your thoughts about these and if it is something you think achievable.
For the netfilter part I'll try to propose a PR soon but as it could imply also a netfilter PR (to manage the link between ruleset & nf table in some way) ...
Best
The text was updated successfully, but these errors were encountered: