Files
hermes-config/skills/devops/windows-iso-download/SKILL.md
T
2026-07-12 10:17:17 -04:00

4.7 KiB

name, description, version, platforms, metadata
name description version platforms metadata
windows-iso-download Download official Windows ISOs from Microsoft on a Linux server — navigating Microsoft's JS-generated download links, static CDN patterns, and third-party link aggregators like massgrave.dev. 1.0.0
linux
hermes
tags
windows
iso
download
microsoft
vm
bootable-media

Windows ISO Download (Linux)

Microsoft's official download page (microsoft.com/software-download/windows11) generates ISO links dynamically via JavaScript with time-limited tokens (24h expiry). Direct curl/wget extraction from the page source is not possible — the links are not embedded in the HTML. This skill covers the practical workarounds.

Method 1: Microsoft Static CDN (Direct Download, Older Builds)

Microsoft publishes GA (General Availability) ISO builds to a static CDN that does NOT require authentication tokens:

https://software-static.download.prss.microsoft.com/dbazure/{UUID}/{build_string}_CLIENT_CONSUMER_x64FRE_{lang}.iso

These are the initial GA release builds, not the latest monthly refreshes. After installation, Windows Update brings the system fully current.

Known working link (Windows 11 25H2, English x64, Sep 2025 GA):

https://software-static.download.prss.microsoft.com/dbazure/888969d5-f34g-4e03-ac9d-1f9786c66749/26200.6584.250915-1905.25h2_ge_release_svc_refresh_CLIENT_CONSUMER_x64FRE_en-us.iso

Download command:

wget -O Win11.iso \
  --user-agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36" \
  --referer="https://www.microsoft.com/en-us/software-download/windows11" \
  "https://software-static.download.prss.microsoft.com/dbazure/888969d5-f34g-4e03-ac9d-1f9786c66749/26200.6584.250915-1905.25h2_ge_release_svc_refresh_CLIENT_CONSUMER_x64FRE_en-us.iso"

Key points:

  • User-Agent MUST claim to be Windows to avoid 403
  • Referer MUST be the Microsoft download page
  • The {lang} code: en-us = English (US), en-gb = English (UK), ar-sa = Arabic, etc.
  • Consumer ISO includes Home, Pro, Education editions

Available Languages

The static CDN hosts ISOs for all 38 languages. Replace the language code in the URL:

  • English (US): en-us
  • English (UK): en-gb
  • Spanish: es-es
  • French: fr-fr
  • German: de-de
  • Japanese: ja-jp
  • Chinese Simplified: zh-cn
  • Chinese Traditional: zh-tw
  • (Full list on massgrave.dev)

Method 2: massgrave.dev (Latest Builds, Indirect)

MAS (Microsoft Activation Scripts) maintains a list of verified ISO download links:

  1. Latest builds (e.g., May 2026 monthly refresh) — linked via zerofs.link URL shortener. These require solving a Cloudflare Turnstile CAPTCHA before the real download URL is revealed. Cannot be automated from a headless server.
  2. GA builds — linked to the same software-static.download.prss.microsoft.com CDN as Method 1, in a clearly labeled table by language.

To find the latest static links:

curl -sL -A "Mozilla/5.0" "https://massgrave.dev/windows_11_links" | \
  grep -oP 'software-static\.download\.prss\.microsoft\.com[^"\s<>]*en-us[^"\s<>]*\.iso'

Method 3: Microsoft Q&A (Fresh Tokens, Manual)

Microsoft support staff on learn.microsoft.com/answers can generate fresh 24h download links on request. Search for recent questions tagged windows-11 asking for ISO links. The links look like:

https://software.download.prss.microsoft.com/dbazure/Win11_25H2_English_x64.iso?t={token}&P1=...&P2=...

These are time-limited and expire after 24 hours.

Pitfalls

  • software.downloadsoftware-static.download: The non-static domain (software.download.prss.microsoft.com) requires time-limited tokens (the ?t= parameter) and returns HTTP 403 without one. Always prefer software-static when available.
  • Wrong User-Agent returns 403: Microsoft's CDN checks the User-Agent header. Linux-based UAs get "unexpected URL format" errors. Always use a Windows UA string.
  • The download page's "Disk Image (ISO)" section only appears for non-Windows browsers: If you're testing from a Windows machine, you'll see the Media Creation Tool instead. Use a Linux or macOS User-Agent to get the ISO dropdown.
  • zerofs.link requires a browser: It uses Cloudflare Turnstile (CAPTCHA). Don't try to curl it — use Method 1 or 3 for programmatic access.
  • Latest ≠ latest: The "latest" monthly refresh is only available via time-limited tokens (Method 3) or CAPTCHA-gated links (Method 2). The static CDN (Method 1) carries only GA releases. For most purposes (VM setup, bare-metal install), the GA build is fine — Windows Update handles the rest.