Inbound OpenSearch access should be restricted

Description

Reduce the probability of a breach by checking EC2 security groups for inbound rules that allow unfettered access to TCP port 9200, used by the Elasticsearch, and restrict access to IP addresses that require this port.

Rationale

Malicious activity, such as denial-of-service (DoS) attacks and hacking, can occur when permitting unfettered Elasticsearch access.

Remediation

From the console

Follow the Security group rules docs to learn how to add a security group rule that will restrict access to a specific port.

From the command line

  1. First, remove the security group rule(s) that allow public, unrestricted access to the Elasticsearch database. The rule in question will open port 9200 for ingress from anywhere.

  2. Now that the database is contained, authorize only the specific entities that need access to the database like EC2 instances, or lambdas. You can do this by adding inbound security group rules for a specific elastic IP address, a specific range of IP addresses, or by allowing access for entities in another AWS security group.