Security
GURDN asks for privilege, so here is what it does with it
A security application is a new component inside your trust boundary. This is the technical account of how that component is built, written for a reader who intends to check rather than to be reassured.
ValidationThe mechanisms below are implemented and covered by automated tests. Live validation on a clean, elevated Windows machine is part of release qualification and has not been completed. What is and is not verified.
01Threat model
What GURDN is for, and what it is not for
Stating this first makes everything after it checkable.
02Privilege
The interface has no privilege at all
The desktop application and the engine both run as the signed-in user. Only a separate Windows service holds the rights needed to change network configuration, under its own restricted service identity rather than as the local system account.
Figure 2, trust boundary
Desktop interface
Shows state, asks for authorisation. Holds no privilege.
Security engine
Observation, baseline, detection, trust, policy, response. Decides; cannot act.
Privileged Windows service
The few operations that need privilege, and nothing else.
Windows
Owns the configuration.
03Boundary
One local endpoint, with a narrow door
The interface cannot ask Windows for anything. It sends a request across a single restricted channel, and the service validates what it receives rather than trusting the caller.
04Changes
Owned, transactional, verified and reversible
05Record
An audit trail that can be checked, not just read
Entries are chained, so removing or editing one is detectable. Verification names the first entry that does not match rather than condemning the whole record, which is the difference between a usable answer and an alarm.
Entries written before schema version 3 carry no chain digest and are skipped rather than reported as tampered. The record is local, bounded in size and age, and is intended to answer what GURDN did and when, not to serve as evidence to a third party.
06Updates
An update is verified before it is used, not after
The update path is one of the few places where a security product can become the attack.
Figure 4, update verification
Update package arrives
- Signature over the manifestor refuse
- Payload digest matchesor refuse
- Key standing is current or previousor refuse
- Not a downgradeor refuse
- Manifest is still in dateor refuse
- Staging path stays inside its directoryor refuse
Staged, and only then installable
A correct signature by a revoked key is still refused: revocation takes precedence over cryptographic validity. The full update documentation.
07Supply chain
How a build becomes something you could check
Reproducibility and signing are release properties, and the release gate treats them as mandatory rather than desirable.