Hardening Azure Virtual Desktop the Right Way

A Layered Security Strategy
Azure Virtual Desktop is not just another workload. It is the front door to your enterprise — a surface where hundreds of users connect daily, carrying credentials, accessing sensitive data, and running line-of-business applications on shared infrastructure. Yet in many organizations, AVD security is treated as an afterthought: a single policy slapped on session hosts, a checkbox for compliance, and a hope that Microsoft’s defaults will hold the line.
They won’t. Not on their own.
This post lays out a four-layer hardening strategy for AVD built on Microsoft Intune’s Settings Catalog — a structured, conflict-aware approach that scales from a handful of session hosts to an enterprise fleet of thousands.
Why AVD Demands a Different Hardening Mindset
Physical endpoints are one-to-one: one user, one device, one risk surface. AVD flips that model. A single session host can serve ten, twenty, or fifty concurrent users. A misconfigured setting, an unplugged audit policy, or a forgotten legacy protocol does not affect one user — it affects all of them simultaneously. The blast radius of a security gap is multiplied by design.
Add to this the fact that AVD session hosts sit inside your Azure subscription, often peered with on-premises networks, and you have a workload that bridges cloud and hybrid environments. Credential theft via LSASS, lateral movement over SMBv1, and clipboard-based data exfiltration are not hypothetical risks — they are documented attack patterns against virtual desktop environments.
A single monolithic policy cannot address all of this cleanly. A layered approach can.
The Four-Layer Model
Think of the hardening stack as concentric rings of defence, each one serving a distinct purpose and managed independently. This separation makes troubleshooting faster, version control cleaner, and policy conflicts traceable.
Layer 1 — Microsoft Security Baseline (The Foundation)
Deployed via: Endpoint Security → Security Baselines → Security Baseline for Windows 10 and later
The Microsoft Security Baseline is where every AVD hardening journey should begin. It is a curated, Microsoft-maintained collection of pre-configured settings aligned to the Windows Security Compliance Toolkit. It automatically enforces BitLocker on removable drives, disables basic authentication, requires device unlock passwords, and applies dozens of other hardened defaults.
Critically, do not treat it as a fire-and-forget policy. The baseline uses opinionated defaults that may conflict with existing configuration profiles in your tenant. Before deploying to production, run it against a dedicated pilot device group, review the conflict reports in Intune, and document every deviation. Any setting you override in the baseline should be recorded with a justification — this creates your compliance audit trail.
Important: Unlike Group Policy, removing a Security Baseline assignment does not revert settings. Configurations are tattooed on the device. If you need to undo a setting, you must actively configure the opposite value via another policy.
Layer 2 — Settings Catalog: OS Hardening
Deployed via: Devices → Windows → Configuration → Settings Catalog
This layer adds targeted hardening on top of the baseline, covering areas the Security Baseline either omits or cannot be extended within. Key configuration areas include:
- Attack Surface Reduction (ASR): Enable rules to block Office applications from spawning child processes, prevent credential stealing from LSASS, block executable content from email, and restrict unsigned processes from running off USB. Start ASR rules in audit mode, review for false positives, then move to enforcement.
- Network Protocol Hardening: Disable SMBv1 client and server completely. Enable hardened UNC paths, prohibit Internet Connection Sharing on domain networks, and block connections to non-domain networks when on a domain-authenticated session.
- Credential and Authentication Controls: Disable WDigest authentication (which caches plaintext credentials in memory), enable Virtualization-Based Security with Credential Guard locked via UEFI, and enforce UAC restrictions on local accounts over network logons.
- Audit Policy: Configure logon/logoff, account logon, privilege use, and policy change auditing. Without this, you are flying blind during incident response.
Layer 3 — Settings Catalog: AVD-Specific Tuning
Deployed via: Devices → Windows → Configuration → Settings Catalog (separate profile, scoped to AVD device groups)
This layer is scoped exclusively to AVD session host behaviour — settings that would be wrong or disruptive on a physical endpoint but are essential on a shared desktop.
- FSLogix Profile Container: Configure profile VHD access permissions, concurrent session handling, and profile compaction policies. Misconfigured FSLogix permissions are a common source of privilege escalation in AVD environments.
- RDP and Clipboard Restrictions: Disable clipboard redirection unless explicitly required. Block drive redirection, COM port mapping, and printer redirection by default — enable only what specific workloads need. Each enabled redirection channel is a potential data exfiltration path.
- Session Timeout Policies: Enforce idle session disconnect and session time limits. In a multi-session host, an abandoned authenticated session is a standing invitation for the next user to escalate access.
- Windows Hello for Business: Enforce passwordless authentication for AVD users where supported, reducing the credential attack surface significantly.
Keeping this in a separate Settings Catalog profile ensures physical workstations never receive AVD-specific tuning, and session hosts are never confused by endpoint-only policies.
Layer 4 — PowerShell Remediation Scripts
Deployed via: Devices → Windows → Scripts → PowerShell scripts (or Intune Remediations)
Not every hardening control is exposed in the Settings Catalog. Some registry keys, feature removals, and legacy component configurations must be handled through scripting. This layer covers the gaps:
- Remove PowerShell v2.0 — eliminates a downgrade attack vector that bypasses modern logging
- Remove .NET Framework 3.5 and below — reduces the legacy code execution surface
- Configure registry-based settings unavailable in CSP — such as NTLM restriction keys and legacy authentication protocol blocks
- Disable Internet Explorer components on Windows 10 session hosts
Use Intune Remediations (detection + remediation script pairs) where your license supports it — they run on a schedule and self-heal if a setting drifts. For environments without Remediations licensing, platform scripts applied at enrolment provide a one-time enforcement pass.
Putting It Together
The power of this model is in its separation of concerns. Layer 1 provides the opinionated baseline. Layer 2 adds precision OS hardening. Layer 3 applies AVD-contextual controls. Layer 4 closes the gaps that the UI cannot reach.
Each layer is assigned to the right group, versioned independently, and conflict-checked in isolation. When a conflict does appear in Intune’s policy report, you know exactly which layer it belongs to and which profile to investigate.
For teams operating AVD at scale — and especially those running autonomous incident resolution and AI-assisted operations on top of the platform — this structure also pays dividends in documentation. A clean, layered policy architecture is far easier to explain to an auditor, a CISO, or an enterprise architecture board than a sprawling monolithic configuration.
Security in AVD is not a one-time project. It is a continuously maintained posture. The layers give you the structure to maintain it without chaos.