Skip to content

RESTART-01: Crash handler re-download persistence

Property Value
Severity high
Platform AWS Nitro Enclaves
Lifecycle stage runtime
Mode Active: runs fixed read-only commands on the host. Skipped with --read-only.

What a failure enables

  • RCE as root in enclave

What it checks

It passes when:

  • No enclave services have dangerous restart policies.
  • No enclave-related services found with restart policies.

Example failures:

  • … enclave service(s) auto-restart on failure: …. If the boot sequence re-downloads state from S3, a single poisoned object persists across every restart.
  • 2 enclave service(s) auto-restart on failure: enclave-app.service (Restart=always), enclave-app-networking.service (Restart=on-failure). If the boot sequence re-downloads state from S3, a single poisoned object persists across every restart.

How to fix

  • Set Restart=no or Restart=on-success for enclave services, or ensure the boot sequence validates integrity (signatures/checksums) of downloaded state before loading it. Automatic restart without input validation creates persistent re-exploitation.
  • Set Restart=no or validate integrity of downloaded state before loading.

After the fix, scan again: the check should report PASS.

When it is not assessed

SKIP:

  • No instance ID specified; skipping check.

ERROR:

  • SSM command did not complete within timeout.
  • Could not send SSM command: …

Scan inputs

The untrust scan options this check reads:

Option Description
--instance-id EC2 instance ID running the Nitro Enclave.
--region AWS region.

Permissions

The cloud API calls this check makes, read from the scanner's source:

Cloud API call Permission Access
AWS ssm.get_command_invocation ssm:GetCommandInvocation read
AWS ssm.send_command ssm:SendCommand run command

Every AWS scan also calls sts:GetCallerIdentity. See Required permissions for a complete policy.

Evidence recorded

Keys in the finding's evidence: all_services, risky_services, services

Generated from untrust 1.3.0 (commit 7ef462d9a0c3).