2249 Commits

Author SHA1 Message Date
nvdx f78177d6a5 daemon: rule lists operators caching + lists matching enhancements (#1567)
* daemon-go: port layered list caching and matching strategies

* daemon-go: use immutable rule/list snapshots and add load benchmarks

* daemon-go: dropped gobwas, rule/list now use go filepath.Match for globbing
2026-04-18 00:35:31 +02:00
Gustavo Iñiguez Goia 32df33c80d pkg,rpm: updated ui pyqt6 dependency package
In ff05d94f41 python311-PyQt6 was added as
dependency, to help users install some needed dependencies automatically
on old versions of Tumbleweed.

However on new versions, it also install this package, which is not the
default python3 version. Besides, python3-qt6 exists as dependency on
latest versions.

So let's use again python3-qt6 for SuSe. If someone wants to install the
GUI on older versions of Tumbleweed (~2024-2025), they'll need to
install PyQt6 via pip.

Closes: #1576
2026-04-14 22:17:41 +02:00
Gustavo Iñiguez Goia f79bde1226 updated ebpf workflow 2026-04-14 01:42:40 +02:00
Gustavo Iñiguez Goia 94e533077e updated workflows
- fixed watch path
- updated ebpf modules build matrix.
2026-04-14 01:26:49 +02:00
Gustavo Iñiguez Goia 0328a25459 Merge pull request #1572 from marcpinolpique/fix/rule-name-action-mismatch
Fix rule filename not updating when action changes
2026-04-13 01:06:40 +02:00
Gustavo Iñiguez Goia af1fa29121 Merge pull request #1565 from nvandamme/fix-preference-dialog-crash-due-to-missing-ACTION_DROP_IDX
fix: preference dialog crash, missing ref to ACTION_DROP_IDX
2026-04-12 23:40:19 +02:00
Gustavo Iñiguez Goia b5c07b2d27 Merge pull request #1561 from nvandamme/list_subscriptions
[Feature] Blocklist subscriptions plugin with auto scheduled downloads and management UI
2026-04-12 23:31:00 +02:00
Marc Pinol Piqué 91d9abe3a6 Fix rule filename not updating when action changes
When editing a rule and changing its action (e.g. deny → allow),
the JSON content updates correctly but the rule name (used as
filename) retains the old action prefix, causing a mismatch
between the filename and the actual rule action.

Update save_rule() to detect auto-generated rule names and
replace the action prefix when the action has changed.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-28 13:39:53 +01:00
Nicolas Vandamme 8a3be740b2 QObject Thread safeguards for DB rules enumeration and matching against existing attached list subs 2026-03-13 22:24:10 +01:00
Nicolas Vandamme b30e186f92 complete refactoring of runtime + ui (MVC, qt signals, qt threads, rules management) 2026-03-13 07:26:07 +01:00
Nicolas Vandamme 1c3e65ee24 fix: preference dialog crash, missing ref to ACTION_DROP_IDX 2026-03-12 00:10:41 +01:00
Nicolas Vandamme e15221df29 fixes for url test blocking ui thread + url test message ui bug + default rule creation options + hide node to foce local node 2026-03-11 23:56:19 +01:00
nvdx c9289eeb45 Merge branch 'master' into list_subscriptions 2026-03-11 20:59:16 +01:00
Gustavo Iñiguez Goia f2ce074096 Merge pull request #1564 from nvandamme/protbuf-gen-with-pyi-stubs
build: enable Protocol Buffers support for python annotations stub gen
2026-03-11 20:55:54 +01:00
Nicolas Vandamme 57fd1b732a update proto/MakeFile to support python annotations stub generation 2026-03-11 20:48:20 +01:00
Nicolas Vandamme 89708b64ab UI overhaul 2026-03-11 20:20:19 +01:00
Nicolas Vandamme 9077fbb484 restore orginal proto bindings and remove annotation stub 2026-03-11 09:50:13 +01:00
Nicolas Vandamme fca8c07bac decoupling UI and runtime with signaling + rule signaling upon refresh 2026-03-10 22:17:08 +01:00
nvdx fe4a397f3e Merge branch 'evilsocket:master' into list_subscriptions 2026-03-10 09:55:03 +01:00
Nicolas Vandamme 73a4ace427 defaults to PyQt6 2026-03-10 09:54:03 +01:00
Gustavo Iñiguez Goia 5cbc2c64aa ui: replace Deny word by Drop
This change only replaces the word in the GUI. The daemon still uses
internally "deny".

Discussion: #1519
2026-03-10 00:28:02 +01:00
Gustavo Iñiguez Goia 79fa16f740 ui,preferences: move checkbox to UI tab
It could be moved to the Server or UI tab, but this option is not part
of the Database.

Introduced in this PR: #1560.
2026-03-10 00:15:06 +01:00
Gustavo Iñiguez Goia 129ced06ac ui,events: fixed modifying sys fw rules 2026-03-09 23:58:00 +01:00
Gustavo Iñiguez Goia d91b624dc3 Merge pull request #1560 from zackslash/master
persist firewall interception state across restarts
2026-03-09 23:52:23 +01:00
Nicolas Vandamme 76aafd4f6a migrate live mutable config object in ui to mutable dataclasses 2026-03-09 17:46:11 +01:00
Nicolas Vandamme bd1fbe36da migrate to Qt ui files 2026-03-09 11:58:24 +01:00
Nicolas Vandamme 346d6bc16f add multi sub handling with UI 2026-03-09 11:11:04 +01:00
Luke Hines 7d27a61668 Add remember pause state as a preference 2026-03-07 14:50:18 +00:00
Luke Hines 0336898ed1 persist firewall pause state across GUI restarts 2026-03-07 14:15:36 +00:00
Nicolas Vandamme 6062ebebf4 align with opensnitch API's config handling 2026-03-07 11:56:34 +01:00
Nicolas Vandamme 124cd49224 Fix list_subscriptions runtime reload and HTTP stream lifecycle issues 2026-03-04 13:22:09 +01:00
nvdx d98535b643 Merge branch 'evilsocket:master' into list_subscriptions 2026-03-04 12:13:46 +01:00
Nicolas Vandamme 6710e368b9 list subs init 2026-03-04 12:11:12 +01:00
Gustavo Iñiguez Goia ddb5647401 ui,events: minor syntax changes 2026-03-02 01:02:21 +01:00
Gustavo Iñiguez Goia dfc7be679c Merge pull request #1555 from kh3ldoun/security-fix-sql-injection-remove-11178734955396376977
Modified the Database.remove() method to accept an optional args parameter to support parameterized queries.
2026-03-02 00:48:26 +01:00
Gustavo Iñiguez Goia 245af09edc ui,events: disable header context menu on system fw view
The system firewall view has 2 hidden columns: one that is always
hidden, and another one that is dynamically displayed, based on the
filter selected (System fw menu -> node -> fw table -> fw chain).

The table header context menu was not working properly, so the code to
make it work has been added, but the functionality has been disabled
until we handle properly the visibility of the up/down buttons column.

See: #1548.
2026-03-02 00:30:54 +01:00
google-labs-jules[bot] 938b7f6dca Fix SQL injection vulnerability in db.remove method
Modified the Database.remove method to accept an optional `args` parameter to support parameterized queries. Replaced string formatting of user inputs with parameterized variables in `dialogs/events/dialog.py` and `dialogs/events/views.py` to prevent SQL injection vulnerabilities.

Co-authored-by: kh3ldoun <21332335+kh3ldoun@users.noreply.github.com>
2026-03-01 20:13:11 +00:00
Gustavo Iñiguez Goia 0195efe27e ui,events: allow to sort systm fw rules
Closes: #1548
2026-03-01 20:58:47 +01:00
Gustavo Iñiguez Goia 0cb2adc89c Merge pull request #1554 from munix9/fix-ebpf_prog
fix kernel 6.19 build, add some hardening options
2026-03-01 11:27:26 +01:00
munix9 614537c92e fix kernel 6.19 build, add some hardening options 2026-02-27 08:42:27 +01:00
Gustavo Iñiguez Goia 83562f4fd2 ui,events: fixed error starting/stopping interception
Closes: #1550
2026-02-25 23:32:11 +01:00
Gustavo Iñiguez Goia 38931690bc ui,events: added initial support for infinite scrolling
Up until now, we were only able to list events with a fixed limit, or
with not limit at all, but there was no support for continuous scrolling.

Now when the scrollbar reaches the bottom of the viewport, the view
will fetch the next batch of events, constrained by the limit option.

feature request: #1440
2026-02-25 20:52:20 +01:00
Gustavo Iñiguez Goia 406ec424bf ui,events: fixed deleting alerts 2026-02-22 10:51:37 +01:00
Gustavo Iñiguez Goia 7c702cc327 ui,events: added scrollbar for the alerts view
We were reusing the rules scrollbar, but it was causing issues.
2026-02-22 00:57:19 +01:00
Gustavo Iñiguez Goia 3c90cf5e35 ui,events: handle vertical scrolling, delegate the rest to qt
issue: #1531
2026-02-18 13:05:30 +01:00
Gustavo Iñiguez Goia 043232cbe6 ui,events: allow to scroll horizontally with shift pressed
Closes: #1541
2026-02-18 12:28:03 +01:00
Gustavo Iñiguez Goia 7e72fe1804 ui,events: allow to use the mouse to scroll horizontally
issue: #1541
2026-02-18 00:40:04 +01:00
Gustavo Iñiguez Goia 41525b8303 notify new execs on !x86_64 archs
On armhf, i386 and aarch64 in particular, we don't obtain the path and
cmdline of a process reliably. So on these platforms, just send the
notification to userspace for now.

See: #1521
2026-02-17 11:36:51 +01:00
Gustavo Iñiguez Goia 3d80371ef2 Merge pull request #1543 from munix9/exception_FileExistsError
ui, actions: don't throw an exception if the directory already exists
2026-02-17 01:22:12 +01:00
munix9 19de019b15 ui, actions: don't throw an exception if the directory already exists 2026-02-16 07:03:59 +01:00