Security model

Built to run inside locked-down networks.

Corlo reaches on-premise systems through a small agent you install in your own network. It does the reading for an investigation, and nothing else unless you allow it. These are the rules it follows.

Read-only by default

Investigations only run catalogued read commands against your devices.

Every command the agent may run on a device comes from a published, versioned catalogue of read-only commands, pinned by hash. Anything outside it is refused by the agent itself, not just by the platform.

The catalogue is signed. An agent refuses a catalogue file it cannot match to the copy it shipped with or to a signed release.

Writes need a human

Any change requires an allowlist you approve, re-authentication, and an audit entry.

Changes — disabling an account, closing an offense, restoring a firewall rule — only reach an agent whose operator allowed remote changes when it was installed, and only as named operations from a fixed list.

Turning that on later requires an administrator to sign in again, writes an audit entry and notifies your tenant admins. You can also lock it off on the host so the platform can never turn it on.

Signed, short-lived tasks

Every task is signed and expires in minutes; replays are refused.

Each task the platform sends carries a signature over its full content and the time it was issued. The agent refuses a task that is too old, from the future, or already seen.

Outbound-only, mutual TLS

The agent calls out. Nothing needs to reach into your network.

The agent connects out to the platform over mutually authenticated TLS, with certificates it renews itself. No inbound firewall rule is needed.

Alerts from on-premise tools can be pushed to the agent on your LAN, which forwards them over the same connection.

You keep the keys

Choose manual mode and the platform can never change the agent’s policy.

The management mode is chosen on the host, never by the platform. In manual mode the agent’s policy and enabled commands are files you edit; the platform can read the agent’s report but cannot change them.

Device credentials for on-premise systems can stay on the agent host, out of the platform entirely.

Unprivileged by design

The agent runs as its own non-root service user.

The agent runs as a dedicated, unprivileged service account. Updates are signed releases, verified before they replace the running binary, and the administrative copy root uses is never the auto-updated one.

A local admin page on the host itself (loopback only, password and lockout protected) lets your team inspect and adjust the agent without the platform.

Security questions or a review you need us to complete? contact@corlo.tech — or become a design partner.