AWS 'account' integration

Connect Intruder to AWS to synchronise your targets

Patrick Craston avatar
Written by Patrick Craston
Updated over a week ago

Our AWS integration supports EC2 Elastic IP addresses or Amazon Route 53.
Any other will need to be added manually.

There are two places you can add your AWS account in the portal:

  1. The Targets page by clicking the yellow + Add Targets button > Cloud Account Sync:

2. The Integrations page by clicking on the green + Add button under AWS:

There are then two methods for integrating with AWS, you can either:

Create an IAM role for Intruder

AWS help docs, should you need them.

  1. Log into the AWS IAM console and go to 'Roles':

  2. Now click on 'Create role':

  3. For the next step you'll need Intruder's AWS Account ID and External ID.
    Log into the Intruder portal > Targets page > Cloud accounts > Add account > AWS:

  4. Copy the Account ID and External ID to a text document (or leave the Intruder portal open in a separate browser tab):

  5. Now go back to the AWS - Create role screen:

    • Select 'AWS account' from the 'Trusted entity type' section.

    • Select 'Another AWS account' and enter Intruder's Account ID.

    • Tick the checkbox to 'Require external ID' and enter the value you copied from our portal into the field.

    • Finally, ensure the 'Require MFA' checkbox is not ticked and click 'Next'

  6. Attach permission policies to the role (use the search box to find them):

    The new role needs to be granted permissions using the following three policies
    (❗you must enable all three, or the integration won't work): 

    • 'IAMReadOnlyAccess' - Used to fetch the "account alias" of the AWS account

    • 'AmazonEC2ReadOnlyAccess' - Used to fetch EC2 Elastic IP addresses

    • 'AmazonRoute53ReadOnlyAccess' - Used to fetch Route 53 hostnames

  7. Click on 'Next' > now give your role a name, for example 'intruder-integration' > click 'Create role':

  8. It should now take you back to the Roles page > click on the role you just created to view its details:

    Copy the 'Role ARN' and head back to the Cloud settings page of the Intruder portal.

  9. Paste the 'Role ARN' into the text box, click Add account and you're done! 💪

Automatic detection of APIs

If you have created an IAM Role, there are additional steps you can follow that will allow us to automatically detect APIs in your cloud account.

(Integrations with access keys don't require any additional steps).

Add a new IAM user and enter the access keys

  1. If you are connecting Intruder to your AWS account via access keys, we recommend creating a new user in your AWS account.

    When creating a new user, please ensure that Programmatic access is checked.

  2. The new user will need to be granted permissions using the following AWS policies:

    • 'IAMReadOnlyAccess' - Used to fetch the "account alias" of the AWS account

    • 'AmazonEC2ReadOnlyAccess' - Used to fetch EC2 Elastic IP addresses

    • 'AmazonRoute53ReadOnlyAccess' - Used to fetch Route 53 hostname

    ❗You must enable all three, or the integration won't work.❗

    Accounts with the 'AdministratorAccess' policy could also be used, but we would advise against this.

  3. Once your new user account is ready you'll need to generate an access/secret key pair. AWS have a guide on how to do this, but here the main steps:

    • In the IAM console under Users, click on the new user's name

    • Select the Security credentials tab

    • Click Create access key in the Access keys section to create a key pair that consists of an Access key ID and Secret access key

    • Take a note of both keys as you will need to add them to our portal

  4. Now head to the Cloud section of our settings page > paste the Access key ID and Secret access key into the appropriate fields and click on the Add account button. Voila! 🎉

If you have multiple AWS accounts, the process above can be repeated to add each account you want to protect.

The next thing you'll see is this modal 👇, for automated management of your cloud targets.

If that's not of interest and you'd like to manage them manually, skip the boxes and simply press Confirm setup and you'll see this:

Note: AWS integration is only available for customers on our Pro, Premium and Vanguard plans.

Did this answer your question?