Skip to content

v2026.10.13.001: keep Windows Admin Center's tasks on Azure VMs - #9

Open
cdburgess75 wants to merge 1 commit into
mainfrom
fix/allow-windows-admin-center-tasks
Open

cdburgess75 wants to merge 1 commit into
mainfrom
fix/allow-windows-admin-center-tasks

Conversation

@cdburgess75

Copy link
Copy Markdown
Owner

Why

On its first run on an Azure Virtual Desktop session host, the Process Engine deleted two Microsoft scheduled tasks, WindowsAdminCenterHeartbeatCheck and WindowsAdminCenterTroubleshootTask, and reported them as High IOCs. Both belong to Windows Admin Center's Azure VM extension and run:

Powershell.exe -WindowStyle Hidden -File "C:\Packages\Plugins\Microsoft.AdminCenter.AdminCenter\0.76.0.0\Sme.VmExtension\..."

-WindowStyle Hidden matches the scheduled-task obfuscation pattern, and nothing in LegitTaskPaths covered them.

What

  • LegitTaskPaths gains *\Packages\Plugins\Microsoft.AdminCenter.AdminCenter\*. It is limited to this one extension; other folders under C:\Packages\Plugins\ are still checked.
  • Version → v2026.10.13.001 in every place it appears; CHANGELOG.md and the in-script changelog updated.
  • New tests/Test-LegitTasks.ps1: takes LegitTaskPaths and the obfuscation pattern from the script and checks that the real WAC command lines (and a later extension version) are kept, while hidden or encoded PowerShell from anywhere else, including another extension folder, is still removed. It fails on current main (3 assertions) and passes here.

Testing

  • All 5 tests/Test-*.ps1 pass under pwsh 7.5 on macOS; the script parses; UTF-8 BOM and LF line endings preserved.
  • Needs the real Windows run before merge (repo rule).

After merge

Once the session host has run this version, repair the Windows Admin Center extension for that VM in the Azure portal to recreate the two tasks. Before then, a repair would be undone at the next run.

🤖 Generated with Claude Code

The Process Engine deleted WindowsAdminCenterHeartbeatCheck and
WindowsAdminCenterTroubleshootTask on its first run on an Azure Virtual
Desktop session host: both run PowerShell -WindowStyle Hidden from the
Azure extension folder, which the obfuscation check matches. Commands run
from \Packages\Plugins\Microsoft.AdminCenter.AdminCenter\ are now in
LegitTaskPaths; hidden or encoded PowerShell from anywhere else is still
removed. New tests/Test-LegitTasks.ps1 fails on v2026.09.25.003 and passes.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant