Support
Getting Started

Configuring Invicti Enterprise for Amazon Web Services

This document is for:
Invicti Enterprise On-Premises

Invicti Enterprise can be configured to run scanner agents on Amazon Web Services (AWS). When you launch a new scan, Invicti Enterprise will create a new instance for the target scan and terminate it automatically once the scan is completed.

This article explains how to configure Invicti Enterprise to run scanner agents on AWS (Windows OS). For Linux instructions, refer to Configuring Invicti Enterprise for Linux on Amazon Web Services (Ubuntu). For more information about using Cloud Providers with Invicti Enterprise, refer to Cloud Provider Settings.

AWS Configuration

First, you need to install and configure the scanner agent on an EC2 instance and then create a machine image (AMI) to use as a base instance.

Each stage of this process is outlined below:

  1. Selecting a Region
  2. Creating S3 Buckets
  3. Creating IAM Users
  4. Creating an AMI for the Scanner Agent
  5. Configuring Invicti Enterprise

Selecting a Region

Invicti Enterprise uses AWS S3 buckets for object storage and EC2 service for launching new instances.

For information on how to select a region, refer to Amazon's EMR documentation: Choose an AWS Region

NOTE: S3 and EC2 resources need to be in the same AWS region. For that reason, please choose an AWS region and create all resources in that region.

Creating S3 Buckets

Invicti Enterprise needs three different buckets to store scan data.

How to create S3 Buckets

  1. Open the AWS console and navigate to the S3 service.
  2. Create 3 buckets for raw scan data, screenshots, and customizations. For example, you can use bucket names like this:
  • exampleinc.ne.scandata (for raw scan data)
  • exampleinc.ne.scanscreenshots (for form authentication screenshots)
  • exampleinc.ne.customizations (for customizations)

Recommended practice for S3 Buckets

You can apply the following precautions to harden your bucket.

  1. Enable Encryption: Amazon provides a default encryption service or you can use your own keys. For further information, refer to Amazon S3 default encryption for S3 buckets.
  2. Monitoring and Auditing: Amazon provides ways to monitor and audit S3 buckets. For further information, refer to Amazon S3 Monitoring and Auditing Best Practices.

Creating IAM Users

Next, you must create IAM Users.

How to create an access policy for the web application

  1. Go to the AWS console and navigate to the IAM service.
  2. Click Policies.
  3. Click Create Your Own Policy.
  4. Enter a policy name (e.g. NEWebAppPolicy).
  5. Enter your bucket names in the policy template code below and paste it into the Policy Document field.

{

        "Version": "2012-10-17",

    "Statement": [

        {

            "Action": [

                "s3:*"

            ],

            "Effect": "Allow",

            "Resource": [

                "arn:aws:s3:::ENTER_SCAN_DATA_BUCKET_NAME/*",

                "arn:aws:s3:::ENTER_SCREENSHOTS_BUCKET_NAME/*",

                "arn:aws:s3:::ENTER_CUSTOMIZATIONS_BUCKET_NAME/*"

            ]

        },

        {

            "Action": [

                "ec2:CreateTags",

                "ec2:DeleteTags",

                "ec2:DescribeInstances",

                "ec2:RunInstances",

                "ec2:TerminateInstances"

            ],

            "Effect": "Allow",

            "Resource": [

                "*"

            ]

        }

    ]

}

  1. Click Create Policy.

How to create an access policy for the scanner agent

  1. Click Policies.
  2. Click Create Your Own Policy.
  3. Enter a policy name for scanner agent (e.g. NEAgentPolicy).
  4. Enter your bucket names into the policy template code below, and paste it into the Policy Document field.

{

 "Version": "2012-10-17",

 "Statement": [

 {

 "Action": [

 "s3:DeleteObject",

 "s3:PutObject"

 ],

 "Effect": "Allow",

 "Resource": [

 "arn:aws:s3:::ENTER_SCAN_DATA_BUCKET_NAME/*",

 "arn:aws:s3:::ENTER_SCREENSHOTS_BUCKET_NAME/*"

 ]

 },

 {

 "Action": [

 "s3:ListBucket"

 ],

 "Effect": "Allow",

 "Resource": [

 "arn:aws:s3:::ENTER_CUSTOMIZATIONS_BUCKET_NAME",

 "arn:aws:s3:::ENTER_SCAN_DATA_BUCKET_NAME",

 "arn:aws:s3:::ENTER_SCREENSHOTS_BUCKET_NAME/*"

 ]

 },

 {

 "Action": [

 "s3:GetObject"

 ],

 "Effect": "Allow",

 "Resource": [

 "arn:aws:s3:::ENTER_CUSTOMIZATIONS_BUCKET_NAME/*",

 "arn:aws:s3:::ENTER_SCAN_DATA_BUCKET_NAME/*",

 "arn:aws:s3:::ENTER_SCREENSHOTS_BUCKET_NAME/*"

 ]

 }

 ]

}

  1. Click Create Policy.

How to create a user for the web application

  1. Click Users.
  2. Click Add User.

  1. Enter a user name (e.g. NEWebApp).
  2. In the Access Type field, enable Programmatic access, and click Next.

  1. Click Attach existing policies directly.
  2. Select the previously created web app policy (e.g. NEWebAppPolicy).
  3. Click Next to create the web app user.
  4. Save the access and security key (you will need it later).

How to create a user for the scanner agent

  1. Click Users.
  2. Click Add User.
  3. Enter a user name (e.g. NEAgent).
  4. Select Programmatic access for Access Type and click Next.

  1. Click Attach existing policies directly.

  1. Select the previously created scanner agent policy (e.g. NEAgentPolicy).
  2. Click Next to create the scanner agent user.
  3. Save the access and security key (you will need it later).

Creating an AMI for the Scanner Agent

There are three steps to this process:

  1. Launching an instance for the Scanner Agent
  2. Configuring the Scanner Agent instance
  3. Creating a Scanner Agent Image

How to launch an instance for a scanner agent

  1. Navigate to the EC2 service.
  2. From the main menu, click Instances. 
  3. Click Launch Instance.
  4. Select Microsoft Windows Server 2019 Base as the AMI.

  1. Click Choose Instance Type and select an Instance Type (c4.large is recommended).

  1. Click Configure Instance.

  1. Set the Auto-assign Public IP dropdown to Enable. (This is needed for RDP connections.)
  2. Click Next: Add Storage and set the Disk Size (a minimum of 30 GB is  recommended).
  3. Click Next: Add Tags.
  4. Click Next: Configure Security Group.
  5. Click Review and Launch.

Next, you need to install the Invicti Scanner Agent to the target EX2 instance.

How to configure a scanner agent instance

  1. Navigate to the EC2 service.
  2. From the main menu, click Instances.
  3. Right-click the previously launched scanner agent instance, and click Connect.

  1. Connect to your instance with the supplied RDP information.
  2. Ensure that you can connect to your on-premises Invicti Enterprise web application from this instance.
  3. Download and extract InvictiEnterprise.zip AgentSetup.exe into your instance.
  4. Run AgentSetup.exe and install the scanner agent. Enter the required information asked by the agent installation wizard. For API Token, navigate to the Configure New Agent page by clicking Agents > Manage Agents > Configure New Agent.


  1. Start a command prompt and type: cd C:\Program Files (x86)\Invicti Enterprise Agent.
  2. By default, the scanner agent is not configured to run in AWS. Enter this command to uninstall the scanner agent's Windows service: Netsparker.Cloud.Agent.exe /u.
  3. Open the agent’s configuration file with a text editor: C:\Program Files (x86)\Invicti Enterprise Agent\appsetting.json
  4. Navigate to the AgentInfo section and set agentType to Cloud.
  5. Save the appsetting.json file.
  6. Type this command to re-install the scanner agent windows service: Netsparker.Cloud.Agent.exe /i.
  7. The installed agent's Windows Service’s Startup Type will be 'Manual' (it must stay that way).
  8. Open a PowerShell command window and run the following command:

C:\ProgramData\Amazon\EC2-Windows\Launch\Scripts\InitializeInstance.ps1 –Schedule

Next, you need to create an AMI that will be used as a base image for new scans.

How to create a scanner agent image

  1. Open the EC2 instances page on the AWS console.
  2. Select the EC2 instance and from the Actions menu click Instance State > Stop/ Wait for the agent instance to be stopped.
  3. Once the agent instance has stopped, right-click on it, and click Create Image. Enter a name for your image and click Create Image.

  1. Navigate to the AMIs page and save your AMI ID (you will need it later).

Configuring Invicti Enterprise

Next, you need to configure your AWS settings.

How to configure the Invicti Enterprise Web Application

  1. Make an RDP connection to your Invicti Enterprise web application server.
  2. Log in to Invicti Enterprise.
  3. From the main menu, select Settings > Cloud Provider.
  4. Enter your AWS settings.
  • You can find the settings for the Instance Type, Subnet ID, and Key Pair Name in your stopped instance’s details in AWS.
  • Click Security Group to get the Security Group id (e.g. sg-abc3fec2).

  1. Click Save. You can now run new scans on your AWS environment.

Updating the Web Application

Next, you need to update the web application.

How to Update the Web Application

  1. Log in to Invicti Enterprise.
  2. From the main menu, select Settings > Licensing.
  3. Click Check for Updates. Download the latest version.
  4. Run WebAppSetup.exe to update the web application to the latest version.

Updating the Scanner Agent

Next, you need to update the scanner agent.

How to update the scanner agent

  1. In the AWS EC2 console, open the AMI page. Right-click on your current scanner agent’s AMI, and launch an instance.
  2. Once your scanner agent instance is ready, make an RDP connection to it.
  3. Download the Invicti Enterprise installation bundle. After extracting the zip file, click the file AgentSetup.exe to start the agent installation wizard.
  4. Once the new scanner agent is installed, create a new AMI of your instance as described in How to Create a Scanner Agent Image.
  5. Next, log in to Invicti Enterprise. From the main menu, select Settings > Cloud Provider. 

  1. Enter your new AMI and click Save.

« Back to the Invicti Support Page

Invicti Help Center

Our Support team is ready to provide you with technical help.

Go to Help Center This will redirect you to the ticketing system.