evilsocket / evilsocket/opensnitch

[Feature Request][NixOS] Application updates, checksums and automatic OpenSnitch rule updates

Open
#1,379 4 comments 2 reactions 0 assignees View on GitHub
feature
Dominant language
Python
Stars
14.1k
Forks
665
PR merge metrics
No merged PRs in 30d

Description

Applications "forget" their rules on every NixOS update, which leads to a lot of "re-allowing" or "re-denying" rules.

### Summary:

Due to

1. The way NixOS handles applications (symlinks from `/etc/profiles/per-user//bin/evolution` --> `/nix/store/f5xq5bvklh7ms02cxsba8xv9wqszwinw-evolution-3.56.2/bin/evolution`)
2. The way OpenSnitch detects which application requested a connection, i.e. by the actual path, not the NixOS symlink.

This means that every time applications or their configuration is changed in NixOS, OpenSnitch effectively forgets all rules assigned to the application.

**This will also be a problem when Applications are referenced by checksum as has been proposed**: [[Feature Request] Calculate a checksum for each whitelisted executable · Issue #413 · evilsocket/opensnitch](https://github.com/evilsocket/opensnitch/issues/413)

### Solution:

There needs to be a way for OpenSnitch to automatically, or with minimal user interaction, determine that a new and old binary are actually the same "program".

LaunchBar does this whenever an app signature that does not validate changes. It asks the user if the new app should be trusted.

I may take a crack at solving this issue as I had already played around with writing an external rule management app to modify exported OpenSnitch rules so that they could be updated in bulk and re-imported.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.