Endpoint Intelligence Platform

Not “who logged in.” Who’s here. Watching. Now.

Authentication is a single moment. Presence is continuous — and nothing checks the gap. GiraffeEYE is an OS-level agent that proves a real person, on an enrolled device, is present for every request. The instant that stops being true, the session dies.

15stoken rotation window
5sheartbeat while active
~0.3%CPU · on-prem agent
Hardware Fingerprint Rotating Token Live Heartbeat Traffic + DNS On-Premises
The problem

Auth tells you who logged in. Then it stops asking.

Every traditional system answers one question at login — and trusts that answer for hours. Here’s what walks straight through that gap.

01
Stolen credentials on the attacker’s machine
Valid token. Wrong device. Different country. Auth can’t tell — the session is granted.
PASSES
02
Session token replayed via curl
No browser, no tab, no human. The token is still valid, so the exfil script runs freely.
PASSES
03
Browser fingerprint replayed
Canvas and WebGL hashes stay stable for months. Capture once, replay from anywhere, forever.
PASSES
04
Unattended workstation, tab left open
Legit device, session open, employee gone. Before the timeout fires, a walk-by has full access.
PASSES
How it works

One OS-level agent. Four continuous proofs.

Not a plugin, not a browser extension — a privileged daemon on every workstation (Ubuntu, AlmaLinux, Windows), AV-whitelisted and running at about 0.3% CPU.

PROVES THE DEVICE
⛯

Hardware fingerprint

CPUID, board serial, GPU, MACs and disk — an identity that can’t be copied to another machine.

KILLS REPLAY
↻

Rotating token

An HMAC-SHA256 / Ed25519 signature that rotates every 15 seconds. The secret never leaves the device.

PROVES PRESENCE
♥

Live heartbeat

A heartbeat every 5 seconds while the tab is active. Stream stops for 10s → session killed.

SEES EXFIL
◈

Traffic + DNS capture

Socket-level, process-bound capture of everything leaving — including DNS-tunnel detection.

token · rotation
ROTATING
// window = unix_now() / 15 token = HMAC_SHA256(device_secret, window) T+0s A81F4C9E2B703D1F T+15s 91BC770A4F2E8C3D T+30s F0AA218D6B1C4E9A // attacker replays old token expected: F0AA218D… received: A81F4C9E… → 401 TOKEN_EXPIRED
Live token — rotates every 15s
A81F4C9E2B703D1F
exp 15s
Rotating Token

A fingerprint that expires every 15 seconds.

The hardware secret never leaves the device — only a short-lived signature is transmitted. Capture one and it’s useless before you can use it.

Attacker grabs A81F4C9E at T+0 and replays at T+20. The server already expects F0AA218D. Mismatch → 401. Replay is dead on arrival.

giraffeeye · session monitor
LIVE
Devicefp_9c4a2e1d7f ✓ enrolled
TokenA81F4C9E2B70
exp 15s
Heartbeat
LIVE · seq 847
Verdict● ACCESS GRANTED
Continuous Presence

Not just “who logged in.” Who is watching, now.

The agent sends a heartbeat every 5 seconds while the tab is active. No stream, no session. The moment it stops — a closed tab, a killed agent, a walk-away — access is revoked in under ten seconds.

Every request requires all three at once: enrolled device, current-window token, and a live heartbeat.

Security guarantee

Three proofs. Required simultaneously. Always.

A curl request has no heartbeat. A replay has no valid token. A wrong device has no matching fingerprint. Every vector that beats traditional auth is stopped cold.

ATK 1
curl with stolen JWT + session cookie
No running agent. No TAB_ACTIVE. No heartbeat stream.
401 · NO AGENT
ATK 2
Token replay 20 seconds later
Captured A81F4C9E at T+0, used at T+20. Server expects F0AA218D.
401 · EXPIRED
ATK 3
Stolen creds on the attacker’s machine
Their agent produces fp_attacker. Enrolled device is fp_9c4a.
401 · WRONG DEVICE
ATK 4
Legitimate device, user walks away
Tab loses focus, heartbeats stop. Ten seconds later the session is gone.
SESSION KILLED
ATK 5
Forged presence webhook
Crafted JSON to /api/eye/presence — token expired or from the wrong device.
401 · BAD TOKEN
GiraffeEYE vs everything else

What nothing else on your stack does.

MFA, EDR and device-trust each own a slice. GiraffeEYE ties hardware, a rotating secret and live presence into one continuous check.

CapabilityMFA / SSOEDRDevice trustGiraffeEYE
OS-level hardware fingerprint (not browser)nopartialdevice certCPUID+board
Rotating 15s cryptographic tokennononoHMAC/Ed25519
Continuous heartbeat — session dies without itnononoevery 5s
curl / replay blocked without a running agentnonomTLS onlyalways
DNS tunnel / exfiltration detectionnoyesnoentropy+rate
100% on-premises · zero cloudnovariesvariesalways
FAQ

Questions, answered.

No. It’s a privileged OS-level daemon that runs on the workstation itself — Ubuntu, AlmaLinux and Windows. That’s what lets it read real hardware identity and bind traffic to a process, which no browser extension can do.

The tab loses focus, TAB_INACTIVE fires and heartbeats stop. After a 10-second gap the session is terminated automatically — so an open tab on an unattended machine is no longer a way in.

The device secret never leaves the machine; only a signature valid for the current 15-second window is transmitted. A captured token is rejected as soon as the window rolls over, so replay from another host is dead on arrival.

The agent runs at roughly 0.3% CPU and is AV-whitelisted. Heartbeats and token rotation are tiny, and traffic capture happens at the socket layer without proxying the connection.

Entirely on-premises. GiraffeEYE correlates identity, device, presence and traffic inside your network and forwards events only to systems you already run — Wazuh SIEM, CRM webhooks, your dashboard. Zero cloud dependency.

Prove presence, not just login.

See GiraffeEYE kill a replayed session live. Book a walkthrough with the Giraffe team — deployed entirely inside your own network.