DAV NGWAF Technical overview

What DAV can and cannot do on the host

Security and privilege model

The detection engine runs without root, without a shell, and without the ability to change itself. One small, validated helper performs the only privileged action.

The service account

PropertyValue
Accountdavco, a locked system account with no login shell
GroupsOnly its own group
sudo, monitor-only modeNone
sudo, with enforcementExactly one rule: run /usr/libexec/dav-ngwaf/davco-ip-enforce as root, nothing else
Log accessRead access to the web server log through file ACLs
WritesIts own detection logs and state files only

The account cannot install software, compile code, modify its binaries, its systemd units or the privileged helper, or start and stop its own service. The server's administrator installs dependencies through the package manager and controls the service.

The privileged helper

Root services

The firewall loader and, if enabled, the XDP loader and reconciliation timer run as root, because loading nftables tables and attaching XDP programs requires it. They act only on DAV's own table and pinned map.

SELinux

Files and locations

LocationContents
/usr/bin/davco_idsDetection engine
/usr/libexec/dav-ngwaf/Enforcement helper, firewall loader, ingestion, XDP loader and control tools
/etc/davco/Engine, database and enforcement policy configuration
/etc/sysconfig/Firewall mode setting
/usr/share/dav-ngwaf/Model checksums and database schema files
/var/lib/dav-ngwaf-install/Build information and installer backups
/var/log/davco/Detection, event and enforcement logs

Builds and licensing

Each customer build is compiled and tested on a matching environment and bound to the licensed server's network identity, with a build expiry. Source code is not shipped.