Halil, the confirmed behavior is narrower than the worst-case blast radius: Black Lotus Labs observed PoeLLM deploying cryptocurrency miners, scanning for additional vulnerable systems, and resolving changing C2 infrastructure through encoded text in a GitHub-hosted poem. Vulnerable LiteLLM and Ollama deployments made up much of the observed victim set. The reported 3,400 systems also include Gitea, Gotenberg, and Ivanti Sentry, but we do not have evidence that every compromised host yielded credentials or cloud-control-plane access.
The plausible downstream risk depends on what each compromised process could read or invoke. Inventory the exposed endpoints first, then immediately map each one to its VM, container, Kubernetes pod, or appliance and its effective identity: AWS instance profile and sts:AssumeRole paths, Azure managed identity, GCP service account, mounted Kubernetes tokens, Docker socket, kubeconfig, environment variables, Gitea deploy keys and CI secrets, registry credentials, and model-provider API keys. A compromised Gitea server or runner is especially concerning because repository write access and deployment credentials can turn one miner infection into a software-supply-chain path. This is not confirmed PoeLLM behavior; it is the blast radius of credentials reachable from the compromised process.
The fastest containment route is to block public ingress to the affected service, isolate the underlying workload without destroying evidence, and revoke or restrict its workload identity before chasing individual processes. Search sibling accounts and clusters for the same images, package versions, public listeners, PoeLLM indicators, unexpected mining processes, and outbound C2 traffic. Then enumerate every principal or secret reachable from the host and follow cross-account trusts. The CSP owns isolation of its underlying platform; exposed services, security-group rules, workload identities, repositories, and secrets remain customer controls. “Managed” still does not mean the attached IAM role manages itself.
A stateless container may be replaced from a verified image without rebuilding the node only when telemetry shows the compromise stayed unprivileged, no host mounts or Docker socket were exposed, no credential material was reachable, and integrity can be established. Rebuild the VM or Kubernetes node—and rotate all reachable secrets—if PoeLLM ran as root, modified persistence such as authorized_keys, had host-level mounts, reached cloud metadata or workload tokens, accessed Gitea/CI secrets, or operated during a period with incomplete telemetry. Unknown dwell time plus secret access should be treated as exposure: revoke sessions, rotate keys and tokens, repair trust policies, and redeploy from known-good images rather than attempting artisanal malware removal.