NeuroStrike

Windows Agent (Installer)

Install the NeuroStrike agent on Windows with the signed MSI — interactively or silently, connected or air-gapped.

This guide installs the NeuroStrike agent on a Windows host using the signed MSI installer. The same package works for a double-click install on one server and a silent, fleet-wide rollout through Intune, SCCM, or Group Policy.

The agent runs on the Windows host you install it on. It assesses that host and, when authorized, targets on its network. For a fully offline site, nothing ever connects to the internet — see the air-gapped path below.

Before you begin

You needDetails
A Windows hostWindows Server 2016 / Windows 10 or later (64-bit) for the native agent
Local administratorRequired to install a system service
Network — one ofOutbound HTTPS (443) to the relay, or offline media (USB) for an air-gapped host
A profile in mindStandard, Air-gapped, or OT-safe (below)

Older or legacy hosts — Windows Server 2012 R2, 2008, or Windows 7, common on OT and legacy estates — can't run the native agent, but they're still covered: run the agent on a nearby modern host (or a small Linux box) and assess the legacy machine over the network, with nothing installed on it. See Older and legacy hosts.

Choose a deployment profile

The installer applies safe defaults based on the profile you pick. You can still adjust individual components.

ProfileUse it forDefaults
StandardNormal IT estatesRelay-connected; nuclei on, nmap off
Air-gappedIsolated / sovereign sitesNo network egress; offline licence; tools off
OT-safeIndustrial / OT / SCADAPassive, read-only ceiling; active tools and nmap off

Install (interactive)

Download and run the MSI

Download NeuroStrikeAgent.msi from the Windows agent installer card on the Agents page of your NeuroStrike dashboard (or copy it in on media for an air-gapped host) and run it. Approve the administrator prompt.

Accept the licence and pick a profile

Accept the licence, then choose Standard, Air-gapped, or OT-safe.

Choose components

The Core agent is always installed. Optionally add:

  • Nuclei — template-based vulnerability scanning (bundled).
  • Nmap — network discovery; installs the Npcap capture driver (you'll be asked to accept its licence).

Leave both unchecked for a core-only install — the agent still assesses the host and enrolls; it simply reports that those scan engines are unavailable.

Finish the install

Keep the recommended virtual service account, review the summary, and click Install. The agent installs as a Windows service and starts.

Enroll the agent

The installer runs this as a step before it finishes, so the agent is enrolled the moment setup completes. You can also run it later with neurostrike-agent activate. How you authenticate depends on whether the host has internet.

Connected (relay)

No token is ever typed into the installer — approval happens in your dashboard.

Start activation

On the host
neurostrike-agent activate

It prints a short code and a link.

Approve it

In your NeuroStrike dashboard, open Agents → Activate, sign in, and enter the code. The agent receives its token and shows ONLINE.

Air-gapped (offline)

The host never touches the internet, so it activates with a small licence file instead of signing in. Nothing is installed from the USB — the agent runs on the host; the USB just carries files in and out.

Copy this computer's Activation ID

On first run the installer shows an Activation ID — a short code that identifies this computer. Copy it to your USB stick.

Get your licence

On any computer with internet, send the Activation ID to your NeuroStrike contact. You get back a small license.jwt file. Copy it onto the USB.

Add the licence to the host

Carry the USB back and point the installer at the licence file (or drop it in place). The agent verifies it offline and starts — no connection is ever made.

The same USB carries nuclei templates and vulnerability data in, so an offline host stays current — your NeuroStrike contact provides these as a single bundle.

Silent / fleet deployment

For Intune, SCCM, or Group Policy, drive every choice through MSI properties — no UI is shown. Property values are case-sensitive: PROFILE is standard, airgapped, or ot.

Core agent only, OT-safe profile, pointed at the relay
msiexec /i NeuroStrikeAgent.msi /qn PROFILE=ot ADDLOCAL=CoreAgent RELAYURL=wss://agents.neurostrike.com
Core + nuclei, Standard profile
msiexec /i NeuroStrikeAgent.msi /qn PROFILE=standard ADDLOCAL=CoreAgent,Nuclei
PropertyWhat it sets
PROFILEstandard, airgapped, or ot
ADDLOCALComponents: CoreAgent, Nuclei, Nmap
RELAYURLRelay WebSocket URL
ALLOW / EXCLUDEIn-scope and excluded hosts / CIDRs (;-separated)
EEAONLYConfine the engagement to the EEA
RETENTIONDAYSData-retention term before certified purge
REQUIREAPPROVAL / APPROVALMINCLASSHuman-in-the-loop approval and its threshold
REPORTLANGReport language (e.g. en, nb)

Never pass the enrollment token as a plain property — it would appear in install logs and the registry. Use activate for enrollment, or a short-lived hidden enrollment property with verbose logging disabled.

Verify

Check readiness
neurostrike-agent doctor

A connected agent shows ONLINE in the dashboard. An air-gapped agent can run a first host assessment:

Assess this host
neurostrike-agent assess --require-roe=false
neurostrike-agent report --out assessment.html

Adding tools later

The agent is a thin runner over a wide tool catalog and fails soft when a tool is absent. Core host assessment needs no external tools; network discovery needs nmap, and template scans need nuclei. The broader offensive toolset (impacket, netexec, and similar) is bring-your-own and, being largely Linux-native, is best run from a Linux agent assessing Windows targets over the network.

Custom instructions & guardrails

You control what the agent may do and how it behaves through its engagement file and a plain-text instructions file — no coding, and most of it optional. The full list is in the Configuration reference; the essentials are below. There are two kinds of rule, and the difference matters:

  • Hard limits (enforced). Anything the agent must never touch goes in scope.deny — those hosts are not probed, resolved, or even reported. Cap how intrusive it can get with limits.max_class (read-only → exploit), block specific tools with tools.deny, and set allowed hours. These are enforced in code.
  • Guidance (advisory). Free-form direction — focus areas, tone, things to prefer or avoid — goes in guidance: or a plain .neurostrike/instructions.md file. The agent reads it as context.

If a rule truly must hold — "never touch the billing server" — put it in scope.deny, not only in instructions. Guidance is advisory; scope.deny is enforced.

.neurostrike/engagement.yaml (excerpt)
scope:
  allow: [10.20.0.0/16]
  deny:  [10.20.9.0/24]            # never touched
limits:
  max_class: low_impact_active     # no intrusive/exploit tooling
  hours:
    timezone: Europe/Oslo
    windows:
      - { days: [Sat, Sun], from: "02:00", to: "06:00" }
tools:
  deny: [sqlmap]                    # block specific tools
guidance: >
  Focus on the public web tier and the VPN gateway. Prefer verification over
  breadth. Do not attempt credential brute-forcing.
.neurostrike/instructions.md
# House rules
- Treat anything under /admin as sensitive — report, don't exploit.
- Our change window is 02:00–06:00 CET; avoid noisy scans outside it.

These files live beside the agent's data in C:\ProgramData\NeuroStrike and apply to every run on this host.

Human-in-the-loop approval

For hands-on or sensitive engagements, keep a person in control of every risky action:

  • Require approval per action. On the on-prem AI relay, set REQUIRE_APPROVAL=true and APPROVAL_MIN_CLASS (default intrusive_active; read_only → exploit, or all). Each proposed command at or above that level pauses for an operator to approve on the console before it runs — exploit-class and AI-generated payloads always require approval.
  • Record supervision. Set supervision: attended in the engagement file when a human oversees the run.

The installer's Oversight & rules step can turn these on for you; you can also change them later.

Older and legacy hosts

The native agent needs Windows Server 2016 / Windows 10 or later. Older machines — Server 2012 R2, 2008, or Windows 7, still common on OT and legacy estates — are covered without installing anything on them:

  • Run the agent on a nearby modern host (or a small Linux box) on the same network.
  • Add the legacy machine as a target; the agent assesses it over the network — ports, services, SMB, and known vulnerabilities.

This keeps fragile or unsupported hosts untouched while still bringing them into scope. For deep on-host (assumed-breach) checks that need local access on a legacy OS, ask us about a legacy build.

Updating and support

Apply updates by installing the newer MSI; your state in C:\ProgramData\NeuroStrike — audit chain, engagement files, licence, and templates — is preserved. Security updates are provided for the committed support period.

Uninstall

Uninstall from Apps & features (Settings → Installed apps → NeuroStrike Agent → Uninstall) or with msiexec /x NeuroStrikeAgent.msi. A standard uninstall:

  • stops and removes the Windows service,
  • removes the program files, Start-menu shortcut, firewall rule, environment variables and registry keys,
  • removes credential remnants — the enrollment token, the console operator password and the local-model override are always deleted, so an uninstalled host leaves no secret behind,
  • retains the records — findings and the tamper-evident audit chain are kept (or exported) as a compliance record rather than silently deleted.

Destroying the data too

The records are kept by design. To remove them as well, choose one of:

  • Certified destruction (recommended for engagement close-out). Before uninstalling, run the agent's purge command with its confirm flag. It destroys the findings and state and writes a dated destruction certificate into the audit chain — the written evidence a data-processing agreement's retention and destruction clauses ask for.

  • Full wipe at uninstall. Pass REMOVEDATA=1:

    msiexec /x NeuroStrikeAgent.msi REMOVEDATA=1 /qn

    This recursively deletes C:\ProgramData\NeuroStrike, records included. Use it only when a certificate is not required.

Troubleshooting

SymptomFix
Agent stays offline (relay)Check outbound 443 to the relay; re-run activate.
“Licence invalid for this machine” (air-gapped)The licence is tied to this computer’s Activation ID — re-request it with the ID shown on this host.
Scan returns nothing on an OT hostExpected if the profile is passive; raise the ceiling only with authorization.
A tool “not installed” in resultsThat optional component was not selected — install it or run the Linux agent for the full toolset.

On this page