From c369bd942990e4d4c048fa6c544c235abf1b675f Mon Sep 17 00:00:00 2001 From: Ilija Lazoroski Date: Tue, 6 Aug 2024 10:04:55 +0000 Subject: [PATCH 1/4] Docs: Add explanation for running on AWS EC2 instances --- docs/content/features/run_on_aws.md | 44 ++++++++++++++++++ .../integrations/aws/run_on_aws_ec2.png | Bin 0 -> 76383 bytes 2 files changed, 44 insertions(+) create mode 100644 docs/content/features/run_on_aws.md create mode 100644 docs/static/images/island/integrations/aws/run_on_aws_ec2.png diff --git a/docs/content/features/run_on_aws.md b/docs/content/features/run_on_aws.md new file mode 100644 index 00000000000..b4acabf6f21 --- /dev/null +++ b/docs/content/features/run_on_aws.md @@ -0,0 +1,44 @@ +--- +title: "Infection Monkey AWS Execution" +draft: false +description: "Run Infection Monkey on AWS EC2 instances" +tags: ["aws", "ec2", "ssm", "agent", "run"] +pre: " " +--- + +## Description + +Infection Monkey enables the simulation of various attack scenarios +across your AWS infrastructure without the requirement of any manual installation. + +Executing Infection Monkey on AWS EC2 instances is facilitated by the +[AWS Systems Manager (SSM) Agent]( +https://docs.aws.amazon.com/systems-manager/latest/userguide/ssm-agent.html). +Each EC2 instance has an SSM Agent installed for updating, managing, and +configuring the instance. It executes requests received from +the [AWS Systems Manager]( +https://docs.aws.amazon.com/systems-manager/latest/userguide/what-is-systems-manager.html), +and uses the [Amazon Message Delivery Service]( +https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonmessagedeliveryservice.html) +to report back status and execution details. + +## Prerequisites + +1. Ensure that the SSM Agent is installed on the EC2 instance on which +Infection Monkey will run. +1. Ensure that the EC2 instance has the necessary IAM roles to allow +the SSM Agent to execute commands. + +## Running Infection Monkey on AWS EC2 Instances + +The Monkey Island can be deployed manually on any EC2 instance with a +[supported operating system]( +../../reference/system-requirements/#supported-operating-systems) or using the +[Infection Monkey AMI](https://aws.amazon.com/marketplace/pp/prodview-b3oqimxzrd762). +When deployed, it will automatically detect that it is running on an +AWS instance and offer the option to run an Infection Monkey Agent on EC2 instances +having SSM Agents. + +![Running Infection Monkey on EC2 Instances]( +/images/island/integrations/aws/run_on_aws_ec2.png "Running Infection Monkey on EC2 +Instances") diff --git a/docs/static/images/island/integrations/aws/run_on_aws_ec2.png b/docs/static/images/island/integrations/aws/run_on_aws_ec2.png new file mode 100644 index 0000000000000000000000000000000000000000..76a9a7f6aa44acdbf75f60143c2188e9853f5def GIT binary patch literal 76383 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 z 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 Date: Tue, 13 Aug 2024 13:33:25 -0400 Subject: [PATCH 2/4] Docs: Make minor revisions to run-on-aws.md --- docs/content/features/run_on_aws.md | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/docs/content/features/run_on_aws.md b/docs/content/features/run_on_aws.md index b4acabf6f21..21ebc948ecd 100644 --- a/docs/content/features/run_on_aws.md +++ b/docs/content/features/run_on_aws.md @@ -8,15 +8,14 @@ pre: " " ## Description -Infection Monkey enables the simulation of various attack scenarios -across your AWS infrastructure without the requirement of any manual installation. - -Executing Infection Monkey on AWS EC2 instances is facilitated by the -[AWS Systems Manager (SSM) Agent]( +Infection Monkey enables the simulation of various attack scenarios across your +AWS infrastructure without the requirement of any manual installation. +Executing Infection Monkey on AWS EC2 instances is facilitated by the [AWS +Systems Manager (SSM) Agent]( https://docs.aws.amazon.com/systems-manager/latest/userguide/ssm-agent.html). Each EC2 instance has an SSM Agent installed for updating, managing, and -configuring the instance. It executes requests received from -the [AWS Systems Manager]( +configuring the instance. It executes requests received from the [AWS Systems +Manager]( https://docs.aws.amazon.com/systems-manager/latest/userguide/what-is-systems-manager.html), and uses the [Amazon Message Delivery Service]( https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonmessagedeliveryservice.html) @@ -33,11 +32,12 @@ the SSM Agent to execute commands. The Monkey Island can be deployed manually on any EC2 instance with a [supported operating system]( -../../reference/system-requirements/#supported-operating-systems) or using the -[Infection Monkey AMI](https://aws.amazon.com/marketplace/pp/prodview-b3oqimxzrd762). -When deployed, it will automatically detect that it is running on an -AWS instance and offer the option to run an Infection Monkey Agent on EC2 instances -having SSM Agents. +../../reference/system-requirements/#supported-operating-systems) or by using +the [Infection Monkey +AMI](https://aws.amazon.com/marketplace/pp/prodview-b3oqimxzrd762). When +deployed, it will automatically detect that it is running on an AWS instance +and offer the option to run an Infection Monkey Agent on EC2 instances that +have SSM Agents. ![Running Infection Monkey on EC2 Instances]( /images/island/integrations/aws/run_on_aws_ec2.png "Running Infection Monkey on EC2 From b3061e85fcb9a958a2c4d7e6e2cadc5a296dcfd2 Mon Sep 17 00:00:00 2001 From: Mike Salvatore Date: Tue, 13 Aug 2024 13:42:34 -0400 Subject: [PATCH 3/4] Docs: Reword run_on_aws.md --- docs/content/features/run_on_aws.md | 34 ++++++++++++++--------------- 1 file changed, 16 insertions(+), 18 deletions(-) diff --git a/docs/content/features/run_on_aws.md b/docs/content/features/run_on_aws.md index 21ebc948ecd..8b875e3a06d 100644 --- a/docs/content/features/run_on_aws.md +++ b/docs/content/features/run_on_aws.md @@ -1,5 +1,5 @@ --- -title: "Infection Monkey AWS Execution" +title: "AWS Agent Launcher" draft: false description: "Run Infection Monkey on AWS EC2 instances" tags: ["aws", "ec2", "ssm", "agent", "run"] @@ -8,8 +8,8 @@ pre: " " ## Description -Infection Monkey enables the simulation of various attack scenarios across your -AWS infrastructure without the requirement of any manual installation. +Infection Monkey enables you to launch Agents throughout your AWS +infrastructure without logging in to or modifying any of your EC2 instances. Executing Infection Monkey on AWS EC2 instances is facilitated by the [AWS Systems Manager (SSM) Agent]( https://docs.aws.amazon.com/systems-manager/latest/userguide/ssm-agent.html). @@ -19,25 +19,23 @@ Manager]( https://docs.aws.amazon.com/systems-manager/latest/userguide/what-is-systems-manager.html), and uses the [Amazon Message Delivery Service]( https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonmessagedeliveryservice.html) -to report back status and execution details. +to report status and execution details back to the Monkey Island. -## Prerequisites +In order to use this feature, your EC2 instances must meet the following +criteria: -1. Ensure that the SSM Agent is installed on the EC2 instance on which -Infection Monkey will run. -1. Ensure that the EC2 instance has the necessary IAM roles to allow -the SSM Agent to execute commands. +1. The SSM Agent must be installed on the EC2 instance from which you will + launch the Infection Monkey Agent. +1. The EC2 instance must have the necessary IAM roles to allow the SSM Agent to + execute commands. -## Running Infection Monkey on AWS EC2 Instances -The Monkey Island can be deployed manually on any EC2 instance with a -[supported operating system]( -../../reference/system-requirements/#supported-operating-systems) or by using -the [Infection Monkey -AMI](https://aws.amazon.com/marketplace/pp/prodview-b3oqimxzrd762). When -deployed, it will automatically detect that it is running on an AWS instance -and offer the option to run an Infection Monkey Agent on EC2 instances that -have SSM Agents. +When the Monkey Island is deployed on any EC2 instance, (such as when using the +[Infection Monkey +AMI](https://aws.amazon.com/marketplace/pp/prodview-b3oqimxzrd762)), it will +automatically detect that it is running on within an AWS environment and the +option to launch Infection Monkey Agents on EC2 instances will become +available. ![Running Infection Monkey on EC2 Instances]( /images/island/integrations/aws/run_on_aws_ec2.png "Running Infection Monkey on EC2 From 585cf13ba87dcbeb1e0df98936fb5a237bc67e1e Mon Sep 17 00:00:00 2001 From: Mike Salvatore Date: Tue, 13 Aug 2024 13:43:13 -0400 Subject: [PATCH 4/4] Docs: Rename run_on_aws -> aws-agent-launcher --- docs/content/features/{run_on_aws.md => aws-agent-launcher.md} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename docs/content/features/{run_on_aws.md => aws-agent-launcher.md} (100%) diff --git a/docs/content/features/run_on_aws.md b/docs/content/features/aws-agent-launcher.md similarity index 100% rename from docs/content/features/run_on_aws.md rename to docs/content/features/aws-agent-launcher.md