Check ID: sagemaker_notebook_instance_vpc_settings_configured
Provider: AWS
Service: sagemaker
Severity: HIGH
Categories: internet-exposed, gen-ai
Resource type: AwsSageMakerNotebookInstance

What this check verifies

SageMaker notebook instances are evaluated for VPC attachment. Instances configured with a VPC (via a subnet_id and security groups) use private networking; those without VPC settings rely on public networking.

Risk

Without a VPC, notebooks lose network isolation. Traffic to AWS services may traverse the public internet, limiting egress control and private endpoints, enabling data exfiltration and interception, and easing lateral movement-impacting confidentiality and integrity.

Recommendation

Run notebooks in a private VPC, applying least-privilege security groups and network segmentation. Prefer VPC endpoints for AWS services and restrict outbound traffic to approved destinations to enforce defense in depth.

Remediation

resource "aws_sagemaker_notebook_instance" "<example_resource_name>" {
  name          = "<example_resource_name>"
  role_arn      = "<example_resource_id>"
  instance_type = "ml.t3.medium"
  subnet_id     = "<example_resource_id>" # critical: ensures the notebook is in a VPC subnet to pass the check
}

References

Where this check fires

This check runs on every scheduled scan against your AWS account. Findings appear at Cloud Security → Findings filterable by Check ID = sagemaker_notebook_instance_vpc_settings_configured. To re-evaluate after a fix, hit Run now on the account’s schedule under Cloud Security → Schedules — the next scan re-checks this control and marks the finding fixed or keeps it persistent.
← Back to AWS checks