icdev 1.0.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1105) hide show
  1. icdev/__init__.py +18 -0
  2. icdev/_paths.py +85 -0
  3. icdev/_version.py +3 -0
  4. icdev/data/__init__.py +1 -0
  5. icdev/data/args/__init__.py +1 -0
  6. icdev/data/args/agent_authority.yaml +61 -0
  7. icdev/data/args/agent_config.yaml +355 -0
  8. icdev/data/args/agentic_fitness.yaml +31 -0
  9. icdev/data/args/ai_governance_config.yaml +137 -0
  10. icdev/data/args/atlas_critique_config.yaml +66 -0
  11. icdev/data/args/bedrock_models.yaml +63 -0
  12. icdev/data/args/cicd_config.yaml +82 -0
  13. icdev/data/args/classification_config.yaml +232 -0
  14. icdev/data/args/cli_config.yaml +154 -0
  15. icdev/data/args/cloud_config.yaml +63 -0
  16. icdev/data/args/code_pattern_config.yaml +151 -0
  17. icdev/data/args/code_quality_config.yaml +47 -0
  18. icdev/data/args/companion_registry.yaml +202 -0
  19. icdev/data/args/context_config.yaml +82 -0
  20. icdev/data/args/csp_monitor_config.yaml +268 -0
  21. icdev/data/args/cui_markings.yaml +35 -0
  22. icdev/data/args/db_config.yaml +40 -0
  23. icdev/data/args/deployment_profiles.yaml +248 -0
  24. icdev/data/args/dev_profile_config.yaml +144 -0
  25. icdev/data/args/devsecops_config.yaml +286 -0
  26. icdev/data/args/endpoint_security_config.yaml +137 -0
  27. icdev/data/args/extension_config.yaml +79 -0
  28. icdev/data/args/file_access_tiers.yaml +88 -0
  29. icdev/data/args/framework_registry.yaml +415 -0
  30. icdev/data/args/innovation_config.yaml +431 -0
  31. icdev/data/args/installation_manifest.yaml +1087 -0
  32. icdev/data/args/llm_config.yaml +495 -0
  33. icdev/data/args/maintenance_config.yaml +55 -0
  34. icdev/data/args/memory_config.yaml +83 -0
  35. icdev/data/args/monitoring_config.yaml +127 -0
  36. icdev/data/args/mosa_config.yaml +190 -0
  37. icdev/data/args/nlq_config.yaml +35 -0
  38. icdev/data/args/observability_config.yaml +39 -0
  39. icdev/data/args/observability_tracing_config.yaml +170 -0
  40. icdev/data/args/oscal_tools_config.yaml +43 -0
  41. icdev/data/args/owasp_agentic_config.yaml +171 -0
  42. icdev/data/args/phase_registry.yaml +618 -0
  43. icdev/data/args/project_defaults.yaml +235 -0
  44. icdev/data/args/prompt_chains.yaml +163 -0
  45. icdev/data/args/resilience_config.yaml +50 -0
  46. icdev/data/args/ricoas_config.yaml +191 -0
  47. icdev/data/args/role_personas.yaml +362 -0
  48. icdev/data/args/scaling_config.yaml +176 -0
  49. icdev/data/args/security_gates.yaml +685 -0
  50. icdev/data/args/skill_injection_config.yaml +322 -0
  51. icdev/data/args/spec_config.yaml +53 -0
  52. icdev/data/args/supply_chain_config.yaml +76 -0
  53. icdev/data/args/translation_config.yaml +228 -0
  54. icdev/data/args/workflow_templates/ato_acceleration.yaml +54 -0
  55. icdev/data/args/workflow_templates/build_deploy.yaml +63 -0
  56. icdev/data/args/workflow_templates/full_compliance.yaml +43 -0
  57. icdev/data/args/workflow_templates/security_hardening.yaml +55 -0
  58. icdev/data/args/worktree_config.yaml +34 -0
  59. icdev/data/args/zta_config.yaml +247 -0
  60. icdev/data/context/__init__.py +1 -0
  61. icdev/data/context/agent/__init__.py +1 -0
  62. icdev/data/context/agent/response_schemas/__init__.py +1 -0
  63. icdev/data/context/agent/response_schemas/debate_position.json +46 -0
  64. icdev/data/context/agent/response_schemas/fitness_scorecard.json +74 -0
  65. icdev/data/context/agent/response_schemas/review_decision.json +39 -0
  66. icdev/data/context/agent/response_schemas/task_decomposition.json +82 -0
  67. icdev/data/context/agent/response_schemas/veto_decision.json +40 -0
  68. icdev/data/context/agentic/__init__.py +1 -0
  69. icdev/data/context/agentic/architecture_patterns.md +269 -0
  70. icdev/data/context/agentic/capability_registry.yaml +202 -0
  71. icdev/data/context/agentic/csp_mcp_registry.yaml +280 -0
  72. icdev/data/context/agentic/fitness_rubric.md +56 -0
  73. icdev/data/context/agentic/governance_baseline.md +205 -0
  74. icdev/data/context/ci/__init__.py +1 -0
  75. icdev/data/context/ci/worktree_templates.json +44 -0
  76. icdev/data/context/cloud/__init__.py +1 -0
  77. icdev/data/context/cloud/csp_service_registry.json +739 -0
  78. icdev/data/context/compliance/__init__.py +1 -0
  79. icdev/data/context/compliance/atlas_mitigations.json +293 -0
  80. icdev/data/context/compliance/atlas_techniques.json +833 -0
  81. icdev/data/context/compliance/cisa_sbd_requirements.json +432 -0
  82. icdev/data/context/compliance/cjis_security_policy.json +522 -0
  83. icdev/data/context/compliance/cmmc_practices.json +2494 -0
  84. icdev/data/context/compliance/cmmc_report_template.md +142 -0
  85. icdev/data/context/compliance/cnssi_1253_overlay.json +109 -0
  86. icdev/data/context/compliance/control_crosswalk.json +1914 -0
  87. icdev/data/context/compliance/control_families/__init__.py +1 -0
  88. icdev/data/context/compliance/csp_certifications.json +251 -0
  89. icdev/data/context/compliance/cssp_report_template.md +193 -0
  90. icdev/data/context/compliance/cui_templates/__init__.py +1 -0
  91. icdev/data/context/compliance/cui_templates/banner_block.txt +4 -0
  92. icdev/data/context/compliance/cui_templates/code_header.txt +8 -0
  93. icdev/data/context/compliance/cui_templates/document_template.md +35 -0
  94. icdev/data/context/compliance/data_type_framework_map.json +321 -0
  95. icdev/data/context/compliance/data_type_registry.json +147 -0
  96. icdev/data/context/compliance/dod_cssp_8530.json +463 -0
  97. icdev/data/context/compliance/eu_ai_act_annex_iii.json +108 -0
  98. icdev/data/context/compliance/export_templates/__init__.py +1 -0
  99. icdev/data/context/compliance/export_templates/emass_controls.csv.j2 +4 -0
  100. icdev/data/context/compliance/export_templates/evidence_package.md.j2 +39 -0
  101. icdev/data/context/compliance/export_templates/executive_summary.md.j2 +55 -0
  102. icdev/data/context/compliance/export_templates/poam_tracking.csv.j2 +4 -0
  103. icdev/data/context/compliance/fedramp_20x_ksi_schemas.json +133 -0
  104. icdev/data/context/compliance/fedramp_high_baseline.json +4370 -0
  105. icdev/data/context/compliance/fedramp_moderate_baseline.json +2183 -0
  106. icdev/data/context/compliance/fedramp_report_template.md +181 -0
  107. icdev/data/context/compliance/fips_200_areas.json +362 -0
  108. icdev/data/context/compliance/gao_ai_accountability.json +262 -0
  109. icdev/data/context/compliance/hipaa_security_rule.json +720 -0
  110. icdev/data/context/compliance/hitrust_csf_v11.json +930 -0
  111. icdev/data/context/compliance/impact_level_profiles.json +251 -0
  112. icdev/data/context/compliance/incident_response_template.md +1110 -0
  113. icdev/data/context/compliance/iso27001_2022_controls.json +750 -0
  114. icdev/data/context/compliance/iso27001_nist_bridge.json +382 -0
  115. icdev/data/context/compliance/iso42001_controls.json +254 -0
  116. icdev/data/context/compliance/ivv_checklist_template.md +80 -0
  117. icdev/data/context/compliance/ivv_report_template.md +116 -0
  118. icdev/data/context/compliance/ivv_requirements.json +372 -0
  119. icdev/data/context/compliance/mosa_crosswalk.json +327 -0
  120. icdev/data/context/compliance/mosa_framework.json +250 -0
  121. icdev/data/context/compliance/narrative_templates/AC.md.j2 +101 -0
  122. icdev/data/context/compliance/narrative_templates/AU.md.j2 +106 -0
  123. icdev/data/context/compliance/narrative_templates/IA.md.j2 +104 -0
  124. icdev/data/context/compliance/narrative_templates/SC.md.j2 +102 -0
  125. icdev/data/context/compliance/narrative_templates/SI.md.j2 +111 -0
  126. icdev/data/context/compliance/narrative_templates/__init__.py +1 -0
  127. icdev/data/context/compliance/narrative_templates/default.md.j2 +50 -0
  128. icdev/data/context/compliance/narrative_templates/executive_summary.j2 +27 -0
  129. icdev/data/context/compliance/narrative_templates/poam_milestone.j2 +19 -0
  130. icdev/data/context/compliance/narrative_templates/ssp_section.j2 +11 -0
  131. icdev/data/context/compliance/nist_800_171_controls.json +1552 -0
  132. icdev/data/context/compliance/nist_800_207_crosswalk.json +399 -0
  133. icdev/data/context/compliance/nist_800_207_zta.json +258 -0
  134. icdev/data/context/compliance/nist_800_53.json +324 -0
  135. icdev/data/context/compliance/nist_ai_600_1_genai.json +326 -0
  136. icdev/data/context/compliance/nist_ai_rmf.json +206 -0
  137. icdev/data/context/compliance/nist_sp_800_60_types.json +1667 -0
  138. icdev/data/context/compliance/omb_m25_21_high_impact_ai.json +248 -0
  139. icdev/data/context/compliance/omb_m26_04_unbiased_ai.json +262 -0
  140. icdev/data/context/compliance/owasp_agentic_asi.json +133 -0
  141. icdev/data/context/compliance/owasp_agentic_threats.json +285 -0
  142. icdev/data/context/compliance/owasp_llm_top10.json +274 -0
  143. icdev/data/context/compliance/pci_dss_v4.json +510 -0
  144. icdev/data/context/compliance/poam_template.md +117 -0
  145. icdev/data/context/compliance/safeai_controls.json +512 -0
  146. icdev/data/context/compliance/sbd_report_template.md +77 -0
  147. icdev/data/context/compliance/siem_config_templates/__init__.py +1 -0
  148. icdev/data/context/compliance/siem_config_templates/filebeat.yml +213 -0
  149. icdev/data/context/compliance/siem_config_templates/log_sources.json +208 -0
  150. icdev/data/context/compliance/soc2_trust_criteria.json +661 -0
  151. icdev/data/context/compliance/ssp_template.md +432 -0
  152. icdev/data/context/compliance/stig_templates/__init__.py +1 -0
  153. icdev/data/context/compliance/stig_templates/webapp_stig.json +139 -0
  154. icdev/data/context/compliance/xai_requirements.json +108 -0
  155. icdev/data/context/dashboard/__init__.py +1 -0
  156. icdev/data/context/dashboard/nlq_examples.json +50 -0
  157. icdev/data/context/dashboard/schema_descriptions.json +23 -0
  158. icdev/data/context/integration/__init__.py +1 -0
  159. icdev/data/context/integration/approval_workflows.json +32 -0
  160. icdev/data/context/integration/gitlab_field_mappings.json +33 -0
  161. icdev/data/context/integration/jira_field_mappings.json +32 -0
  162. icdev/data/context/integration/reqif_export_schema.json +23 -0
  163. icdev/data/context/integration/servicenow_field_mappings.json +22 -0
  164. icdev/data/context/languages/__init__.py +1 -0
  165. icdev/data/context/languages/framework_patterns.json +205 -0
  166. icdev/data/context/languages/language_registry.json +279 -0
  167. icdev/data/context/llm/__init__.py +1 -0
  168. icdev/data/context/llm/example_provider.py +86 -0
  169. icdev/data/context/mbse/__init__.py +1 -0
  170. icdev/data/context/mbse/des_report_template.md +162 -0
  171. icdev/data/context/mbse/des_requirements.json +411 -0
  172. icdev/data/context/mbse/digital_thread_patterns.json +403 -0
  173. icdev/data/context/mbse/reqif_schema.json +280 -0
  174. icdev/data/context/mbse/sysml_element_types.json +432 -0
  175. icdev/data/context/modernization/__init__.py +1 -0
  176. icdev/data/context/modernization/db_type_mappings.json +148 -0
  177. icdev/data/context/modernization/decomposition_patterns.json +284 -0
  178. icdev/data/context/modernization/framework_migration_patterns.json +359 -0
  179. icdev/data/context/modernization/migration_report_template.md +168 -0
  180. icdev/data/context/modernization/seven_rs_catalog.json +369 -0
  181. icdev/data/context/modernization/version_upgrade_rules.json +279 -0
  182. icdev/data/context/oscal/NIST_SP-800-53_rev5_catalog.json +254987 -0
  183. icdev/data/context/oscal/README.md +43 -0
  184. icdev/data/context/patterns/__init__.py +1 -0
  185. icdev/data/context/profiles/__init__.py +1 -0
  186. icdev/data/context/profiles/dod_baseline_v1.yaml +145 -0
  187. icdev/data/context/profiles/fedramp_baseline_v1.yaml +143 -0
  188. icdev/data/context/profiles/financial_baseline_v1.yaml +142 -0
  189. icdev/data/context/profiles/healthcare_baseline_v1.yaml +135 -0
  190. icdev/data/context/profiles/law_enforcement_v1.yaml +129 -0
  191. icdev/data/context/profiles/startup_v1.yaml +134 -0
  192. icdev/data/context/requirements/__init__.py +1 -0
  193. icdev/data/context/requirements/ambiguity_patterns.json +97 -0
  194. icdev/data/context/requirements/boundary_impact_rules.json +123 -0
  195. icdev/data/context/requirements/default_constitutions.json +67 -0
  196. icdev/data/context/requirements/document_extraction_rules.json +58 -0
  197. icdev/data/context/requirements/gap_patterns.json +108 -0
  198. icdev/data/context/requirements/readiness_rubric.json +78 -0
  199. icdev/data/context/requirements/red_alternative_patterns.json +210 -0
  200. icdev/data/context/requirements/safe_templates.json +72 -0
  201. icdev/data/context/requirements/spec_quality_checklist.json +122 -0
  202. icdev/data/context/simulation/__init__.py +1 -0
  203. icdev/data/context/simulation/architecture_patterns.json +36 -0
  204. icdev/data/context/simulation/coa_templates.json +38 -0
  205. icdev/data/context/simulation/cost_models.json +23 -0
  206. icdev/data/context/simulation/risk_categories.json +46 -0
  207. icdev/data/context/supply_chain/__init__.py +1 -0
  208. icdev/data/context/supply_chain/isa_templates.json +129 -0
  209. icdev/data/context/supply_chain/nist_800_161_controls.json +247 -0
  210. icdev/data/context/supply_chain/scrm_risk_matrix.json +147 -0
  211. icdev/data/context/templates/__init__.py +1 -0
  212. icdev/data/context/templates/ansible/__init__.py +1 -0
  213. icdev/data/context/templates/ansible/playbooks/__init__.py +1 -0
  214. icdev/data/context/templates/ansible/roles/__init__.py +1 -0
  215. icdev/data/context/templates/gitlab_ci/__init__.py +1 -0
  216. icdev/data/context/templates/grafana/__init__.py +1 -0
  217. icdev/data/context/templates/kubernetes/__init__.py +1 -0
  218. icdev/data/context/templates/project/__init__.py +1 -0
  219. icdev/data/context/templates/project/api/__init__.py +1 -0
  220. icdev/data/context/templates/project/cli/__init__.py +1 -0
  221. icdev/data/context/templates/project/data_pipeline/__init__.py +1 -0
  222. icdev/data/context/templates/project/iac/__init__.py +1 -0
  223. icdev/data/context/templates/project/javascript_frontend/__init__.py +1 -0
  224. icdev/data/context/templates/project/javascript_frontend/src/__init__.py +1 -0
  225. icdev/data/context/templates/project/javascript_frontend/tests/__init__.py +1 -0
  226. icdev/data/context/templates/project/microservice/__init__.py +1 -0
  227. icdev/data/context/templates/project/python_backend/__init__.py +1 -0
  228. icdev/data/context/templates/project/python_backend/src/__init__.py +1 -0
  229. icdev/data/context/templates/project/python_backend/tests/__init__.py +1 -0
  230. icdev/data/context/templates/project/python_backend/tests/features/__init__.py +1 -0
  231. icdev/data/context/templates/project/python_backend/tests/steps/__init__.py +1 -0
  232. icdev/data/context/templates/terraform/__init__.py +1 -0
  233. icdev/data/context/templates/terraform/govcloud_base/__init__.py +1 -0
  234. icdev/data/context/templates/terraform/modules/__init__.py +1 -0
  235. icdev/data/context/tone/__init__.py +1 -0
  236. icdev/data/context/translation/dependency_mappings.json +186 -0
  237. icdev/data/context/translation/type_mappings.json +149 -0
  238. icdev/data/docs/README.md +187 -0
  239. icdev/data/docs/__init__.py +1 -0
  240. icdev/data/docs/admin/gateway-guide.md +338 -0
  241. icdev/data/docs/admin/marketplace-guide.md +396 -0
  242. icdev/data/docs/admin/monitoring-guide.md +509 -0
  243. icdev/data/docs/architecture/compliance-framework.md +764 -0
  244. icdev/data/docs/architecture/database-schema.md +689 -0
  245. icdev/data/docs/architecture/gotcha-framework.md +518 -0
  246. icdev/data/docs/architecture/multi-agent-system.md +603 -0
  247. icdev/data/docs/dx/README.md +106 -0
  248. icdev/data/docs/dx/__init__.py +1 -0
  249. icdev/data/docs/dx/ci-cd-integration.md +378 -0
  250. icdev/data/docs/dx/claude-code-guide.md +213 -0
  251. icdev/data/docs/dx/companion-guide.md +232 -0
  252. icdev/data/docs/dx/dev-profiles.md +309 -0
  253. icdev/data/docs/dx/icdev-yaml-spec.md +219 -0
  254. icdev/data/docs/dx/integration-tiers.md +279 -0
  255. icdev/data/docs/dx/llm-routing-guide.md +456 -0
  256. icdev/data/docs/dx/quickstart.md +192 -0
  257. icdev/data/docs/dx/sdk-reference.md +356 -0
  258. icdev/data/docs/dx/unified-mcp-setup.md +525 -0
  259. icdev/data/docs/features/__init__.py +1 -0
  260. icdev/data/docs/features/phase-01-gotcha-framework.md +249 -0
  261. icdev/data/docs/features/phase-02-atlas-build-workflow.md +223 -0
  262. icdev/data/docs/features/phase-03-tdd-bdd-testing.md +261 -0
  263. icdev/data/docs/features/phase-04-nist-compliance.md +255 -0
  264. icdev/data/docs/features/phase-05-security-scanning.md +229 -0
  265. icdev/data/docs/features/phase-06-infrastructure-deployment.md +288 -0
  266. icdev/data/docs/features/phase-07-code-review-gates.md +276 -0
  267. icdev/data/docs/features/phase-08-self-healing.md +223 -0
  268. icdev/data/docs/features/phase-09-monitoring-observability.md +230 -0
  269. icdev/data/docs/features/phase-10-dashboard-web-ui.md +218 -0
  270. icdev/data/docs/features/phase-11-multi-agent-architecture.md +272 -0
  271. icdev/data/docs/features/phase-12-integration-testing.md +228 -0
  272. icdev/data/docs/features/phase-13-cicd-integration.md +257 -0
  273. icdev/data/docs/features/phase-14-secure-by-design-ivv.md +240 -0
  274. icdev/data/docs/features/phase-15-maintenance-audit.md +192 -0
  275. icdev/data/docs/features/phase-16-ato-acceleration.md +228 -0
  276. icdev/data/docs/features/phase-17-multi-framework-compliance.md +223 -0
  277. icdev/data/docs/features/phase-18-mbse-integration.md +242 -0
  278. icdev/data/docs/features/phase-19-agentic-generation.md +202 -0
  279. icdev/data/docs/features/phase-20-fips-security-categorization.md +198 -0
  280. icdev/data/docs/features/phase-21-saas-multi-tenancy.md +273 -0
  281. icdev/data/docs/features/phase-22-federated-gotcha-marketplace.md +242 -0
  282. icdev/data/docs/features/phase-23-universal-compliance-platform.md +238 -0
  283. icdev/data/docs/features/phase-24-devsecops-pipeline-security.md +198 -0
  284. icdev/data/docs/features/phase-25-zero-trust-architecture.md +220 -0
  285. icdev/data/docs/features/phase-26-dod-mosa.md +205 -0
  286. icdev/data/docs/features/phase-27-cli-capabilities.md +222 -0
  287. icdev/data/docs/features/phase-28-remote-command-gateway.md +235 -0
  288. icdev/data/docs/features/phase-29-proactive-monitoring.md +212 -0
  289. icdev/data/docs/features/phase-30-dashboard-auth.md +215 -0
  290. icdev/data/docs/features/phase-31-dashboard-ux-low-impact.md +188 -0
  291. icdev/data/docs/features/phase-32-dashboard-ux-medium-impact.md +223 -0
  292. icdev/data/docs/features/phase-33-modular-installation.md +218 -0
  293. icdev/data/docs/features/phase-34-dev-profiles.md +239 -0
  294. icdev/data/docs/features/phase-35-innovation-engine.md +257 -0
  295. icdev/data/docs/features/phase-36-evolutionary-intelligence.md +351 -0
  296. icdev/data/docs/features/phase-37-mitre-atlas-integration.md +485 -0
  297. icdev/data/docs/features/phase-38-cloud-agnostic-architecture.md +1033 -0
  298. icdev/data/docs/features/phase-39-observability-operations.md +178 -0
  299. icdev/data/docs/features/phase-40-nlq-compliance-queries.md +176 -0
  300. icdev/data/docs/features/phase-41-parallel-cicd.md +169 -0
  301. icdev/data/docs/features/phase-42-framework-planning.md +177 -0
  302. icdev/data/docs/features/phase-43-cross-language-translation.md +225 -0
  303. icdev/data/docs/features/phase-44-innovation-adaptation.md +227 -0
  304. icdev/data/docs/features/phase-45-owasp-agentic-security.md +239 -0
  305. icdev/data/docs/features/phase-46-observability-traceability-xai.md +240 -0
  306. icdev/data/docs/features/phase-47-unified-mcp-gateway.md +257 -0
  307. icdev/data/docs/features/phase-48-ai-transparency.md +203 -0
  308. icdev/data/docs/features/phase-49-ai-accountability.md +243 -0
  309. icdev/data/docs/features/phase-50-ai-governance-intake-chat.md +195 -0
  310. icdev/data/docs/features/phase-51-unified-chat-dashboard.md +240 -0
  311. icdev/data/docs/features/phase-52-code-intelligence.md +244 -0
  312. icdev/data/docs/features/phase-53-fedramp-20x-owasp-asi.md +359 -0
  313. icdev/data/docs/features/phase-54-slsa-swft-orchestration.md +379 -0
  314. icdev/data/docs/features/phase-55-a2a-v03-mcp-oauth.md +322 -0
  315. icdev/data/docs/features/phase-56-evidence-lineage.md +352 -0
  316. icdev/data/docs/features/phase-57-eu-ai-act-iron-bank.md +319 -0
  317. icdev/data/docs/features/phase-58-creative-engine.md +370 -0
  318. icdev/data/docs/features/phase-59-govcon-intelligence.md +535 -0
  319. icdev/data/docs/features/phase-60-cpmp.md +528 -0
  320. icdev/data/docs/features/phase-61-orchestration-improvements.md +534 -0
  321. icdev/data/docs/operations/dashboard-guide.md +354 -0
  322. icdev/data/docs/operations/deployment-guide.md +556 -0
  323. icdev/data/docs/operations/saas-admin-guide.md +439 -0
  324. icdev/data/docs/operations/security-operations-guide.md +733 -0
  325. icdev/data/docs/runbooks/backup-restore.md +412 -0
  326. icdev/data/docs/runbooks/troubleshooting.md +499 -0
  327. icdev/data/features/__init__.py +1 -0
  328. icdev/data/features/cicd_integration.feature +41 -0
  329. icdev/data/features/compliance_gates.feature +46 -0
  330. icdev/data/features/dashboard.feature +72 -0
  331. icdev/data/features/environment.py +25 -0
  332. icdev/data/features/project_management.feature +32 -0
  333. icdev/data/features/requirements_intake.feature +42 -0
  334. icdev/data/features/saas_platform.feature +53 -0
  335. icdev/data/features/security_scanning.feature +36 -0
  336. icdev/data/features/steps/__init__.py +1 -0
  337. icdev/data/features/steps/cicd_steps.py +465 -0
  338. icdev/data/features/steps/compliance_steps.py +308 -0
  339. icdev/data/features/steps/dashboard_steps.py +88 -0
  340. icdev/data/features/steps/project_steps.py +126 -0
  341. icdev/data/features/steps/requirements_intake_steps.py +689 -0
  342. icdev/data/features/steps/saas_platform_steps.py +572 -0
  343. icdev/data/features/steps/security_steps.py +236 -0
  344. icdev/data/features/steps/testing_steps.py +226 -0
  345. icdev/data/features/testing_pipeline.feature +42 -0
  346. icdev/data/goals/__init__.py +1 -0
  347. icdev/data/goals/agent_management.md +144 -0
  348. icdev/data/goals/agentic_generation.md +345 -0
  349. icdev/data/goals/agentic_threat_model.md +309 -0
  350. icdev/data/goals/ai_accountability.md +90 -0
  351. icdev/data/goals/ai_governance_intake.md +132 -0
  352. icdev/data/goals/ai_transparency.md +76 -0
  353. icdev/data/goals/atlas_integration.md +405 -0
  354. icdev/data/goals/ato_acceleration.md +139 -0
  355. icdev/data/goals/boundary_supply_chain.md +206 -0
  356. icdev/data/goals/build_app.md +544 -0
  357. icdev/data/goals/cicd_integration.md +86 -0
  358. icdev/data/goals/claude_dir_maintenance.md +77 -0
  359. icdev/data/goals/cli_capabilities.md +340 -0
  360. icdev/data/goals/cloud_agnostic.md +312 -0
  361. icdev/data/goals/code_intelligence.md +197 -0
  362. icdev/data/goals/code_review.md +94 -0
  363. icdev/data/goals/compliance_workflow.md +858 -0
  364. icdev/data/goals/continuous_harmonization.md +140 -0
  365. icdev/data/goals/cross_language_translation.md +171 -0
  366. icdev/data/goals/dashboard.md +142 -0
  367. icdev/data/goals/deploy_workflow.md +390 -0
  368. icdev/data/goals/devsecops_workflow.md +408 -0
  369. icdev/data/goals/evolutionary_intelligence.md +305 -0
  370. icdev/data/goals/external_integration.md +113 -0
  371. icdev/data/goals/framework_planning.md +63 -0
  372. icdev/data/goals/init_project.md +235 -0
  373. icdev/data/goals/innovation_engine.md +199 -0
  374. icdev/data/goals/integration_testing.md +189 -0
  375. icdev/data/goals/maintenance_audit.md +196 -0
  376. icdev/data/goals/manifest.md +56 -0
  377. icdev/data/goals/mbse_integration.md +504 -0
  378. icdev/data/goals/modernization_workflow.md +618 -0
  379. icdev/data/goals/monitoring.md +126 -0
  380. icdev/data/goals/mosa_workflow.md +463 -0
  381. icdev/data/goals/multi_agent_orchestration.md +68 -0
  382. icdev/data/goals/nlq_compliance.md +63 -0
  383. icdev/data/goals/observability.md +64 -0
  384. icdev/data/goals/observability_traceability_xai.md +154 -0
  385. icdev/data/goals/owasp_agentic_security.md +395 -0
  386. icdev/data/goals/parallel_cicd.md +61 -0
  387. icdev/data/goals/requirements_intake.md +213 -0
  388. icdev/data/goals/sbd_ivv_workflow.md +195 -0
  389. icdev/data/goals/security_categorization.md +133 -0
  390. icdev/data/goals/security_scan.md +381 -0
  391. icdev/data/goals/self_healing.md +120 -0
  392. icdev/data/goals/simulation_engine.md +111 -0
  393. icdev/data/goals/tdd_workflow.md +403 -0
  394. icdev/data/goals/zero_trust_architecture.md +403 -0
  395. icdev/data/hardprompts/__init__.py +1 -0
  396. icdev/data/hardprompts/agent/__init__.py +1 -0
  397. icdev/data/hardprompts/agent/agentic_architect.md +100 -0
  398. icdev/data/hardprompts/agent/debate_prompt.md +32 -0
  399. icdev/data/hardprompts/agent/fitness_evaluation.md +48 -0
  400. icdev/data/hardprompts/agent/governance_review.md +214 -0
  401. icdev/data/hardprompts/agent/reviewer_prompt.md +34 -0
  402. icdev/data/hardprompts/agent/skill_design.md +172 -0
  403. icdev/data/hardprompts/agent/task_decomposition.md +275 -0
  404. icdev/data/hardprompts/agent/veto_check_prompt.md +33 -0
  405. icdev/data/hardprompts/architect/__init__.py +1 -0
  406. icdev/data/hardprompts/architect/api_design.md +283 -0
  407. icdev/data/hardprompts/architect/data_model.md +277 -0
  408. icdev/data/hardprompts/architect/system_design.md +180 -0
  409. icdev/data/hardprompts/builder/__init__.py +1 -0
  410. icdev/data/hardprompts/builder/code_generation.md +59 -0
  411. icdev/data/hardprompts/builder/refactor.md +58 -0
  412. icdev/data/hardprompts/builder/scaffold_project.md +69 -0
  413. icdev/data/hardprompts/builder/test_generation.md +87 -0
  414. icdev/data/hardprompts/ci/__init__.py +1 -0
  415. icdev/data/hardprompts/ci/worktree_setup.md +35 -0
  416. icdev/data/hardprompts/compliance/__init__.py +1 -0
  417. icdev/data/hardprompts/compliance/cmmc_assessment.md +63 -0
  418. icdev/data/hardprompts/compliance/cssp_assessment.md +75 -0
  419. icdev/data/hardprompts/compliance/cui_marking.md +86 -0
  420. icdev/data/hardprompts/compliance/fedramp_assessment.md +55 -0
  421. icdev/data/hardprompts/compliance/ivv_assessment.md +96 -0
  422. icdev/data/hardprompts/compliance/poam_generation.md +57 -0
  423. icdev/data/hardprompts/compliance/sbd_assessment.md +101 -0
  424. icdev/data/hardprompts/compliance/security_categorization.md +74 -0
  425. icdev/data/hardprompts/compliance/ssp_generation.md +56 -0
  426. icdev/data/hardprompts/compliance/stig_evaluation.md +63 -0
  427. icdev/data/hardprompts/dashboard/__init__.py +1 -0
  428. icdev/data/hardprompts/dashboard/nlq_system_prompt.md +26 -0
  429. icdev/data/hardprompts/infra/__init__.py +1 -0
  430. icdev/data/hardprompts/infra/k8s_manifests.md +118 -0
  431. icdev/data/hardprompts/infra/pipeline_generation.md +160 -0
  432. icdev/data/hardprompts/infra/terraform_generation.md +92 -0
  433. icdev/data/hardprompts/integration/__init__.py +1 -0
  434. icdev/data/hardprompts/integration/approval_review.md +17 -0
  435. icdev/data/hardprompts/integration/jira_mapping.md +25 -0
  436. icdev/data/hardprompts/integration/servicenow_mapping.md +14 -0
  437. icdev/data/hardprompts/knowledge/__init__.py +1 -0
  438. icdev/data/hardprompts/knowledge/pattern_detection.md +73 -0
  439. icdev/data/hardprompts/knowledge/recommendation_engine.md +90 -0
  440. icdev/data/hardprompts/knowledge/root_cause_analysis.md +91 -0
  441. icdev/data/hardprompts/maintenance/__init__.py +1 -0
  442. icdev/data/hardprompts/maintenance/maintenance_assessment.md +82 -0
  443. icdev/data/hardprompts/mbse/__init__.py +1 -0
  444. icdev/data/hardprompts/mbse/digital_thread.md +67 -0
  445. icdev/data/hardprompts/mbse/model_import.md +62 -0
  446. icdev/data/hardprompts/mbse/model_to_code.md +65 -0
  447. icdev/data/hardprompts/modernization/__init__.py +1 -0
  448. icdev/data/hardprompts/modernization/legacy_analysis.md +93 -0
  449. icdev/data/hardprompts/modernization/migration_planning.md +150 -0
  450. icdev/data/hardprompts/modernization/seven_r_assessment.md +107 -0
  451. icdev/data/hardprompts/requirements/__init__.py +1 -0
  452. icdev/data/hardprompts/requirements/bdd_generation.md +35 -0
  453. icdev/data/hardprompts/requirements/clarification_prioritization.md +29 -0
  454. icdev/data/hardprompts/requirements/decomposition.md +60 -0
  455. icdev/data/hardprompts/requirements/document_extraction.md +45 -0
  456. icdev/data/hardprompts/requirements/gap_detection.md +70 -0
  457. icdev/data/hardprompts/requirements/intake_conversation.md +101 -0
  458. icdev/data/hardprompts/requirements/readiness_assessment.md +39 -0
  459. icdev/data/hardprompts/requirements/spec_quality.md +33 -0
  460. icdev/data/hardprompts/requirements/traceability_analysis.md +23 -0
  461. icdev/data/hardprompts/security/__init__.py +1 -0
  462. icdev/data/hardprompts/security/endpoint_security.md +78 -0
  463. icdev/data/hardprompts/security/threat_model.md +70 -0
  464. icdev/data/hardprompts/security/vulnerability_assessment.md +81 -0
  465. icdev/data/hardprompts/simulation/__init__.py +1 -0
  466. icdev/data/hardprompts/simulation/architecture_impact.md +27 -0
  467. icdev/data/hardprompts/simulation/coa_alternative.md +27 -0
  468. icdev/data/hardprompts/simulation/coa_generation.md +25 -0
  469. icdev/data/hardprompts/simulation/compliance_impact.md +28 -0
  470. icdev/data/hardprompts/simulation/cost_estimation.md +33 -0
  471. icdev/data/hardprompts/simulation/risk_assessment.md +28 -0
  472. icdev/data/hardprompts/translation/code_translation.md +68 -0
  473. icdev/data/hardprompts/translation/dependency_suggestion.md +44 -0
  474. icdev/data/hardprompts/translation/test_translation.md +64 -0
  475. icdev/data/hardprompts/translation/translation_repair.md +59 -0
  476. icdev/py.typed +0 -0
  477. icdev/tools/__init__.py +1 -0
  478. icdev/tools/_gen_formatter.py +12 -0
  479. icdev/tools/a2a/__init__.py +1 -0
  480. icdev/tools/a2a/agent_cards/architect.json +43 -0
  481. icdev/tools/a2a/agent_cards/builder.json +50 -0
  482. icdev/tools/a2a/agent_cards/compliance.json +57 -0
  483. icdev/tools/a2a/agent_cards/devsecops.json +71 -0
  484. icdev/tools/a2a/agent_cards/infra.json +57 -0
  485. icdev/tools/a2a/agent_cards/integration.json +57 -0
  486. icdev/tools/a2a/agent_cards/knowledge.json +43 -0
  487. icdev/tools/a2a/agent_cards/mbse.json +57 -0
  488. icdev/tools/a2a/agent_cards/modernization.json +50 -0
  489. icdev/tools/a2a/agent_cards/monitor.json +43 -0
  490. icdev/tools/a2a/agent_cards/orchestrator.json +36 -0
  491. icdev/tools/a2a/agent_cards/requirements_analyst.json +64 -0
  492. icdev/tools/a2a/agent_cards/security.json +50 -0
  493. icdev/tools/a2a/agent_cards/simulation.json +57 -0
  494. icdev/tools/a2a/agent_cards/supply_chain.json +50 -0
  495. icdev/tools/a2a/agent_client.py +349 -0
  496. icdev/tools/a2a/agent_registry.py +412 -0
  497. icdev/tools/a2a/agent_server.py +579 -0
  498. icdev/tools/a2a/task.py +200 -0
  499. icdev/tools/agent/__init__.py +2 -0
  500. icdev/tools/agent/a2a_agent_card_generator.py +285 -0
  501. icdev/tools/agent/a2a_discovery_server.py +250 -0
  502. icdev/tools/agent/agent_executor.py +529 -0
  503. icdev/tools/agent/agent_memory.py +557 -0
  504. icdev/tools/agent/agent_models.py +51 -0
  505. icdev/tools/agent/atlas_critique.py +908 -0
  506. icdev/tools/agent/authority.py +443 -0
  507. icdev/tools/agent/bedrock_client.py +1075 -0
  508. icdev/tools/agent/collaboration.py +871 -0
  509. icdev/tools/agent/dispatcher_mode.py +665 -0
  510. icdev/tools/agent/mailbox.py +575 -0
  511. icdev/tools/agent/prompt_chain_executor.py +1064 -0
  512. icdev/tools/agent/session_purpose.py +350 -0
  513. icdev/tools/agent/skill_router.py +638 -0
  514. icdev/tools/agent/skill_selector.py +486 -0
  515. icdev/tools/agent/team_orchestrator.py +1108 -0
  516. icdev/tools/agent/token_tracker.py +290 -0
  517. icdev/tools/analysis/__init__.py +1 -0
  518. icdev/tools/analysis/code_analyzer.py +780 -0
  519. icdev/tools/analysis/runtime_feedback.py +389 -0
  520. icdev/tools/audit/__init__.py +1 -0
  521. icdev/tools/audit/audit_logger.py +196 -0
  522. icdev/tools/audit/audit_query.py +157 -0
  523. icdev/tools/audit/decision_recorder.py +72 -0
  524. icdev/tools/builder/__init__.py +1 -0
  525. icdev/tools/builder/agentic_fitness.py +534 -0
  526. icdev/tools/builder/agentic_test_templates/test_a2a_callback.py +117 -0
  527. icdev/tools/builder/agentic_test_templates/test_a2a_lifecycle.feature +52 -0
  528. icdev/tools/builder/agentic_test_templates/test_agent_card.feature +37 -0
  529. icdev/tools/builder/agentic_test_templates/test_agent_health.py +128 -0
  530. icdev/tools/builder/agentic_test_templates/test_memory_system.feature +50 -0
  531. icdev/tools/builder/agentic_test_templates/test_skill_execution.feature +40 -0
  532. icdev/tools/builder/app_blueprint.py +1583 -0
  533. icdev/tools/builder/child_app_generator.py +2852 -0
  534. icdev/tools/builder/claude_md_generator.py +1734 -0
  535. icdev/tools/builder/code_generator.py +3703 -0
  536. icdev/tools/builder/db_init_generator.py +1709 -0
  537. icdev/tools/builder/dev_profile_manager.py +954 -0
  538. icdev/tools/builder/formatter.py +768 -0
  539. icdev/tools/builder/goal_adapter.py +592 -0
  540. icdev/tools/builder/gotcha_validator.py +812 -0
  541. icdev/tools/builder/language_support.py +441 -0
  542. icdev/tools/builder/linter.py +976 -0
  543. icdev/tools/builder/profile_detector.py +657 -0
  544. icdev/tools/builder/profile_md_generator.py +723 -0
  545. icdev/tools/builder/scaffolder.py +1590 -0
  546. icdev/tools/builder/scaffolder_extended.py +1771 -0
  547. icdev/tools/builder/test_writer.py +950 -0
  548. icdev/tools/ci/__init__.py +2 -0
  549. icdev/tools/ci/connectors/__init__.py +2 -0
  550. icdev/tools/ci/connectors/base_connector.py +80 -0
  551. icdev/tools/ci/connectors/connector_registry.py +188 -0
  552. icdev/tools/ci/connectors/mattermost_connector.py +159 -0
  553. icdev/tools/ci/connectors/slack_connector.py +197 -0
  554. icdev/tools/ci/core/__init__.py +2 -0
  555. icdev/tools/ci/core/air_gap_detector.py +115 -0
  556. icdev/tools/ci/core/comment_handler.py +192 -0
  557. icdev/tools/ci/core/conversation_manager.py +479 -0
  558. icdev/tools/ci/core/event_envelope.py +500 -0
  559. icdev/tools/ci/core/event_router.py +443 -0
  560. icdev/tools/ci/core/failure_parser.py +397 -0
  561. icdev/tools/ci/core/recovery_engine.py +527 -0
  562. icdev/tools/ci/modules/__init__.py +2 -0
  563. icdev/tools/ci/modules/agent.py +271 -0
  564. icdev/tools/ci/modules/git_ops.py +175 -0
  565. icdev/tools/ci/modules/state.py +117 -0
  566. icdev/tools/ci/modules/vcs.py +303 -0
  567. icdev/tools/ci/modules/workflow_ops.py +295 -0
  568. icdev/tools/ci/modules/worktree.py +340 -0
  569. icdev/tools/ci/pipeline_config_generator.py +558 -0
  570. icdev/tools/ci/triggers/__init__.py +2 -0
  571. icdev/tools/ci/triggers/gitlab_task_monitor.py +330 -0
  572. icdev/tools/ci/triggers/poll_trigger.py +237 -0
  573. icdev/tools/ci/triggers/webhook_server.py +356 -0
  574. icdev/tools/ci/workflows/__init__.py +2 -0
  575. icdev/tools/ci/workflows/icdev_build.py +140 -0
  576. icdev/tools/ci/workflows/icdev_comply.py +284 -0
  577. icdev/tools/ci/workflows/icdev_document.py +152 -0
  578. icdev/tools/ci/workflows/icdev_e2e.py +188 -0
  579. icdev/tools/ci/workflows/icdev_patch.py +186 -0
  580. icdev/tools/ci/workflows/icdev_plan.py +202 -0
  581. icdev/tools/ci/workflows/icdev_plan_build.py +41 -0
  582. icdev/tools/ci/workflows/icdev_plan_build_test.py +46 -0
  583. icdev/tools/ci/workflows/icdev_plan_build_test_review.py +47 -0
  584. icdev/tools/ci/workflows/icdev_review.py +126 -0
  585. icdev/tools/ci/workflows/icdev_sdlc.py +261 -0
  586. icdev/tools/ci/workflows/icdev_test.py +240 -0
  587. icdev/tools/cli/__init__.py +1 -0
  588. icdev/tools/cli/output_formatter.py +756 -0
  589. icdev/tools/cli_formatter.py +42 -0
  590. icdev/tools/cloud/__init__.py +11 -0
  591. icdev/tools/cloud/cloud_mode_manager.py +364 -0
  592. icdev/tools/cloud/csp_changelog.py +383 -0
  593. icdev/tools/cloud/csp_health_checker.py +268 -0
  594. icdev/tools/cloud/csp_monitor.py +951 -0
  595. icdev/tools/cloud/iam_provider.py +593 -0
  596. icdev/tools/cloud/kms_provider.py +346 -0
  597. icdev/tools/cloud/monitoring_provider.py +628 -0
  598. icdev/tools/cloud/provider_factory.py +376 -0
  599. icdev/tools/cloud/region_validator.py +345 -0
  600. icdev/tools/cloud/registry_provider.py +563 -0
  601. icdev/tools/cloud/secrets_provider.py +486 -0
  602. icdev/tools/cloud/storage_provider.py +446 -0
  603. icdev/tools/compat/__init__.py +21 -0
  604. icdev/tools/compat/cli_harmonizer.py +251 -0
  605. icdev/tools/compat/datetime_utils.py +18 -0
  606. icdev/tools/compat/db_utils.py +160 -0
  607. icdev/tools/compat/platform_utils.py +123 -0
  608. icdev/tools/compliance/__init__.py +1 -0
  609. icdev/tools/compliance/accountability_manager.py +397 -0
  610. icdev/tools/compliance/ai_accountability_audit.py +294 -0
  611. icdev/tools/compliance/ai_impact_assessor.py +273 -0
  612. icdev/tools/compliance/ai_incident_response.py +301 -0
  613. icdev/tools/compliance/ai_inventory_manager.py +239 -0
  614. icdev/tools/compliance/ai_reassessment_scheduler.py +256 -0
  615. icdev/tools/compliance/ai_transparency_audit.py +248 -0
  616. icdev/tools/compliance/atlas_assessor.py +278 -0
  617. icdev/tools/compliance/atlas_report_generator.py +1211 -0
  618. icdev/tools/compliance/base_assessor.py +597 -0
  619. icdev/tools/compliance/cato_monitor.py +1385 -0
  620. icdev/tools/compliance/cato_scheduler.py +699 -0
  621. icdev/tools/compliance/cjis_assessor.py +76 -0
  622. icdev/tools/compliance/classification_manager.py +1353 -0
  623. icdev/tools/compliance/cmmc_assessor.py +1491 -0
  624. icdev/tools/compliance/cmmc_report_generator.py +1100 -0
  625. icdev/tools/compliance/compliance_detector.py +463 -0
  626. icdev/tools/compliance/compliance_exporter.py +427 -0
  627. icdev/tools/compliance/compliance_status.py +825 -0
  628. icdev/tools/compliance/control_mapper.py +505 -0
  629. icdev/tools/compliance/crosswalk_engine.py +1203 -0
  630. icdev/tools/compliance/cssp_assessor.py +1045 -0
  631. icdev/tools/compliance/cssp_evidence_collector.py +729 -0
  632. icdev/tools/compliance/cssp_report_generator.py +1116 -0
  633. icdev/tools/compliance/cui_marker.py +388 -0
  634. icdev/tools/compliance/diagram_validator.py +600 -0
  635. icdev/tools/compliance/emass/__init__.py +2 -0
  636. icdev/tools/compliance/emass/emass_client.py +840 -0
  637. icdev/tools/compliance/emass/emass_export.py +777 -0
  638. icdev/tools/compliance/emass/emass_sync.py +826 -0
  639. icdev/tools/compliance/eu_ai_act_classifier.py +194 -0
  640. icdev/tools/compliance/evidence_collector.py +468 -0
  641. icdev/tools/compliance/fairness_assessor.py +316 -0
  642. icdev/tools/compliance/fedramp_assessor.py +1808 -0
  643. icdev/tools/compliance/fedramp_authorization_packager.py +137 -0
  644. icdev/tools/compliance/fedramp_ksi_generator.py +355 -0
  645. icdev/tools/compliance/fedramp_report_generator.py +1128 -0
  646. icdev/tools/compliance/fips199_categorizer.py +881 -0
  647. icdev/tools/compliance/fips200_validator.py +315 -0
  648. icdev/tools/compliance/gao_ai_assessor.py +231 -0
  649. icdev/tools/compliance/gao_evidence_builder.py +308 -0
  650. icdev/tools/compliance/hipaa_assessor.py +78 -0
  651. icdev/tools/compliance/hitrust_assessor.py +49 -0
  652. icdev/tools/compliance/incident_response_plan.py +718 -0
  653. icdev/tools/compliance/iso27001_assessor.py +92 -0
  654. icdev/tools/compliance/iso42001_assessor.py +114 -0
  655. icdev/tools/compliance/ivv_assessor.py +2327 -0
  656. icdev/tools/compliance/ivv_report_generator.py +1662 -0
  657. icdev/tools/compliance/model_card_generator.py +297 -0
  658. icdev/tools/compliance/mosa_assessor.py +117 -0
  659. icdev/tools/compliance/multi_regime_assessor.py +451 -0
  660. icdev/tools/compliance/narrative_generator.py +1013 -0
  661. icdev/tools/compliance/nist_800_207_assessor.py +191 -0
  662. icdev/tools/compliance/nist_ai_600_1_assessor.py +188 -0
  663. icdev/tools/compliance/nist_ai_rmf_assessor.py +110 -0
  664. icdev/tools/compliance/nist_lookup.py +245 -0
  665. icdev/tools/compliance/omb_m25_21_assessor.py +228 -0
  666. icdev/tools/compliance/omb_m26_04_assessor.py +188 -0
  667. icdev/tools/compliance/oscal_catalog_adapter.py +395 -0
  668. icdev/tools/compliance/oscal_generator.py +2170 -0
  669. icdev/tools/compliance/oscal_tools.py +1182 -0
  670. icdev/tools/compliance/owasp_agentic_assessor.py +226 -0
  671. icdev/tools/compliance/owasp_asi_assessor.py +200 -0
  672. icdev/tools/compliance/owasp_llm_assessor.py +244 -0
  673. icdev/tools/compliance/pci_dss_assessor.py +80 -0
  674. icdev/tools/compliance/pi_compliance_tracker.py +1461 -0
  675. icdev/tools/compliance/poam_generator.py +405 -0
  676. icdev/tools/compliance/resolve_marking.py +283 -0
  677. icdev/tools/compliance/sbd_assessor.py +2068 -0
  678. icdev/tools/compliance/sbd_report_generator.py +1236 -0
  679. icdev/tools/compliance/sbom_generator.py +1008 -0
  680. icdev/tools/compliance/siem_config_generator.py +674 -0
  681. icdev/tools/compliance/slsa_attestation_generator.py +490 -0
  682. icdev/tools/compliance/soc2_assessor.py +77 -0
  683. icdev/tools/compliance/ssp_generator.py +573 -0
  684. icdev/tools/compliance/stig_checker.py +727 -0
  685. icdev/tools/compliance/swft_evidence_bundler.py +337 -0
  686. icdev/tools/compliance/system_card_generator.py +309 -0
  687. icdev/tools/compliance/traceability_matrix.py +1281 -0
  688. icdev/tools/compliance/universal_classification_manager.py +1172 -0
  689. icdev/tools/compliance/xacta/__init__.py +2 -0
  690. icdev/tools/compliance/xacta/xacta_client.py +449 -0
  691. icdev/tools/compliance/xacta/xacta_export.py +557 -0
  692. icdev/tools/compliance/xacta/xacta_sync.py +333 -0
  693. icdev/tools/compliance/xai_assessor.py +231 -0
  694. icdev/tools/dashboard/__init__.py +1 -0
  695. icdev/tools/dashboard/api/__init__.py +1 -0
  696. icdev/tools/dashboard/api/_pipeline_state.py +17 -0
  697. icdev/tools/dashboard/api/activity.py +206 -0
  698. icdev/tools/dashboard/api/admin.py +176 -0
  699. icdev/tools/dashboard/api/agents.py +53 -0
  700. icdev/tools/dashboard/api/ai_accountability.py +163 -0
  701. icdev/tools/dashboard/api/ai_transparency.py +198 -0
  702. icdev/tools/dashboard/api/audit.py +58 -0
  703. icdev/tools/dashboard/api/batch.py +666 -0
  704. icdev/tools/dashboard/api/chat.py +241 -0
  705. icdev/tools/dashboard/api/cicd.py +219 -0
  706. icdev/tools/dashboard/api/code_quality.py +223 -0
  707. icdev/tools/dashboard/api/compliance.py +171 -0
  708. icdev/tools/dashboard/api/cpmp.py +915 -0
  709. icdev/tools/dashboard/api/diagrams.py +65 -0
  710. icdev/tools/dashboard/api/events.py +250 -0
  711. icdev/tools/dashboard/api/evidence.py +99 -0
  712. icdev/tools/dashboard/api/fedramp_20x.py +77 -0
  713. icdev/tools/dashboard/api/govcon.py +1095 -0
  714. icdev/tools/dashboard/api/intake.py +1171 -0
  715. icdev/tools/dashboard/api/lineage.py +163 -0
  716. icdev/tools/dashboard/api/metrics.py +155 -0
  717. icdev/tools/dashboard/api/nlq.py +72 -0
  718. icdev/tools/dashboard/api/orchestration.py +472 -0
  719. icdev/tools/dashboard/api/oscal.py +183 -0
  720. icdev/tools/dashboard/api/prod_audit.py +183 -0
  721. icdev/tools/dashboard/api/projects.py +191 -0
  722. icdev/tools/dashboard/api/proposals.py +1084 -0
  723. icdev/tools/dashboard/api/traces.py +363 -0
  724. icdev/tools/dashboard/api/usage.py +234 -0
  725. icdev/tools/dashboard/app.py +1986 -0
  726. icdev/tools/dashboard/auth.py +500 -0
  727. icdev/tools/dashboard/byok.py +245 -0
  728. icdev/tools/dashboard/chat_manager.py +675 -0
  729. icdev/tools/dashboard/config.py +116 -0
  730. icdev/tools/dashboard/diagram_definitions.py +642 -0
  731. icdev/tools/dashboard/nlq_processor.py +323 -0
  732. icdev/tools/dashboard/phase_loader.py +136 -0
  733. icdev/tools/dashboard/sse_manager.py +89 -0
  734. icdev/tools/dashboard/state_tracker.py +267 -0
  735. icdev/tools/dashboard/static/css/style.css +706 -0
  736. icdev/tools/dashboard/static/css/ux.css +2047 -0
  737. icdev/tools/dashboard/static/js/activity.js +322 -0
  738. icdev/tools/dashboard/static/js/api.js +161 -0
  739. icdev/tools/dashboard/static/js/batch.js +814 -0
  740. icdev/tools/dashboard/static/js/charts.js +618 -0
  741. icdev/tools/dashboard/static/js/chat.js +1514 -0
  742. icdev/tools/dashboard/static/js/kanban.js +113 -0
  743. icdev/tools/dashboard/static/js/live.js +569 -0
  744. icdev/tools/dashboard/static/js/mermaid-icdev.js +332 -0
  745. icdev/tools/dashboard/static/js/proposals.js +588 -0
  746. icdev/tools/dashboard/static/js/shortcuts.js +544 -0
  747. icdev/tools/dashboard/static/js/tables.js +652 -0
  748. icdev/tools/dashboard/static/js/tour.js +524 -0
  749. icdev/tools/dashboard/static/js/ux.js +942 -0
  750. icdev/tools/dashboard/templates/404.html +10 -0
  751. icdev/tools/dashboard/templates/activity.html +80 -0
  752. icdev/tools/dashboard/templates/admin/users.html +144 -0
  753. icdev/tools/dashboard/templates/ai_accountability.html +235 -0
  754. icdev/tools/dashboard/templates/ai_transparency.html +263 -0
  755. icdev/tools/dashboard/templates/base.html +104 -0
  756. icdev/tools/dashboard/templates/batch.html +23 -0
  757. icdev/tools/dashboard/templates/chat.html +332 -0
  758. icdev/tools/dashboard/templates/children.html +149 -0
  759. icdev/tools/dashboard/templates/cicd.html +253 -0
  760. icdev/tools/dashboard/templates/code_quality.html +214 -0
  761. icdev/tools/dashboard/templates/cpmp/cor_detail.html +220 -0
  762. icdev/tools/dashboard/templates/cpmp/cor_portal.html +91 -0
  763. icdev/tools/dashboard/templates/cpmp/deliverable_detail.html +197 -0
  764. icdev/tools/dashboard/templates/cpmp/detail.html +578 -0
  765. icdev/tools/dashboard/templates/cpmp/portfolio.html +202 -0
  766. icdev/tools/dashboard/templates/dev_profiles.html +304 -0
  767. icdev/tools/dashboard/templates/diagrams.html +224 -0
  768. icdev/tools/dashboard/templates/events/timeline.html +232 -0
  769. icdev/tools/dashboard/templates/evidence.html +134 -0
  770. icdev/tools/dashboard/templates/fedramp_20x.html +207 -0
  771. icdev/tools/dashboard/templates/gateway.html +244 -0
  772. icdev/tools/dashboard/templates/govcon/capabilities.html +135 -0
  773. icdev/tools/dashboard/templates/govcon/pipeline.html +214 -0
  774. icdev/tools/dashboard/templates/govcon/requirements.html +120 -0
  775. icdev/tools/dashboard/templates/index.html +254 -0
  776. icdev/tools/dashboard/templates/lineage.html +141 -0
  777. icdev/tools/dashboard/templates/login.html +51 -0
  778. icdev/tools/dashboard/templates/monitoring/overview.html +193 -0
  779. icdev/tools/dashboard/templates/orchestration/dashboard.html +545 -0
  780. icdev/tools/dashboard/templates/oscal.html +263 -0
  781. icdev/tools/dashboard/templates/phases.html +150 -0
  782. icdev/tools/dashboard/templates/prod_audit.html +280 -0
  783. icdev/tools/dashboard/templates/profile.html +183 -0
  784. icdev/tools/dashboard/templates/projects/detail.html +583 -0
  785. icdev/tools/dashboard/templates/projects/list.html +47 -0
  786. icdev/tools/dashboard/templates/proposals/detail.html +1253 -0
  787. icdev/tools/dashboard/templates/proposals/list.html +179 -0
  788. icdev/tools/dashboard/templates/proposals/section_detail.html +193 -0
  789. icdev/tools/dashboard/templates/provenance.html +181 -0
  790. icdev/tools/dashboard/templates/query/nlq.html +234 -0
  791. icdev/tools/dashboard/templates/quick_paths.html +69 -0
  792. icdev/tools/dashboard/templates/traces.html +155 -0
  793. icdev/tools/dashboard/templates/translation_detail.html +199 -0
  794. icdev/tools/dashboard/templates/translations.html +162 -0
  795. icdev/tools/dashboard/templates/usage.html +225 -0
  796. icdev/tools/dashboard/templates/wizard.html +539 -0
  797. icdev/tools/dashboard/templates/xai.html +208 -0
  798. icdev/tools/dashboard/ux_helpers.py +962 -0
  799. icdev/tools/dashboard/websocket.py +81 -0
  800. icdev/tools/db/__init__.py +1 -0
  801. icdev/tools/db/backup.py +312 -0
  802. icdev/tools/db/backup_manager.py +832 -0
  803. icdev/tools/db/init_icdev_db.py +5900 -0
  804. icdev/tools/db/migrate.py +178 -0
  805. icdev/tools/db/migration_runner.py +549 -0
  806. icdev/tools/db/migrations/001_baseline/meta.json +9 -0
  807. icdev/tools/db/migrations/001_baseline/up.py +68 -0
  808. icdev/tools/db/migrations/002_memory_enhancements/down.sql +8 -0
  809. icdev/tools/db/migrations/002_memory_enhancements/meta.json +9 -0
  810. icdev/tools/db/migrations/002_memory_enhancements/up.py +118 -0
  811. icdev/tools/db/migrations/003_dev_profiles/meta.json +8 -0
  812. icdev/tools/db/migrations/003_dev_profiles/up.py +93 -0
  813. icdev/tools/db/migrations/004_innovation_engine/down.py +19 -0
  814. icdev/tools/db/migrations/004_innovation_engine/up.py +227 -0
  815. icdev/tools/db/migrations/005_phase_37_ai_security/down.py +19 -0
  816. icdev/tools/db/migrations/005_phase_37_ai_security/up.py +258 -0
  817. icdev/tools/db/migrations/006_phase_36_evolution/down.py +21 -0
  818. icdev/tools/db/migrations/006_phase_36_evolution/up.py +323 -0
  819. icdev/tools/db/migrations/007_phase_38_cloud/down.py +14 -0
  820. icdev/tools/db/migrations/007_phase_38_cloud/up.py +110 -0
  821. icdev/tools/db/migrations/008_phase36_37_integration/up.py +55 -0
  822. icdev/tools/db/migrations/__init__.py +2 -0
  823. icdev/tools/devsecops/__init__.py +2 -0
  824. icdev/tools/devsecops/attestation_manager.py +458 -0
  825. icdev/tools/devsecops/network_segmentation_generator.py +614 -0
  826. icdev/tools/devsecops/pdp_config_generator.py +1256 -0
  827. icdev/tools/devsecops/pipeline_security_generator.py +484 -0
  828. icdev/tools/devsecops/policy_generator.py +653 -0
  829. icdev/tools/devsecops/profile_manager.py +388 -0
  830. icdev/tools/devsecops/service_mesh_generator.py +1073 -0
  831. icdev/tools/devsecops/zta_maturity_scorer.py +368 -0
  832. icdev/tools/devsecops/zta_terraform_generator.py +1303 -0
  833. icdev/tools/dx/__init__.py +3 -0
  834. icdev/tools/dx/companion.py +266 -0
  835. icdev/tools/dx/instruction_generator.py +753 -0
  836. icdev/tools/dx/mcp_config_generator.py +282 -0
  837. icdev/tools/dx/skill_translator.py +425 -0
  838. icdev/tools/dx/tool_detector.py +144 -0
  839. icdev/tools/extensions/__init__.py +21 -0
  840. icdev/tools/extensions/builtins/010_ai_governance_chat.py +277 -0
  841. icdev/tools/extensions/builtins/__init__.py +2 -0
  842. icdev/tools/extensions/extension_manager.py +455 -0
  843. icdev/tools/infra/__init__.py +1 -0
  844. icdev/tools/infra/ansible_generator.py +869 -0
  845. icdev/tools/infra/dockerfile_generator.py +361 -0
  846. icdev/tools/infra/infra_status.py +393 -0
  847. icdev/tools/infra/ironbank_metadata_generator.py +411 -0
  848. icdev/tools/infra/k8s_generator.py +1002 -0
  849. icdev/tools/infra/pipeline_generator.py +832 -0
  850. icdev/tools/infra/rollback.py +400 -0
  851. icdev/tools/infra/terraform_generator.py +1142 -0
  852. icdev/tools/infra/terraform_generator_azure.py +1254 -0
  853. icdev/tools/infra/terraform_generator_gcp.py +953 -0
  854. icdev/tools/infra/terraform_generator_ibm.py +360 -0
  855. icdev/tools/infra/terraform_generator_oci.py +919 -0
  856. icdev/tools/infra/terraform_generator_onprem.py +319 -0
  857. icdev/tools/innovation/__init__.py +8 -0
  858. icdev/tools/innovation/competitive_intel.py +492 -0
  859. icdev/tools/innovation/innovation_manager.py +681 -0
  860. icdev/tools/innovation/introspective_analyzer.py +774 -0
  861. icdev/tools/innovation/register_external_patterns.py +440 -0
  862. icdev/tools/innovation/signal_ranker.py +1038 -0
  863. icdev/tools/innovation/solution_generator.py +697 -0
  864. icdev/tools/innovation/standards_monitor.py +466 -0
  865. icdev/tools/innovation/trend_detector.py +1046 -0
  866. icdev/tools/innovation/triage_engine.py +1149 -0
  867. icdev/tools/innovation/web_scanner.py +894 -0
  868. icdev/tools/installer/__init__.py +1 -0
  869. icdev/tools/installer/compliance_configurator.py +637 -0
  870. icdev/tools/installer/installer.py +1711 -0
  871. icdev/tools/installer/module_registry.py +805 -0
  872. icdev/tools/installer/platform_setup.py +961 -0
  873. icdev/tools/integration/__init__.py +2 -0
  874. icdev/tools/integration/approval_manager.py +561 -0
  875. icdev/tools/integration/doors_exporter.py +627 -0
  876. icdev/tools/integration/gitlab_connector.py +784 -0
  877. icdev/tools/integration/jira_connector.py +774 -0
  878. icdev/tools/integration/servicenow_connector.py +693 -0
  879. icdev/tools/knowledge/__init__.py +1 -0
  880. icdev/tools/knowledge/knowledge_ingest.py +293 -0
  881. icdev/tools/knowledge/pattern_detector.py +693 -0
  882. icdev/tools/knowledge/recommendation_engine.py +461 -0
  883. icdev/tools/knowledge/self_heal_analyzer.py +504 -0
  884. icdev/tools/llm/__init__.py +72 -0
  885. icdev/tools/llm/anthropic_provider.py +170 -0
  886. icdev/tools/llm/azure_openai_provider.py +338 -0
  887. icdev/tools/llm/bedrock_provider.py +315 -0
  888. icdev/tools/llm/embedding_provider.py +438 -0
  889. icdev/tools/llm/gemini_provider.py +381 -0
  890. icdev/tools/llm/ibm_watsonx_provider.py +232 -0
  891. icdev/tools/llm/oci_genai_provider.py +462 -0
  892. icdev/tools/llm/ollama_provider.py +340 -0
  893. icdev/tools/llm/openai_provider.py +225 -0
  894. icdev/tools/llm/provider.py +355 -0
  895. icdev/tools/llm/provider_sdk.py +175 -0
  896. icdev/tools/llm/router.py +780 -0
  897. icdev/tools/llm/vertex_ai_provider.py +374 -0
  898. icdev/tools/maintenance/__init__.py +2 -0
  899. icdev/tools/maintenance/dependency_scanner.py +1030 -0
  900. icdev/tools/maintenance/maintenance_auditor.py +815 -0
  901. icdev/tools/maintenance/remediation_engine.py +966 -0
  902. icdev/tools/maintenance/vulnerability_checker.py +987 -0
  903. icdev/tools/mbse/__init__.py +3 -0
  904. icdev/tools/mbse/des_assessor.py +1186 -0
  905. icdev/tools/mbse/des_report_generator.py +800 -0
  906. icdev/tools/mbse/diagram_extractor.py +811 -0
  907. icdev/tools/mbse/digital_thread.py +1665 -0
  908. icdev/tools/mbse/model_code_generator.py +1122 -0
  909. icdev/tools/mbse/model_control_mapper.py +420 -0
  910. icdev/tools/mbse/pi_model_tracker.py +1093 -0
  911. icdev/tools/mbse/reqif_parser.py +1483 -0
  912. icdev/tools/mbse/sync_engine.py +1805 -0
  913. icdev/tools/mbse/xmi_parser.py +1573 -0
  914. icdev/tools/mcp/__init__.py +1 -0
  915. icdev/tools/mcp/base_server.py +535 -0
  916. icdev/tools/mcp/builder_server.py +725 -0
  917. icdev/tools/mcp/compliance_server.py +1407 -0
  918. icdev/tools/mcp/context_indexer.py +199 -0
  919. icdev/tools/mcp/context_server.py +305 -0
  920. icdev/tools/mcp/core_server.py +679 -0
  921. icdev/tools/mcp/devsecops_server.py +432 -0
  922. icdev/tools/mcp/gap_handlers.py +1079 -0
  923. icdev/tools/mcp/gateway_server.py +339 -0
  924. icdev/tools/mcp/generate_registry.py +623 -0
  925. icdev/tools/mcp/infra_server.py +264 -0
  926. icdev/tools/mcp/innovation_server.py +316 -0
  927. icdev/tools/mcp/integration_server.py +527 -0
  928. icdev/tools/mcp/knowledge_server.py +429 -0
  929. icdev/tools/mcp/maintenance_server.py +248 -0
  930. icdev/tools/mcp/marketplace_server.py +499 -0
  931. icdev/tools/mcp/mbse_server.py +398 -0
  932. icdev/tools/mcp/modernization_server.py +496 -0
  933. icdev/tools/mcp/observability_server.py +354 -0
  934. icdev/tools/mcp/requirements_server.py +415 -0
  935. icdev/tools/mcp/simulation_server.py +468 -0
  936. icdev/tools/mcp/standalone/__init__.py +2 -0
  937. icdev/tools/mcp/standalone/builder.py +59 -0
  938. icdev/tools/mcp/standalone/compliance.py +59 -0
  939. icdev/tools/mcp/standalone/core.py +59 -0
  940. icdev/tools/mcp/standalone/knowledge.py +59 -0
  941. icdev/tools/mcp/standalone/maintenance.py +59 -0
  942. icdev/tools/mcp/supply_chain_server.py +476 -0
  943. icdev/tools/mcp/tool_registry.py +2008 -0
  944. icdev/tools/mcp/unified_server.py +158 -0
  945. icdev/tools/memory/__init__.py +2 -0
  946. icdev/tools/memory/auto_capture.py +347 -0
  947. icdev/tools/memory/embed_memory.py +158 -0
  948. icdev/tools/memory/history_compressor.py +334 -0
  949. icdev/tools/memory/hybrid_search.py +236 -0
  950. icdev/tools/memory/maintenance_cron.py +289 -0
  951. icdev/tools/memory/memory_consolidation.py +444 -0
  952. icdev/tools/memory/memory_db.py +133 -0
  953. icdev/tools/memory/memory_read.py +102 -0
  954. icdev/tools/memory/memory_write.py +222 -0
  955. icdev/tools/memory/semantic_search.py +139 -0
  956. icdev/tools/memory/time_decay.py +435 -0
  957. icdev/tools/modernization/__init__.py +3 -0
  958. icdev/tools/modernization/architecture_extractor.py +734 -0
  959. icdev/tools/modernization/compliance_bridge.py +1499 -0
  960. icdev/tools/modernization/db_migration_planner.py +1385 -0
  961. icdev/tools/modernization/doc_generator.py +1428 -0
  962. icdev/tools/modernization/framework_migrator.py +1525 -0
  963. icdev/tools/modernization/legacy_analyzer.py +1948 -0
  964. icdev/tools/modernization/migration_code_generator.py +1639 -0
  965. icdev/tools/modernization/migration_report_generator.py +1653 -0
  966. icdev/tools/modernization/migration_tracker.py +1726 -0
  967. icdev/tools/modernization/monolith_decomposer.py +1508 -0
  968. icdev/tools/modernization/seven_r_assessor.py +1658 -0
  969. icdev/tools/modernization/strangler_fig_manager.py +1705 -0
  970. icdev/tools/modernization/ui_analyzer.py +771 -0
  971. icdev/tools/modernization/version_migrator.py +1392 -0
  972. icdev/tools/monitor/__init__.py +1 -0
  973. icdev/tools/monitor/alert_correlator.py +495 -0
  974. icdev/tools/monitor/auto_resolver.py +612 -0
  975. icdev/tools/monitor/health_checker.py +509 -0
  976. icdev/tools/monitor/heartbeat_daemon.py +792 -0
  977. icdev/tools/monitor/log_analyzer.py +516 -0
  978. icdev/tools/monitor/metric_collector.py +496 -0
  979. icdev/tools/mosa/__init__.py +10 -0
  980. icdev/tools/mosa/icd_generator.py +370 -0
  981. icdev/tools/mosa/modular_design_analyzer.py +683 -0
  982. icdev/tools/mosa/mosa_code_enforcer.py +349 -0
  983. icdev/tools/mosa/tsp_generator.py +265 -0
  984. icdev/tools/observability/__init__.py +100 -0
  985. icdev/tools/observability/genai_attributes.py +88 -0
  986. icdev/tools/observability/instrumentation.py +140 -0
  987. icdev/tools/observability/mlflow_exporter.py +194 -0
  988. icdev/tools/observability/otel_tracer.py +168 -0
  989. icdev/tools/observability/provenance/__init__.py +3 -0
  990. icdev/tools/observability/provenance/prov_recorder.py +324 -0
  991. icdev/tools/observability/shap/__init__.py +3 -0
  992. icdev/tools/observability/shap/agent_shap.py +275 -0
  993. icdev/tools/observability/sqlite_tracer.py +361 -0
  994. icdev/tools/observability/trace_context.py +205 -0
  995. icdev/tools/observability/tracer.py +230 -0
  996. icdev/tools/orchestration/__init__.py +2 -0
  997. icdev/tools/orchestration/workflow_composer.py +361 -0
  998. icdev/tools/project/__init__.py +1 -0
  999. icdev/tools/project/manifest_loader.py +418 -0
  1000. icdev/tools/project/project_create.py +350 -0
  1001. icdev/tools/project/project_list.py +174 -0
  1002. icdev/tools/project/project_scaffold.py +1715 -0
  1003. icdev/tools/project/project_status.py +479 -0
  1004. icdev/tools/project/session_context_builder.py +757 -0
  1005. icdev/tools/project/validate_manifest.py +55 -0
  1006. icdev/tools/registry/__init__.py +10 -0
  1007. icdev/tools/registry/absorption_engine.py +832 -0
  1008. icdev/tools/registry/capability_evaluator.py +668 -0
  1009. icdev/tools/registry/child_registry.py +617 -0
  1010. icdev/tools/registry/cross_pollinator.py +1065 -0
  1011. icdev/tools/registry/genome_manager.py +671 -0
  1012. icdev/tools/registry/learning_collector.py +912 -0
  1013. icdev/tools/registry/propagation_manager.py +942 -0
  1014. icdev/tools/registry/staging_manager.py +742 -0
  1015. icdev/tools/registry/telemetry_collector.py +423 -0
  1016. icdev/tools/requirements/__init__.py +1 -0
  1017. icdev/tools/requirements/ai_governance_scorer.py +208 -0
  1018. icdev/tools/requirements/boundary_analyzer.py +1293 -0
  1019. icdev/tools/requirements/clarification_engine.py +618 -0
  1020. icdev/tools/requirements/complexity_scorer.py +387 -0
  1021. icdev/tools/requirements/consistency_analyzer.py +803 -0
  1022. icdev/tools/requirements/constitution_manager.py +605 -0
  1023. icdev/tools/requirements/decomposition_engine.py +778 -0
  1024. icdev/tools/requirements/document_extractor.py +1016 -0
  1025. icdev/tools/requirements/elicitation_techniques.py +519 -0
  1026. icdev/tools/requirements/gap_detector.py +271 -0
  1027. icdev/tools/requirements/intake_engine.py +2188 -0
  1028. icdev/tools/requirements/prd_generator.py +847 -0
  1029. icdev/tools/requirements/prd_validator.py +595 -0
  1030. icdev/tools/requirements/readiness_scorer.py +313 -0
  1031. icdev/tools/requirements/spec_organizer.py +1029 -0
  1032. icdev/tools/requirements/spec_quality_checker.py +1097 -0
  1033. icdev/tools/requirements/traceability_builder.py +579 -0
  1034. icdev/tools/resilience/__init__.py +34 -0
  1035. icdev/tools/resilience/circuit_breaker.py +340 -0
  1036. icdev/tools/resilience/correlation.py +150 -0
  1037. icdev/tools/resilience/errors.py +81 -0
  1038. icdev/tools/resilience/retry.py +95 -0
  1039. icdev/tools/schemas/__init__.py +27 -0
  1040. icdev/tools/schemas/chat.py +61 -0
  1041. icdev/tools/schemas/compliance.py +56 -0
  1042. icdev/tools/schemas/core.py +85 -0
  1043. icdev/tools/schemas/innovation.py +37 -0
  1044. icdev/tools/schemas/validation.py +109 -0
  1045. icdev/tools/sdk/__init__.py +3 -0
  1046. icdev/tools/sdk/icdev_client.py +218 -0
  1047. icdev/tools/security/__init__.py +1 -0
  1048. icdev/tools/security/agent_output_validator.py +330 -0
  1049. icdev/tools/security/agent_trust_scorer.py +466 -0
  1050. icdev/tools/security/ai_bom_generator.py +725 -0
  1051. icdev/tools/security/ai_telemetry_logger.py +469 -0
  1052. icdev/tools/security/atlas_red_team.py +543 -0
  1053. icdev/tools/security/code_pattern_scanner.py +378 -0
  1054. icdev/tools/security/confabulation_detector.py +271 -0
  1055. icdev/tools/security/container_scanner.py +491 -0
  1056. icdev/tools/security/dependency_auditor.py +944 -0
  1057. icdev/tools/security/endpoint_security_scanner.py +579 -0
  1058. icdev/tools/security/mcp_tool_authorizer.py +243 -0
  1059. icdev/tools/security/prompt_injection_detector.py +737 -0
  1060. icdev/tools/security/sast_runner.py +948 -0
  1061. icdev/tools/security/secret_detector.py +378 -0
  1062. icdev/tools/security/tool_chain_validator.py +357 -0
  1063. icdev/tools/security/vuln_scanner.py +539 -0
  1064. icdev/tools/simulation/__init__.py +2 -0
  1065. icdev/tools/simulation/coa_generator.py +1552 -0
  1066. icdev/tools/simulation/monte_carlo.py +758 -0
  1067. icdev/tools/simulation/scenario_manager.py +1073 -0
  1068. icdev/tools/simulation/simulation_engine.py +1104 -0
  1069. icdev/tools/supply_chain/__init__.py +2 -0
  1070. icdev/tools/supply_chain/cve_triager.py +705 -0
  1071. icdev/tools/supply_chain/dependency_graph.py +645 -0
  1072. icdev/tools/supply_chain/isa_manager.py +540 -0
  1073. icdev/tools/supply_chain/scrm_assessor.py +546 -0
  1074. icdev/tools/testing/__init__.py +2 -0
  1075. icdev/tools/testing/acceptance_validator.py +411 -0
  1076. icdev/tools/testing/claude_dir_validator.py +831 -0
  1077. icdev/tools/testing/data_types.py +199 -0
  1078. icdev/tools/testing/e2e_runner.py +715 -0
  1079. icdev/tools/testing/fuzz_cli.py +306 -0
  1080. icdev/tools/testing/health_check.py +483 -0
  1081. icdev/tools/testing/platform_check.py +143 -0
  1082. icdev/tools/testing/production_audit.py +1862 -0
  1083. icdev/tools/testing/production_remediate.py +804 -0
  1084. icdev/tools/testing/screenshot_validator.py +539 -0
  1085. icdev/tools/testing/smoke_test.py +283 -0
  1086. icdev/tools/testing/test_agent_models.py +117 -0
  1087. icdev/tools/testing/test_orchestrator.py +957 -0
  1088. icdev/tools/testing/utils.py +229 -0
  1089. icdev/tools/translation/__init__.py +17 -0
  1090. icdev/tools/translation/code_translator.py +550 -0
  1091. icdev/tools/translation/dependency_mapper.py +277 -0
  1092. icdev/tools/translation/feature_map.py +395 -0
  1093. icdev/tools/translation/project_assembler.py +439 -0
  1094. icdev/tools/translation/source_extractor.py +609 -0
  1095. icdev/tools/translation/test_translator.py +333 -0
  1096. icdev/tools/translation/translation_manager.py +582 -0
  1097. icdev/tools/translation/translation_validator.py +662 -0
  1098. icdev/tools/translation/type_checker.py +371 -0
  1099. icdev-1.0.0.dist-info/METADATA +868 -0
  1100. icdev-1.0.0.dist-info/RECORD +1105 -0
  1101. icdev-1.0.0.dist-info/WHEEL +5 -0
  1102. icdev-1.0.0.dist-info/entry_points.txt +9 -0
  1103. icdev-1.0.0.dist-info/licenses/LICENSE +254 -0
  1104. icdev-1.0.0.dist-info/licenses/NOTICE +268 -0
  1105. icdev-1.0.0.dist-info/top_level.txt +1 -0
@@ -0,0 +1,1552 @@
1
+ {
2
+ "metadata": {
3
+ "title": "NIST SP 800-171 Rev 2 — CUI Protection Requirements",
4
+ "source": "NIST Special Publication 800-171 Revision 2",
5
+ "classification": "CUI // SP-CTI",
6
+ "version": "1.0",
7
+ "last_updated": "2026-02-15",
8
+ "description": "110 security requirements in 14 families for protecting CUI in nonfederal systems"
9
+ },
10
+ "requirements": [
11
+ {
12
+ "id": "171-3.1.1",
13
+ "family": "Access Control",
14
+ "family_code": "3.1",
15
+ "requirement_number": 1,
16
+ "title": "Limit system access to authorized users, processes acting on behalf of authorized users, and devices",
17
+ "description": "Limit information system access to authorized users, processes acting on behalf of authorized users, or devices (including other information systems).",
18
+ "discussion": "Access control policies control access between active entities or subjects and passive entities or objects in systems. Organizations manage system accounts, including establishing, activating, modifying, reviewing, disabling, and removing accounts. Restricting access helps protect the confidentiality of CUI.",
19
+ "nist_800_53_controls": ["AC-2", "AC-3", "AC-17"],
20
+ "cmmc_practice_id": "AC.L2-3.1.1",
21
+ "priority": "high",
22
+ "automation_level": "auto",
23
+ "evidence_required": "Access control policy, user access lists, system access logs"
24
+ },
25
+ {
26
+ "id": "171-3.1.2",
27
+ "family": "Access Control",
28
+ "family_code": "3.1",
29
+ "requirement_number": 2,
30
+ "title": "Limit system access to the types of transactions and functions that authorized users are permitted to execute",
31
+ "description": "Limit information system access to the types of transactions and functions that authorized users are permitted to execute.",
32
+ "discussion": "Organizations may choose to define access privileges or other attributes by account, by type of account, or a combination of both. System account types include individual, shared, group, system, anonymous, guest, emergency, developer, manufacturer, vendor, and temporary. Other attributes include restrictions on time-of-day, day-of-week, and point-of-origin.",
33
+ "nist_800_53_controls": ["AC-3", "AC-6"],
34
+ "cmmc_practice_id": "AC.L2-3.1.2",
35
+ "priority": "high",
36
+ "automation_level": "auto",
37
+ "evidence_required": "Role-based access control matrix, transaction authorization policy, function permission mappings"
38
+ },
39
+ {
40
+ "id": "171-3.1.3",
41
+ "family": "Access Control",
42
+ "family_code": "3.1",
43
+ "requirement_number": 3,
44
+ "title": "Control the flow of CUI in accordance with approved authorizations",
45
+ "description": "Control the flow of CUI in accordance with approved authorizations.",
46
+ "discussion": "Information flow control regulates where CUI can travel within a system and between systems. Flow control restrictions include keeping CUI from being transmitted in the clear to the Internet, blocking outside traffic that claims to be from within the organization, restricting requests to the Internet that are not from the internal web proxy server, and limiting information transferred between organizations based on data structures and content.",
47
+ "nist_800_53_controls": ["AC-4"],
48
+ "cmmc_practice_id": "AC.L2-3.1.3",
49
+ "priority": "high",
50
+ "automation_level": "partial",
51
+ "evidence_required": "Information flow control policy, data flow diagrams, boundary protection configurations, filtering rules"
52
+ },
53
+ {
54
+ "id": "171-3.1.4",
55
+ "family": "Access Control",
56
+ "family_code": "3.1",
57
+ "requirement_number": 4,
58
+ "title": "Separate the duties of individuals to reduce the risk of malevolent activity without collusion",
59
+ "description": "Separate the duties of individuals to reduce the risk of malevolent activity without collusion.",
60
+ "discussion": "Separation of duties addresses the potential for abuse of authorized privileges and helps to reduce the risk of malevolent activity without collusion. Types of separation of duties include dividing mission functions and system support functions among different individuals and roles, conducting system support functions with different individuals, and ensuring that security personnel administering access control functions do not also administer audit functions.",
61
+ "nist_800_53_controls": ["AC-5"],
62
+ "cmmc_practice_id": "AC.L2-3.1.4",
63
+ "priority": "medium",
64
+ "automation_level": "partial",
65
+ "evidence_required": "Separation of duties policy, role definitions, access control matrix showing role separation"
66
+ },
67
+ {
68
+ "id": "171-3.1.5",
69
+ "family": "Access Control",
70
+ "family_code": "3.1",
71
+ "requirement_number": 5,
72
+ "title": "Employ the principle of least privilege, including for specific security functions and privileged accounts",
73
+ "description": "Employ the principle of least privilege, including for specific security functions and privileged accounts.",
74
+ "discussion": "Organizations employ least privilege for specific duties and systems. The principle of least privilege is applied to system processes, ensuring that processes operate at privilege levels no higher than necessary. Security functions include establishing system accounts, configuring access authorizations, configuring settings for events to be audited, and setting intrusion detection parameters.",
75
+ "nist_800_53_controls": ["AC-6", "AC-6(1)", "AC-6(5)"],
76
+ "cmmc_practice_id": "AC.L2-3.1.5",
77
+ "priority": "high",
78
+ "automation_level": "auto",
79
+ "evidence_required": "Least privilege policy, privileged account inventory, access authorization records"
80
+ },
81
+ {
82
+ "id": "171-3.1.6",
83
+ "family": "Access Control",
84
+ "family_code": "3.1",
85
+ "requirement_number": 6,
86
+ "title": "Use non-privileged accounts or roles when accessing nonsecurity functions",
87
+ "description": "Use non-privileged accounts or roles when accessing nonsecurity functions.",
88
+ "discussion": "This requirement limits exposure when operating from within privileged accounts or roles. The inclusion of roles addresses situations where organizations implement access control policies such as role-based access control and where a change of role provides the same degree of assurance in the change of access authorizations for the user and processes acting on behalf of the user as would be provided by a change between a privileged and non-privileged account.",
89
+ "nist_800_53_controls": ["AC-6(2)"],
90
+ "cmmc_practice_id": "AC.L2-3.1.6",
91
+ "priority": "medium",
92
+ "automation_level": "partial",
93
+ "evidence_required": "Account usage policy, evidence of separate accounts for privileged and non-privileged activities"
94
+ },
95
+ {
96
+ "id": "171-3.1.7",
97
+ "family": "Access Control",
98
+ "family_code": "3.1",
99
+ "requirement_number": 7,
100
+ "title": "Prevent non-privileged users from executing privileged functions and capture the execution of such functions in audit logs",
101
+ "description": "Prevent non-privileged users from executing privileged functions and capture the execution of such functions in audit logs.",
102
+ "discussion": "Privileged functions include establishing system accounts, performing system integrity checks, conducting patching operations, or administering cryptographic key management activities. Non-privileged users are individuals that do not possess appropriate authorizations. Circumventing intrusion detection and prevention mechanisms or malicious code protection mechanisms are examples of privileged functions that require protection from non-privileged users.",
103
+ "nist_800_53_controls": ["AC-6(9)", "AC-6(10)"],
104
+ "cmmc_practice_id": "AC.L2-3.1.7",
105
+ "priority": "high",
106
+ "automation_level": "auto",
107
+ "evidence_required": "Privilege escalation controls, audit logs of privileged function execution, access control enforcement records"
108
+ },
109
+ {
110
+ "id": "171-3.1.8",
111
+ "family": "Access Control",
112
+ "family_code": "3.1",
113
+ "requirement_number": 8,
114
+ "title": "Limit unsuccessful logon attempts",
115
+ "description": "Limit unsuccessful logon attempts.",
116
+ "discussion": "Organizations may define the maximum number of consecutive invalid logon attempts by a user during a specified time period. The organization may choose to automatically lock the account or node for a specified time period, lock the account or node until released by an administrator, delay the next logon prompt, or take other appropriate action.",
117
+ "nist_800_53_controls": ["AC-7"],
118
+ "cmmc_practice_id": "AC.L2-3.1.8",
119
+ "priority": "high",
120
+ "automation_level": "auto",
121
+ "evidence_required": "Account lockout policy configuration, logon attempt logs, lockout threshold settings"
122
+ },
123
+ {
124
+ "id": "171-3.1.9",
125
+ "family": "Access Control",
126
+ "family_code": "3.1",
127
+ "requirement_number": 9,
128
+ "title": "Provide privacy and security notices consistent with applicable CUI rules",
129
+ "description": "Provide privacy and security notices consistent with applicable CUI rules.",
130
+ "discussion": "System use notifications can be implemented using messages or warning banners displayed before individuals log in to systems. System use notifications are used only for access via logon interfaces with human users and are not required when human interfaces do not exist. Organizations consider system use notification messages and banners in light of applicable federal laws, directives, policies, regulations, standards, and guidance.",
131
+ "nist_800_53_controls": ["AC-8"],
132
+ "cmmc_practice_id": "AC.L2-3.1.9",
133
+ "priority": "medium",
134
+ "automation_level": "auto",
135
+ "evidence_required": "System use notification banners, privacy notice content, banner configuration screenshots"
136
+ },
137
+ {
138
+ "id": "171-3.1.10",
139
+ "family": "Access Control",
140
+ "family_code": "3.1",
141
+ "requirement_number": 10,
142
+ "title": "Use session lock with pattern-hiding displays to prevent access and viewing of data after a period of inactivity",
143
+ "description": "Use session lock with pattern-hiding displays to prevent access and viewing of data after a period of inactivity.",
144
+ "discussion": "Session locks are temporary actions taken when users stop work and move away from the immediate vicinity of the system but do not want to log out because of the temporary nature of their absences. Session locks are implemented where session activities can be determined, typically at the operating system level. Pattern-hiding displays include screen savers, blank screens, and clock displays.",
145
+ "nist_800_53_controls": ["AC-11", "AC-11(1)"],
146
+ "cmmc_practice_id": "AC.L2-3.1.10",
147
+ "priority": "medium",
148
+ "automation_level": "auto",
149
+ "evidence_required": "Session lock policy, inactivity timeout configuration, screen saver settings documentation"
150
+ },
151
+ {
152
+ "id": "171-3.1.11",
153
+ "family": "Access Control",
154
+ "family_code": "3.1",
155
+ "requirement_number": 11,
156
+ "title": "Terminate (automatically) a user session after a defined condition",
157
+ "description": "Terminate (automatically) a user session after a defined condition.",
158
+ "discussion": "This requirement addresses the termination of user-initiated logical sessions in contrast to the termination of network connections associated with communications sessions. Conditions or trigger events requiring automatic session termination can include organization-defined periods of user inactivity, targeted responses to certain types of incidents, and time-of-day restrictions on system use.",
159
+ "nist_800_53_controls": ["AC-12"],
160
+ "cmmc_practice_id": "AC.L2-3.1.11",
161
+ "priority": "medium",
162
+ "automation_level": "auto",
163
+ "evidence_required": "Session termination policy, timeout configuration, session management logs"
164
+ },
165
+ {
166
+ "id": "171-3.1.12",
167
+ "family": "Access Control",
168
+ "family_code": "3.1",
169
+ "requirement_number": 12,
170
+ "title": "Monitor and control remote access sessions",
171
+ "description": "Monitor and control remote access sessions.",
172
+ "discussion": "Remote access is access to organizational systems by users communicating through external networks. Remote access methods include dial-up, broadband, and wireless. Monitoring and controlling remote access sessions allows organizations to detect cyber attacks and ensure compliance with remote access policies by auditing connection activities of remote users on a variety of system components.",
173
+ "nist_800_53_controls": ["AC-17(1)"],
174
+ "cmmc_practice_id": "AC.L2-3.1.12",
175
+ "priority": "high",
176
+ "automation_level": "partial",
177
+ "evidence_required": "Remote access monitoring logs, VPN session records, remote access policy enforcement documentation"
178
+ },
179
+ {
180
+ "id": "171-3.1.13",
181
+ "family": "Access Control",
182
+ "family_code": "3.1",
183
+ "requirement_number": 13,
184
+ "title": "Employ cryptographic mechanisms to protect the confidentiality of remote access sessions",
185
+ "description": "Employ cryptographic mechanisms to protect the confidentiality of remote access sessions.",
186
+ "discussion": "Cryptographic standards include FIPS-validated cryptography and NSA-approved cryptography. Encryption is used to protect the confidentiality of remote access sessions. The strength of the encryption is commensurate with the classification or sensitivity of the information.",
187
+ "nist_800_53_controls": ["AC-17(2)"],
188
+ "cmmc_practice_id": "AC.L2-3.1.13",
189
+ "priority": "high",
190
+ "automation_level": "auto",
191
+ "evidence_required": "VPN configuration with encryption settings, FIPS-validated cryptography documentation, TLS/SSL configuration"
192
+ },
193
+ {
194
+ "id": "171-3.1.14",
195
+ "family": "Access Control",
196
+ "family_code": "3.1",
197
+ "requirement_number": 14,
198
+ "title": "Route remote access via managed access control points",
199
+ "description": "Route remote access via managed access control points.",
200
+ "discussion": "Routing remote access through managed access control points enhances explicit, organizational control over such connections, reducing the susceptibility to unauthorized access to organizational systems resulting in the unauthorized disclosure of CUI.",
201
+ "nist_800_53_controls": ["AC-17(3)"],
202
+ "cmmc_practice_id": "AC.L2-3.1.14",
203
+ "priority": "high",
204
+ "automation_level": "partial",
205
+ "evidence_required": "Network architecture diagrams showing access control points, VPN gateway configurations, remote access routing policy"
206
+ },
207
+ {
208
+ "id": "171-3.1.15",
209
+ "family": "Access Control",
210
+ "family_code": "3.1",
211
+ "requirement_number": 15,
212
+ "title": "Authorize remote execution of privileged commands and remote access to security-relevant information",
213
+ "description": "Authorize remote execution of privileged commands and remote access to security-relevant information.",
214
+ "discussion": "A privileged command is a human-initiated command executed on a system involving the control, monitoring, or administration of the system including security functions and associated security-relevant information. Security-relevant information is any information within the system that can potentially impact the operation of security functions or the provision of security services in a manner that could result in failure to enforce the system security policy or maintain isolation of code and data.",
215
+ "nist_800_53_controls": ["AC-17(4)"],
216
+ "cmmc_practice_id": "AC.L2-3.1.15",
217
+ "priority": "high",
218
+ "automation_level": "manual",
219
+ "evidence_required": "Remote privileged command authorization policy, remote access authorization records, audit logs of remote privileged actions"
220
+ },
221
+ {
222
+ "id": "171-3.1.16",
223
+ "family": "Access Control",
224
+ "family_code": "3.1",
225
+ "requirement_number": 16,
226
+ "title": "Authorize wireless access prior to allowing such connections",
227
+ "description": "Authorize wireless access prior to allowing such connections.",
228
+ "discussion": "Establishing usage restrictions and configuration and connection requirements for wireless access to the system provides criteria for organizations to support wireless access authorization decisions. Such restrictions and requirements reduce the susceptibility to unauthorized access to the system through wireless technologies.",
229
+ "nist_800_53_controls": ["AC-18"],
230
+ "cmmc_practice_id": "AC.L2-3.1.16",
231
+ "priority": "medium",
232
+ "automation_level": "partial",
233
+ "evidence_required": "Wireless access policy, authorized wireless device inventory, wireless access point configuration"
234
+ },
235
+ {
236
+ "id": "171-3.1.17",
237
+ "family": "Access Control",
238
+ "family_code": "3.1",
239
+ "requirement_number": 17,
240
+ "title": "Protect wireless access using authentication and encryption",
241
+ "description": "Protect wireless access using authentication and encryption.",
242
+ "discussion": "Organizations authenticate individuals and devices to help protect wireless access to the system. Special attention is given to the variety of devices that are part of the Internet of Things with potential wireless access to organizational systems. Use of open or unencrypted wireless connections can expose CUI to interception.",
243
+ "nist_800_53_controls": ["AC-18(1)"],
244
+ "cmmc_practice_id": "AC.L2-3.1.17",
245
+ "priority": "high",
246
+ "automation_level": "auto",
247
+ "evidence_required": "Wireless encryption configuration (WPA2/WPA3), wireless authentication mechanism documentation, wireless security policy"
248
+ },
249
+ {
250
+ "id": "171-3.1.18",
251
+ "family": "Access Control",
252
+ "family_code": "3.1",
253
+ "requirement_number": 18,
254
+ "title": "Control connection of mobile devices",
255
+ "description": "Control connection of mobile devices.",
256
+ "discussion": "A mobile device is a computing device that has a small form factor such that it can easily be carried by a single individual; is designed to operate without a physical connection; possesses local, non-removable or removable data storage; and includes a self-contained power source. Mobile device policies and procedures include the types of mobile devices that can access organizational systems, how they are to be configured, and use restrictions.",
257
+ "nist_800_53_controls": ["AC-19"],
258
+ "cmmc_practice_id": "AC.L2-3.1.18",
259
+ "priority": "medium",
260
+ "automation_level": "partial",
261
+ "evidence_required": "Mobile device policy, MDM configuration, approved mobile device inventory, connection control rules"
262
+ },
263
+ {
264
+ "id": "171-3.1.19",
265
+ "family": "Access Control",
266
+ "family_code": "3.1",
267
+ "requirement_number": 19,
268
+ "title": "Encrypt CUI on mobile devices and mobile computing platforms",
269
+ "description": "Encrypt CUI on mobile devices and mobile computing platforms.",
270
+ "discussion": "Organizations can employ full-device encryption or container-based encryption to protect the confidentiality of CUI on mobile devices and computing platforms. Container-based encryption provides a more fine-grained approach to the encryption of data and information including encrypting selected data structures such as files, records, or fields.",
271
+ "nist_800_53_controls": ["AC-19(5)"],
272
+ "cmmc_practice_id": "AC.L2-3.1.19",
273
+ "priority": "high",
274
+ "automation_level": "auto",
275
+ "evidence_required": "Mobile device encryption policy, encryption configuration evidence, MDM enforcement records"
276
+ },
277
+ {
278
+ "id": "171-3.1.20",
279
+ "family": "Access Control",
280
+ "family_code": "3.1",
281
+ "requirement_number": 20,
282
+ "title": "Verify and control/limit connections to and use of external systems",
283
+ "description": "Verify and control/limit connections to and use of external information systems.",
284
+ "discussion": "External systems are systems or components of systems for which organizations typically have no direct supervision and authority over the application of security requirements and controls. External systems include personally owned systems, components, or devices and privately owned computing and communications devices resident in commercial or public facilities.",
285
+ "nist_800_53_controls": ["AC-20", "AC-20(1)"],
286
+ "cmmc_practice_id": "AC.L2-3.1.20",
287
+ "priority": "high",
288
+ "automation_level": "partial",
289
+ "evidence_required": "External system connection policy, authorized external system inventory, interconnection security agreements"
290
+ },
291
+ {
292
+ "id": "171-3.1.21",
293
+ "family": "Access Control",
294
+ "family_code": "3.1",
295
+ "requirement_number": 21,
296
+ "title": "Limit use of portable storage devices on external systems",
297
+ "description": "Limit use of organizational portable storage devices on external information systems.",
298
+ "discussion": "Limits on the use of organization-controlled portable storage devices in external systems include complete prohibition of the use of such devices or restrictions on how the devices may be used and under what conditions the devices may be used. Organizations may prohibit the use of portable storage devices on external systems due to the potential risk of information exposure to unauthorized users.",
299
+ "nist_800_53_controls": ["AC-20(2)"],
300
+ "cmmc_practice_id": "AC.L2-3.1.21",
301
+ "priority": "medium",
302
+ "automation_level": "manual",
303
+ "evidence_required": "Portable storage device policy, device usage restrictions documentation, DLP configuration"
304
+ },
305
+ {
306
+ "id": "171-3.1.22",
307
+ "family": "Access Control",
308
+ "family_code": "3.1",
309
+ "requirement_number": 22,
310
+ "title": "Control CUI posted or processed on publicly accessible systems",
311
+ "description": "Control information posted or processed on publicly accessible information systems.",
312
+ "discussion": "In accordance with applicable laws, directives, policies, regulations, standards, and guidance, the public is not authorized access to nonpublic information including CUI. This requirement addresses systems that are controlled by the organization and accessible to the public, typically without identification or authentication. Individuals authorized to post CUI on publicly accessible systems are designated, and content is reviewed prior to posting to ensure that nonpublic information is not included.",
313
+ "nist_800_53_controls": ["AC-22"],
314
+ "cmmc_practice_id": "AC.L2-3.1.22",
315
+ "priority": "high",
316
+ "automation_level": "manual",
317
+ "evidence_required": "Public information posting policy, content review procedures, designated posting authority records"
318
+ },
319
+ {
320
+ "id": "171-3.2.1",
321
+ "family": "Awareness and Training",
322
+ "family_code": "3.2",
323
+ "requirement_number": 1,
324
+ "title": "Ensure that managers, systems administrators, and users of organizational systems are made aware of the security risks associated with their activities and of the applicable policies, standards, and procedures related to the security of those systems",
325
+ "description": "Ensure that managers, systems administrators, and users of organizational information systems are made aware of the security risks associated with their activities and of the applicable policies, standards, and procedures related to the security of those systems.",
326
+ "discussion": "Organizations determine the content and frequency of security awareness training based on the specific organizational requirements. Awareness techniques include displaying posters, offering supplies inscribed with security reminders, generating email advisories and notices from organizational officials, displaying logon screen messages, and conducting information security awareness events.",
327
+ "nist_800_53_controls": ["AT-2"],
328
+ "cmmc_practice_id": "AT.L2-3.2.1",
329
+ "priority": "medium",
330
+ "automation_level": "manual",
331
+ "evidence_required": "Security awareness training materials, training completion records, training schedule"
332
+ },
333
+ {
334
+ "id": "171-3.2.2",
335
+ "family": "Awareness and Training",
336
+ "family_code": "3.2",
337
+ "requirement_number": 2,
338
+ "title": "Ensure that personnel are trained to carry out their assigned information security-related duties and responsibilities",
339
+ "description": "Ensure that organizational personnel are adequately trained to carry out their assigned information security-related duties and responsibilities.",
340
+ "discussion": "Organizations determine the content and frequency of security training based on the assigned duties, roles, and responsibilities of individuals and the security requirements of organizations and the systems to which personnel have authorized access. In addition, organizations provide security awareness training to personnel regarding the need to protect CUI and the duty to report CUI spillage incidents.",
341
+ "nist_800_53_controls": ["AT-3"],
342
+ "cmmc_practice_id": "AT.L2-3.2.2",
343
+ "priority": "medium",
344
+ "automation_level": "manual",
345
+ "evidence_required": "Role-based training plans, training completion certificates, training effectiveness assessments"
346
+ },
347
+ {
348
+ "id": "171-3.2.3",
349
+ "family": "Awareness and Training",
350
+ "family_code": "3.2",
351
+ "requirement_number": 3,
352
+ "title": "Provide security awareness training on recognizing and reporting potential indicators of insider threat",
353
+ "description": "Provide security awareness training on recognizing and reporting potential indicators of insider threat.",
354
+ "discussion": "Insider threats are security threats from within the organization. Organizations provide training to all users to recognize indicators of potential insider threats and report them to proper authorities. Potential indicators and possible precursors to insider threats include behaviors such as inordinate, long-term job dissatisfaction, attempts to gain access to information not required for job performance, and unexplained access to financial resources.",
355
+ "nist_800_53_controls": ["AT-2(2)"],
356
+ "cmmc_practice_id": "AT.L2-3.2.3",
357
+ "priority": "medium",
358
+ "automation_level": "manual",
359
+ "evidence_required": "Insider threat awareness training materials, training completion records, reporting procedures documentation"
360
+ },
361
+ {
362
+ "id": "171-3.3.1",
363
+ "family": "Audit and Accountability",
364
+ "family_code": "3.3",
365
+ "requirement_number": 1,
366
+ "title": "Create and retain system audit logs and records to the extent needed to enable the monitoring, analysis, investigation, and reporting of unlawful or unauthorized system activity",
367
+ "description": "Create and retain system audit logs and records to the extent needed to enable the monitoring, analysis, investigation, and reporting of unlawful or unauthorized system activity.",
368
+ "discussion": "An event is any observable occurrence in a system including unlawful or unauthorized system activity. Organizations identify event types for which a logging functionality is needed as those events which are significant and relevant to the security of systems and the environments in which those systems operate. Audit records can be generated at various levels of abstraction.",
369
+ "nist_800_53_controls": ["AU-2", "AU-3", "AU-3(1)", "AU-6"],
370
+ "cmmc_practice_id": "AU.L2-3.3.1",
371
+ "priority": "high",
372
+ "automation_level": "auto",
373
+ "evidence_required": "Audit policy, audit log configuration, log retention settings, sample audit records"
374
+ },
375
+ {
376
+ "id": "171-3.3.2",
377
+ "family": "Audit and Accountability",
378
+ "family_code": "3.3",
379
+ "requirement_number": 2,
380
+ "title": "Ensure that the actions of individual system users can be uniquely traced to those users so they can be held accountable for their actions",
381
+ "description": "Ensure that the actions of individual system users can be uniquely traced to those users so they can be held accountable for their actions.",
382
+ "discussion": "This requirement ensures that the contents of the audit record include the information needed to, when possible, link audit events to individual users. Organizations consider event types for which audit logs are necessary for individual accountability including events such as successful and unsuccessful logon attempts, privileged activities or other security-relevant events, and accessing CUI.",
383
+ "nist_800_53_controls": ["AU-2", "AU-3", "AU-6"],
384
+ "cmmc_practice_id": "AU.L2-3.3.2",
385
+ "priority": "high",
386
+ "automation_level": "auto",
387
+ "evidence_required": "Audit record content configuration showing user attribution, unique user identification in logs"
388
+ },
389
+ {
390
+ "id": "171-3.3.3",
391
+ "family": "Audit and Accountability",
392
+ "family_code": "3.3",
393
+ "requirement_number": 3,
394
+ "title": "Review and update logged events",
395
+ "description": "Review and update logged events.",
396
+ "discussion": "The intent of this requirement is that the organization periodically reviews the types of events that are logged. This review can be accomplished with a mixture of manual and automated techniques. The types of events that are currently logged may be insufficient. The review of logged events helps inform decisions on which events require logging. The organization also considers the impact of changes in systems on the events that are logged.",
397
+ "nist_800_53_controls": ["AU-2(3)"],
398
+ "cmmc_practice_id": "AU.L2-3.3.3",
399
+ "priority": "medium",
400
+ "automation_level": "partial",
401
+ "evidence_required": "Logged event review records, event type update documentation, review schedule"
402
+ },
403
+ {
404
+ "id": "171-3.3.4",
405
+ "family": "Audit and Accountability",
406
+ "family_code": "3.3",
407
+ "requirement_number": 4,
408
+ "title": "Alert in the event of an audit logging process failure",
409
+ "description": "Alert in the event of an audit logging process failure.",
410
+ "discussion": "Audit logging process failures include software and hardware errors, failures in the audit capturing mechanisms, and audit storage capacity being reached or exceeded. Organizations may choose to define additional actions for different audit logging failures (e.g., by type, by location, by severity, or a combination of such factors).",
411
+ "nist_800_53_controls": ["AU-5"],
412
+ "cmmc_practice_id": "AU.L2-3.3.4",
413
+ "priority": "high",
414
+ "automation_level": "auto",
415
+ "evidence_required": "Audit failure alerting configuration, alert notification procedures, monitoring system configuration"
416
+ },
417
+ {
418
+ "id": "171-3.3.5",
419
+ "family": "Audit and Accountability",
420
+ "family_code": "3.3",
421
+ "requirement_number": 5,
422
+ "title": "Correlate audit record review, analysis, and reporting processes to support organizational processes for investigation and response to suspicious activities",
423
+ "description": "Correlate audit record review, analysis, and reporting processes to support organizational processes for investigation and response to suspicious activities.",
424
+ "discussion": "Correlating audit record review, analysis, and reporting processes helps to ensure that they do not operate independently, but rather collectively. Regarding the assessment of a given organizational system, the requirement is met when the information to be correlated is communicated directly to a SIEM or similar audit processing tool.",
425
+ "nist_800_53_controls": ["AU-6(3)"],
426
+ "cmmc_practice_id": "AU.L2-3.3.5",
427
+ "priority": "medium",
428
+ "automation_level": "partial",
429
+ "evidence_required": "SIEM configuration, log correlation rules, incident response integration documentation"
430
+ },
431
+ {
432
+ "id": "171-3.3.6",
433
+ "family": "Audit and Accountability",
434
+ "family_code": "3.3",
435
+ "requirement_number": 6,
436
+ "title": "Provide audit record reduction and report generation to support on-demand analysis and reporting",
437
+ "description": "Provide audit record reduction and report generation to support on-demand analysis and reporting.",
438
+ "discussion": "Audit record reduction is a process that manipulates collected audit information and organizes such information in a summary format that is more meaningful to analysts. Audit record reduction and report generation capabilities do not always emanate from the same system or from the same organizational entities conducting auditing activities.",
439
+ "nist_800_53_controls": ["AU-7"],
440
+ "cmmc_practice_id": "AU.L2-3.3.6",
441
+ "priority": "medium",
442
+ "automation_level": "auto",
443
+ "evidence_required": "Audit analysis tools configuration, report generation capability documentation, sample audit reports"
444
+ },
445
+ {
446
+ "id": "171-3.3.7",
447
+ "family": "Audit and Accountability",
448
+ "family_code": "3.3",
449
+ "requirement_number": 7,
450
+ "title": "Provide a system capability that compares and synchronizes internal system clocks with an authoritative source to generate time stamps for audit records",
451
+ "description": "Provide a system capability that compares and synchronizes internal system clocks with an authoritative source to generate time stamps for audit records.",
452
+ "discussion": "Internal system clocks are used to generate time stamps, which include date and time. Time is expressed in Coordinated Universal Time (UTC), a modern continuation of Greenwich Mean Time (GMT), or local time with an offset from UTC. Time stamps generated by the system include both date and time and are used in audit records.",
453
+ "nist_800_53_controls": ["AU-8"],
454
+ "cmmc_practice_id": "AU.L2-3.3.7",
455
+ "priority": "medium",
456
+ "automation_level": "auto",
457
+ "evidence_required": "NTP configuration, time synchronization source documentation, time stamp format in audit records"
458
+ },
459
+ {
460
+ "id": "171-3.3.8",
461
+ "family": "Audit and Accountability",
462
+ "family_code": "3.3",
463
+ "requirement_number": 8,
464
+ "title": "Protect audit information and audit logging tools from unauthorized access, modification, and deletion",
465
+ "description": "Protect audit information and audit logging tools from unauthorized access, modification, and deletion.",
466
+ "discussion": "Audit information includes all information needed to successfully audit system activity, such as audit records, audit settings, and audit reports. Audit logging tools are those programs and devices used to conduct audit and logging activities. Protection of audit information focuses on technical protection and limits the ability to access and execute audit logging tools to authorized individuals. Physical protection of audit information is addressed by the media protection requirements and physical and environmental protection requirements.",
467
+ "nist_800_53_controls": ["AU-9"],
468
+ "cmmc_practice_id": "AU.L2-3.3.8",
469
+ "priority": "high",
470
+ "automation_level": "auto",
471
+ "evidence_required": "Audit log access controls, log integrity protection mechanisms, audit tool access restrictions"
472
+ },
473
+ {
474
+ "id": "171-3.3.9",
475
+ "family": "Audit and Accountability",
476
+ "family_code": "3.3",
477
+ "requirement_number": 9,
478
+ "title": "Limit management of audit logging functionality to a subset of privileged users",
479
+ "description": "Limit management of audit logging functionality to a subset of privileged users.",
480
+ "discussion": "Individuals with privileged access to a system and who are also the subject of an audit by that system may affect the reliability of audit information by inhibiting audit activities or modifying audit records. This requirement specifies that privileged access be further defined between audit-related privileges and other privileges, thus limiting the users with audit-related privileges.",
481
+ "nist_800_53_controls": ["AU-9(4)"],
482
+ "cmmc_practice_id": "AU.L2-3.3.9",
483
+ "priority": "high",
484
+ "automation_level": "partial",
485
+ "evidence_required": "Audit management role assignments, privileged user list with audit responsibilities, access control documentation for audit functions"
486
+ },
487
+ {
488
+ "id": "171-3.4.1",
489
+ "family": "Configuration Management",
490
+ "family_code": "3.4",
491
+ "requirement_number": 1,
492
+ "title": "Establish and maintain baseline configurations and inventories of organizational systems (including hardware, software, firmware, and documentation) throughout the respective system development life cycles",
493
+ "description": "Establish and maintain baseline configurations and inventories of organizational information systems (including hardware, software, firmware, and documentation) throughout the respective system development life cycles.",
494
+ "discussion": "Baseline configurations are documented, formally reviewed and agreed-upon sets of specifications for systems or configuration items within those systems. Baseline configurations serve as a basis for future builds, releases, and changes to systems. Maintaining baselines requires creating new baselines as systems change over time.",
495
+ "nist_800_53_controls": ["CM-2", "CM-6", "CM-8", "CM-8(1)"],
496
+ "cmmc_practice_id": "CM.L2-3.4.1",
497
+ "priority": "high",
498
+ "automation_level": "partial",
499
+ "evidence_required": "Baseline configuration documents, hardware/software inventory, configuration management plan"
500
+ },
501
+ {
502
+ "id": "171-3.4.2",
503
+ "family": "Configuration Management",
504
+ "family_code": "3.4",
505
+ "requirement_number": 2,
506
+ "title": "Establish and enforce security configuration settings for information technology products employed in organizational systems",
507
+ "description": "Establish and enforce security configuration settings for information technology products employed in organizational information systems.",
508
+ "discussion": "Configuration settings are the set of parameters that can be changed in hardware, software, or firmware components of the system that affect the security posture or functionality of the system. IT products for which security-related configuration settings can be defined include mainframe computers, servers, workstations, input and output devices, network components, operating systems, middleware, and applications.",
509
+ "nist_800_53_controls": ["CM-6"],
510
+ "cmmc_practice_id": "CM.L2-3.4.2",
511
+ "priority": "high",
512
+ "automation_level": "auto",
513
+ "evidence_required": "Security configuration standards (STIGs, CIS benchmarks), configuration compliance scan results, deviation documentation"
514
+ },
515
+ {
516
+ "id": "171-3.4.3",
517
+ "family": "Configuration Management",
518
+ "family_code": "3.4",
519
+ "requirement_number": 3,
520
+ "title": "Track, review, approve or disapprove, and log changes to organizational systems",
521
+ "description": "Track, review, approve or disapprove, and log changes to organizational systems.",
522
+ "discussion": "Tracking, reviewing, approving or disapproving, and logging changes is called configuration change control. Configuration change control for organizational systems involves the systematic proposal, justification, implementation, testing, review, and disposition of changes to the systems, including system upgrades and modifications.",
523
+ "nist_800_53_controls": ["CM-3"],
524
+ "cmmc_practice_id": "CM.L2-3.4.3",
525
+ "priority": "high",
526
+ "automation_level": "partial",
527
+ "evidence_required": "Change management process documentation, change request records, change approval logs, change implementation records"
528
+ },
529
+ {
530
+ "id": "171-3.4.4",
531
+ "family": "Configuration Management",
532
+ "family_code": "3.4",
533
+ "requirement_number": 4,
534
+ "title": "Analyze the security impact of changes prior to implementation",
535
+ "description": "Analyze the security impact of changes prior to implementation.",
536
+ "discussion": "Organizational personnel with information security responsibilities (e.g., system administrators, system security officers, system security managers, and systems security engineers) conduct security impact analyses. Individuals conducting security impact analyses possess the necessary skills and technical expertise to analyze the changes to systems and the associated security ramifications.",
537
+ "nist_800_53_controls": ["CM-4"],
538
+ "cmmc_practice_id": "CM.L2-3.4.4",
539
+ "priority": "medium",
540
+ "automation_level": "partial",
541
+ "evidence_required": "Security impact analysis reports, change request security review documentation"
542
+ },
543
+ {
544
+ "id": "171-3.4.5",
545
+ "family": "Configuration Management",
546
+ "family_code": "3.4",
547
+ "requirement_number": 5,
548
+ "title": "Define, document, approve, and enforce physical and logical access restrictions associated with changes to organizational systems",
549
+ "description": "Define, document, approve, and enforce physical and logical access restrictions associated with changes to organizational information systems.",
550
+ "discussion": "Any changes to the hardware, software, or firmware components of systems can potentially have significant effects on the overall security of the systems. Therefore, organizations permit only qualified and authorized individuals to access systems for purposes of initiating changes.",
551
+ "nist_800_53_controls": ["CM-5"],
552
+ "cmmc_practice_id": "CM.L2-3.4.5",
553
+ "priority": "medium",
554
+ "automation_level": "partial",
555
+ "evidence_required": "Access restriction policy for change management, authorized change personnel list, change access control records"
556
+ },
557
+ {
558
+ "id": "171-3.4.6",
559
+ "family": "Configuration Management",
560
+ "family_code": "3.4",
561
+ "requirement_number": 6,
562
+ "title": "Employ the principle of least functionality by configuring organizational systems to provide only essential capabilities",
563
+ "description": "Employ the principle of least functionality by configuring organizational information systems to provide only essential capabilities.",
564
+ "discussion": "Systems can provide a wide variety of functions and services. Some of the functions and services routinely provided by default may not be necessary to support essential organizational missions, functions, or operations. It is sometimes convenient to provide multiple services from single system components. However, doing so increases risk over limiting the services provided by any one component. Where feasible, organizations limit component functionality to a single function per component.",
565
+ "nist_800_53_controls": ["CM-7"],
566
+ "cmmc_practice_id": "CM.L2-3.4.6",
567
+ "priority": "medium",
568
+ "automation_level": "auto",
569
+ "evidence_required": "Least functionality configuration, disabled services list, port/protocol/service restrictions"
570
+ },
571
+ {
572
+ "id": "171-3.4.7",
573
+ "family": "Configuration Management",
574
+ "family_code": "3.4",
575
+ "requirement_number": 7,
576
+ "title": "Restrict, disable, or prevent the use of nonessential programs, functions, ports, protocols, and services",
577
+ "description": "Restrict, disable, or prevent the use of nonessential programs, functions, ports, protocols, and services.",
578
+ "discussion": "Restricting the use of nonessential software (programs) includes restricting the roles allowed to approve program execution; prohibiting auto-execute; program blacklisting and whitelisting; or restricting the use of specific programs to specific times of the day, or to specific user accounts.",
579
+ "nist_800_53_controls": ["CM-7(1)", "CM-7(2)"],
580
+ "cmmc_practice_id": "CM.L2-3.4.7",
581
+ "priority": "medium",
582
+ "automation_level": "auto",
583
+ "evidence_required": "Application whitelisting/blacklisting policy, disabled ports/protocols/services list, firewall rules"
584
+ },
585
+ {
586
+ "id": "171-3.4.8",
587
+ "family": "Configuration Management",
588
+ "family_code": "3.4",
589
+ "requirement_number": 8,
590
+ "title": "Apply deny-by-exception (blacklisting) policy to prevent the use of unauthorized software or deny-all, permit-by-exception (whitelisting) policy to allow the execution of authorized software",
591
+ "description": "Apply deny-by-exception (blacklisting) policy to prevent the use of unauthorized software or deny-all, permit-by-exception (whitelisting) policy to allow the execution of authorized software.",
592
+ "discussion": "The process used to identify software programs that are not authorized to execute on systems is commonly referred to as blacklisting. The process used to identify software programs that are authorized to execute on systems is commonly referred to as whitelisting. Whitelisting is the stronger of the two policies for restricting software execution.",
593
+ "nist_800_53_controls": ["CM-7(4)", "CM-7(5)"],
594
+ "cmmc_practice_id": "CM.L2-3.4.8",
595
+ "priority": "medium",
596
+ "automation_level": "auto",
597
+ "evidence_required": "Software restriction policy, application control tool configuration, authorized/unauthorized software lists"
598
+ },
599
+ {
600
+ "id": "171-3.4.9",
601
+ "family": "Configuration Management",
602
+ "family_code": "3.4",
603
+ "requirement_number": 9,
604
+ "title": "Control and monitor user-installed software",
605
+ "description": "Control and monitor user-installed software.",
606
+ "discussion": "Users can install software in organizational systems if provided the necessary privileges. To maintain control over the types of software installed, organizations identify permitted and prohibited actions regarding software installation. Permitted software installations include updates and security patches to existing software and downloading new applications from organization-approved application stores.",
607
+ "nist_800_53_controls": ["CM-11"],
608
+ "cmmc_practice_id": "CM.L2-3.4.9",
609
+ "priority": "medium",
610
+ "automation_level": "auto",
611
+ "evidence_required": "User software installation policy, software installation monitoring logs, approved software catalog"
612
+ },
613
+ {
614
+ "id": "171-3.5.1",
615
+ "family": "Identification and Authentication",
616
+ "family_code": "3.5",
617
+ "requirement_number": 1,
618
+ "title": "Identify system users, processes acting on behalf of users, and devices",
619
+ "description": "Identify information system users, processes acting on behalf of users, or devices.",
620
+ "discussion": "Common device identifiers include media access control (MAC) addresses, Internet Protocol (IP) addresses, or device-unique token identifiers. Organizations may supplement device identification with additional security attributes, such as certifications and credentials. Management of individual identifiers is not applicable to shared system accounts. Typically, individual identifiers are the usernames associated with the system accounts assigned to those individuals.",
621
+ "nist_800_53_controls": ["IA-2", "IA-5"],
622
+ "cmmc_practice_id": "IA.L2-3.5.1",
623
+ "priority": "high",
624
+ "automation_level": "auto",
625
+ "evidence_required": "User identification policy, user account inventory, device identification mechanism documentation"
626
+ },
627
+ {
628
+ "id": "171-3.5.2",
629
+ "family": "Identification and Authentication",
630
+ "family_code": "3.5",
631
+ "requirement_number": 2,
632
+ "title": "Authenticate (or verify) the identities of users, processes, or devices, as a prerequisite to allowing access to organizational systems",
633
+ "description": "Authenticate (or verify) the identities of those users, processes, or devices, as a prerequisite to allowing access to organizational information systems.",
634
+ "discussion": "Individual authenticators include passwords, key cards, cryptographic devices, and one-time password devices. Initial authenticator content is the actual content of the authenticator, for example, the initial password. In contrast, the requirements about authenticator content include the minimum password length. Developers ship system components with factory default authentication credentials to allow for initial installation and configuration. Default authentication credentials are often well known, easily discoverable, and present a significant security risk.",
635
+ "nist_800_53_controls": ["IA-2", "IA-5"],
636
+ "cmmc_practice_id": "IA.L2-3.5.2",
637
+ "priority": "high",
638
+ "automation_level": "auto",
639
+ "evidence_required": "Authentication mechanism documentation, password policy configuration, MFA implementation evidence"
640
+ },
641
+ {
642
+ "id": "171-3.5.3",
643
+ "family": "Identification and Authentication",
644
+ "family_code": "3.5",
645
+ "requirement_number": 3,
646
+ "title": "Use multifactor authentication for local and network access to privileged accounts and for network access to non-privileged accounts",
647
+ "description": "Use multifactor authentication for local and network access to privileged accounts and for network access to non-privileged accounts.",
648
+ "discussion": "Multifactor authentication requires the use of two or more different factors to achieve authentication. The factors are defined as something you know (e.g., password), something you have (e.g., smart card or token), or something you are (e.g., biometric). Multifactor authentication solutions that feature physical authenticators include hardware authenticators providing time-based or challenge-response one-time passwords and smart cards.",
649
+ "nist_800_53_controls": ["IA-2(1)", "IA-2(2)", "IA-2(3)"],
650
+ "cmmc_practice_id": "IA.L2-3.5.3",
651
+ "priority": "high",
652
+ "automation_level": "auto",
653
+ "evidence_required": "MFA configuration for privileged and non-privileged accounts, MFA solution documentation, access method inventory"
654
+ },
655
+ {
656
+ "id": "171-3.5.4",
657
+ "family": "Identification and Authentication",
658
+ "family_code": "3.5",
659
+ "requirement_number": 4,
660
+ "title": "Employ replay-resistant authentication mechanisms for network access to privileged and non-privileged accounts",
661
+ "description": "Employ replay-resistant authentication mechanisms for network access to privileged and non-privileged accounts.",
662
+ "discussion": "Authentication processes resist replay attacks if it is impractical to successfully authenticate by recording or replaying previous authentication messages. Replay-resistant techniques include protocols that use nonces or challenges such as Transport Layer Security (TLS) and time synchronous or challenge-response one-time authenticators.",
663
+ "nist_800_53_controls": ["IA-2(8)"],
664
+ "cmmc_practice_id": "IA.L2-3.5.4",
665
+ "priority": "high",
666
+ "automation_level": "auto",
667
+ "evidence_required": "Replay-resistant authentication protocol documentation, TLS configuration, one-time password mechanism evidence"
668
+ },
669
+ {
670
+ "id": "171-3.5.5",
671
+ "family": "Identification and Authentication",
672
+ "family_code": "3.5",
673
+ "requirement_number": 5,
674
+ "title": "Prevent reuse of identifiers for a defined period",
675
+ "description": "Prevent reuse of identifiers for a defined period.",
676
+ "discussion": "Identifiers are provided for users, processes acting on behalf of users, or devices. Preventing reuse of identifiers implies preventing the assignment of previously used individual, group, role, or device identifiers to different individuals, groups, roles, or devices.",
677
+ "nist_800_53_controls": ["IA-4"],
678
+ "cmmc_practice_id": "IA.L2-3.5.5",
679
+ "priority": "medium",
680
+ "automation_level": "auto",
681
+ "evidence_required": "Identifier reuse prevention policy, identifier management configuration, account lifecycle documentation"
682
+ },
683
+ {
684
+ "id": "171-3.5.6",
685
+ "family": "Identification and Authentication",
686
+ "family_code": "3.5",
687
+ "requirement_number": 6,
688
+ "title": "Disable identifiers after a defined period of inactivity",
689
+ "description": "Disable identifiers after a defined period of inactivity.",
690
+ "discussion": "Inactive identifiers pose a risk to organizational systems and applications. Attackers may exploit an inactive identifier to gain access, potentially without detection. Owners of inactive accounts may not notice if unauthorized access is taking place.",
691
+ "nist_800_53_controls": ["IA-4(e)"],
692
+ "cmmc_practice_id": "IA.L2-3.5.6",
693
+ "priority": "medium",
694
+ "automation_level": "auto",
695
+ "evidence_required": "Account inactivity policy, inactive account disable configuration, account review logs"
696
+ },
697
+ {
698
+ "id": "171-3.5.7",
699
+ "family": "Identification and Authentication",
700
+ "family_code": "3.5",
701
+ "requirement_number": 7,
702
+ "title": "Enforce a minimum password complexity and change of characters when new passwords are created",
703
+ "description": "Enforce a minimum password complexity and change of characters when new passwords are created.",
704
+ "discussion": "This requirement applies to single-factor authentication of individuals using passwords as individual or group authenticators, and in a similar manner, when passwords are used as part of multifactor authenticators. The number of changed characters refers to the number of changes required with respect to the total number of positions in the current password. Password complexity includes composition rules (e.g., uppercase, lowercase, numbers, special characters).",
705
+ "nist_800_53_controls": ["IA-5(1)"],
706
+ "cmmc_practice_id": "IA.L2-3.5.7",
707
+ "priority": "high",
708
+ "automation_level": "auto",
709
+ "evidence_required": "Password policy configuration, complexity requirements documentation, password change settings"
710
+ },
711
+ {
712
+ "id": "171-3.5.8",
713
+ "family": "Identification and Authentication",
714
+ "family_code": "3.5",
715
+ "requirement_number": 8,
716
+ "title": "Prohibit password reuse for a specified number of generations",
717
+ "description": "Prohibit password reuse for a specified number of generations.",
718
+ "discussion": "Password lifetime restrictions do not apply to temporary passwords. Users reusing old passwords may enable adversaries to gain access to organizational systems. The number of passwords that must be created before a previous password can be reused is typically set at a minimum of 24 passwords.",
719
+ "nist_800_53_controls": ["IA-5(1)"],
720
+ "cmmc_practice_id": "IA.L2-3.5.8",
721
+ "priority": "medium",
722
+ "automation_level": "auto",
723
+ "evidence_required": "Password history configuration, password reuse prevention settings"
724
+ },
725
+ {
726
+ "id": "171-3.5.9",
727
+ "family": "Identification and Authentication",
728
+ "family_code": "3.5",
729
+ "requirement_number": 9,
730
+ "title": "Allow temporary password use for system logons with an immediate change to a permanent password",
731
+ "description": "Allow temporary password use for system logons with an immediate change to a permanent password.",
732
+ "discussion": "Changing temporary passwords to permanent passwords immediately after system logon ensures that the necessary strength of the authentication mechanism is implemented at the earliest opportunity, reducing the susceptibility to authenticator compromises.",
733
+ "nist_800_53_controls": ["IA-5(1)"],
734
+ "cmmc_practice_id": "IA.L2-3.5.9",
735
+ "priority": "medium",
736
+ "automation_level": "auto",
737
+ "evidence_required": "Temporary password policy, force-change-on-first-login configuration"
738
+ },
739
+ {
740
+ "id": "171-3.5.10",
741
+ "family": "Identification and Authentication",
742
+ "family_code": "3.5",
743
+ "requirement_number": 10,
744
+ "title": "Store and transmit only cryptographically-protected passwords",
745
+ "description": "Store and transmit only cryptographically-protected passwords.",
746
+ "discussion": "Cryptographically-protected passwords use salted one-way cryptographic hashes of passwords. Unencrypted or plaintext passwords are not stored or transmitted. Organizations also determine the minimum strength of cryptographic mechanisms used to protect passwords.",
747
+ "nist_800_53_controls": ["IA-5(1)"],
748
+ "cmmc_practice_id": "IA.L2-3.5.10",
749
+ "priority": "high",
750
+ "automation_level": "auto",
751
+ "evidence_required": "Password storage mechanism documentation (hashing algorithms), TLS configuration for password transmission"
752
+ },
753
+ {
754
+ "id": "171-3.5.11",
755
+ "family": "Identification and Authentication",
756
+ "family_code": "3.5",
757
+ "requirement_number": 11,
758
+ "title": "Obscure feedback of authentication information",
759
+ "description": "Obscure feedback of authentication information.",
760
+ "discussion": "The feedback from systems does not provide information that would allow unauthorized individuals to compromise authentication mechanisms. For some types of systems or system components, for example desktops or notebooks with relatively large monitors, the threat may be mitigated by the ability of the user to physically protect their authentication information. Obscuring feedback of authentication information includes displaying asterisks when a password is entered.",
761
+ "nist_800_53_controls": ["IA-6"],
762
+ "cmmc_practice_id": "IA.L2-3.5.11",
763
+ "priority": "medium",
764
+ "automation_level": "auto",
765
+ "evidence_required": "Authentication feedback masking configuration, UI/login screen screenshots showing obscured input"
766
+ },
767
+ {
768
+ "id": "171-3.6.1",
769
+ "family": "Incident Response",
770
+ "family_code": "3.6",
771
+ "requirement_number": 1,
772
+ "title": "Establish an operational incident-handling capability for organizational systems that includes preparation, detection, analysis, containment, recovery, and user response activities",
773
+ "description": "Establish an operational incident-handling capability for organizational information systems that includes adequate preparation, detection, analysis, containment, recovery, and user response activities.",
774
+ "discussion": "Organizations recognize that incident handling capability is dependent on the capabilities of organizational systems and the mission/business processes being supported by those systems. Organizations consider incident handling as it relates to the confidentiality of CUI. Incident-related information can be obtained from a variety of sources including audit monitoring, network monitoring, physical access monitoring, user and administrator reports, and reported supply chain events.",
775
+ "nist_800_53_controls": ["IR-2", "IR-4", "IR-5", "IR-6", "IR-7"],
776
+ "cmmc_practice_id": "IR.L2-3.6.1",
777
+ "priority": "high",
778
+ "automation_level": "partial",
779
+ "evidence_required": "Incident response plan, incident handling procedures, incident response team roster, communication plan"
780
+ },
781
+ {
782
+ "id": "171-3.6.2",
783
+ "family": "Incident Response",
784
+ "family_code": "3.6",
785
+ "requirement_number": 2,
786
+ "title": "Track, document, and report incidents to designated officials and/or authorities both internal and external to the organization",
787
+ "description": "Track, document, and report incidents to designated officials and/or authorities both internal and external to the organization.",
788
+ "discussion": "Tracking and documenting system security incidents on an ongoing basis is a critical component of a well-defined incident response capability. Organizations should ensure that both types of incidents (those handled internally and those handled externally) are properly tracked and documented. Reporting incidents addresses specific incident reporting requirements within an organization and the formal incident reporting requirements for the organization.",
789
+ "nist_800_53_controls": ["IR-5", "IR-6"],
790
+ "cmmc_practice_id": "IR.L2-3.6.2",
791
+ "priority": "high",
792
+ "automation_level": "partial",
793
+ "evidence_required": "Incident tracking system, incident report templates, reporting authority contact list, sample incident reports"
794
+ },
795
+ {
796
+ "id": "171-3.6.3",
797
+ "family": "Incident Response",
798
+ "family_code": "3.6",
799
+ "requirement_number": 3,
800
+ "title": "Test the organizational incident response capability",
801
+ "description": "Test the organizational incident response capability.",
802
+ "discussion": "Organizations test incident response capabilities to determine the effectiveness of the capabilities and to identify potential weaknesses or deficiencies. Incident response testing includes the use of checklists, walk-through or tabletop exercises, simulations (both parallel and full interrupt), and comprehensive exercises. Incident response testing can also include a determination of the effects on organizational operations and assets and individuals due to incident response.",
803
+ "nist_800_53_controls": ["IR-3", "IR-3(2)"],
804
+ "cmmc_practice_id": "IR.L2-3.6.3",
805
+ "priority": "medium",
806
+ "automation_level": "manual",
807
+ "evidence_required": "Incident response test plans, test results, after-action reports, lessons learned documentation"
808
+ },
809
+ {
810
+ "id": "171-3.7.1",
811
+ "family": "Maintenance",
812
+ "family_code": "3.7",
813
+ "requirement_number": 1,
814
+ "title": "Perform maintenance on organizational systems",
815
+ "description": "Perform maintenance on organizational information systems.",
816
+ "discussion": "This requirement addresses controlled maintenance of organizational systems and applies to all types of maintenance whether performed by local or nonlocal entities (e.g., in-contract, warranty, in-house, software maintenance agreement). System maintenance also includes those components not directly associated with information processing or data or information retention such as scanners, copiers, and printers.",
817
+ "nist_800_53_controls": ["MA-2"],
818
+ "cmmc_practice_id": "MA.L2-3.7.1",
819
+ "priority": "medium",
820
+ "automation_level": "partial",
821
+ "evidence_required": "Maintenance policy, maintenance schedule, maintenance records, maintenance personnel authorization"
822
+ },
823
+ {
824
+ "id": "171-3.7.2",
825
+ "family": "Maintenance",
826
+ "family_code": "3.7",
827
+ "requirement_number": 2,
828
+ "title": "Provide controls on the tools, techniques, mechanisms, and personnel used to conduct system maintenance",
829
+ "description": "Provide effective controls on the tools, techniques, mechanisms, and personnel used to conduct information system maintenance.",
830
+ "discussion": "This requirement addresses security-related issues with maintenance tools that are not within the organizational system boundaries but are used specifically for diagnostic and repair actions on those systems. Maintenance tools can include hardware, software, and firmware items. The tools need not necessarily be dedicated to the organization and may be provided by third parties.",
831
+ "nist_800_53_controls": ["MA-3", "MA-3(1)", "MA-3(2)"],
832
+ "cmmc_practice_id": "MA.L2-3.7.2",
833
+ "priority": "medium",
834
+ "automation_level": "partial",
835
+ "evidence_required": "Maintenance tools inventory, tool inspection records, maintenance personnel clearance verification"
836
+ },
837
+ {
838
+ "id": "171-3.7.3",
839
+ "family": "Maintenance",
840
+ "family_code": "3.7",
841
+ "requirement_number": 3,
842
+ "title": "Ensure equipment removed for off-site maintenance is sanitized of any CUI",
843
+ "description": "Ensure equipment removed for off-site maintenance is sanitized of any CUI.",
844
+ "discussion": "This requirement addresses the information security aspects of system maintenance that are performed off-site and applies to all equipment requiring maintenance whether performed by local or nonlocal entities. Equipment that stores, carries, or handles CUI must be sanitized before releasing it for off-site maintenance.",
845
+ "nist_800_53_controls": ["MA-3(3)"],
846
+ "cmmc_practice_id": "MA.L2-3.7.3",
847
+ "priority": "high",
848
+ "automation_level": "manual",
849
+ "evidence_required": "Media sanitization procedures for off-site maintenance, sanitization verification records"
850
+ },
851
+ {
852
+ "id": "171-3.7.4",
853
+ "family": "Maintenance",
854
+ "family_code": "3.7",
855
+ "requirement_number": 4,
856
+ "title": "Check media containing diagnostic and test programs for malicious code before the media are used in organizational systems",
857
+ "description": "Check media containing diagnostic and test programs for malicious code before the media are used in organizational information systems.",
858
+ "discussion": "If, upon inspection of maintenance media, organizations determine that the media contain malicious code, the incident is handled consistent with incident handling policies and procedures.",
859
+ "nist_800_53_controls": ["MA-3(2)"],
860
+ "cmmc_practice_id": "MA.L2-3.7.4",
861
+ "priority": "medium",
862
+ "automation_level": "partial",
863
+ "evidence_required": "Media inspection procedures, malware scan logs for maintenance media, media inspection records"
864
+ },
865
+ {
866
+ "id": "171-3.7.5",
867
+ "family": "Maintenance",
868
+ "family_code": "3.7",
869
+ "requirement_number": 5,
870
+ "title": "Require multifactor authentication to establish nonlocal maintenance sessions via external network connections and terminate such connections when nonlocal maintenance is complete",
871
+ "description": "Require multifactor authentication to establish nonlocal maintenance sessions via external network connections and terminate such connections when nonlocal maintenance is complete.",
872
+ "discussion": "Nonlocal maintenance and diagnostic activities are activities conducted by individuals communicating through an external network. The authentication techniques employed in the establishment of these nonlocal maintenance and diagnostic sessions reflect the network access requirements.",
873
+ "nist_800_53_controls": ["MA-4"],
874
+ "cmmc_practice_id": "MA.L2-3.7.5",
875
+ "priority": "high",
876
+ "automation_level": "auto",
877
+ "evidence_required": "Remote maintenance MFA configuration, session termination procedures, remote maintenance access logs"
878
+ },
879
+ {
880
+ "id": "171-3.7.6",
881
+ "family": "Maintenance",
882
+ "family_code": "3.7",
883
+ "requirement_number": 6,
884
+ "title": "Supervise the maintenance activities of maintenance personnel without required access authorization",
885
+ "description": "Supervise the maintenance activities of maintenance personnel without required access authorization.",
886
+ "discussion": "This requirement applies to individuals performing hardware or software maintenance on organizational systems, while lacking required access authorization. Maintenance personnel are escorted and supervised during the performance of maintenance to detect unauthorized, unintended, or inappropriate system modifications.",
887
+ "nist_800_53_controls": ["MA-5"],
888
+ "cmmc_practice_id": "MA.L2-3.7.6",
889
+ "priority": "medium",
890
+ "automation_level": "manual",
891
+ "evidence_required": "Escort and supervision procedures, maintenance supervision logs, maintenance personnel authorization records"
892
+ },
893
+ {
894
+ "id": "171-3.8.1",
895
+ "family": "Media Protection",
896
+ "family_code": "3.8",
897
+ "requirement_number": 1,
898
+ "title": "Protect (i.e., physically control and securely store) system media containing CUI, both paper and digital",
899
+ "description": "Protect (i.e., physically control and securely store) information system media containing CUI, both paper and digital.",
900
+ "discussion": "System media includes digital and non-digital media. Digital media includes diskettes, magnetic tapes, external and removable hard disk drives, flash drives, compact disks, and digital video disks. Non-digital media includes paper and microfilm. Protecting digital media includes limiting access to design specifications stored on compact disks or flash drives in the media library to the project leader and members of the hardware development team. Physically controlling system media includes conducting inventories, ensuring procedures are in place to allow individuals to check out and return media to the media library, and maintaining accountability for all stored media.",
901
+ "nist_800_53_controls": ["MP-2", "MP-4"],
902
+ "cmmc_practice_id": "MP.L2-3.8.1",
903
+ "priority": "high",
904
+ "automation_level": "manual",
905
+ "evidence_required": "Media protection policy, media inventory, secure storage locations, media handling procedures"
906
+ },
907
+ {
908
+ "id": "171-3.8.2",
909
+ "family": "Media Protection",
910
+ "family_code": "3.8",
911
+ "requirement_number": 2,
912
+ "title": "Limit access to CUI on system media to authorized users",
913
+ "description": "Limit access to CUI on information system media to authorized users.",
914
+ "discussion": "Access can be limited by physically controlling system media and secure storage areas. Physically controlling system media includes conducting inventories, ensuring procedures are in place to allow individuals to check out and return system media to the media library, and maintaining accountability for all stored media.",
915
+ "nist_800_53_controls": ["MP-2"],
916
+ "cmmc_practice_id": "MP.L2-3.8.2",
917
+ "priority": "high",
918
+ "automation_level": "partial",
919
+ "evidence_required": "Media access control list, authorized user roster for media access, media checkout/return logs"
920
+ },
921
+ {
922
+ "id": "171-3.8.3",
923
+ "family": "Media Protection",
924
+ "family_code": "3.8",
925
+ "requirement_number": 3,
926
+ "title": "Sanitize or destroy system media containing CUI before disposal or release for reuse",
927
+ "description": "Sanitize or destroy information system media containing CUI before disposal or release for reuse.",
928
+ "discussion": "This requirement applies to all system media, digital and non-digital, subject to disposal or reuse. Examples include digital media found in workstations, network components, scanners, copiers, printers, notebook computers, and mobile devices; and non-digital media such as paper and microfilm. The sanitization process removes information from the media such that the information cannot be retrieved or reconstructed. Sanitization techniques including clearing, purging, cryptographic erase, and destruction prevent the disclosure of information to unauthorized individuals when such media is released for reuse or disposal.",
929
+ "nist_800_53_controls": ["MP-6"],
930
+ "cmmc_practice_id": "MP.L2-3.8.3",
931
+ "priority": "high",
932
+ "automation_level": "partial",
933
+ "evidence_required": "Media sanitization policy, sanitization records, certificate of destruction, sanitization tool documentation"
934
+ },
935
+ {
936
+ "id": "171-3.8.4",
937
+ "family": "Media Protection",
938
+ "family_code": "3.8",
939
+ "requirement_number": 4,
940
+ "title": "Mark media with necessary CUI markings and distribution limitations",
941
+ "description": "Mark media with necessary CUI markings and distribution limitations.",
942
+ "discussion": "The term security marking refers to the application or use of human-readable security attributes. System media includes digital and non-digital media. Marking of system media reflects applicable laws, directives, policies, regulations, standards, and guidance. CUI markings follow CUI Registry guidance.",
943
+ "nist_800_53_controls": ["MP-3"],
944
+ "cmmc_practice_id": "MP.L2-3.8.4",
945
+ "priority": "medium",
946
+ "automation_level": "partial",
947
+ "evidence_required": "CUI marking policy, media marking examples, CUI Registry compliance documentation"
948
+ },
949
+ {
950
+ "id": "171-3.8.5",
951
+ "family": "Media Protection",
952
+ "family_code": "3.8",
953
+ "requirement_number": 5,
954
+ "title": "Control access to media containing CUI and maintain accountability for media during transport outside of controlled areas",
955
+ "description": "Control access to media containing CUI and maintain accountability for media during transport outside of controlled areas.",
956
+ "discussion": "Controlled areas are areas or spaces for which organizations provide sufficient physical or procedural controls to meet the requirements established for protecting CUI. Controls to maintain accountability for media during transport include locked containers and cryptography.",
957
+ "nist_800_53_controls": ["MP-5", "MP-5(4)"],
958
+ "cmmc_practice_id": "MP.L2-3.8.5",
959
+ "priority": "high",
960
+ "automation_level": "manual",
961
+ "evidence_required": "Media transport policy, media transport logs, custody chain documentation, transport container specifications"
962
+ },
963
+ {
964
+ "id": "171-3.8.6",
965
+ "family": "Media Protection",
966
+ "family_code": "3.8",
967
+ "requirement_number": 6,
968
+ "title": "Implement cryptographic mechanisms to protect the confidentiality of CUI stored on digital media during transport unless otherwise protected by alternative physical safeguards",
969
+ "description": "Implement cryptographic mechanisms to protect the confidentiality of CUI stored on digital media during transport unless otherwise protected by alternative physical safeguards.",
970
+ "discussion": "This requirement applies to portable storage devices (e.g., USB memory sticks, digital video disks, compact disks, external or removable hard disk drives). Cryptographic mechanisms applied to protect the confidentiality of CUI on digital media during transport include FIPS-validated encryption standards.",
971
+ "nist_800_53_controls": ["MP-5(4)"],
972
+ "cmmc_practice_id": "MP.L2-3.8.6",
973
+ "priority": "high",
974
+ "automation_level": "auto",
975
+ "evidence_required": "Media encryption policy, encryption configuration for portable storage, FIPS-validated encryption documentation"
976
+ },
977
+ {
978
+ "id": "171-3.8.7",
979
+ "family": "Media Protection",
980
+ "family_code": "3.8",
981
+ "requirement_number": 7,
982
+ "title": "Control the use of removable media on system components",
983
+ "description": "Control the use of removable media on information system components.",
984
+ "discussion": "In contrast to requirement 3.8.1 which restricts user access to media, this requirement restricts the use of certain types of media on systems, for example, restricting or prohibiting the use of flash drives or external hard disk drives. Organizations can employ technical and nontechnical controls to control the use of system media.",
985
+ "nist_800_53_controls": ["MP-7"],
986
+ "cmmc_practice_id": "MP.L2-3.8.7",
987
+ "priority": "medium",
988
+ "automation_level": "auto",
989
+ "evidence_required": "Removable media usage policy, USB device control configuration, media restriction group policy settings"
990
+ },
991
+ {
992
+ "id": "171-3.8.8",
993
+ "family": "Media Protection",
994
+ "family_code": "3.8",
995
+ "requirement_number": 8,
996
+ "title": "Prohibit the use of portable storage devices when such devices have no identifiable owner",
997
+ "description": "Prohibit the use of portable storage devices when such devices have no identifiable owner.",
998
+ "discussion": "Requiring identifiable owners for portable storage devices reduces the risk of using such technology by allowing organizations to assign responsibility and accountability for addressing known vulnerabilities in the devices.",
999
+ "nist_800_53_controls": ["MP-7(1)"],
1000
+ "cmmc_practice_id": "MP.L2-3.8.8",
1001
+ "priority": "medium",
1002
+ "automation_level": "partial",
1003
+ "evidence_required": "Portable storage device ownership policy, device registration records, authorized device inventory"
1004
+ },
1005
+ {
1006
+ "id": "171-3.8.9",
1007
+ "family": "Media Protection",
1008
+ "family_code": "3.8",
1009
+ "requirement_number": 9,
1010
+ "title": "Protect the confidentiality of backup CUI at storage locations",
1011
+ "description": "Protect the confidentiality of backup CUI at storage locations.",
1012
+ "discussion": "Organizations can employ cryptographic mechanisms or alternative physical controls to protect the confidentiality of backup information at designated storage locations. Backup information containing CUI may include system-level information and user-level information.",
1013
+ "nist_800_53_controls": ["CP-9"],
1014
+ "cmmc_practice_id": "MP.L2-3.8.9",
1015
+ "priority": "high",
1016
+ "automation_level": "auto",
1017
+ "evidence_required": "Backup encryption configuration, backup storage security documentation, backup access control lists"
1018
+ },
1019
+ {
1020
+ "id": "171-3.9.1",
1021
+ "family": "Personnel Security",
1022
+ "family_code": "3.9",
1023
+ "requirement_number": 1,
1024
+ "title": "Screen individuals prior to authorizing access to organizational systems containing CUI",
1025
+ "description": "Screen individuals prior to authorizing access to organizational information systems containing CUI.",
1026
+ "discussion": "Personnel security screening activities reflect applicable laws, directives, policies, regulations, standards, guidance, and specific criteria established for the risk designations of assigned positions. Screening activities may include background checks, credit checks, and verification of education, employment, and references.",
1027
+ "nist_800_53_controls": ["PS-3"],
1028
+ "cmmc_practice_id": "PS.L2-3.9.1",
1029
+ "priority": "high",
1030
+ "automation_level": "manual",
1031
+ "evidence_required": "Personnel screening policy, background check records, screening completion verification"
1032
+ },
1033
+ {
1034
+ "id": "171-3.9.2",
1035
+ "family": "Personnel Security",
1036
+ "family_code": "3.9",
1037
+ "requirement_number": 2,
1038
+ "title": "Ensure that organizational systems containing CUI are protected during and after personnel actions such as terminations and transfers",
1039
+ "description": "Ensure that organizational information systems containing CUI are protected during and after personnel actions such as terminations and transfers.",
1040
+ "discussion": "Protecting CUI during and after personnel actions may include returning system-related property and conducting exit interviews. System-related property includes hardware authentication tokens, system administration technical manuals, keys, identification cards, and building passes. Exit interviews ensure that terminated individuals understand the security constraints imposed by being former employees and that proper accountability is achieved for system-related property. Termination of an employee should also include disabling all system access.",
1041
+ "nist_800_53_controls": ["PS-4", "PS-5"],
1042
+ "cmmc_practice_id": "PS.L2-3.9.2",
1043
+ "priority": "high",
1044
+ "automation_level": "partial",
1045
+ "evidence_required": "Personnel action procedures, account termination/transfer records, exit interview documentation, property return records"
1046
+ },
1047
+ {
1048
+ "id": "171-3.10.1",
1049
+ "family": "Physical Protection",
1050
+ "family_code": "3.10",
1051
+ "requirement_number": 1,
1052
+ "title": "Limit physical access to organizational systems, equipment, and the respective operating environments to authorized individuals",
1053
+ "description": "Limit physical access to organizational information systems, equipment, and the respective operating environments to authorized individuals.",
1054
+ "discussion": "This requirement applies to employees, individuals with permanent physical access authorization credentials, and visitors. Authorized individuals include organizational personnel, visitors, or other individuals with some form of identification that allows them to be authenticated. Organizations identify those individuals with needed and authorized access to organizational systems.",
1055
+ "nist_800_53_controls": ["PE-2", "PE-3"],
1056
+ "cmmc_practice_id": "PE.L2-3.10.1",
1057
+ "priority": "high",
1058
+ "automation_level": "partial",
1059
+ "evidence_required": "Physical access control policy, authorized personnel list, physical access logs, badge/key inventory"
1060
+ },
1061
+ {
1062
+ "id": "171-3.10.2",
1063
+ "family": "Physical Protection",
1064
+ "family_code": "3.10",
1065
+ "requirement_number": 2,
1066
+ "title": "Protect and monitor the physical facility and support infrastructure for organizational systems",
1067
+ "description": "Protect and monitor the physical facility and support infrastructure for organizational information systems.",
1068
+ "discussion": "Monitoring of the physical facility and support infrastructure includes the use of physical intrusion detection devices, security cameras, and security guards. Organizations should also address the environmental hazards to the facility and the systems therein such as flooding, fire, tornados, earthquakes, hurricanes, acts of terrorism, vandalism, electromagnetic pulse, electrical interference, and other forms of incoming electromagnetic radiation.",
1069
+ "nist_800_53_controls": ["PE-3", "PE-6"],
1070
+ "cmmc_practice_id": "PE.L2-3.10.2",
1071
+ "priority": "high",
1072
+ "automation_level": "partial",
1073
+ "evidence_required": "Physical security monitoring plan, security camera placement, intrusion detection system documentation, environmental controls"
1074
+ },
1075
+ {
1076
+ "id": "171-3.10.3",
1077
+ "family": "Physical Protection",
1078
+ "family_code": "3.10",
1079
+ "requirement_number": 3,
1080
+ "title": "Escort visitors and monitor visitor activity",
1081
+ "description": "Escort visitors and monitor visitor activity.",
1082
+ "discussion": "Individuals with permanent physical access authorization credentials are not considered visitors. Audit logs can be used to monitor visitor activity. Visitor escort and monitoring are in addition to the physical access controls specified in requirement 3.10.1.",
1083
+ "nist_800_53_controls": ["PE-3"],
1084
+ "cmmc_practice_id": "PE.L2-3.10.3",
1085
+ "priority": "medium",
1086
+ "automation_level": "manual",
1087
+ "evidence_required": "Visitor escort policy, visitor logs, visitor badge procedures, visitor monitoring records"
1088
+ },
1089
+ {
1090
+ "id": "171-3.10.4",
1091
+ "family": "Physical Protection",
1092
+ "family_code": "3.10",
1093
+ "requirement_number": 4,
1094
+ "title": "Maintain audit logs of physical access",
1095
+ "description": "Maintain audit logs of physical access.",
1096
+ "discussion": "Organizations have flexibility in the types of audit logs maintained. Audit logs of physical access can include access to facilities, controlled areas within facilities, and specific physical entry points. Organizations may determine that it is not necessary to audit physical access at all physical entry points (e.g., based on the security categorization of the system).",
1097
+ "nist_800_53_controls": ["PE-3"],
1098
+ "cmmc_practice_id": "PE.L2-3.10.4",
1099
+ "priority": "medium",
1100
+ "automation_level": "auto",
1101
+ "evidence_required": "Physical access audit logs, badge reader logs, access log retention documentation"
1102
+ },
1103
+ {
1104
+ "id": "171-3.10.5",
1105
+ "family": "Physical Protection",
1106
+ "family_code": "3.10",
1107
+ "requirement_number": 5,
1108
+ "title": "Control and manage physical access devices",
1109
+ "description": "Control and manage physical access devices.",
1110
+ "discussion": "Physical access devices include keys, locks, combinations, and card readers. Safeguards for controlling physical access devices commensurate with the level of protection needed for the systems they protect include changing combinations and keys when they are compromised, lost, or individuals are transferred or terminated.",
1111
+ "nist_800_53_controls": ["PE-3"],
1112
+ "cmmc_practice_id": "PE.L2-3.10.5",
1113
+ "priority": "medium",
1114
+ "automation_level": "partial",
1115
+ "evidence_required": "Physical access device inventory, key/badge management procedures, device issuance/return records"
1116
+ },
1117
+ {
1118
+ "id": "171-3.10.6",
1119
+ "family": "Physical Protection",
1120
+ "family_code": "3.10",
1121
+ "requirement_number": 6,
1122
+ "title": "Enforce safeguarding measures for CUI at alternate work sites",
1123
+ "description": "Enforce safeguarding measures for CUI at alternate work sites (e.g., telework sites).",
1124
+ "discussion": "Alternate work sites may include government facilities or the private residences of employees. Organizations may define different security measures for specific alternate work sites or types of sites. Safeguarding CUI at alternate work sites includes the protection of CUI through both physical and technical means.",
1125
+ "nist_800_53_controls": ["PE-17"],
1126
+ "cmmc_practice_id": "PE.L2-3.10.6",
1127
+ "priority": "medium",
1128
+ "automation_level": "manual",
1129
+ "evidence_required": "Telework security policy, alternate work site security assessment, remote work security agreement"
1130
+ },
1131
+ {
1132
+ "id": "171-3.11.1",
1133
+ "family": "Risk Assessment",
1134
+ "family_code": "3.11",
1135
+ "requirement_number": 1,
1136
+ "title": "Periodically assess the risk to organizational operations (including mission, functions, image, or reputation), organizational assets, and individuals, resulting from the operation of organizational systems and the associated processing, storage, or transmission of CUI",
1137
+ "description": "Periodically assess the risk to organizational operations (including mission, functions, image, or reputation), organizational assets, and individuals, resulting from the operation of organizational information systems and the associated processing, storage, or transmission of CUI.",
1138
+ "discussion": "Risk assessments consider threats, vulnerabilities, likelihood, and impact to organizational operations and assets, individuals, and other organizations. Risk assessments also consider risk from external parties (e.g., service providers, contractors operating systems on behalf of the organization, individuals accessing organizational systems, groups, and organizations).",
1139
+ "nist_800_53_controls": ["RA-3"],
1140
+ "cmmc_practice_id": "RA.L2-3.11.1",
1141
+ "priority": "high",
1142
+ "automation_level": "partial",
1143
+ "evidence_required": "Risk assessment report, risk assessment methodology, threat and vulnerability inventory, risk register"
1144
+ },
1145
+ {
1146
+ "id": "171-3.11.2",
1147
+ "family": "Risk Assessment",
1148
+ "family_code": "3.11",
1149
+ "requirement_number": 2,
1150
+ "title": "Scan for vulnerabilities in organizational systems and applications periodically and when new vulnerabilities affecting those systems and applications are identified",
1151
+ "description": "Scan for vulnerabilities in organizational systems and applications periodically and when new vulnerabilities affecting those systems and applications are identified.",
1152
+ "discussion": "Organizations determine the required vulnerability scanning for all system components, ensuring that potential sources of vulnerabilities such as networked printers, scanners, and copiers are not overlooked. Vulnerability analyses for custom software applications may require additional approaches such as static analysis, dynamic analysis, binary analysis, or a hybrid of the three approaches.",
1153
+ "nist_800_53_controls": ["RA-5", "RA-5(5)"],
1154
+ "cmmc_practice_id": "RA.L2-3.11.2",
1155
+ "priority": "high",
1156
+ "automation_level": "auto",
1157
+ "evidence_required": "Vulnerability scan reports, scanning schedule, scan tool configuration, vulnerability remediation tracking"
1158
+ },
1159
+ {
1160
+ "id": "171-3.11.3",
1161
+ "family": "Risk Assessment",
1162
+ "family_code": "3.11",
1163
+ "requirement_number": 3,
1164
+ "title": "Remediate vulnerabilities in accordance with risk assessments",
1165
+ "description": "Remediate vulnerabilities in accordance with assessments of risk.",
1166
+ "discussion": "Vulnerabilities discovered through vulnerability scans need to be remediated. The organization uses the results of risk assessments to prioritize the remediation of known vulnerabilities. The remediation priority is commensurate with the risk.",
1167
+ "nist_800_53_controls": ["RA-5"],
1168
+ "cmmc_practice_id": "RA.L2-3.11.3",
1169
+ "priority": "high",
1170
+ "automation_level": "partial",
1171
+ "evidence_required": "Vulnerability remediation plan, remediation tracking records, risk-based prioritization documentation"
1172
+ },
1173
+ {
1174
+ "id": "171-3.12.1",
1175
+ "family": "Security Assessment",
1176
+ "family_code": "3.12",
1177
+ "requirement_number": 1,
1178
+ "title": "Periodically assess the security controls in organizational systems to determine if the controls are effective in their application",
1179
+ "description": "Periodically assess the security controls in organizational information systems to determine if the controls are effective in their application.",
1180
+ "discussion": "Organizations assess security controls in organizational systems and the environments in which those systems operate as part of the initial and ongoing authorization of systems. Security assessments determine the extent to which the controls are implemented correctly, operating as intended, and producing the desired outcome with respect to meeting the security requirements for the system.",
1181
+ "nist_800_53_controls": ["CA-2"],
1182
+ "cmmc_practice_id": "CA.L2-3.12.1",
1183
+ "priority": "high",
1184
+ "automation_level": "partial",
1185
+ "evidence_required": "Security assessment plan, security assessment report, control effectiveness ratings"
1186
+ },
1187
+ {
1188
+ "id": "171-3.12.2",
1189
+ "family": "Security Assessment",
1190
+ "family_code": "3.12",
1191
+ "requirement_number": 2,
1192
+ "title": "Develop and implement plans of action designed to correct deficiencies and reduce or eliminate vulnerabilities in organizational systems",
1193
+ "description": "Develop and implement plans of action designed to correct deficiencies and reduce or eliminate vulnerabilities in organizational systems.",
1194
+ "discussion": "Plans of action are key documents in security authorization packages. Organizations develop plans of action that describe how unimplemented security requirements will be met and how any planned mitigations will be implemented. Organizations can document plans of action in a Plan of Action and Milestones (POA&M) document.",
1195
+ "nist_800_53_controls": ["CA-5"],
1196
+ "cmmc_practice_id": "CA.L2-3.12.2",
1197
+ "priority": "high",
1198
+ "automation_level": "partial",
1199
+ "evidence_required": "Plan of Action and Milestones (POA&M), remediation timelines, milestone tracking"
1200
+ },
1201
+ {
1202
+ "id": "171-3.12.3",
1203
+ "family": "Security Assessment",
1204
+ "family_code": "3.12",
1205
+ "requirement_number": 3,
1206
+ "title": "Monitor security controls on an ongoing basis to ensure the continued effectiveness of the controls",
1207
+ "description": "Monitor security controls on an ongoing basis to ensure the continued effectiveness of the controls.",
1208
+ "discussion": "Continuous monitoring programs facilitate ongoing awareness of threats, vulnerabilities, and information security to support organizational risk management decisions. The terms continuous and ongoing imply that organizations assess and analyze security controls and information security-related risks at a frequency sufficient to support organizational risk-based decisions.",
1209
+ "nist_800_53_controls": ["CA-7"],
1210
+ "cmmc_practice_id": "CA.L2-3.12.3",
1211
+ "priority": "high",
1212
+ "automation_level": "auto",
1213
+ "evidence_required": "Continuous monitoring plan, automated monitoring tool configuration, monitoring reports, control status dashboard"
1214
+ },
1215
+ {
1216
+ "id": "171-3.12.4",
1217
+ "family": "Security Assessment",
1218
+ "family_code": "3.12",
1219
+ "requirement_number": 4,
1220
+ "title": "Develop, document, and periodically update system security plans that describe system boundaries, system environments of operation, how security requirements are implemented, and the relationships with or connections to other systems",
1221
+ "description": "Develop, document, and periodically update system security plans that describe system boundaries, system environments of operation, how security requirements are implemented, and the relationships with or connections to other systems.",
1222
+ "discussion": "System security plans relate security requirements to a set of security controls. System security plans also describe how the security controls meet the security requirements, the rationale for any tailoring decisions, and supplementary information needed to describe the implementation and operation of the controls. System security plans should be reviewed and updated periodically.",
1223
+ "nist_800_53_controls": ["PL-2"],
1224
+ "cmmc_practice_id": "CA.L2-3.12.4",
1225
+ "priority": "high",
1226
+ "automation_level": "partial",
1227
+ "evidence_required": "System Security Plan (SSP), boundary diagrams, system interconnection documentation, SSP review records"
1228
+ },
1229
+ {
1230
+ "id": "171-3.13.1",
1231
+ "family": "System and Communications Protection",
1232
+ "family_code": "3.13",
1233
+ "requirement_number": 1,
1234
+ "title": "Monitor, control, and protect communications (i.e., information transmitted or received by organizational systems) at the external boundaries and key internal boundaries of organizational systems",
1235
+ "description": "Monitor, control, and protect organizational communications (i.e., information transmitted or received by organizational information systems) at the external boundaries and key internal boundaries of the organizational information systems.",
1236
+ "discussion": "Communications can be monitored, controlled, and protected at boundary components and by restricting or prohibiting interfaces in organizational systems. Boundary components include gateways, routers, firewalls, guards, network-based malicious code analysis and extrusion detection systems, virtual private network (VPN) gateways, and encrypted tunnels implemented within a system security architecture.",
1237
+ "nist_800_53_controls": ["SC-7", "SA-8"],
1238
+ "cmmc_practice_id": "SC.L2-3.13.1",
1239
+ "priority": "high",
1240
+ "automation_level": "auto",
1241
+ "evidence_required": "Boundary protection configuration, firewall rules, network architecture diagrams, IDS/IPS configuration"
1242
+ },
1243
+ {
1244
+ "id": "171-3.13.2",
1245
+ "family": "System and Communications Protection",
1246
+ "family_code": "3.13",
1247
+ "requirement_number": 2,
1248
+ "title": "Employ architectural designs, software development techniques, and systems engineering principles that promote effective information security within organizational systems",
1249
+ "description": "Employ architectural designs, software development techniques, and systems engineering principles that promote effective information security within organizational information systems.",
1250
+ "discussion": "Organizations apply systems security engineering principles to new development systems or systems undergoing major upgrades. For legacy systems, organizations apply systems security engineering principles to system upgrades and modifications to the extent feasible, given the current state of hardware, software, and firmware components within those systems.",
1251
+ "nist_800_53_controls": ["SA-8"],
1252
+ "cmmc_practice_id": "SC.L2-3.13.2",
1253
+ "priority": "high",
1254
+ "automation_level": "partial",
1255
+ "evidence_required": "Security architecture documentation, secure development lifecycle documentation, systems engineering plan"
1256
+ },
1257
+ {
1258
+ "id": "171-3.13.3",
1259
+ "family": "System and Communications Protection",
1260
+ "family_code": "3.13",
1261
+ "requirement_number": 3,
1262
+ "title": "Separate user functionality from system management functionality",
1263
+ "description": "Separate user functionality from information system management functionality.",
1264
+ "discussion": "System management functionality includes functions necessary to administer databases, network components, workstations, or servers, and typically requires privileged user access. The separation of user functionality from system management functionality is either physical or logical. Organizations can implement separation of system management functionality from user functionality by using different computers, different central processing units, different instances of operating systems, different network addresses, virtualization techniques, or combinations of these or other methods, as appropriate.",
1265
+ "nist_800_53_controls": ["SC-2"],
1266
+ "cmmc_practice_id": "SC.L2-3.13.3",
1267
+ "priority": "medium",
1268
+ "automation_level": "partial",
1269
+ "evidence_required": "System architecture showing user/admin separation, network segmentation documentation, virtualization configuration"
1270
+ },
1271
+ {
1272
+ "id": "171-3.13.4",
1273
+ "family": "System and Communications Protection",
1274
+ "family_code": "3.13",
1275
+ "requirement_number": 4,
1276
+ "title": "Prevent unauthorized and unintended information transfer via shared system resources",
1277
+ "description": "Prevent unauthorized and unintended information transfer via shared system resources.",
1278
+ "discussion": "The control of information in shared system resources (e.g., registers, cache memory, main memory, hard disk) is also commonly referred to as object reuse and residual information protection. This requirement prevents information, including encrypted representations of information, produced by the actions of prior users or roles (or the actions of processes acting on behalf of prior users or roles) from being available to any current users or roles (or current processes acting on behalf of current users or roles).",
1279
+ "nist_800_53_controls": ["SC-4"],
1280
+ "cmmc_practice_id": "SC.L2-3.13.4",
1281
+ "priority": "medium",
1282
+ "automation_level": "auto",
1283
+ "evidence_required": "Object reuse configuration, memory clearing mechanisms, shared resource isolation documentation"
1284
+ },
1285
+ {
1286
+ "id": "171-3.13.5",
1287
+ "family": "System and Communications Protection",
1288
+ "family_code": "3.13",
1289
+ "requirement_number": 5,
1290
+ "title": "Implement subnetworks for publicly accessible system components that are physically or logically separated from internal networks",
1291
+ "description": "Implement subnetworks for publicly accessible system components that are physically or logically separated from internal networks.",
1292
+ "discussion": "Subnetworks that are physically or logically separated from internal networks are referred to as demilitarized zones (DMZs). DMZs are typically implemented with boundary control devices and techniques that include routers, gateways, firewalls, virtualization, or cloud-based technologies.",
1293
+ "nist_800_53_controls": ["SC-7"],
1294
+ "cmmc_practice_id": "SC.L2-3.13.5",
1295
+ "priority": "high",
1296
+ "automation_level": "auto",
1297
+ "evidence_required": "DMZ architecture diagrams, network segmentation documentation, firewall rules separating public/private networks"
1298
+ },
1299
+ {
1300
+ "id": "171-3.13.6",
1301
+ "family": "System and Communications Protection",
1302
+ "family_code": "3.13",
1303
+ "requirement_number": 6,
1304
+ "title": "Deny network communications traffic by default and allow network communications traffic by exception (i.e., deny all, permit by exception)",
1305
+ "description": "Deny network communications traffic by default and allow network communications traffic by exception (i.e., deny all, permit by exception).",
1306
+ "discussion": "This requirement applies to inbound and outbound network communications traffic at the system boundary and at identified points within the system. A deny-all, permit-by-exception network communications traffic policy ensures that only those connections which are essential and approved are allowed.",
1307
+ "nist_800_53_controls": ["SC-7(5)"],
1308
+ "cmmc_practice_id": "SC.L2-3.13.6",
1309
+ "priority": "high",
1310
+ "automation_level": "auto",
1311
+ "evidence_required": "Default-deny firewall configuration, network access control lists, traffic flow policy documentation"
1312
+ },
1313
+ {
1314
+ "id": "171-3.13.7",
1315
+ "family": "System and Communications Protection",
1316
+ "family_code": "3.13",
1317
+ "requirement_number": 7,
1318
+ "title": "Prevent remote devices from simultaneously establishing non-remote connections with organizational systems and communicating via some other connection to resources in external networks (i.e., split tunneling)",
1319
+ "description": "Prevent remote devices from simultaneously establishing non-remote connections with organizational systems and communicating via some other connection to resources in external networks (i.e., split tunneling).",
1320
+ "discussion": "Split tunneling might be desirable by remote users to communicate with local system resources such as printers or file servers. However, split tunneling would, in effect, allow unauthorized external connections, making the system more vulnerable to attack and to exfiltration of organizational information.",
1321
+ "nist_800_53_controls": ["SC-7(7)"],
1322
+ "cmmc_practice_id": "SC.L2-3.13.7",
1323
+ "priority": "medium",
1324
+ "automation_level": "auto",
1325
+ "evidence_required": "Split tunneling prevention configuration, VPN client configuration, remote access policy"
1326
+ },
1327
+ {
1328
+ "id": "171-3.13.8",
1329
+ "family": "System and Communications Protection",
1330
+ "family_code": "3.13",
1331
+ "requirement_number": 8,
1332
+ "title": "Implement cryptographic mechanisms to prevent unauthorized disclosure of CUI during transmission unless otherwise protected by alternative physical safeguards",
1333
+ "description": "Implement cryptographic mechanisms to prevent unauthorized disclosure of CUI during transmission unless otherwise protected by alternative physical safeguards.",
1334
+ "discussion": "This requirement applies to both internal and external networks and all types of information system components from which CUI can be transmitted (e.g., servers, notebook computers, desktop computers, mobile devices, printers, copiers, scanners, and facsimile machines). Communication paths outside the physical protection of a controlled boundary are exposed to the possibility of interception and modification.",
1335
+ "nist_800_53_controls": ["SC-8", "SC-8(1)"],
1336
+ "cmmc_practice_id": "SC.L2-3.13.8",
1337
+ "priority": "high",
1338
+ "automation_level": "auto",
1339
+ "evidence_required": "Encryption in transit configuration, TLS/IPSec configuration, FIPS-validated cryptography documentation"
1340
+ },
1341
+ {
1342
+ "id": "171-3.13.9",
1343
+ "family": "System and Communications Protection",
1344
+ "family_code": "3.13",
1345
+ "requirement_number": 9,
1346
+ "title": "Terminate network connections associated with communications sessions at the end of the sessions or after a defined period of inactivity",
1347
+ "description": "Terminate network connections associated with communications sessions at the end of the sessions or after a defined period of inactivity.",
1348
+ "discussion": "This requirement applies to both internal and external networks. Terminating network connections associated with communications sessions include de-allocating associated TCP/IP address or port pairs at the operating-system level, or de-allocating networking assignments at the application level if multiple application sessions are using a single, operating system-level network connection.",
1349
+ "nist_800_53_controls": ["SC-10"],
1350
+ "cmmc_practice_id": "SC.L2-3.13.9",
1351
+ "priority": "medium",
1352
+ "automation_level": "auto",
1353
+ "evidence_required": "Session timeout configuration, network connection termination settings, idle timeout policy"
1354
+ },
1355
+ {
1356
+ "id": "171-3.13.10",
1357
+ "family": "System and Communications Protection",
1358
+ "family_code": "3.13",
1359
+ "requirement_number": 10,
1360
+ "title": "Establish and manage cryptographic keys for cryptography employed in organizational systems",
1361
+ "description": "Establish and manage cryptographic keys for cryptography employed in organizational systems.",
1362
+ "discussion": "Cryptographic key management and establishment can be performed using manual procedures or automated mechanisms with supporting manual procedures. Organizations define key management requirements in accordance with applicable laws, directives, policies, regulations, standards, and guidance specifying appropriate options, levels, and parameters.",
1363
+ "nist_800_53_controls": ["SC-12"],
1364
+ "cmmc_practice_id": "SC.L2-3.13.10",
1365
+ "priority": "high",
1366
+ "automation_level": "partial",
1367
+ "evidence_required": "Key management policy, key lifecycle documentation, key storage mechanisms, key rotation schedule"
1368
+ },
1369
+ {
1370
+ "id": "171-3.13.11",
1371
+ "family": "System and Communications Protection",
1372
+ "family_code": "3.13",
1373
+ "requirement_number": 11,
1374
+ "title": "Employ FIPS-validated cryptography when used to protect the confidentiality of CUI",
1375
+ "description": "Employ FIPS-validated cryptography when used to protect the confidentiality of CUI.",
1376
+ "discussion": "Cryptography can be employed to support many security solutions including the protection of CUI, the provision of digital signatures, and the enforcement of information separation when authorized individuals have the necessary clearances for such information but lack the necessary formal access approvals. Cryptography can also be used to support random number generation and hash generation. FIPS-validated cryptography means the cryptographic module has to have been tested and validated to meet FIPS 140-2 (as amended) or FIPS 140-3 requirements.",
1377
+ "nist_800_53_controls": ["SC-13"],
1378
+ "cmmc_practice_id": "SC.L2-3.13.11",
1379
+ "priority": "high",
1380
+ "automation_level": "auto",
1381
+ "evidence_required": "FIPS 140-2/140-3 validated module certificates, cryptographic module inventory, FIPS mode configuration"
1382
+ },
1383
+ {
1384
+ "id": "171-3.13.12",
1385
+ "family": "System and Communications Protection",
1386
+ "family_code": "3.13",
1387
+ "requirement_number": 12,
1388
+ "title": "Prohibit remote activation of collaborative computing devices and provide indication of devices in use to users present at the device",
1389
+ "description": "Prohibit remote activation of collaborative computing devices and provide indication of devices in use to users present at the device.",
1390
+ "discussion": "Collaborative computing devices include networked white boards, cameras, and microphones. Indication of use includes signals to users when collaborative computing devices are activated. Dedicated video conferencing systems, which rely on one of the participants calling or connecting to the other party to activate the video conference, are excluded.",
1391
+ "nist_800_53_controls": ["SC-15"],
1392
+ "cmmc_practice_id": "SC.L2-3.13.12",
1393
+ "priority": "medium",
1394
+ "automation_level": "partial",
1395
+ "evidence_required": "Collaborative device policy, remote activation prevention configuration, device indicator documentation"
1396
+ },
1397
+ {
1398
+ "id": "171-3.13.13",
1399
+ "family": "System and Communications Protection",
1400
+ "family_code": "3.13",
1401
+ "requirement_number": 13,
1402
+ "title": "Control and monitor the use of mobile code",
1403
+ "description": "Control and monitor the use of mobile code.",
1404
+ "discussion": "Decisions regarding the employment of mobile code within organizational systems are based on the potential for the code to cause damage to the systems if used maliciously. Mobile code technologies include Java, JavaScript, ActiveX, Postscript, PDF, Flash animations, and VBScript. Usage restrictions and implementation guidance apply to the selection and use of mobile code installed on servers and mobile code downloaded and executed on individual workstations and devices.",
1405
+ "nist_800_53_controls": ["SC-18"],
1406
+ "cmmc_practice_id": "SC.L2-3.13.13",
1407
+ "priority": "medium",
1408
+ "automation_level": "auto",
1409
+ "evidence_required": "Mobile code policy, browser security configuration, mobile code restrictions, content filtering configuration"
1410
+ },
1411
+ {
1412
+ "id": "171-3.13.14",
1413
+ "family": "System and Communications Protection",
1414
+ "family_code": "3.13",
1415
+ "requirement_number": 14,
1416
+ "title": "Control and monitor the use of Voice over Internet Protocol (VoIP) technologies",
1417
+ "description": "Control and monitor the use of Voice over Internet Protocol (VoIP) technologies.",
1418
+ "discussion": "VoIP has different requirements, features, functionality, availability, and service limitations when compared with the Plain Old Telephone Service (POTS). In contrast, POTS is more reliable in terms of quality of service and availability, especially during power outages. VoIP security considerations include restricting VoIP traffic to a dedicated VLAN, implementing traffic encryption, and validating that firewalls support VoIP traffic.",
1419
+ "nist_800_53_controls": ["SC-19"],
1420
+ "cmmc_practice_id": "SC.L2-3.13.14",
1421
+ "priority": "low",
1422
+ "automation_level": "partial",
1423
+ "evidence_required": "VoIP security policy, VoIP network configuration, VLAN segmentation for VoIP, VoIP encryption settings"
1424
+ },
1425
+ {
1426
+ "id": "171-3.13.15",
1427
+ "family": "System and Communications Protection",
1428
+ "family_code": "3.13",
1429
+ "requirement_number": 15,
1430
+ "title": "Protect the authenticity of communications sessions",
1431
+ "description": "Protect the authenticity of communications sessions.",
1432
+ "discussion": "Authenticity protection includes protecting against man-in-the-middle attacks, session hijacking, and the insertion of false information into communications sessions. This requirement addresses communications protection at the session level rather than at the packet level (e.g., sessions in service-oriented architectures providing web-based services).",
1433
+ "nist_800_53_controls": ["SC-23"],
1434
+ "cmmc_practice_id": "SC.L2-3.13.15",
1435
+ "priority": "high",
1436
+ "automation_level": "auto",
1437
+ "evidence_required": "Session authentication mechanism documentation, TLS mutual authentication configuration, session integrity controls"
1438
+ },
1439
+ {
1440
+ "id": "171-3.13.16",
1441
+ "family": "System and Communications Protection",
1442
+ "family_code": "3.13",
1443
+ "requirement_number": 16,
1444
+ "title": "Protect the confidentiality of CUI at rest",
1445
+ "description": "Protect the confidentiality of CUI at rest.",
1446
+ "discussion": "Information at rest refers to the state of information when it is not in process or in transit and is located on storage devices as specific components of systems. The focus of protecting CUI at rest is not on the type of storage device or the frequency of access but rather the state of the information. Organizations can use different mechanisms to achieve confidentiality protections, including the use of cryptographic mechanisms and file share scanning.",
1447
+ "nist_800_53_controls": ["SC-28"],
1448
+ "cmmc_practice_id": "SC.L2-3.13.16",
1449
+ "priority": "high",
1450
+ "automation_level": "auto",
1451
+ "evidence_required": "Data-at-rest encryption configuration, disk encryption documentation, database encryption settings, FIPS-validated module evidence"
1452
+ },
1453
+ {
1454
+ "id": "171-3.14.1",
1455
+ "family": "System and Information Integrity",
1456
+ "family_code": "3.14",
1457
+ "requirement_number": 1,
1458
+ "title": "Identify, report, and correct system flaws in a timely manner",
1459
+ "description": "Identify, report, and correct information and information system flaws in a timely manner.",
1460
+ "discussion": "Organizations identify systems that are affected by announced software and firmware flaws including potential vulnerabilities resulting from those flaws and report this information to designated personnel with information security responsibilities. Security-relevant updates include patches, service packs, hot fixes, and anti-virus signatures. Organizations address flaws discovered during security assessments, continuous monitoring, incident response activities, and system error handling.",
1461
+ "nist_800_53_controls": ["SI-2"],
1462
+ "cmmc_practice_id": "SI.L2-3.14.1",
1463
+ "priority": "high",
1464
+ "automation_level": "auto",
1465
+ "evidence_required": "Patch management policy, patch deployment records, flaw remediation tracking, vulnerability scan results"
1466
+ },
1467
+ {
1468
+ "id": "171-3.14.2",
1469
+ "family": "System and Information Integrity",
1470
+ "family_code": "3.14",
1471
+ "requirement_number": 2,
1472
+ "title": "Provide protection from malicious code at designated locations within organizational systems",
1473
+ "description": "Provide protection from malicious code at appropriate locations within organizational information systems.",
1474
+ "discussion": "Designated locations include system entry and exit points which may include firewalls, remote-access servers, workstations, electronic mail servers, web servers, proxy servers, notebook computers, and mobile devices. Malicious code includes viruses, worms, Trojan horses, and spyware. Malicious code can be encoded in various formats, be contained within compressed or hidden files, or hidden in files using steganography.",
1475
+ "nist_800_53_controls": ["SI-3"],
1476
+ "cmmc_practice_id": "SI.L2-3.14.2",
1477
+ "priority": "high",
1478
+ "automation_level": "auto",
1479
+ "evidence_required": "Anti-malware solution deployment, malware protection configuration, malware signature update schedule, scan results"
1480
+ },
1481
+ {
1482
+ "id": "171-3.14.3",
1483
+ "family": "System and Information Integrity",
1484
+ "family_code": "3.14",
1485
+ "requirement_number": 3,
1486
+ "title": "Monitor system security alerts and advisories and take action in response",
1487
+ "description": "Monitor system security alerts and advisories and take action in response.",
1488
+ "discussion": "There are many publicly available sources of system security alerts and advisories. Examples include the United States Computer Emergency Readiness Team (US-CERT), the National Vulnerability Database (NVD), and vendor-specific security advisories. Organizations should be particularly vigilant with respect to security advisories and alerts that affect their specific system configurations.",
1489
+ "nist_800_53_controls": ["SI-5"],
1490
+ "cmmc_practice_id": "SI.L2-3.14.3",
1491
+ "priority": "medium",
1492
+ "automation_level": "partial",
1493
+ "evidence_required": "Security advisory monitoring process, alert subscription evidence, response action records"
1494
+ },
1495
+ {
1496
+ "id": "171-3.14.4",
1497
+ "family": "System and Information Integrity",
1498
+ "family_code": "3.14",
1499
+ "requirement_number": 4,
1500
+ "title": "Update malicious code protection mechanisms when new releases are available",
1501
+ "description": "Update malicious code protection mechanisms when new releases are available.",
1502
+ "discussion": "Malicious code protection mechanisms include anti-virus signature definitions and reputation-based technologies. A variety of technologies and methods exist to limit or eliminate the effects of malicious code. Pervasive configuration management and comprehensive software integrity controls may be effective in preventing execution of unauthorized code.",
1503
+ "nist_800_53_controls": ["SI-3"],
1504
+ "cmmc_practice_id": "SI.L2-3.14.4",
1505
+ "priority": "high",
1506
+ "automation_level": "auto",
1507
+ "evidence_required": "Anti-malware update configuration, signature update logs, automatic update policy settings"
1508
+ },
1509
+ {
1510
+ "id": "171-3.14.5",
1511
+ "family": "System and Information Integrity",
1512
+ "family_code": "3.14",
1513
+ "requirement_number": 5,
1514
+ "title": "Perform periodic scans of organizational systems and real-time scans of files from external sources as files are downloaded, opened, or executed",
1515
+ "description": "Perform periodic scans of the information system and real-time scans of files from external sources as files are downloaded, opened, or executed.",
1516
+ "discussion": "Periodic scans of organizational systems and real-time scans of files from external sources can detect malicious code. Malicious code can be encoded in various formats, be contained within compressed or hidden files, or hidden in files using techniques such as steganography. Malicious code can also be transmitted as part of an incoming electronic mail message or during web browsing.",
1517
+ "nist_800_53_controls": ["SI-3"],
1518
+ "cmmc_practice_id": "SI.L2-3.14.5",
1519
+ "priority": "high",
1520
+ "automation_level": "auto",
1521
+ "evidence_required": "Periodic scan schedule, real-time protection configuration, scan result logs, external source scanning policy"
1522
+ },
1523
+ {
1524
+ "id": "171-3.14.6",
1525
+ "family": "System and Information Integrity",
1526
+ "family_code": "3.14",
1527
+ "requirement_number": 6,
1528
+ "title": "Monitor organizational systems, including inbound and outbound communications traffic, to detect attacks and indicators of potential attacks",
1529
+ "description": "Monitor organizational information systems, including inbound and outbound communications traffic, to detect attacks and indicators of potential attacks.",
1530
+ "discussion": "System monitoring includes external and internal monitoring. External monitoring includes the observation of events occurring at the system boundary. Internal monitoring includes the observation of events occurring within the system. Organizations can monitor systems by observing audit activities in real time or by observing other system aspects such as access patterns, characteristics of access, and other actions.",
1531
+ "nist_800_53_controls": ["SI-4"],
1532
+ "cmmc_practice_id": "SI.L2-3.14.6",
1533
+ "priority": "high",
1534
+ "automation_level": "auto",
1535
+ "evidence_required": "IDS/IPS configuration, network monitoring tools, SIEM integration, traffic analysis reports, alerting configuration"
1536
+ },
1537
+ {
1538
+ "id": "171-3.14.7",
1539
+ "family": "System and Information Integrity",
1540
+ "family_code": "3.14",
1541
+ "requirement_number": 7,
1542
+ "title": "Identify unauthorized use of organizational systems",
1543
+ "description": "Identify unauthorized use of organizational information systems.",
1544
+ "discussion": "System monitoring includes external and internal monitoring. System monitoring can detect unauthorized use of organizational systems. System monitoring is an integral part of continuous monitoring and incident response programs. Monitoring is achieved through a variety of tools and techniques (e.g., intrusion detection systems, intrusion prevention systems, malicious code protection software, scanning tools, audit record monitoring software, and network monitoring software).",
1545
+ "nist_800_53_controls": ["SI-4"],
1546
+ "cmmc_practice_id": "SI.L2-3.14.7",
1547
+ "priority": "high",
1548
+ "automation_level": "auto",
1549
+ "evidence_required": "Unauthorized use detection mechanisms, user behavior analytics, anomaly detection configuration, unauthorized access alerts"
1550
+ }
1551
+ ]
1552
+ }