Agent

To start an Agent run the scnr_agent CLI executable.

To see all available options run:

bin/scnr_agent -h

Each Agent should run on a different machine and its main role is to provide Instances to clients; each Instance is a scanner process.

The Agent will also split the available resources of the machine on which it runs into slots, with each slot corresponding to enough space for one Instance.

(To see how many slots a machine has you can use the scnr_system_info utility.)

Example

Server

In one terminal run:

bin/scnr_agent

The default port at the time of writing is 7331, so you should see something like:

I, [2022-01-23T09:54:21.849679 #1121060]  INFO -- System: RPC Server started.
I, [2022-01-23T09:54:21.849730 #1121060]  INFO -- System: Listening on 127.0.0.1:7331

Client

To start a scan originating from that Agent you must issue a spawn call in order to obtain an Instance; this can be achieved using the scnr_spawn CLI executable.

In another terminal run:

bin/scnr_spawn --agent-url=127.0.0.1:7331 http://testhtml5.vulnweb.com

The above will run a scan with the default options against http://testhtml5.vulnweb.com, originating from the Agent node.

The scnr_spawn utility largely accepts the same options as scnr.

If the Agent is out of slots you will see the following message:

[~] Agent is at maximum utilization, please try again later.

In which case you can keep retrying until a slot opens up.