ms365-tenant-manager
Pass
Audited by Gen Agent Trust Hub on Sep 4, 2026
Risk Level: SAFECOMMAND_EXECUTIONINDIRECT_PROMPT_INJECTIONDATA_EXFILTRATIONDYNAMIC_EXECUTIONEXTERNAL_DOWNLOADS
Full Analysis
- [INDIRECT_PROMPT_INJECTION]: The skill processes external data from CSV files to generate PowerShell scripts without adequate sanitization, creating a surface for command injection.
- Ingestion points: The
Bulk User Provisioningworkflows inreferences/powershell-templates.mdandscripts/user_management.pyingest data from local CSV files such asemployees.csv. - Boundary markers: There are no explicit delimiters or instructions to ignore control characters within the ingested data.
- Capability inventory: The generated scripts possess high-privilege capabilities including
New-MgUser,Update-MgUser, andSet-MgUserLicensevia theMicrosoft.Graphmodule. - Sanitization: The Python generation logic (e.g., in
UserLifecycleManager) directly interpolates user-provided strings likedisplay_nameanddepartmentinto PowerShell code strings (e.g.,DisplayName = "{display_name}") without escaping PowerShell special characters. - [COMMAND_EXECUTION]: The skill is designed to generate and facilitate the execution of commands with high administrative privileges.
- Evidence: Scripts in
SKILL.mdandreferences/powershell-templates.mdrequireGlobal AdministratororSecurity Administratorroles to manage tenant-wide settings, user lifecycles, and security policies. - Context: These capabilities are aligned with the skill's stated purpose, but they represent a high-impact execution environment if the generated scripts are not reviewed by the user.
- [DATA_EXFILTRATION]: Administrative actions performed by the skill result in the exposure of sensitive credentials in plain-text files.
- Evidence: The
UserLifecycleManager.generate_user_creation_scriptand the provisioning template inreferences/powershell-templates.mdgenerate random passwords for new accounts and export them directly to CSV files (e.g.,UserProvisioning_results.csv). - Risk: Storing initial passwords in plain text on the local file system creates a risk of unauthorized credential access if the output directory is not restricted.
- [DYNAMIC_EXECUTION]: The skill utilizes runtime script generation to perform its administrative tasks.
- Evidence: The Python modules
scripts/powershell_generator.py,scripts/tenant_setup.py, andscripts/user_management.pyare dedicated to assembling executable PowerShell code blocks from string templates and user input. - [EXTERNAL_DOWNLOADS]: The skill requires the installation of external PowerShell modules to function.
- Evidence: Instructions in
SKILL.mdandreferences/powershell-templates.mddirect the user to runInstall-ModuleforMicrosoft.Graph,ExchangeOnlineManagement, andMicrosoftTeamsfrom the PowerShell Gallery.
Audit Metadata