powershell

The official PowerShell image — Microsoft's cross-platform command-line shell and scripting language, built on .NET, for automating administration tasks and cloud and infrastructure management in containers.

powershell, pwsh, scripting, automation, .net, azure

What is PowerShell?

The PowerShell image packages PowerShell (pwsh), Microsoft's cross-platform command-line shell and scripting language built on .NET, so you can run scripts and automation in a container without installing PowerShell on the host. PowerShell treats command output as objects rather than text, offers a large library of cmdlets and modules, and is widely used for system administration, cloud and infrastructure automation — including managing Azure and Microsoft 365 — and CI/CD tasks. The official image is published by Microsoft in Linux variants and is commonly used as a pipeline job image, as the runtime for scheduled automation jobs and Kubernetes CronJobs, and as a consistent environment for running the same scripts on any platform. It is used by IT operations and DevOps teams, and by platform teams that want a reproducible, version-pinned scripting runtime.

What is Echo's PowerShell image?

Echo's PowerShell image is a hardened build of PowerShell on Echo's hardened base. Echo images are designed to be a drop-in replacement: swap the image reference in your Dockerfile or deployment manifest and CVEs go to zero without disrupting your scripts, modules, profiles, and credentials for managed services. Every image is tested across clouds, image use cases, and deployment targets. Echo ships every image in two variants:

  • Distroless variant — optimized for runtime use, with the smallest possible attack surface
  • Default variant — includes essential build tools, package managers, and shells for teams that need operational access

For production PowerShell deployments, the distroless variant keeps all runtime operations — script execution, module loading, remoting, and calls to cloud and management APIs — fully intact while minimizing exposure; the default variant suits IT operations and platform teams that need shell access for testing scripts interactively, installing additional modules, or debugging remoting and authentication.

What is the difference between Echo's PowerShell image and the public PowerShell image?

Public PowerShell images ship on bases that include OS-level tooling convenient for development but which contribute CVEs that accumulate on a scripting runtime used in production. PowerShell images run with access to your application code, dependencies, and the environment variables and credentials your orchestrator injects. OS-level CVEs in the base image — particularly in libraries such as openssl, libicu, and the libraries bundled with the .NET runtime — create exploitable paths that bypass application-layer controls entirely. For teams running many services, the image is also one of the largest sources of scanner noise in the CI pipeline — every package in the base becomes a finding your security team must triage, even when none of it is reachable from the application. Echo's build retains everything PowerShell needs for script execution, module loading, remoting, and calls to cloud and management APIs while removing the packages that don't belong in a production PowerShell scripting runtime. As we covered in our post on how to protect your company from software supply chain attacks, runtime and build images that combine access to source code, secrets, and network exposure are among the widest attack surfaces in the container stack. Echo commits to a 7-day SLA for critical and high severity vulnerabilities, and 10 days for medium, low, and unknown — with vulnerabilities triaged within 24 hours. Echo images are recognized by all major scanners and mirrored to all major registries, so they fit into existing pipelines without changing your registry, scanner, or runtime tooling.

FAQ

Can I replace my PowerShell image with Echo's PowerShell image?

Yes. Echo's PowerShell image is a drop-in replacement. Update the FROM line in your Dockerfile and your workloads keep running. Scripts, modules from the PowerShell Gallery, profiles, remoting, and authentication to Azure and Microsoft 365 all continue to work without changes to your automation code or job definitions.

Is Echo's PowerShell image FIPS-validated?

Yes. Echo's FIPS-validated images use cryptographic modules with an active FIPS 140-3 CMVP certificate, making them fit for federal use — unlike FIPS-compliant images that haven't been validated. This matters for teams running PowerShell workloads inside FedRAMP boundaries, where a scripting runtime that runs privileged automation that calls cloud and management APIs must meet cryptographic requirements across the full stack — including the OpenSSL and TLS libraries bundled with the PowerShell image.

What is Echo's vulnerability management SLA on the PowerShell image?

Echo commits to a 7-day SLA for critical and high severity vulnerabilities, and 10 days for medium, low, and unknown — with vulnerabilities triaged within 24 hours. Patches are mirrored automatically into your private registry so you're always running a clean version — critical for a scripting runtime that runs with access to your code, dependencies, and injected secrets.

Is Echo's PowerShell image distroless?

Echo ships every image in two variants: a distroless variant optimized for runtime use, and a default variant that includes essential build tools, package managers, and shells. For production PowerShell deployments, the distroless variant is the leaner, more secure choice; for IT operations and platform teams that need shell access for testing scripts interactively, installing additional modules, or debugging remoting and authentication, the default variant is the right fit.

How does Echo achieve such a drastic CVE reduction in PowerShell?

Echo's PowerShell image is built from source with only the absolute essentials needed to run the PowerShell scripting runtime, which significantly shrinks the attack surface. Echo also patches aggressively over time, with backports available so you can stay on the PowerShell version your applications and their dependencies are certified against — avoiding a disruptive upgrade forced purely by OS-level vulnerabilities in the base image rather than by your own requirements.

Will Echo's PowerShell image help us achieve FedRAMP?

Yes. The hard parts of FedRAMP — managing vulnerabilities, applying fixes, and using FIPS-validated cryptography — are baked into Echo images, including STIG-hardened configuration and ConMon/POA&M-ready reporting. For IT operations and platform teams running PowerShell under an ATO — whether that's administrative automation, scheduled compliance checks, or cloud management scripts running in government tenants — Echo's hardened PowerShell image keeps the scripting runtime layer in-boundary and compliant without requiring custom hardening scripts or manual base image patching between compliance cycles.

‍

Interested in base images that start and stay clean?