feat(mcsb): add Microsoft Cloud Security Benchmark security skill#2499
feat(mcsb): add Microsoft Cloud Security Benchmark security skill#2499nguyena2 wants to merge 3 commits into
Conversation
…d references - introduce control index and individual domain references for MCSB v2 - implement assessment checklists, controls, and mitigations for each domain - establish cross-reference matrix with NIST and CIS Controls - create lookup playbook for retrieving volatile service-specific controls 🔒 - Generated by Copilot
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #2499 +/- ##
==========================================
- Coverage 82.76% 82.74% -0.02%
==========================================
Files 154 154
Lines 20853 20839 -14
Branches 13 13
==========================================
- Hits 17259 17244 -15
- Misses 3592 3593 +1
Partials 2 2
Flags with carried forward coverage won't be shown. Click here to find out more. 🚀 New features to boost your workflow:
|
Eval Execution |
There was a problem hiding this comment.
The skill content is well-structured and follows the reference-skill pattern. Before merging, could you run the hve-builder review on SKILL.md (static analysis mode) and attach the findings artifact to this PR? For a skill being loaded by the security planner and reviewer agents, the rubric check is part of the standard authoring gate.
| * `01` through `12` — one document per MCSB v2 control domain with assessment checklists. | ||
| * `lookup-playbook.md` — delegation guardrail for volatile per-service content. | ||
|
|
||
| ## Attribution |
There was a problem hiding this comment.
Please verify the license that governs the MCSB source content at learn.microsoft.com/en-us/security/benchmark/azure/. If the page footer shows CC BY 4.0 (which is common for azure-docs-sourced content), the claim here that it is "not a Creative Commons license" would be incorrect, and a formal CC BY attribution block would be required per the repo licensing posture (see .github/instructions/hve-core/licensing-posture.instructions.md). If it genuinely is governed by the Microsoft Learn Terms of Use only, the current text is correct as written.
Description
This PR adds a new MCSB (Microsoft Cloud Security Benchmark v2) security skill and wires it into the existing security planning and review workflow. The skill provides a durable control-domain taxonomy for assessing Azure cloud resources, with crosswalks to NIST SP 800-53 Rev. 5 and CIS Controls v8.1, while deliberately deferring volatile, per-service control lookups to runtime retrieval.
The change is additive: it introduces the skill and its reference set, registers it in the relevant collections and generated plugin outputs, and updates the security agents and standards-mapping instructions so that MCSB is loaded when Azure cloud resources are detected.
New MCSB skill
The skill lives under .github/skills/security/mcsb/ and separates durable control-domain content from volatile per-service content.
.github/skills/security/mcsb/SKILL.mdas the skill entrypoint, defining metadata, the normative reference list, the durable-versus-volatile content distinction, a runtime lookup playbook reference, the 12 control domains, and stated mappings to NIST SP 800-53 Rev. 5 and CIS Controls v8.1.references/00-control-index.mdwith the domain catalog (NS,IM,PA,DP,AM,LT,IR,PV,ES,BR,DS,AI) and a domain-level NIST 800-53 and CIS Controls cross-reference matrix.raiEnabledis true.references/lookup-playbook.mddescribing the skill as the durable control-domain taxonomy with a representative domain-grain crosswalk, and guidance for retrieving volatile service-specific controls at runtime.Security planning and assessment integration
security-planner.agent.mdto add an Azure cloud resources trigger that loads themcsbskill in phases 3 and 4, and to use the MCSB stable control-domain taxonomy and crosswalk in phase 3 while delegating volatile per-service lookups.security-reviewer.agent.mdto addmcsbto the example security skills for reference resolution and to the assessable skills list.codebase-profiler.agent.mdto addmcsbto skill resolution examples and to add technology signals for Azure Bicep, ARM templates, Terraform with theazurermprovider, Azure-targeting Azure Pipelines, and Azure service references.skill-assessor.agent.mdto addmcsbto skill resolution examples, generalize index handling to support control or benchmark indexes (including references/00-control-index.md), and treat control-domain identifiers as the assessment grain for benchmark skills.standards-mapping.instructions.mdto delegate only MCSB per-service control mappings, loadmcsbfor Azure cloud resources, and retain delegation for volatile per-service lookups.Collection and plugin registration
mcsbskill incollections/security.collection.ymlandcollections/hve-core-all.collection.ymlwithkind: skillandmaturity: experimental.collections/security.collection.mdandcollections/hve-core-all.collection.md.mcsbrows toplugins/security/README.mdandplugins/hve-core-all/README.md, and added the skill symlinks under both plugin skills/security/ paths.Related Issue(s)
None
Type of Change
Select all that apply:
Code & Documentation:
Infrastructure & Configuration:
AI Artifacts:
prompt-builderagent and addressed all feedback.github/instructions/*.instructions.md).github/prompts/*.prompt.md).github/agents/*.agent.md).github/skills/*/SKILL.md).github/hooks/*/*.json)evals/)Other:
.ps1,.sh,.py)Sample Prompts (for AI Artifact Contributions)
User Request:
Execution Flow:
azurerm, Azure Pipelines, or Azure service references) and resolves themcsbskill.mcsbskill in phases 3 and 4 and uses the stable control-domain taxonomy and NIST/CIS crosswalk, delegating volatile per-service lookups.NS,IM,PA, and so on) as the assessment grain, and evaluates the codebase against each domain's checklist, controls, and anti-patterns.Output Artifacts:
Security planning and review findings organized by MCSB control domain, each mapped to NIST SP 800-53 Rev. 5 and CIS Controls v8.1 references. No new files are written to the repository by running the skill; the skill supplies reference content consumed by the security agents.
Success Indicators:
The security planner and reviewer surface MCSB domain identifiers in their findings, Azure resources trigger MCSB loading, and each finding cites the corresponding domain reference and framework crosswalk.
Note
Human review is recommended for the agent-populated Sample Prompts content above.
Testing
Automated validation commands run during PR generation:
npm run lint:md— Passed (0 errors).npm run spell-check— Passed (0 issues).npm run lint:frontmatter— Passed (848 files, 0 errors).npm run validate:skills— Passed (mcsband 52 other skills, 0 errors).npm run lint:md-links— Passed.npm run lint:ps— Passed (all files clean).npm run eval:lint:schema— Passed (10 eval specs, coverage complete).npm run plugin:generate— Passed; regeneration produced no drift.npm run docs:test— Skipped; the Docusaurus subproject has no installed dependencies in this environment (jest: not found). No Docusaurus files were changed.Security analysis of the diff found no sensitive data, secrets, or dependency changes. The change is additive documentation-style reference content with no executable scripts.
Manual testing was not performed.
Note
Add manual testing descriptions when applicable.
Checklist
Required Checks
AI Artifact Contributions
/prompt-analyzeto review contributionprompt-builderreviewRequired Automated Checks
The following validation commands must pass before merging:
npm run lint:mdnpm run spell-checknpm run lint:frontmatternpm run validate:skillsnpm run lint:md-linksnpm run lint:psnpm run eval:lint:schemanpm run plugin:generatenpm run docs:test(Skipped — docs subproject dependencies not installed in this environment; no Docusaurus files changed)Security Considerations
GHCP Artifact Maturity
Warning
This PR includes experimental GHCP artifacts that may have breaking changes.
.github/skills/security/mcsb/SKILL.mdsecurity/mcsb/SKILL.mdsecurity-planner.agent.mdsecurity-reviewer.agent.mdsubagents/codebase-profiler.agent.mdsubagents/skill-assessor.agent.mdstandards-mapping.instructions.mdGHCP Maturity Acknowledgment