Microsoft Defender for Cloud · Virtual Machines
System updates should be installed on your machines (powered by Update Center)
Written and reviewed by Emnode · Last reviewed
What does the recommendation "System updates should be installed on your machines (powered by Update Center)" check?
Flags Azure VMs and Azure Arc-enabled servers that Azure Update Manager reports as missing one or more outstanding system, security or critical updates. Defender for Servers Plan 2 reads the latest periodic assessment from the machine and marks it unhealthy when patches are pending. It checks the installed-versus-available patch state only; it does not verify that a maintenance schedule exists, does not patch third-party applications outside the OS package manager, and the older Log Analytics agent (MMA) assessment path it once used is now deprecated in favour of the Update Manager VM extension.
Why does "System updates should be installed on your machines (powered by Update Center)" matter?
Unpatched operating systems are the most reliably exploited foothold in cloud estates: published CVEs come with working exploit code, and mass-scanning finds vulnerable hosts within hours. A single VM missing a security update can give an attacker remote code execution, then lateral movement into the wider subscription. Because the finding is High severity, it usually signals a machine that has drifted out of any patch cycle entirely, which is exactly the gap ransomware and crypto-mining campaigns rely on. Closing it keeps your fleet inside its compliance window and removes the cheapest route in.
How do I fix "System updates should be installed on your machines (powered by Update Center)"?
- Enable periodic assessment so the machine reports its real patch state every 24 hours: set the VM patch property with 'az vm update -g <rg> -n <vm> --set osProfile.windowsConfiguration.patchSettings.assessmentMode=AutomaticByPlatform' (use linuxConfiguration for Linux), or apply the 'Machines should be configured to periodically check for missing system updates' quick fix in Defender for Cloud.
- Install the pending updates once with 'az vm install-patches -g <rg> -n <vm> --maximum-duration PT4H --reboot-setting IfRequired --classifications-to-include-win Critical Security' (use --classifications-to-include-linux for Linux), or use the Fix option on the recommendation to push a one-time installation through Update Manager.
- Stop the drift recurring by enforcing periodic assessment at scale: look up the built-in policy with 'pid=$(az policy definition list --query "[?displayName=='System updates should be installed on your machines (powered by Update Center)'].name" -o tsv)' then 'az policy assignment create --name require-system-updates --policy "$pid" --scope <scope>', and attach a recurring maintenance configuration with Patch orchestration set to Customer Managed Schedules.
Remediation script · bash
# Bring machines into Azure Update Manager: switch on periodic assessment
# and platform-orchestrated patching, then deploy the audit agent.
for vm in $(az vm list -g rg-workloads --query "[].name" -o tsv); do
az vm update -g rg-workloads -n "$vm" \
--set osProfile.windowsConfiguration.patchSettings.assessmentMode=AutomaticByPlatform \
--set osProfile.windowsConfiguration.patchSettings.patchMode=AutomaticByPlatform
# Guest Configuration extension requires a system-assigned identity.
az vm identity assign -g rg-workloads -n "$vm"
az vm extension set -g rg-workloads --vm-name "$vm" \
--name AzurePolicyforWindows \
--publisher Microsoft.GuestConfiguration
echo "$vm: periodic assessment on, auto-patch on, config extension deployed"
done
# Ratchet it shut: assign the built-in policy that enables periodic
# assessment on every machine in the subscription.
az policy assignment create \
--name enable-periodic-assessment \
--policy 59efceea-0c96-497e-a4a1-4eb2290dac15 \
--scope "/subscriptions/00000000-0000-0000-0000-000000000000" \
--location uksouth --mi-system-assigned Full walkthrough (console steps, edge cases and verification) in the lesson Keep Azure machines patched.
Is "System updates should be installed on your machines (powered by Update Center)" a false positive?
A short-lived machine that is intentionally pinned to a frozen image, for example a validated appliance or a forensic clone held for investigation, will flag because newer patches exist that you are deliberately not applying. That is a correct exception: exempt the specific resource from the recommendation in Defender for Cloud with a documented justification and an expiry date, rather than leaving it silently unhealthy or patching it and breaking the pinned baseline.
More Virtual Machines controls
- Adaptive application controls for defining safe applications should be enabled on your machines
- Allow list rules in your adaptive application control policy should be updated
- Authentication to Linux machines should require SSH keys
- Azure Backup should be enabled for virtual machines
- EDR configuration issues should be resolved on virtual machines
- EDR solution should be installed on Virtual Machines
- File integrity monitoring should be enabled on machines
- Guest Attestation extension should be installed on supported Linux virtual machines
- Guest Attestation extension should be installed on supported Windows virtual machines
- Linux virtual machines should enable Azure Disk Encryption or EncryptionAtHost
- Linux virtual machines should enforce kernel module signature validation
- Linux virtual machines should use only signed and trusted boot components