cipher-security 2.0.0

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 (76) hide show
  1. package/bin/cipher.js +566 -0
  2. package/lib/api/billing.js +321 -0
  3. package/lib/api/compliance.js +693 -0
  4. package/lib/api/controls.js +1401 -0
  5. package/lib/api/index.js +49 -0
  6. package/lib/api/marketplace.js +467 -0
  7. package/lib/api/openai-proxy.js +383 -0
  8. package/lib/api/server.js +685 -0
  9. package/lib/autonomous/feedback-loop.js +554 -0
  10. package/lib/autonomous/framework.js +512 -0
  11. package/lib/autonomous/index.js +97 -0
  12. package/lib/autonomous/leaderboard.js +594 -0
  13. package/lib/autonomous/modes/architect.js +412 -0
  14. package/lib/autonomous/modes/blue.js +386 -0
  15. package/lib/autonomous/modes/incident.js +684 -0
  16. package/lib/autonomous/modes/privacy.js +369 -0
  17. package/lib/autonomous/modes/purple.js +294 -0
  18. package/lib/autonomous/modes/recon.js +250 -0
  19. package/lib/autonomous/parallel.js +587 -0
  20. package/lib/autonomous/researcher.js +583 -0
  21. package/lib/autonomous/runner.js +955 -0
  22. package/lib/autonomous/scheduler.js +615 -0
  23. package/lib/autonomous/task-parser.js +127 -0
  24. package/lib/autonomous/validators/forensic.js +266 -0
  25. package/lib/autonomous/validators/osint.js +216 -0
  26. package/lib/autonomous/validators/privacy.js +296 -0
  27. package/lib/autonomous/validators/purple.js +298 -0
  28. package/lib/autonomous/validators/sigma.js +248 -0
  29. package/lib/autonomous/validators/threat-model.js +363 -0
  30. package/lib/benchmark/agent.js +119 -0
  31. package/lib/benchmark/baselines.js +43 -0
  32. package/lib/benchmark/builder.js +143 -0
  33. package/lib/benchmark/config.js +35 -0
  34. package/lib/benchmark/coordinator.js +91 -0
  35. package/lib/benchmark/index.js +20 -0
  36. package/lib/benchmark/llm.js +58 -0
  37. package/lib/benchmark/models.js +137 -0
  38. package/lib/benchmark/reporter.js +103 -0
  39. package/lib/benchmark/runner.js +103 -0
  40. package/lib/benchmark/sandbox.js +96 -0
  41. package/lib/benchmark/scorer.js +32 -0
  42. package/lib/benchmark/solver.js +166 -0
  43. package/lib/benchmark/tools.js +62 -0
  44. package/lib/bot/bot.js +238 -0
  45. package/lib/brand.js +105 -0
  46. package/lib/commands.js +100 -0
  47. package/lib/complexity.js +377 -0
  48. package/lib/config.js +213 -0
  49. package/lib/gateway/client.js +309 -0
  50. package/lib/gateway/commands.js +991 -0
  51. package/lib/gateway/config-validate.js +109 -0
  52. package/lib/gateway/gateway.js +367 -0
  53. package/lib/gateway/index.js +62 -0
  54. package/lib/gateway/mode.js +309 -0
  55. package/lib/gateway/plugins.js +222 -0
  56. package/lib/gateway/prompt.js +214 -0
  57. package/lib/mcp/server.js +262 -0
  58. package/lib/memory/compressor.js +425 -0
  59. package/lib/memory/engine.js +763 -0
  60. package/lib/memory/evolution.js +668 -0
  61. package/lib/memory/index.js +58 -0
  62. package/lib/memory/orchestrator.js +506 -0
  63. package/lib/memory/retriever.js +515 -0
  64. package/lib/memory/synthesizer.js +333 -0
  65. package/lib/pipeline/async-scanner.js +510 -0
  66. package/lib/pipeline/binary-analysis.js +1043 -0
  67. package/lib/pipeline/dom-xss-scanner.js +435 -0
  68. package/lib/pipeline/github-actions.js +792 -0
  69. package/lib/pipeline/index.js +124 -0
  70. package/lib/pipeline/osint.js +498 -0
  71. package/lib/pipeline/sarif.js +373 -0
  72. package/lib/pipeline/scanner.js +880 -0
  73. package/lib/pipeline/template-manager.js +525 -0
  74. package/lib/pipeline/xss-scanner.js +353 -0
  75. package/lib/setup-wizard.js +288 -0
  76. package/package.json +31 -0
@@ -0,0 +1,1401 @@
1
+ // Copyright (c) 2026 defconxt. All rights reserved.
2
+ // Licensed under AGPL-3.0 — see LICENSE file for details.
3
+
4
+ /**
5
+ * CIPHER Compliance Engine — Control catalogue data.
6
+ *
7
+ * Static arrays of {id, name, category} objects for each of the 39
8
+ * supported compliance frameworks. Exported alongside the framework→controls
9
+ * mapping, category keyword index, and severity weights.
10
+ *
11
+ * This is a data-only file — no logic.
12
+ */
13
+
14
+ // ---------------------------------------------------------------------------
15
+ // Original 7 frameworks
16
+ // ---------------------------------------------------------------------------
17
+
18
+ export const SOC2_CONTROLS = [
19
+ { id: 'CC1.1', name: 'COSO Principle 1 — Integrity and Ethics', category: 'governance' },
20
+ { id: 'CC1.2', name: 'Board Independence and Oversight', category: 'governance' },
21
+ { id: 'CC1.3', name: 'Management Accountability Structure', category: 'governance' },
22
+ { id: 'CC2.1', name: 'Information Quality Objectives', category: 'communication' },
23
+ { id: 'CC3.1', name: 'Risk Identification and Assessment', category: 'risk' },
24
+ { id: 'CC3.2', name: 'Fraud Risk Assessment', category: 'risk' },
25
+ { id: 'CC3.3', name: 'Impact of Changes on Internal Control', category: 'risk' },
26
+ { id: 'CC4.1', name: 'Monitoring of Internal Controls', category: 'monitoring' },
27
+ { id: 'CC5.1', name: 'Control Activities over Technology', category: 'access' },
28
+ { id: 'CC5.2', name: 'Logical Access Security Policies', category: 'access' },
29
+ { id: 'CC6.1', name: 'Logical and Physical Access Controls', category: 'access' },
30
+ { id: 'CC6.2', name: 'User Authentication Mechanisms', category: 'auth' },
31
+ { id: 'CC6.3', name: 'Role-Based Access Authorisation', category: 'auth' },
32
+ { id: 'CC6.6', name: 'Boundary Protection and Threat Mitigation', category: 'network' },
33
+ { id: 'CC6.7', name: 'Data-in-Transit Encryption', category: 'crypto' },
34
+ { id: 'CC6.8', name: 'Malicious Software Prevention', category: 'malware' },
35
+ { id: 'CC7.1', name: 'Vulnerability Management', category: 'vuln' },
36
+ { id: 'CC7.2', name: 'Security Event Monitoring', category: 'monitoring' },
37
+ { id: 'CC7.3', name: 'Incident Response Procedures', category: 'incident' },
38
+ { id: 'CC8.1', name: 'Change Management Controls', category: 'change' },
39
+ { id: 'CC9.1', name: 'Risk Mitigation Activities', category: 'risk' },
40
+ ];
41
+
42
+ export const PCI_DSS_CONTROLS = [
43
+ { id: 'PCI-1.1', name: 'Install and Maintain Network Security Controls', category: 'network' },
44
+ { id: 'PCI-2.1', name: 'Apply Secure Configuration Standards', category: 'config' },
45
+ { id: 'PCI-2.2', name: 'Manage Default Credentials', category: 'auth' },
46
+ { id: 'PCI-3.1', name: 'Protect Stored Account Data', category: 'data' },
47
+ { id: 'PCI-3.4', name: 'Render PAN Unreadable (Encryption/Hashing)', category: 'crypto' },
48
+ { id: 'PCI-4.1', name: 'Protect Data in Transit with Strong Cryptography', category: 'crypto' },
49
+ { id: 'PCI-5.1', name: 'Deploy Anti-Malware on All Systems', category: 'malware' },
50
+ { id: 'PCI-6.1', name: 'Identify and Address Vulnerabilities', category: 'vuln' },
51
+ { id: 'PCI-6.2', name: 'Develop Secure Software Practices', category: 'code' },
52
+ { id: 'PCI-7.1', name: 'Restrict Access by Business Need to Know', category: 'access' },
53
+ { id: 'PCI-8.1', name: 'Identify and Authenticate System Users', category: 'auth' },
54
+ { id: 'PCI-8.3', name: 'Secure Authentication with MFA', category: 'auth' },
55
+ { id: 'PCI-9.1', name: 'Restrict Physical Access to Cardholder Data', category: 'physical' },
56
+ { id: 'PCI-10.1', name: 'Log and Monitor All Access to Systems', category: 'logging' },
57
+ { id: 'PCI-11.1', name: 'Test Security of Systems and Networks Regularly', category: 'testing' },
58
+ { id: 'PCI-12.1', name: 'Maintain an Information Security Policy', category: 'governance' },
59
+ ];
60
+
61
+ export const HIPAA_CONTROLS = [
62
+ { id: '§164.308(a)(1)', name: 'Security Management Process', category: 'governance' },
63
+ { id: '§164.308(a)(2)', name: 'Assigned Security Responsibility', category: 'governance' },
64
+ { id: '§164.308(a)(3)', name: 'Workforce Security', category: 'access' },
65
+ { id: '§164.308(a)(4)', name: 'Information Access Management', category: 'access' },
66
+ { id: '§164.308(a)(5)', name: 'Security Awareness and Training', category: 'training' },
67
+ { id: '§164.308(a)(6)', name: 'Security Incident Procedures', category: 'incident' },
68
+ { id: '§164.308(a)(7)', name: 'Contingency Plan', category: 'recovery' },
69
+ { id: '§164.308(a)(8)', name: 'Evaluation of Security Controls', category: 'monitoring' },
70
+ { id: '§164.310(a)(1)', name: 'Facility Access Controls', category: 'physical' },
71
+ { id: '§164.310(b)', name: 'Workstation Use Policies', category: 'physical' },
72
+ { id: '§164.310(d)(1)', name: 'Device and Media Controls', category: 'data' },
73
+ { id: '§164.312(a)(1)', name: 'Access Control — Unique User ID', category: 'auth' },
74
+ { id: '§164.312(b)', name: 'Audit Controls and Logging', category: 'logging' },
75
+ { id: '§164.312(c)(1)', name: 'Integrity Controls', category: 'data' },
76
+ { id: '§164.312(d)', name: 'Person or Entity Authentication', category: 'auth' },
77
+ { id: '§164.312(e)(1)', name: 'Transmission Security (Encryption)', category: 'crypto' },
78
+ ];
79
+
80
+ export const NIST_800_53_CONTROLS = [
81
+ // AC — Access Control
82
+ { id: 'AC-1', name: 'Policy and Procedures', category: 'access' },
83
+ { id: 'AC-2', name: 'Account Management', category: 'access' },
84
+ { id: 'AC-3', name: 'Access Enforcement', category: 'access' },
85
+ { id: 'AC-4', name: 'Information Flow Enforcement', category: 'network' },
86
+ { id: 'AC-5', name: 'Separation of Duties', category: 'access' },
87
+ { id: 'AC-6', name: 'Least Privilege', category: 'access' },
88
+ { id: 'AC-7', name: 'Unsuccessful Logon Attempts', category: 'auth' },
89
+ { id: 'AC-8', name: 'System Use Notification', category: 'access' },
90
+ { id: 'AC-10', name: 'Concurrent Session Control', category: 'access' },
91
+ { id: 'AC-11', name: 'Device Lock', category: 'access' },
92
+ { id: 'AC-12', name: 'Session Termination', category: 'access' },
93
+ { id: 'AC-14', name: 'Permitted Actions without Identification or Authentication', category: 'access' },
94
+ { id: 'AC-16', name: 'Security and Privacy Attributes', category: 'data' },
95
+ { id: 'AC-17', name: 'Remote Access', category: 'network' },
96
+ { id: 'AC-18', name: 'Wireless Access', category: 'network' },
97
+ { id: 'AC-19', name: 'Access Control for Mobile Devices', category: 'access' },
98
+ { id: 'AC-20', name: 'Use of External Systems', category: 'access' },
99
+ { id: 'AC-21', name: 'Information Sharing', category: 'data' },
100
+ { id: 'AC-22', name: 'Publicly Accessible Content', category: 'data' },
101
+ { id: 'AC-23', name: 'Data Mining Protection', category: 'data' },
102
+ { id: 'AC-24', name: 'Access Control Decisions', category: 'access' },
103
+ { id: 'AC-25', name: 'Reference Monitor', category: 'access' },
104
+ // AT — Awareness and Training
105
+ { id: 'AT-1', name: 'Policy and Procedures (Training)', category: 'training' },
106
+ { id: 'AT-2', name: 'Literacy Training and Awareness', category: 'training' },
107
+ { id: 'AT-3', name: 'Role-Based Training', category: 'training' },
108
+ { id: 'AT-4', name: 'Training Records', category: 'training' },
109
+ { id: 'AT-5', name: 'Contacts with Security Groups and Associations', category: 'training' },
110
+ { id: 'AT-6', name: 'Training Feedback', category: 'training' },
111
+ // AU — Audit and Accountability
112
+ { id: 'AU-1', name: 'Policy and Procedures (Audit)', category: 'logging' },
113
+ { id: 'AU-2', name: 'Event Logging', category: 'logging' },
114
+ { id: 'AU-3', name: 'Content of Audit Records', category: 'logging' },
115
+ { id: 'AU-4', name: 'Audit Log Storage Capacity', category: 'logging' },
116
+ { id: 'AU-5', name: 'Response to Audit Logging Process Failures', category: 'logging' },
117
+ { id: 'AU-6', name: 'Audit Record Review, Analysis, and Reporting', category: 'monitoring' },
118
+ { id: 'AU-7', name: 'Audit Record Reduction and Report Generation', category: 'monitoring' },
119
+ { id: 'AU-8', name: 'Time Stamps', category: 'logging' },
120
+ { id: 'AU-9', name: 'Protection of Audit Information', category: 'logging' },
121
+ { id: 'AU-10', name: 'Non-Repudiation', category: 'logging' },
122
+ { id: 'AU-11', name: 'Audit Record Retention', category: 'logging' },
123
+ { id: 'AU-12', name: 'Audit Record Generation', category: 'logging' },
124
+ { id: 'AU-13', name: 'Monitoring for Information Disclosure', category: 'monitoring' },
125
+ { id: 'AU-14', name: 'Session Audit', category: 'logging' },
126
+ { id: 'AU-15', name: 'Alternate Audit Logging Capability', category: 'logging' },
127
+ { id: 'AU-16', name: 'Cross-Organizational Audit Logging', category: 'logging' },
128
+ // CA — Assessment, Authorization, and Monitoring
129
+ { id: 'CA-1', name: 'Policy and Procedures (Assessment)', category: 'governance' },
130
+ { id: 'CA-2', name: 'Control Assessments', category: 'testing' },
131
+ { id: 'CA-3', name: 'Information Exchange', category: 'network' },
132
+ { id: 'CA-5', name: 'Plan of Action and Milestones', category: 'governance' },
133
+ { id: 'CA-6', name: 'Authorization', category: 'governance' },
134
+ { id: 'CA-7', name: 'Continuous Monitoring', category: 'monitoring' },
135
+ { id: 'CA-8', name: 'Penetration Testing', category: 'testing' },
136
+ { id: 'CA-9', name: 'Internal System Connections', category: 'network' },
137
+ // CM — Configuration Management
138
+ { id: 'CM-1', name: 'Policy and Procedures (Configuration)', category: 'config' },
139
+ { id: 'CM-2', name: 'Baseline Configuration', category: 'config' },
140
+ { id: 'CM-3', name: 'Configuration Change Control', category: 'config' },
141
+ { id: 'CM-4', name: 'Impact Analyses', category: 'config' },
142
+ { id: 'CM-5', name: 'Access Restrictions for Change', category: 'config' },
143
+ { id: 'CM-6', name: 'Configuration Settings', category: 'config' },
144
+ { id: 'CM-7', name: 'Least Functionality', category: 'config' },
145
+ { id: 'CM-8', name: 'System Component Inventory', category: 'inventory' },
146
+ { id: 'CM-9', name: 'Configuration Management Plan', category: 'config' },
147
+ { id: 'CM-10', name: 'Software Usage Restrictions', category: 'config' },
148
+ { id: 'CM-11', name: 'User-Installed Software', category: 'config' },
149
+ { id: 'CM-12', name: 'Information Location', category: 'data' },
150
+ { id: 'CM-13', name: 'Data Action Mapping', category: 'data' },
151
+ { id: 'CM-14', name: 'Signed Components', category: 'code' },
152
+ // CP — Contingency Planning
153
+ { id: 'CP-1', name: 'Policy and Procedures (Contingency)', category: 'recovery' },
154
+ { id: 'CP-2', name: 'Contingency Plan', category: 'recovery' },
155
+ { id: 'CP-3', name: 'Contingency Training', category: 'training' },
156
+ { id: 'CP-4', name: 'Contingency Plan Testing', category: 'testing' },
157
+ { id: 'CP-6', name: 'Alternate Storage Site', category: 'recovery' },
158
+ { id: 'CP-7', name: 'Alternate Processing Site', category: 'recovery' },
159
+ { id: 'CP-8', name: 'Telecommunications Services', category: 'recovery' },
160
+ { id: 'CP-9', name: 'System Backup', category: 'recovery' },
161
+ { id: 'CP-10', name: 'System Recovery and Reconstitution', category: 'recovery' },
162
+ { id: 'CP-11', name: 'Alternate Communications Protocols', category: 'recovery' },
163
+ { id: 'CP-12', name: 'Safe Mode', category: 'recovery' },
164
+ { id: 'CP-13', name: 'Alternative Security Mechanisms', category: 'recovery' },
165
+ // IA — Identification and Authentication
166
+ { id: 'IA-1', name: 'Policy and Procedures (Identification)', category: 'auth' },
167
+ { id: 'IA-2', name: 'Identification and Authentication (Organizational Users)', category: 'auth' },
168
+ { id: 'IA-3', name: 'Device Identification and Authentication', category: 'auth' },
169
+ { id: 'IA-4', name: 'Identifier Management', category: 'auth' },
170
+ { id: 'IA-5', name: 'Authenticator Management', category: 'auth' },
171
+ { id: 'IA-6', name: 'Authentication Feedback', category: 'auth' },
172
+ { id: 'IA-7', name: 'Cryptographic Module Authentication', category: 'crypto' },
173
+ { id: 'IA-8', name: 'Identification and Authentication (Non-Organizational Users)', category: 'auth' },
174
+ { id: 'IA-9', name: 'Service Identification and Authentication', category: 'auth' },
175
+ { id: 'IA-10', name: 'Adaptive Authentication', category: 'auth' },
176
+ { id: 'IA-11', name: 'Re-Authentication', category: 'auth' },
177
+ { id: 'IA-12', name: 'Identity Proofing', category: 'auth' },
178
+ // IR — Incident Response
179
+ { id: 'IR-1', name: 'Policy and Procedures (Incident Response)', category: 'incident' },
180
+ { id: 'IR-2', name: 'Incident Response Training', category: 'incident' },
181
+ { id: 'IR-3', name: 'Incident Response Testing', category: 'testing' },
182
+ { id: 'IR-4', name: 'Incident Handling', category: 'incident' },
183
+ { id: 'IR-5', name: 'Incident Monitoring', category: 'monitoring' },
184
+ { id: 'IR-6', name: 'Incident Reporting', category: 'incident' },
185
+ { id: 'IR-7', name: 'Incident Response Assistance', category: 'incident' },
186
+ { id: 'IR-8', name: 'Incident Response Plan', category: 'incident' },
187
+ { id: 'IR-9', name: 'Information Spillage Response', category: 'incident' },
188
+ { id: 'IR-10', name: 'Integrated Information Security Analysis Team', category: 'incident' },
189
+ // MA — Maintenance
190
+ { id: 'MA-1', name: 'Policy and Procedures (Maintenance)', category: 'config' },
191
+ { id: 'MA-2', name: 'Controlled Maintenance', category: 'config' },
192
+ { id: 'MA-3', name: 'Maintenance Tools', category: 'config' },
193
+ { id: 'MA-4', name: 'Nonlocal Maintenance', category: 'config' },
194
+ { id: 'MA-5', name: 'Maintenance Personnel', category: 'access' },
195
+ { id: 'MA-6', name: 'Timely Maintenance', category: 'config' },
196
+ // MP — Media Protection
197
+ { id: 'MP-1', name: 'Policy and Procedures (Media Protection)', category: 'data' },
198
+ { id: 'MP-2', name: 'Media Access', category: 'data' },
199
+ { id: 'MP-3', name: 'Media Marking', category: 'data' },
200
+ { id: 'MP-4', name: 'Media Storage', category: 'data' },
201
+ { id: 'MP-5', name: 'Media Transport', category: 'data' },
202
+ { id: 'MP-6', name: 'Media Sanitization', category: 'data' },
203
+ { id: 'MP-7', name: 'Media Use', category: 'data' },
204
+ { id: 'MP-8', name: 'Media Downgrading', category: 'data' },
205
+ // PE — Physical and Environmental Protection
206
+ { id: 'PE-1', name: 'Policy and Procedures (Physical)', category: 'physical' },
207
+ { id: 'PE-2', name: 'Physical Access Authorizations', category: 'physical' },
208
+ { id: 'PE-3', name: 'Physical Access Control', category: 'physical' },
209
+ { id: 'PE-4', name: 'Access Control for Transmission', category: 'physical' },
210
+ { id: 'PE-5', name: 'Access Control for Output Devices', category: 'physical' },
211
+ { id: 'PE-6', name: 'Monitoring Physical Access', category: 'physical' },
212
+ { id: 'PE-8', name: 'Visitor Access Records', category: 'physical' },
213
+ { id: 'PE-9', name: 'Power Equipment and Cabling', category: 'physical' },
214
+ { id: 'PE-10', name: 'Emergency Shutoff', category: 'physical' },
215
+ { id: 'PE-11', name: 'Emergency Power', category: 'physical' },
216
+ { id: 'PE-12', name: 'Emergency Lighting', category: 'physical' },
217
+ { id: 'PE-13', name: 'Fire Protection', category: 'physical' },
218
+ { id: 'PE-14', name: 'Environmental Controls', category: 'physical' },
219
+ { id: 'PE-15', name: 'Water Damage Protection', category: 'physical' },
220
+ { id: 'PE-16', name: 'Delivery and Removal', category: 'physical' },
221
+ { id: 'PE-17', name: 'Alternate Work Site', category: 'physical' },
222
+ { id: 'PE-18', name: 'Location of System Components', category: 'physical' },
223
+ { id: 'PE-19', name: 'Information Leakage', category: 'physical' },
224
+ { id: 'PE-20', name: 'Asset Monitoring and Tracking', category: 'inventory' },
225
+ { id: 'PE-21', name: 'Electromagnetic Pulse Protection', category: 'physical' },
226
+ { id: 'PE-22', name: 'Component Marking', category: 'physical' },
227
+ { id: 'PE-23', name: 'Facility Location', category: 'physical' },
228
+ // PL — Planning
229
+ { id: 'PL-1', name: 'Policy and Procedures (Planning)', category: 'governance' },
230
+ { id: 'PL-2', name: 'System Security and Privacy Plans', category: 'governance' },
231
+ { id: 'PL-4', name: 'Rules of Behavior', category: 'governance' },
232
+ { id: 'PL-7', name: 'Concept of Operations', category: 'governance' },
233
+ { id: 'PL-8', name: 'Security and Privacy Architectures', category: 'governance' },
234
+ { id: 'PL-9', name: 'Central Management', category: 'governance' },
235
+ { id: 'PL-10', name: 'Baseline Selection', category: 'governance' },
236
+ { id: 'PL-11', name: 'Baseline Tailoring', category: 'governance' },
237
+ // PM — Program Management
238
+ { id: 'PM-1', name: 'Information Security Program Plan', category: 'governance' },
239
+ { id: 'PM-2', name: 'Information Security Program Leadership Role', category: 'governance' },
240
+ { id: 'PM-3', name: 'Information Security and Privacy Resources', category: 'governance' },
241
+ { id: 'PM-4', name: 'Plan of Action and Milestones Process', category: 'governance' },
242
+ { id: 'PM-5', name: 'System Inventory', category: 'inventory' },
243
+ { id: 'PM-6', name: 'Measures of Performance', category: 'governance' },
244
+ { id: 'PM-7', name: 'Enterprise Architecture', category: 'governance' },
245
+ { id: 'PM-8', name: 'Critical Infrastructure Plan', category: 'governance' },
246
+ { id: 'PM-9', name: 'Risk Management Strategy', category: 'risk' },
247
+ { id: 'PM-10', name: 'Authorization Process', category: 'governance' },
248
+ { id: 'PM-11', name: 'Mission and Business Process Definition', category: 'governance' },
249
+ { id: 'PM-12', name: 'Insider Threat Program', category: 'monitoring' },
250
+ { id: 'PM-13', name: 'Security and Privacy Workforce', category: 'training' },
251
+ { id: 'PM-14', name: 'Testing, Training, and Monitoring', category: 'testing' },
252
+ { id: 'PM-15', name: 'Security and Privacy Groups and Associations', category: 'governance' },
253
+ { id: 'PM-16', name: 'Threat Awareness Program', category: 'monitoring' },
254
+ { id: 'PM-17', name: 'Protecting CUI on External Systems', category: 'data' },
255
+ { id: 'PM-18', name: 'Privacy Program Plan', category: 'governance' },
256
+ { id: 'PM-19', name: 'Privacy Program Leadership Role', category: 'governance' },
257
+ { id: 'PM-20', name: 'Dissemination of Privacy Program Information', category: 'governance' },
258
+ { id: 'PM-21', name: 'Accounting of Disclosures', category: 'data' },
259
+ { id: 'PM-22', name: 'Personally Identifiable Information Quality Management', category: 'data' },
260
+ { id: 'PM-23', name: 'Data Governance Body', category: 'governance' },
261
+ { id: 'PM-24', name: 'Data Integrity Board', category: 'governance' },
262
+ { id: 'PM-25', name: 'Minimization of PII Used in Testing', category: 'data' },
263
+ { id: 'PM-26', name: 'Complaint Management', category: 'governance' },
264
+ { id: 'PM-27', name: 'Privacy Reporting', category: 'governance' },
265
+ { id: 'PM-28', name: 'Risk Framing', category: 'risk' },
266
+ { id: 'PM-29', name: 'Risk Management Program Leadership Roles', category: 'governance' },
267
+ { id: 'PM-30', name: 'Supply Chain Risk Management Strategy', category: 'governance' },
268
+ { id: 'PM-31', name: 'Continuous Monitoring Strategy', category: 'monitoring' },
269
+ { id: 'PM-32', name: 'Purposing', category: 'governance' },
270
+ // PS — Personnel Security
271
+ { id: 'PS-1', name: 'Policy and Procedures (Personnel)', category: 'governance' },
272
+ { id: 'PS-2', name: 'Position Risk Designation', category: 'governance' },
273
+ { id: 'PS-3', name: 'Personnel Screening', category: 'governance' },
274
+ { id: 'PS-4', name: 'Personnel Termination', category: 'access' },
275
+ { id: 'PS-5', name: 'Personnel Transfer', category: 'access' },
276
+ { id: 'PS-6', name: 'Access Agreements', category: 'access' },
277
+ { id: 'PS-7', name: 'External Personnel Security', category: 'governance' },
278
+ { id: 'PS-8', name: 'Personnel Sanctions', category: 'governance' },
279
+ { id: 'PS-9', name: 'Position Descriptions', category: 'governance' },
280
+ // PT — PII Processing and Transparency
281
+ { id: 'PT-1', name: 'Policy and Procedures (PII Processing)', category: 'data' },
282
+ { id: 'PT-2', name: 'Authority to Process PII', category: 'data' },
283
+ { id: 'PT-3', name: 'PII Processing Purposes', category: 'data' },
284
+ { id: 'PT-4', name: 'Consent', category: 'data' },
285
+ { id: 'PT-5', name: 'Privacy Notice', category: 'data' },
286
+ { id: 'PT-6', name: 'System of Records Notice', category: 'data' },
287
+ { id: 'PT-7', name: 'Specific Categories of PII', category: 'data' },
288
+ { id: 'PT-8', name: 'Computer Matching Requirements', category: 'data' },
289
+ // RA — Risk Assessment
290
+ { id: 'RA-1', name: 'Policy and Procedures (Risk Assessment)', category: 'risk' },
291
+ { id: 'RA-2', name: 'Security Categorization', category: 'risk' },
292
+ { id: 'RA-3', name: 'Risk Assessment', category: 'risk' },
293
+ { id: 'RA-5', name: 'Vulnerability Monitoring and Scanning', category: 'vuln' },
294
+ { id: 'RA-6', name: 'Technical Surveillance Countermeasures Survey', category: 'physical' },
295
+ { id: 'RA-7', name: 'Risk Response', category: 'risk' },
296
+ { id: 'RA-8', name: 'Privacy Impact Assessments', category: 'risk' },
297
+ { id: 'RA-9', name: 'Criticality Analysis', category: 'risk' },
298
+ { id: 'RA-10', name: 'Threat Hunting', category: 'monitoring' },
299
+ // SA — System and Services Acquisition
300
+ { id: 'SA-1', name: 'Policy and Procedures (System Acquisition)', category: 'governance' },
301
+ { id: 'SA-2', name: 'Allocation of Resources', category: 'governance' },
302
+ { id: 'SA-3', name: 'System Development Life Cycle', category: 'code' },
303
+ { id: 'SA-4', name: 'Acquisition Process', category: 'governance' },
304
+ { id: 'SA-5', name: 'System Documentation', category: 'governance' },
305
+ { id: 'SA-8', name: 'Security and Privacy Engineering Principles', category: 'code' },
306
+ { id: 'SA-9', name: 'External System Services', category: 'governance' },
307
+ { id: 'SA-10', name: 'Developer Configuration Management', category: 'code' },
308
+ { id: 'SA-11', name: 'Developer Testing and Evaluation', category: 'testing' },
309
+ { id: 'SA-12', name: 'Supply Chain Protection', category: 'code' },
310
+ { id: 'SA-15', name: 'Development Process, Standards, and Tools', category: 'code' },
311
+ { id: 'SA-16', name: 'Developer-Provided Training', category: 'training' },
312
+ { id: 'SA-17', name: 'Developer Security and Privacy Architecture and Design', category: 'code' },
313
+ { id: 'SA-20', name: 'Customized Development of Critical Components', category: 'code' },
314
+ { id: 'SA-21', name: 'Developer Screening', category: 'governance' },
315
+ { id: 'SA-22', name: 'Unsupported System Components', category: 'vuln' },
316
+ { id: 'SA-23', name: 'Specialization', category: 'code' },
317
+ // SC — System and Communications Protection
318
+ { id: 'SC-1', name: 'Policy and Procedures (System Protection)', category: 'network' },
319
+ { id: 'SC-2', name: 'Separation of System and User Functionality', category: 'access' },
320
+ { id: 'SC-3', name: 'Security Function Isolation', category: 'access' },
321
+ { id: 'SC-4', name: 'Information in Shared System Resources', category: 'data' },
322
+ { id: 'SC-5', name: 'Denial-of-Service Protection', category: 'network' },
323
+ { id: 'SC-7', name: 'Boundary Protection', category: 'network' },
324
+ { id: 'SC-8', name: 'Transmission Confidentiality and Integrity', category: 'crypto' },
325
+ { id: 'SC-10', name: 'Network Disconnect', category: 'network' },
326
+ { id: 'SC-12', name: 'Cryptographic Key Establishment and Management', category: 'crypto' },
327
+ { id: 'SC-13', name: 'Cryptographic Protection', category: 'crypto' },
328
+ { id: 'SC-15', name: 'Collaborative Computing Devices and Applications', category: 'network' },
329
+ { id: 'SC-17', name: 'Public Key Infrastructure Certificates', category: 'crypto' },
330
+ { id: 'SC-18', name: 'Mobile Code', category: 'code' },
331
+ { id: 'SC-20', name: 'Secure Name/Address Resolution Service (Authoritative Source)', category: 'network' },
332
+ { id: 'SC-21', name: 'Secure Name/Address Resolution Service (Recursive or Caching Resolver)', category: 'network' },
333
+ { id: 'SC-22', name: 'Architecture and Provisioning for Name/Address Resolution Service', category: 'network' },
334
+ { id: 'SC-23', name: 'Session Authenticity', category: 'auth' },
335
+ { id: 'SC-24', name: 'Fail in Known State', category: 'recovery' },
336
+ { id: 'SC-25', name: 'Thin Nodes', category: 'config' },
337
+ { id: 'SC-26', name: 'Honeypots', category: 'monitoring' },
338
+ { id: 'SC-27', name: 'Platform-Independent Applications', category: 'code' },
339
+ { id: 'SC-28', name: 'Protection of Information at Rest', category: 'crypto' },
340
+ { id: 'SC-29', name: 'Heterogeneity', category: 'config' },
341
+ { id: 'SC-30', name: 'Concealment and Misdirection', category: 'monitoring' },
342
+ { id: 'SC-31', name: 'Covert Channel Analysis', category: 'monitoring' },
343
+ { id: 'SC-32', name: 'System Partitioning', category: 'network' },
344
+ { id: 'SC-34', name: 'Non-Modifiable Executable Programs', category: 'code' },
345
+ { id: 'SC-35', name: 'External Malicious Code Identification', category: 'malware' },
346
+ { id: 'SC-36', name: 'Distributed Processing and Storage', category: 'recovery' },
347
+ { id: 'SC-37', name: 'Out-of-Band Channels', category: 'network' },
348
+ { id: 'SC-38', name: 'Operations Security', category: 'monitoring' },
349
+ { id: 'SC-39', name: 'Process Isolation', category: 'access' },
350
+ { id: 'SC-40', name: 'Wireless Link Protection', category: 'crypto' },
351
+ { id: 'SC-41', name: 'Port and I/O Device Access', category: 'physical' },
352
+ { id: 'SC-42', name: 'Sensor Capability and Data', category: 'data' },
353
+ { id: 'SC-43', name: 'Usage Restrictions', category: 'config' },
354
+ { id: 'SC-44', name: 'Detonation Chambers', category: 'malware' },
355
+ { id: 'SC-45', name: 'System Time Synchronization', category: 'logging' },
356
+ { id: 'SC-46', name: 'Cross Domain Policy Enforcement', category: 'network' },
357
+ { id: 'SC-47', name: 'Alternate Communications Paths', category: 'recovery' },
358
+ { id: 'SC-48', name: 'Sensor Relocation', category: 'monitoring' },
359
+ { id: 'SC-49', name: 'Hardware-Enforced Separation and Policy Enforcement', category: 'access' },
360
+ { id: 'SC-50', name: 'Software-Enforced Separation and Policy Enforcement', category: 'access' },
361
+ { id: 'SC-51', name: 'Hardware-Based Protection', category: 'access' },
362
+ // SI — System and Information Integrity
363
+ { id: 'SI-1', name: 'Policy and Procedures (System Integrity)', category: 'monitoring' },
364
+ { id: 'SI-2', name: 'Flaw Remediation', category: 'vuln' },
365
+ { id: 'SI-3', name: 'Malicious Code Protection', category: 'malware' },
366
+ { id: 'SI-4', name: 'System Monitoring', category: 'monitoring' },
367
+ { id: 'SI-5', name: 'Security Alerts, Advisories, and Directives', category: 'monitoring' },
368
+ { id: 'SI-6', name: 'Security and Privacy Function Verification', category: 'testing' },
369
+ { id: 'SI-7', name: 'Software, Firmware, and Information Integrity', category: 'code' },
370
+ { id: 'SI-8', name: 'Spam Protection', category: 'network' },
371
+ { id: 'SI-10', name: 'Information Input Validation', category: 'code' },
372
+ { id: 'SI-11', name: 'Error Handling', category: 'code' },
373
+ { id: 'SI-12', name: 'Information Management and Retention', category: 'data' },
374
+ { id: 'SI-13', name: 'Predictable Failure Prevention', category: 'recovery' },
375
+ { id: 'SI-14', name: 'Non-Persistence', category: 'config' },
376
+ { id: 'SI-15', name: 'Information Output Filtering', category: 'data' },
377
+ { id: 'SI-16', name: 'Memory Protection', category: 'code' },
378
+ { id: 'SI-17', name: 'Fail-Safe Procedures', category: 'recovery' },
379
+ { id: 'SI-18', name: 'PII Quality Management', category: 'data' },
380
+ { id: 'SI-19', name: 'De-identification', category: 'data' },
381
+ { id: 'SI-20', name: 'Tainting', category: 'monitoring' },
382
+ { id: 'SI-21', name: 'Information Refresh', category: 'data' },
383
+ { id: 'SI-22', name: 'Information Diversity', category: 'data' },
384
+ { id: 'SI-23', name: 'Information Fragmentation', category: 'data' },
385
+ // SR — Supply Chain Risk Management
386
+ { id: 'SR-1', name: 'Policy and Procedures (Supply Chain)', category: 'governance' },
387
+ { id: 'SR-2', name: 'Supply Chain Risk Management Plan', category: 'governance' },
388
+ { id: 'SR-3', name: 'Supply Chain Controls and Processes', category: 'governance' },
389
+ { id: 'SR-4', name: 'Provenance', category: 'code' },
390
+ { id: 'SR-5', name: 'Acquisition Strategies, Tools, and Methods', category: 'governance' },
391
+ { id: 'SR-6', name: 'Supplier Assessments and Reviews', category: 'governance' },
392
+ { id: 'SR-7', name: 'Supply Chain Operations Security', category: 'monitoring' },
393
+ { id: 'SR-8', name: 'Notification Agreements', category: 'governance' },
394
+ { id: 'SR-9', name: 'Tamper Resistance and Detection', category: 'physical' },
395
+ { id: 'SR-10', name: 'Inspection of Systems or Components', category: 'testing' },
396
+ { id: 'SR-11', name: 'Component Authenticity', category: 'code' },
397
+ { id: 'SR-12', name: 'Component Disposal', category: 'data' },
398
+ ];
399
+
400
+ export const CIS_CONTROLS = [
401
+ { id: 'CIS-1', name: 'Inventory and Control of Enterprise Assets', category: 'inventory' },
402
+ { id: 'CIS-2', name: 'Inventory and Control of Software Assets', category: 'inventory' },
403
+ { id: 'CIS-3', name: 'Data Protection', category: 'data' },
404
+ { id: 'CIS-4', name: 'Secure Configuration of Enterprise Assets and Software', category: 'config' },
405
+ { id: 'CIS-5', name: 'Account Management', category: 'access' },
406
+ { id: 'CIS-6', name: 'Access Control Management', category: 'access' },
407
+ { id: 'CIS-7', name: 'Continuous Vulnerability Management', category: 'vuln' },
408
+ { id: 'CIS-8', name: 'Audit Log Management', category: 'logging' },
409
+ { id: 'CIS-9', name: 'Email and Web Browser Protections', category: 'network' },
410
+ { id: 'CIS-10', name: 'Malware Defences', category: 'malware' },
411
+ { id: 'CIS-11', name: 'Data Recovery', category: 'recovery' },
412
+ { id: 'CIS-12', name: 'Network Infrastructure Management', category: 'network' },
413
+ { id: 'CIS-13', name: 'Network Monitoring and Defence', category: 'monitoring' },
414
+ { id: 'CIS-14', name: 'Security Awareness and Skills Training', category: 'training' },
415
+ { id: 'CIS-15', name: 'Service Provider Management', category: 'governance' },
416
+ { id: 'CIS-16', name: 'Application Software Security', category: 'code' },
417
+ { id: 'CIS-17', name: 'Incident Response Management', category: 'incident' },
418
+ { id: 'CIS-18', name: 'Penetration Testing', category: 'testing' },
419
+ ];
420
+
421
+ export const ISO_27001_CONTROLS = [
422
+ // A.5 — Organizational Controls
423
+ { id: 'A.5.1', name: 'Policies for Information Security', category: 'governance' },
424
+ { id: 'A.5.2', name: 'Information Security Roles and Responsibilities', category: 'governance' },
425
+ { id: 'A.5.3', name: 'Segregation of Duties', category: 'access' },
426
+ { id: 'A.5.4', name: 'Management Responsibilities', category: 'governance' },
427
+ { id: 'A.5.5', name: 'Contact with Authorities', category: 'governance' },
428
+ { id: 'A.5.6', name: 'Contact with Special Interest Groups', category: 'governance' },
429
+ { id: 'A.5.7', name: 'Threat Intelligence', category: 'monitoring' },
430
+ { id: 'A.5.8', name: 'Information Security in Project Management', category: 'governance' },
431
+ { id: 'A.5.9', name: 'Inventory of Information and Other Associated Assets', category: 'inventory' },
432
+ { id: 'A.5.10', name: 'Acceptable Use of Information and Other Associated Assets', category: 'governance' },
433
+ { id: 'A.5.11', name: 'Return of Assets', category: 'governance' },
434
+ { id: 'A.5.12', name: 'Classification of Information', category: 'data' },
435
+ { id: 'A.5.13', name: 'Labelling of Information', category: 'data' },
436
+ { id: 'A.5.14', name: 'Information Transfer', category: 'data' },
437
+ { id: 'A.5.15', name: 'Access Control', category: 'access' },
438
+ { id: 'A.5.16', name: 'Identity Management', category: 'auth' },
439
+ { id: 'A.5.17', name: 'Authentication Information', category: 'auth' },
440
+ { id: 'A.5.18', name: 'Access Rights', category: 'access' },
441
+ { id: 'A.5.19', name: 'Information Security in Supplier Relationships', category: 'governance' },
442
+ { id: 'A.5.20', name: 'Addressing Information Security within Supplier Agreements', category: 'governance' },
443
+ { id: 'A.5.21', name: 'Managing Information Security in the ICT Supply Chain', category: 'governance' },
444
+ { id: 'A.5.22', name: 'Monitoring, Review and Change Management of Supplier Services', category: 'monitoring' },
445
+ { id: 'A.5.23', name: 'Information Security for Use of Cloud Services', category: 'config' },
446
+ { id: 'A.5.24', name: 'Information Security Incident Management Planning and Preparation', category: 'incident' },
447
+ { id: 'A.5.25', name: 'Assessment and Decision on Information Security Events', category: 'incident' },
448
+ { id: 'A.5.26', name: 'Response to Information Security Incidents', category: 'incident' },
449
+ { id: 'A.5.27', name: 'Learning from Information Security Incidents', category: 'incident' },
450
+ { id: 'A.5.28', name: 'Collection of Evidence', category: 'incident' },
451
+ { id: 'A.5.29', name: 'Information Security During Disruption', category: 'recovery' },
452
+ { id: 'A.5.30', name: 'ICT Readiness for Business Continuity', category: 'recovery' },
453
+ { id: 'A.5.31', name: 'Legal, Statutory, Regulatory and Contractual Requirements', category: 'governance' },
454
+ { id: 'A.5.32', name: 'Intellectual Property Rights', category: 'governance' },
455
+ { id: 'A.5.33', name: 'Protection of Records', category: 'data' },
456
+ { id: 'A.5.34', name: 'Privacy and Protection of PII', category: 'data' },
457
+ { id: 'A.5.35', name: 'Independent Review of Information Security', category: 'testing' },
458
+ { id: 'A.5.36', name: 'Compliance with Policies, Rules and Standards', category: 'governance' },
459
+ { id: 'A.5.37', name: 'Documented Operating Procedures', category: 'governance' },
460
+ // A.6 — People Controls
461
+ { id: 'A.6.1', name: 'Screening', category: 'governance' },
462
+ { id: 'A.6.2', name: 'Terms and Conditions of Employment', category: 'governance' },
463
+ { id: 'A.6.3', name: 'Information Security Awareness, Education and Training', category: 'training' },
464
+ { id: 'A.6.4', name: 'Disciplinary Process', category: 'governance' },
465
+ { id: 'A.6.5', name: 'Responsibilities After Termination or Change of Employment', category: 'access' },
466
+ { id: 'A.6.6', name: 'Confidentiality or Non-Disclosure Agreements', category: 'governance' },
467
+ { id: 'A.6.7', name: 'Remote Working', category: 'access' },
468
+ { id: 'A.6.8', name: 'Information Security Event Reporting', category: 'incident' },
469
+ // A.7 — Physical Controls
470
+ { id: 'A.7.1', name: 'Physical Security Perimeters', category: 'physical' },
471
+ { id: 'A.7.2', name: 'Physical Entry', category: 'physical' },
472
+ { id: 'A.7.3', name: 'Securing Offices, Rooms and Facilities', category: 'physical' },
473
+ { id: 'A.7.4', name: 'Physical Security Monitoring', category: 'physical' },
474
+ { id: 'A.7.5', name: 'Protecting Against Physical and Environmental Threats', category: 'physical' },
475
+ { id: 'A.7.6', name: 'Working in Secure Areas', category: 'physical' },
476
+ { id: 'A.7.7', name: 'Clear Desk and Clear Screen', category: 'physical' },
477
+ { id: 'A.7.8', name: 'Equipment Siting and Protection', category: 'physical' },
478
+ { id: 'A.7.9', name: 'Security of Assets Off-Premises', category: 'physical' },
479
+ { id: 'A.7.10', name: 'Storage Media', category: 'data' },
480
+ { id: 'A.7.11', name: 'Supporting Utilities', category: 'physical' },
481
+ { id: 'A.7.12', name: 'Cabling Security', category: 'physical' },
482
+ { id: 'A.7.13', name: 'Equipment Maintenance', category: 'config' },
483
+ { id: 'A.7.14', name: 'Secure Disposal or Re-Use of Equipment', category: 'data' },
484
+ // A.8 — Technological Controls
485
+ { id: 'A.8.1', name: 'User Endpoint Devices', category: 'config' },
486
+ { id: 'A.8.2', name: 'Privileged Access Rights', category: 'access' },
487
+ { id: 'A.8.3', name: 'Information Access Restriction', category: 'access' },
488
+ { id: 'A.8.4', name: 'Access to Source Code', category: 'code' },
489
+ { id: 'A.8.5', name: 'Secure Authentication', category: 'auth' },
490
+ { id: 'A.8.6', name: 'Capacity Management', category: 'config' },
491
+ { id: 'A.8.7', name: 'Protection Against Malware', category: 'malware' },
492
+ { id: 'A.8.8', name: 'Management of Technical Vulnerabilities', category: 'vuln' },
493
+ { id: 'A.8.9', name: 'Configuration Management', category: 'config' },
494
+ { id: 'A.8.10', name: 'Information Deletion', category: 'data' },
495
+ { id: 'A.8.11', name: 'Data Masking', category: 'data' },
496
+ { id: 'A.8.12', name: 'Data Leakage Prevention', category: 'data' },
497
+ { id: 'A.8.13', name: 'Information Backup', category: 'recovery' },
498
+ { id: 'A.8.14', name: 'Redundancy of Information Processing Facilities', category: 'recovery' },
499
+ { id: 'A.8.15', name: 'Logging', category: 'logging' },
500
+ { id: 'A.8.16', name: 'Monitoring Activities', category: 'monitoring' },
501
+ { id: 'A.8.17', name: 'Clock Synchronization', category: 'logging' },
502
+ { id: 'A.8.18', name: 'Use of Privileged Utility Programs', category: 'access' },
503
+ { id: 'A.8.19', name: 'Installation of Software on Operational Systems', category: 'config' },
504
+ { id: 'A.8.20', name: 'Networks Security', category: 'network' },
505
+ { id: 'A.8.21', name: 'Security of Network Services', category: 'network' },
506
+ { id: 'A.8.22', name: 'Segregation of Networks', category: 'network' },
507
+ { id: 'A.8.23', name: 'Web Filtering', category: 'network' },
508
+ { id: 'A.8.24', name: 'Use of Cryptography', category: 'crypto' },
509
+ { id: 'A.8.25', name: 'Secure Development Life Cycle', category: 'code' },
510
+ { id: 'A.8.26', name: 'Application Security Requirements', category: 'code' },
511
+ { id: 'A.8.27', name: 'Secure System Architecture and Engineering Principles', category: 'code' },
512
+ { id: 'A.8.28', name: 'Secure Coding', category: 'code' },
513
+ { id: 'A.8.29', name: 'Security Testing in Development and Acceptance', category: 'testing' },
514
+ { id: 'A.8.30', name: 'Outsourced Development', category: 'code' },
515
+ { id: 'A.8.31', name: 'Separation of Development, Test and Production Environments', category: 'config' },
516
+ { id: 'A.8.32', name: 'Change Management', category: 'config' },
517
+ { id: 'A.8.33', name: 'Test Information', category: 'data' },
518
+ { id: 'A.8.34', name: 'Protection of Information Systems During Audit Testing', category: 'testing' },
519
+ ];
520
+
521
+ export const GDPR_CONTROLS = [
522
+ { id: 'GDPR-Art.5', name: 'Principles of Data Processing', category: 'data' },
523
+ { id: 'GDPR-Art.6', name: 'Lawfulness of Processing', category: 'governance' },
524
+ { id: 'GDPR-Art.7', name: 'Conditions for Consent', category: 'governance' },
525
+ { id: 'GDPR-Art.13', name: 'Information to Data Subjects (Collection)', category: 'data' },
526
+ { id: 'GDPR-Art.15', name: 'Right of Access by the Data Subject', category: 'access' },
527
+ { id: 'GDPR-Art.17', name: 'Right to Erasure (Right to be Forgotten)', category: 'data' },
528
+ { id: 'GDPR-Art.20', name: 'Right to Data Portability', category: 'data' },
529
+ { id: 'GDPR-Art.25', name: 'Data Protection by Design and by Default', category: 'data' },
530
+ { id: 'GDPR-Art.30', name: 'Records of Processing Activities', category: 'governance' },
531
+ { id: 'GDPR-Art.32', name: 'Security of Processing', category: 'crypto' },
532
+ { id: 'GDPR-Art.33', name: 'Notification of Breach to Supervisory Authority', category: 'incident' },
533
+ { id: 'GDPR-Art.35', name: 'Data Protection Impact Assessment', category: 'risk' },
534
+ { id: 'GDPR-Art.37', name: 'Designation of Data Protection Officer', category: 'governance' },
535
+ ];
536
+
537
+ // ---------------------------------------------------------------------------
538
+ // Audit v1.0 — 10 additional frameworks
539
+ // ---------------------------------------------------------------------------
540
+
541
+ export const CMMC_CONTROLS = [
542
+ { id: 'AC.L1-3.1.1', name: 'Authorized Access Control', category: 'access' },
543
+ { id: 'AC.L1-3.1.2', name: 'Transaction & Function Control', category: 'access' },
544
+ { id: 'AC.L2-3.1.3', name: 'CUI Flow Enforcement', category: 'data' },
545
+ { id: 'AC.L2-3.1.5', name: 'Least Privilege', category: 'access' },
546
+ { id: 'AC.L2-3.1.7', name: 'Privileged Functions', category: 'access' },
547
+ { id: 'AU.L2-3.3.1', name: 'System-Level Auditing', category: 'logging' },
548
+ { id: 'AU.L2-3.3.2', name: 'User Accountability', category: 'logging' },
549
+ { id: 'CM.L2-3.4.1', name: 'System Baselining', category: 'config' },
550
+ { id: 'CM.L2-3.4.2', name: 'Security Configuration Enforcement', category: 'config' },
551
+ { id: 'IA.L1-3.5.1', name: 'Identification', category: 'auth' },
552
+ { id: 'IA.L1-3.5.2', name: 'Authentication', category: 'auth' },
553
+ { id: 'IA.L2-3.5.3', name: 'Multi-Factor Authentication', category: 'auth' },
554
+ { id: 'IR.L2-3.6.1', name: 'Incident Handling', category: 'incident' },
555
+ { id: 'IR.L2-3.6.2', name: 'Incident Reporting', category: 'incident' },
556
+ { id: 'MA.L2-3.7.1', name: 'Maintenance Performance', category: 'config' },
557
+ { id: 'MP.L1-3.8.3', name: 'Media Disposal', category: 'data' },
558
+ { id: 'PE.L1-3.10.1', name: 'Physical Access Limitation', category: 'physical' },
559
+ { id: 'RA.L2-3.11.1', name: 'Risk Assessments', category: 'risk' },
560
+ { id: 'RA.L2-3.11.2', name: 'Vulnerability Scanning', category: 'vuln' },
561
+ { id: 'SC.L1-3.13.1', name: 'Boundary Protection', category: 'network' },
562
+ { id: 'SC.L2-3.13.6', name: 'Network Communication by Exception', category: 'network' },
563
+ { id: 'SC.L2-3.13.11', name: 'CUI Encryption', category: 'crypto' },
564
+ { id: 'SI.L1-3.14.1', name: 'Flaw Remediation', category: 'vuln' },
565
+ { id: 'SI.L2-3.14.3', name: 'Security Alerts & Advisories', category: 'monitoring' },
566
+ ];
567
+
568
+ export const NIST_CSF_CONTROLS = [
569
+ { id: 'GV.OC-01', name: 'Organizational Context', category: 'governance' },
570
+ { id: 'GV.RM-01', name: 'Risk Management Strategy', category: 'risk' },
571
+ { id: 'GV.RR-01', name: 'Roles, Responsibilities, and Authorities', category: 'governance' },
572
+ { id: 'GV.PO-01', name: 'Policy Establishment', category: 'governance' },
573
+ { id: 'GV.SC-01', name: 'Supply Chain Risk Management Strategy', category: 'governance' },
574
+ { id: 'ID.AM-01', name: 'Asset Inventory', category: 'inventory' },
575
+ { id: 'ID.AM-02', name: 'Software Inventory', category: 'inventory' },
576
+ { id: 'ID.RA-01', name: 'Vulnerability Identification', category: 'vuln' },
577
+ { id: 'ID.RA-02', name: 'Threat Intelligence', category: 'monitoring' },
578
+ { id: 'ID.RA-03', name: 'Risk Assessment', category: 'risk' },
579
+ { id: 'ID.IM-01', name: 'Improvement Integration', category: 'governance' },
580
+ { id: 'PR.AA-01', name: 'Identity Management and Authentication', category: 'auth' },
581
+ { id: 'PR.AA-02', name: 'Access Control', category: 'access' },
582
+ { id: 'PR.AT-01', name: 'Awareness and Training', category: 'training' },
583
+ { id: 'PR.DS-01', name: 'Data-at-Rest Protection', category: 'crypto' },
584
+ { id: 'PR.DS-02', name: 'Data-in-Transit Protection', category: 'crypto' },
585
+ { id: 'PR.PS-01', name: 'Configuration Management', category: 'config' },
586
+ { id: 'PR.IR-01', name: 'Infrastructure Resilience', category: 'recovery' },
587
+ { id: 'DE.CM-01', name: 'Continuous Monitoring — Networks', category: 'monitoring' },
588
+ { id: 'DE.CM-02', name: 'Continuous Monitoring — Physical', category: 'monitoring' },
589
+ { id: 'DE.AE-01', name: 'Adverse Event Analysis', category: 'monitoring' },
590
+ { id: 'RS.MA-01', name: 'Incident Management', category: 'incident' },
591
+ { id: 'RS.AN-01', name: 'Incident Analysis', category: 'incident' },
592
+ { id: 'RS.CO-01', name: 'Incident Reporting', category: 'incident' },
593
+ { id: 'RS.MI-01', name: 'Incident Mitigation', category: 'incident' },
594
+ { id: 'RC.RP-01', name: 'Recovery Plan Execution', category: 'recovery' },
595
+ { id: 'RC.CO-01', name: 'Recovery Communication', category: 'recovery' },
596
+ ];
597
+
598
+ export const NIST_AI_RMF_CONTROLS = [
599
+ { id: 'GOVERN-1', name: 'AI Risk Management Governance', category: 'governance' },
600
+ { id: 'GOVERN-2', name: 'AI Accountability Structure', category: 'governance' },
601
+ { id: 'GOVERN-3', name: 'AI Workforce Diversity and Culture', category: 'governance' },
602
+ { id: 'GOVERN-4', name: 'Organizational AI Risk Tolerance', category: 'risk' },
603
+ { id: 'GOVERN-5', name: 'AI Legal and Regulatory Compliance', category: 'governance' },
604
+ { id: 'GOVERN-6', name: 'AI Supply Chain Risk Management', category: 'governance' },
605
+ { id: 'MAP-1', name: 'AI Context and Intended Use', category: 'governance' },
606
+ { id: 'MAP-2', name: 'AI Stakeholder Identification', category: 'governance' },
607
+ { id: 'MAP-3', name: 'AI Benefits and Costs Assessment', category: 'risk' },
608
+ { id: 'MAP-5', name: 'AI Impact Assessment', category: 'risk' },
609
+ { id: 'MEASURE-1', name: 'AI Risk Metrics', category: 'monitoring' },
610
+ { id: 'MEASURE-2', name: 'AI System Evaluation', category: 'testing' },
611
+ { id: 'MEASURE-3', name: 'AI Bias and Fairness Assessment', category: 'testing' },
612
+ { id: 'MEASURE-4', name: 'AI Model Monitoring', category: 'monitoring' },
613
+ { id: 'MANAGE-1', name: 'AI Risk Treatment', category: 'risk' },
614
+ { id: 'MANAGE-2', name: 'AI Risk Prioritization', category: 'risk' },
615
+ { id: 'MANAGE-3', name: 'AI Incident Response', category: 'incident' },
616
+ { id: 'MANAGE-4', name: 'AI Third-Party Risk Management', category: 'governance' },
617
+ ];
618
+
619
+ export const FEDRAMP_CONTROLS = [
620
+ { id: 'FedRAMP-AC-2', name: 'Account Management (FedRAMP Enhanced)', category: 'access' },
621
+ { id: 'FedRAMP-AC-6', name: 'Least Privilege (FedRAMP Enhanced)', category: 'access' },
622
+ { id: 'FedRAMP-AU-2', name: 'Audit Events (FedRAMP Enhanced)', category: 'logging' },
623
+ { id: 'FedRAMP-AU-6', name: 'Audit Review and Analysis (FedRAMP Enhanced)', category: 'monitoring' },
624
+ { id: 'FedRAMP-CA-7', name: 'Continuous Monitoring', category: 'monitoring' },
625
+ { id: 'FedRAMP-CM-2', name: 'Baseline Configuration (FedRAMP Enhanced)', category: 'config' },
626
+ { id: 'FedRAMP-CM-6', name: 'Configuration Settings (FedRAMP Enhanced)', category: 'config' },
627
+ { id: 'FedRAMP-IA-2', name: 'Identification and Authentication (FedRAMP Enhanced)', category: 'auth' },
628
+ { id: 'FedRAMP-IA-5', name: 'Authenticator Management (FedRAMP Enhanced)', category: 'auth' },
629
+ { id: 'FedRAMP-IR-4', name: 'Incident Handling (FedRAMP Enhanced)', category: 'incident' },
630
+ { id: 'FedRAMP-IR-6', name: 'Incident Reporting (FedRAMP)', category: 'incident' },
631
+ { id: 'FedRAMP-RA-5', name: 'Vulnerability Scanning (FedRAMP Enhanced)', category: 'vuln' },
632
+ { id: 'FedRAMP-SC-7', name: 'Boundary Protection (FedRAMP Enhanced)', category: 'network' },
633
+ { id: 'FedRAMP-SC-8', name: 'Transmission Confidentiality (FedRAMP Enhanced)', category: 'crypto' },
634
+ { id: 'FedRAMP-SC-12', name: 'Cryptographic Key Management (FedRAMP Enhanced)', category: 'crypto' },
635
+ { id: 'FedRAMP-SC-28', name: 'Protection of Information at Rest', category: 'crypto' },
636
+ { id: 'FedRAMP-SI-2', name: 'Flaw Remediation (FedRAMP Enhanced)', category: 'vuln' },
637
+ { id: 'FedRAMP-SI-4', name: 'Information System Monitoring (FedRAMP Enhanced)', category: 'monitoring' },
638
+ { id: 'FedRAMP-PE-3', name: 'Physical Access Control (FedRAMP)', category: 'physical' },
639
+ { id: 'FedRAMP-PL-2', name: 'System Security Plan (FedRAMP)', category: 'governance' },
640
+ ];
641
+
642
+ export const OWASP_TOP_10_CONTROLS = [
643
+ { id: 'A01:2021', name: 'Broken Access Control', category: 'access' },
644
+ { id: 'A02:2021', name: 'Cryptographic Failures', category: 'crypto' },
645
+ { id: 'A03:2021', name: 'Injection', category: 'injection' },
646
+ { id: 'A04:2021', name: 'Insecure Design', category: 'code' },
647
+ { id: 'A05:2021', name: 'Security Misconfiguration', category: 'config' },
648
+ { id: 'A06:2021', name: 'Vulnerable and Outdated Components', category: 'vuln' },
649
+ { id: 'A07:2021', name: 'Identification and Authentication Failures', category: 'auth' },
650
+ { id: 'A08:2021', name: 'Software and Data Integrity Failures', category: 'code' },
651
+ { id: 'A09:2021', name: 'Security Logging and Monitoring Failures', category: 'logging' },
652
+ { id: 'A10:2021', name: 'Server-Side Request Forgery (SSRF)', category: 'network' },
653
+ { id: 'API1:2023', name: 'Broken Object Level Authorization', category: 'access' },
654
+ { id: 'API2:2023', name: 'Broken Authentication', category: 'auth' },
655
+ { id: 'API3:2023', name: 'Broken Object Property Level Authorization', category: 'access' },
656
+ { id: 'API4:2023', name: 'Unrestricted Resource Consumption', category: 'network' },
657
+ { id: 'API5:2023', name: 'Broken Function Level Authorization', category: 'access' },
658
+ { id: 'API6:2023', name: 'Unrestricted Access to Sensitive Business Flows', category: 'access' },
659
+ { id: 'API7:2023', name: 'Server Side Request Forgery', category: 'network' },
660
+ { id: 'API8:2023', name: 'Security Misconfiguration', category: 'config' },
661
+ { id: 'API9:2023', name: 'Improper Inventory Management', category: 'inventory' },
662
+ { id: 'API10:2023', name: 'Unsafe Consumption of APIs', category: 'code' },
663
+ { id: 'LLM01:2025', name: 'Prompt Injection', category: 'injection' },
664
+ { id: 'LLM02:2025', name: 'Insecure Output Handling', category: 'code' },
665
+ { id: 'LLM03:2025', name: 'Training Data Poisoning', category: 'data' },
666
+ { id: 'LLM04:2025', name: 'Model Denial of Service', category: 'network' },
667
+ { id: 'LLM05:2025', name: 'Supply Chain Vulnerabilities', category: 'code' },
668
+ { id: 'LLM06:2025', name: 'Sensitive Information Disclosure', category: 'data' },
669
+ { id: 'LLM07:2025', name: 'Insecure Plugin Design', category: 'code' },
670
+ { id: 'LLM08:2025', name: 'Excessive Agency', category: 'access' },
671
+ { id: 'LLM09:2025', name: 'Overreliance', category: 'governance' },
672
+ { id: 'LLM10:2025', name: 'Model Theft', category: 'data' },
673
+ ];
674
+
675
+ export const MITRE_ATTACK_CONTROLS = [
676
+ { id: 'TA0043', name: 'Reconnaissance', category: 'monitoring' },
677
+ { id: 'TA0042', name: 'Resource Development', category: 'monitoring' },
678
+ { id: 'TA0001', name: 'Initial Access', category: 'network' },
679
+ { id: 'TA0002', name: 'Execution', category: 'malware' },
680
+ { id: 'TA0003', name: 'Persistence', category: 'config' },
681
+ { id: 'TA0004', name: 'Privilege Escalation', category: 'access' },
682
+ { id: 'TA0005', name: 'Defense Evasion', category: 'monitoring' },
683
+ { id: 'TA0006', name: 'Credential Access', category: 'auth' },
684
+ { id: 'TA0007', name: 'Discovery', category: 'monitoring' },
685
+ { id: 'TA0008', name: 'Lateral Movement', category: 'network' },
686
+ { id: 'TA0009', name: 'Collection', category: 'data' },
687
+ { id: 'TA0011', name: 'Command and Control', category: 'network' },
688
+ { id: 'TA0010', name: 'Exfiltration', category: 'data' },
689
+ { id: 'TA0040', name: 'Impact', category: 'recovery' },
690
+ ];
691
+
692
+ export const IEC_62443_CONTROLS = [
693
+ { id: 'SR-1.1', name: 'Human User Identification and Authentication', category: 'auth' },
694
+ { id: 'SR-1.2', name: 'Software Process and Device Identification', category: 'auth' },
695
+ { id: 'SR-1.3', name: 'Account Management', category: 'access' },
696
+ { id: 'SR-1.7', name: 'Strength of Password-Based Authentication', category: 'auth' },
697
+ { id: 'SR-2.1', name: 'Authorization Enforcement', category: 'access' },
698
+ { id: 'SR-2.4', name: 'Mobile Code', category: 'code' },
699
+ { id: 'SR-2.8', name: 'Auditable Events', category: 'logging' },
700
+ { id: 'SR-2.9', name: 'Audit Storage Capacity', category: 'logging' },
701
+ { id: 'SR-3.1', name: 'Communication Integrity', category: 'crypto' },
702
+ { id: 'SR-3.4', name: 'Software and Information Integrity', category: 'code' },
703
+ { id: 'SR-3.5', name: 'Input Validation', category: 'code' },
704
+ { id: 'SR-4.1', name: 'Information Confidentiality', category: 'crypto' },
705
+ { id: 'SR-5.1', name: 'Network Segmentation', category: 'network' },
706
+ { id: 'SR-5.2', name: 'Zone Boundary Protection', category: 'network' },
707
+ { id: 'SR-6.1', name: 'Audit Log Accessibility', category: 'logging' },
708
+ { id: 'SR-6.2', name: 'Continuous Monitoring', category: 'monitoring' },
709
+ { id: 'SR-7.1', name: 'Denial of Service Protection', category: 'network' },
710
+ { id: 'SR-7.6', name: 'Network and Security Configuration Settings', category: 'config' },
711
+ ];
712
+
713
+ export const NIS2_CONTROLS = [
714
+ { id: 'NIS2-Art.21(a)', name: 'Risk Analysis and Information System Security Policies', category: 'governance' },
715
+ { id: 'NIS2-Art.21(b)', name: 'Incident Handling', category: 'incident' },
716
+ { id: 'NIS2-Art.21(c)', name: 'Business Continuity and Crisis Management', category: 'recovery' },
717
+ { id: 'NIS2-Art.21(d)', name: 'Supply Chain Security', category: 'governance' },
718
+ { id: 'NIS2-Art.21(e)', name: 'Security in Network and Information Systems Acquisition', category: 'code' },
719
+ { id: 'NIS2-Art.21(f)', name: 'Vulnerability Handling and Disclosure', category: 'vuln' },
720
+ { id: 'NIS2-Art.21(g)', name: 'Assessment of Cybersecurity Risk-Management Measures', category: 'risk' },
721
+ { id: 'NIS2-Art.21(h)', name: 'Basic Cyber Hygiene Practices and Training', category: 'training' },
722
+ { id: 'NIS2-Art.21(i)', name: 'Cryptography and Encryption', category: 'crypto' },
723
+ { id: 'NIS2-Art.21(j)', name: 'Human Resource Security and Access Control', category: 'access' },
724
+ { id: 'NIS2-Art.23(1)', name: 'Incident Notification to Authorities (24h)', category: 'incident' },
725
+ { id: 'NIS2-Art.23(4)', name: 'Final Incident Report (1 month)', category: 'incident' },
726
+ ];
727
+
728
+ export const DORA_CONTROLS = [
729
+ { id: 'DORA-Art.5', name: 'ICT Risk Management Framework', category: 'governance' },
730
+ { id: 'DORA-Art.6', name: 'ICT Systems, Protocols and Tools', category: 'config' },
731
+ { id: 'DORA-Art.7', name: 'Identification of ICT Risk', category: 'risk' },
732
+ { id: 'DORA-Art.8', name: 'Protection and Prevention', category: 'network' },
733
+ { id: 'DORA-Art.9', name: 'Detection', category: 'monitoring' },
734
+ { id: 'DORA-Art.10', name: 'Response and Recovery', category: 'incident' },
735
+ { id: 'DORA-Art.11', name: 'Backup Policies and Recovery', category: 'recovery' },
736
+ { id: 'DORA-Art.12', name: 'Learning and Evolving', category: 'governance' },
737
+ { id: 'DORA-Art.13', name: 'Communication', category: 'incident' },
738
+ { id: 'DORA-Art.17', name: 'ICT-Related Incident Management Process', category: 'incident' },
739
+ { id: 'DORA-Art.19', name: 'Incident Reporting to Authorities', category: 'incident' },
740
+ { id: 'DORA-Art.24', name: 'Digital Operational Resilience Testing', category: 'testing' },
741
+ { id: 'DORA-Art.25', name: 'Threat-Led Penetration Testing (TLPT)', category: 'testing' },
742
+ { id: 'DORA-Art.28', name: 'Third-Party ICT Risk Management', category: 'governance' },
743
+ ];
744
+
745
+ export const CISA_KEV_CONTROLS = [
746
+ { id: 'CISA-BOD-22-01', name: 'Known Exploited Vulnerability Remediation', category: 'vuln' },
747
+ { id: 'CISA-BOD-23-01', name: 'Asset Visibility and Vulnerability Detection', category: 'inventory' },
748
+ { id: 'CISA-BOD-25-01', name: 'Secure Cloud Configuration', category: 'config' },
749
+ { id: 'CISA-ED-24-01', name: 'Emergency Mitigation of Critical Vulnerabilities', category: 'vuln' },
750
+ { id: 'CISA-CPG-1', name: 'MFA for Remote and Privileged Access', category: 'auth' },
751
+ { id: 'CISA-CPG-2', name: 'No Known Exploited Vulnerabilities', category: 'vuln' },
752
+ { id: 'CISA-CPG-3', name: 'Strong and Unique Passwords', category: 'auth' },
753
+ { id: 'CISA-CPG-4', name: 'Minimize Attack Surface', category: 'network' },
754
+ { id: 'CISA-CPG-5', name: 'Detect Relevant Threats', category: 'monitoring' },
755
+ { id: 'CISA-CPG-6', name: 'Incident Response Planning', category: 'incident' },
756
+ { id: 'CISA-CPG-7', name: 'Disable Macros by Default', category: 'config' },
757
+ { id: 'CISA-CPG-8', name: 'Log Collection and Monitoring', category: 'logging' },
758
+ ];
759
+
760
+ // ---------------------------------------------------------------------------
761
+ // Audit v2.0 — 22 additional frameworks
762
+ // ---------------------------------------------------------------------------
763
+
764
+ export const EU_AI_ACT_CONTROLS = [
765
+ { id: 'EUAI-Art.1', name: 'Subject Matter — Harmonized Rules for AI', category: 'governance' },
766
+ { id: 'EUAI-Art.2', name: 'Scope — Providers, Deployers, and Territorial Application', category: 'governance' },
767
+ { id: 'EUAI-Art.3', name: 'Definitions — AI System, Provider, Deployer, etc.', category: 'governance' },
768
+ { id: 'EUAI-Art.4', name: 'AI Literacy — Sufficient Knowledge for Staff', category: 'training' },
769
+ { id: 'EUAI-Art.5a', name: 'Prohibited: Subliminal Manipulation Techniques', category: 'risk' },
770
+ { id: 'EUAI-Art.5b', name: 'Prohibited: Exploitation of Vulnerabilities (Age, Disability)', category: 'risk' },
771
+ { id: 'EUAI-Art.5c', name: 'Prohibited: Social Scoring by Public Authorities', category: 'risk' },
772
+ { id: 'EUAI-Art.5d', name: 'Prohibited: Real-Time Remote Biometric Identification (except exceptions)', category: 'risk' },
773
+ { id: 'EUAI-Art.5e', name: 'Prohibited: Untargeted Facial Image Scraping', category: 'data' },
774
+ { id: 'EUAI-Art.5f', name: 'Prohibited: Emotion Inference in Workplace and Education', category: 'risk' },
775
+ { id: 'EUAI-Art.5g', name: 'Prohibited: Biometric Categorization (Race, Politics, etc.)', category: 'risk' },
776
+ { id: 'EUAI-Art.5h', name: 'Prohibited: Predictive Policing Based Solely on Profiling', category: 'risk' },
777
+ { id: 'EUAI-Art.6', name: 'Classification Rules for High-Risk AI Systems', category: 'risk' },
778
+ { id: 'EUAI-Art.7', name: 'Amendments to Annex III — High-Risk AI List', category: 'governance' },
779
+ { id: 'EUAI-Art.8', name: 'Compliance with Requirements for High-Risk AI', category: 'testing' },
780
+ { id: 'EUAI-Art.9', name: 'Risk Management System', category: 'risk' },
781
+ { id: 'EUAI-Art.10', name: 'Data and Data Governance', category: 'data' },
782
+ { id: 'EUAI-Art.11', name: 'Technical Documentation', category: 'governance' },
783
+ { id: 'EUAI-Art.12', name: 'Record-Keeping and Logging', category: 'logging' },
784
+ { id: 'EUAI-Art.13', name: 'Transparency and Provision of Information to Deployers', category: 'governance' },
785
+ { id: 'EUAI-Art.14', name: 'Human Oversight Measures', category: 'governance' },
786
+ { id: 'EUAI-Art.15', name: 'Accuracy, Robustness and Cybersecurity', category: 'testing' },
787
+ { id: 'EUAI-Art.16', name: 'Obligations of Providers of High-Risk AI', category: 'governance' },
788
+ { id: 'EUAI-Art.17', name: 'Quality Management System', category: 'governance' },
789
+ { id: 'EUAI-Art.18', name: 'Documentation Keeping by Providers', category: 'governance' },
790
+ { id: 'EUAI-Art.19', name: 'Automatically Generated Logs Retention', category: 'logging' },
791
+ { id: 'EUAI-Art.20', name: 'Corrective Actions and Duty of Information', category: 'incident' },
792
+ { id: 'EUAI-Art.21', name: 'Cooperation with Competent Authorities', category: 'governance' },
793
+ { id: 'EUAI-Art.22', name: 'Authorized Representatives of Non-EU Providers', category: 'governance' },
794
+ { id: 'EUAI-Art.23', name: 'Obligations of Importers', category: 'governance' },
795
+ { id: 'EUAI-Art.24', name: 'Obligations of Distributors', category: 'governance' },
796
+ { id: 'EUAI-Art.25', name: 'Responsibilities Along the AI Value Chain', category: 'governance' },
797
+ { id: 'EUAI-Art.26', name: 'Obligations of Deployers of High-Risk AI', category: 'governance' },
798
+ { id: 'EUAI-Art.27', name: 'Fundamental Rights Impact Assessment for High-Risk AI', category: 'risk' },
799
+ { id: 'EUAI-Art.40', name: 'Harmonized Standards and Presumption of Conformity', category: 'testing' },
800
+ { id: 'EUAI-Art.41', name: 'Common Specifications', category: 'testing' },
801
+ { id: 'EUAI-Art.43', name: 'Conformity Assessment for High-Risk AI', category: 'testing' },
802
+ { id: 'EUAI-Art.44', name: 'Certificates Issued by Notified Bodies', category: 'testing' },
803
+ { id: 'EUAI-Art.47', name: 'EU Declaration of Conformity', category: 'governance' },
804
+ { id: 'EUAI-Art.48', name: 'CE Marking of Conformity', category: 'governance' },
805
+ { id: 'EUAI-Art.49', name: 'Registration in EU Database', category: 'governance' },
806
+ { id: 'EUAI-Art.50a', name: 'Transparency: AI-Generated Content Disclosure', category: 'governance' },
807
+ { id: 'EUAI-Art.50b', name: 'Transparency: Deepfake Labeling Requirement', category: 'governance' },
808
+ { id: 'EUAI-Art.50c', name: 'Transparency: Emotion Recognition System Disclosure', category: 'governance' },
809
+ { id: 'EUAI-Art.50d', name: 'Transparency: Biometric Categorization System Disclosure', category: 'governance' },
810
+ { id: 'EUAI-Art.51', name: 'Classification of GPAI Models with Systemic Risk', category: 'risk' },
811
+ { id: 'EUAI-Art.52', name: 'Obligations for All GPAI Model Providers', category: 'governance' },
812
+ { id: 'EUAI-Art.53', name: 'Technical Documentation for GPAI Models', category: 'governance' },
813
+ { id: 'EUAI-Art.54', name: 'Copyright Policy and Training Data Summary for GPAI', category: 'data' },
814
+ { id: 'EUAI-Art.55', name: 'Additional Obligations for GPAI with Systemic Risk', category: 'risk' },
815
+ { id: 'EUAI-Art.56', name: 'Codes of Practice for GPAI Providers', category: 'governance' },
816
+ { id: 'EUAI-Art.61', name: 'Post-Market Monitoring System by Providers', category: 'testing' },
817
+ { id: 'EUAI-Art.62', name: 'Reporting of Serious Incidents', category: 'incident' },
818
+ { id: 'EUAI-Art.69', name: 'Codes of Conduct for Non-High-Risk AI', category: 'governance' },
819
+ { id: 'EUAI-Art.71', name: 'Fines for Prohibited AI Practices (up to €35M or 7% turnover)', category: 'governance' },
820
+ { id: 'EUAI-Art.72', name: 'Fines for Non-Compliance with High-Risk Requirements', category: 'governance' },
821
+ { id: 'EUAI-Art.78', name: 'Confidentiality of Information and Data', category: 'data' },
822
+ { id: 'EUAI-Art.83', name: 'AI Regulatory Sandboxes', category: 'testing' },
823
+ { id: 'EUAI-Art.85', name: 'Transitional Provisions — Compliance Timeline', category: 'governance' },
824
+ ];
825
+
826
+ export const SWIFT_CSP_CONTROLS = [
827
+ { id: 'SWIFT-1.1', name: 'SWIFT Environment Protection', category: 'network' },
828
+ { id: 'SWIFT-1.2', name: 'Operating System Privileged Account Control', category: 'access' },
829
+ { id: 'SWIFT-1.3', name: 'Virtualisation Platform Protection', category: 'config' },
830
+ { id: 'SWIFT-1.4', name: 'Restriction of Internet Access', category: 'network' },
831
+ { id: 'SWIFT-2.1', name: 'Internal Data Flow Security', category: 'crypto' },
832
+ { id: 'SWIFT-2.2', name: 'Security Updates', category: 'vuln' },
833
+ { id: 'SWIFT-2.3', name: 'System Hardening', category: 'config' },
834
+ { id: 'SWIFT-2.4A', name: 'Back Office Data Flow Security', category: 'crypto' },
835
+ { id: 'SWIFT-2.6', name: 'Operator Session Confidentiality and Integrity', category: 'crypto' },
836
+ { id: 'SWIFT-2.7', name: 'Vulnerability Scanning', category: 'vuln' },
837
+ { id: 'SWIFT-2.8A', name: 'Critical Activity Outsourcing', category: 'governance' },
838
+ { id: 'SWIFT-2.9A', name: 'Transaction Business Controls', category: 'monitoring' },
839
+ { id: 'SWIFT-3.1', name: 'Physical Security', category: 'physical' },
840
+ { id: 'SWIFT-4.1', name: 'Password Policy', category: 'auth' },
841
+ { id: 'SWIFT-4.2', name: 'Multi-Factor Authentication', category: 'auth' },
842
+ { id: 'SWIFT-5.1', name: 'Logical Access Control', category: 'access' },
843
+ { id: 'SWIFT-5.2', name: 'Token Management', category: 'auth' },
844
+ { id: 'SWIFT-5.4', name: 'Physical and Logical Password Storage', category: 'auth' },
845
+ { id: 'SWIFT-6.1', name: 'Malware Protection', category: 'malware' },
846
+ { id: 'SWIFT-6.2', name: 'Software Integrity', category: 'code' },
847
+ { id: 'SWIFT-6.3', name: 'Database Integrity', category: 'data' },
848
+ { id: 'SWIFT-6.4', name: 'Logging and Monitoring', category: 'logging' },
849
+ { id: 'SWIFT-6.5A', name: 'Intrusion Detection', category: 'monitoring' },
850
+ { id: 'SWIFT-7.1', name: 'Cyber Incident Response Planning', category: 'incident' },
851
+ { id: 'SWIFT-7.2', name: 'Security Training and Awareness', category: 'training' },
852
+ { id: 'SWIFT-7.3A', name: 'Penetration Testing', category: 'testing' },
853
+ { id: 'SWIFT-7.4A', name: 'Scenario-Based Risk Assessment', category: 'risk' },
854
+ ];
855
+
856
+ export const NIST_800_171_CONTROLS = [
857
+ { id: '3.1.1', name: 'Limit System Access to Authorized Users', category: 'access' },
858
+ { id: '3.1.2', name: 'Limit System Access to Authorized Functions', category: 'access' },
859
+ { id: '3.1.3', name: 'Control CUI Flow', category: 'data' },
860
+ { id: '3.1.4', name: 'Separate Duties of Individuals', category: 'access' },
861
+ { id: '3.1.5', name: 'Least Privilege', category: 'access' },
862
+ { id: '3.1.6', name: 'Use Non-Privileged Accounts', category: 'access' },
863
+ { id: '3.1.7', name: 'Prevent Non-Privileged Users from Executing Privileged Functions', category: 'access' },
864
+ { id: '3.1.8', name: 'Limit Unsuccessful Logon Attempts', category: 'auth' },
865
+ { id: '3.1.12', name: 'Monitor and Control Remote Access Sessions', category: 'network' },
866
+ { id: '3.1.13', name: 'Employ Cryptographic Mechanisms for Remote Access', category: 'crypto' },
867
+ { id: '3.1.14', name: 'Route Remote Access via Managed Access Control Points', category: 'network' },
868
+ { id: '3.1.20', name: 'Verify and Control Connections to External Systems', category: 'network' },
869
+ { id: '3.1.22', name: 'Control CUI Posted or Processed on Publicly Accessible Systems', category: 'data' },
870
+ { id: '3.3.1', name: 'Create and Retain System Audit Logs', category: 'logging' },
871
+ { id: '3.3.2', name: 'Ensure Actions of Individual Users Can Be Traced', category: 'logging' },
872
+ { id: '3.4.1', name: 'Establish and Maintain Baseline Configurations', category: 'config' },
873
+ { id: '3.4.2', name: 'Establish and Enforce Configuration Settings', category: 'config' },
874
+ { id: '3.5.1', name: 'Identify System Users and Processes', category: 'auth' },
875
+ { id: '3.5.2', name: 'Authenticate Users and Processes', category: 'auth' },
876
+ { id: '3.5.3', name: 'Use Multi-Factor Authentication', category: 'auth' },
877
+ { id: '3.6.1', name: 'Establish Incident-Handling Capability', category: 'incident' },
878
+ { id: '3.6.2', name: 'Track, Document, and Report Incidents', category: 'incident' },
879
+ { id: '3.7.1', name: 'Perform Maintenance on Organizational Systems', category: 'config' },
880
+ { id: '3.8.1', name: 'Protect System Media (Paper and Digital)', category: 'data' },
881
+ { id: '3.8.3', name: 'Sanitize or Destroy System Media', category: 'data' },
882
+ { id: '3.10.1', name: 'Limit Physical Access to Systems', category: 'physical' },
883
+ { id: '3.11.1', name: 'Periodically Assess Risk', category: 'risk' },
884
+ { id: '3.11.2', name: 'Scan for Vulnerabilities Periodically', category: 'vuln' },
885
+ { id: '3.12.1', name: 'Periodically Assess Security Controls', category: 'testing' },
886
+ { id: '3.13.1', name: 'Monitor and Control Communications at External Boundaries', category: 'network' },
887
+ { id: '3.13.8', name: 'Implement Cryptographic Mechanisms for CUI in Transit', category: 'crypto' },
888
+ { id: '3.13.11', name: 'Employ FIPS-Validated Cryptography for CUI', category: 'crypto' },
889
+ { id: '3.14.1', name: 'Identify, Report, and Correct System Flaws', category: 'vuln' },
890
+ { id: '3.14.2', name: 'Provide Protection from Malicious Code', category: 'malware' },
891
+ { id: '3.14.3', name: 'Monitor System Security Alerts and Advisories', category: 'monitoring' },
892
+ { id: '3.14.6', name: 'Monitor Organizational Systems', category: 'monitoring' },
893
+ { id: '3.14.7', name: 'Identify Unauthorized Use of Systems', category: 'monitoring' },
894
+ ];
895
+
896
+ export const ISO_27017_CONTROLS = [
897
+ { id: 'CLD.6.3.1', name: 'Shared Roles and Responsibilities in Cloud', category: 'governance' },
898
+ { id: 'CLD.8.1.5', name: 'Removal of Cloud Service Customer Assets', category: 'data' },
899
+ { id: 'CLD.9.5.1', name: 'Segregation in Virtual Computing Environments', category: 'config' },
900
+ { id: 'CLD.9.5.2', name: 'Virtual Machine Hardening', category: 'config' },
901
+ { id: 'CLD.12.1.5', name: "Administrator's Operational Security", category: 'access' },
902
+ { id: 'CLD.12.4.5', name: 'Monitoring of Cloud Services', category: 'monitoring' },
903
+ { id: 'CLD.13.1.4', name: 'Alignment of Security Management for Virtual and Physical Networks', category: 'network' },
904
+ { id: 'ISO27017-A.5.1', name: 'Cloud-Specific Policies for Information Security', category: 'governance' },
905
+ { id: 'ISO27017-A.8.1', name: 'Cloud Asset Inventory', category: 'inventory' },
906
+ { id: 'ISO27017-A.9.2', name: 'Cloud User Access Management', category: 'access' },
907
+ { id: 'ISO27017-A.10.1', name: 'Cryptographic Controls in Cloud', category: 'crypto' },
908
+ { id: 'ISO27017-A.12.4', name: 'Cloud Logging and Monitoring', category: 'logging' },
909
+ ];
910
+
911
+ export const ISO_27018_CONTROLS = [
912
+ { id: 'ISO27018-A.1', name: 'Consent and Choice', category: 'data' },
913
+ { id: 'ISO27018-A.2', name: 'Purpose Legitimacy and Specification', category: 'data' },
914
+ { id: 'ISO27018-A.3', name: 'Collection Limitation', category: 'data' },
915
+ { id: 'ISO27018-A.4', name: 'Data Minimization', category: 'data' },
916
+ { id: 'ISO27018-A.5', name: 'Use, Retention and Disclosure Limitation', category: 'data' },
917
+ { id: 'ISO27018-A.6', name: 'Accuracy and Quality', category: 'data' },
918
+ { id: 'ISO27018-A.7', name: 'Openness, Transparency and Notice', category: 'governance' },
919
+ { id: 'ISO27018-A.8', name: 'Individual Participation and Access', category: 'access' },
920
+ { id: 'ISO27018-A.9', name: 'Accountability', category: 'governance' },
921
+ { id: 'ISO27018-A.10', name: 'Information Security', category: 'crypto' },
922
+ { id: 'ISO27018-A.11', name: 'Privacy Compliance', category: 'governance' },
923
+ ];
924
+
925
+ export const ISO_27701_CONTROLS = [
926
+ { id: 'ISO27701-5.2', name: 'PIMS-Specific Policies', category: 'governance' },
927
+ { id: 'ISO27701-5.4', name: 'PII Risk Assessment', category: 'risk' },
928
+ { id: 'ISO27701-6.2', name: 'Conditions for Collection and Processing', category: 'data' },
929
+ { id: 'ISO27701-6.3', name: 'PII Controller Obligations to PII Principals', category: 'data' },
930
+ { id: 'ISO27701-6.4', name: 'Privacy by Design and Default', category: 'data' },
931
+ { id: 'ISO27701-6.5', name: 'PII Sharing, Transfer and Disclosure', category: 'data' },
932
+ { id: 'ISO27701-7.2', name: 'PII Processor Conditions for Processing', category: 'data' },
933
+ { id: 'ISO27701-7.3', name: 'PII Processor Obligations to PII Controllers', category: 'governance' },
934
+ { id: 'ISO27701-7.4', name: 'PII Processor Sub-Processor Management', category: 'governance' },
935
+ { id: 'ISO27701-7.5', name: 'PII Transfer to Third Countries', category: 'data' },
936
+ { id: 'ISO27701-8.2', name: 'Individual Rights Management', category: 'access' },
937
+ { id: 'ISO27701-8.3', name: 'Data Breach Notification', category: 'incident' },
938
+ { id: 'ISO27701-8.4', name: 'DPIA (Data Protection Impact Assessment)', category: 'risk' },
939
+ { id: 'ISO27701-8.5', name: 'DPO (Data Protection Officer)', category: 'governance' },
940
+ ];
941
+
942
+ export const CSA_CCM_CONTROLS = [
943
+ { id: 'CCM-AIS-01', name: 'Application and Interface Security — Application Security', category: 'code' },
944
+ { id: 'CCM-AIS-02', name: 'Application and Interface Security — Customer Access Requirements', category: 'access' },
945
+ { id: 'CCM-AAC-01', name: 'Audit Assurance and Compliance — Audit Planning', category: 'testing' },
946
+ { id: 'CCM-AAC-02', name: 'Audit Assurance and Compliance — Independent Audits', category: 'testing' },
947
+ { id: 'CCM-BCR-01', name: 'Business Continuity Management — Business Continuity Planning', category: 'recovery' },
948
+ { id: 'CCM-BCR-02', name: 'Business Continuity Management — Business Continuity Testing', category: 'testing' },
949
+ { id: 'CCM-CCC-01', name: 'Change Control and Configuration Management — New Development', category: 'config' },
950
+ { id: 'CCM-CCC-02', name: 'Change Control and Configuration Management — Outsourced Development', category: 'code' },
951
+ { id: 'CCM-DSP-01', name: 'Data Security and Privacy — Security and Privacy Policy', category: 'data' },
952
+ { id: 'CCM-DSP-02', name: 'Data Security and Privacy — Secure Disposal', category: 'data' },
953
+ { id: 'CCM-DSP-03', name: 'Data Security and Privacy — Data Inventory', category: 'inventory' },
954
+ { id: 'CCM-DSP-04', name: 'Data Security and Privacy — Classification', category: 'data' },
955
+ { id: 'CCM-DSP-05', name: 'Data Security and Privacy — Data Flow Documentation', category: 'data' },
956
+ { id: 'CCM-GRC-01', name: 'GRC — Governance Program', category: 'governance' },
957
+ { id: 'CCM-GRC-02', name: 'GRC — Risk Management Program', category: 'risk' },
958
+ { id: 'CCM-HRS-01', name: 'Human Resources — Background Screening', category: 'governance' },
959
+ { id: 'CCM-IAM-01', name: 'Identity and Access Management — User Access Policy', category: 'access' },
960
+ { id: 'CCM-IAM-02', name: 'Identity and Access Management — Strong Authentication', category: 'auth' },
961
+ { id: 'CCM-IVS-01', name: 'Infrastructure and Virtualisation Security — Audit Logging', category: 'logging' },
962
+ { id: 'CCM-IVS-02', name: 'Infrastructure and Virtualisation Security — Change Detection', category: 'monitoring' },
963
+ { id: 'CCM-IVS-03', name: 'Infrastructure and Virtualisation Security — Network Security', category: 'network' },
964
+ { id: 'CCM-LOG-01', name: 'Logging and Monitoring — Logging and Monitoring Policy', category: 'logging' },
965
+ { id: 'CCM-LOG-02', name: 'Logging and Monitoring — SIEM', category: 'monitoring' },
966
+ { id: 'CCM-SEF-01', name: 'Security Incident Management — Incident Management Policy', category: 'incident' },
967
+ { id: 'CCM-SEF-02', name: 'Security Incident Management — Incident Response Plan', category: 'incident' },
968
+ { id: 'CCM-STA-01', name: 'Supply Chain — Supply Chain Governance', category: 'governance' },
969
+ { id: 'CCM-TVM-01', name: 'Threat and Vulnerability Management — Vulnerability Management Policy', category: 'vuln' },
970
+ { id: 'CCM-TVM-02', name: 'Threat and Vulnerability Management — Vulnerability Scanning', category: 'vuln' },
971
+ { id: 'CCM-UEM-01', name: 'Universal Endpoint Management — Endpoint Policy', category: 'config' },
972
+ ];
973
+
974
+ export const NERC_CIP_CONTROLS = [
975
+ { id: 'CIP-002-6', name: 'BES Cyber System Categorization', category: 'inventory' },
976
+ { id: 'CIP-003-8', name: 'Security Management Controls', category: 'governance' },
977
+ { id: 'CIP-004-7', name: 'Personnel and Training', category: 'training' },
978
+ { id: 'CIP-005-7', name: 'Electronic Security Perimeter(s)', category: 'network' },
979
+ { id: 'CIP-006-6', name: 'Physical Security of BES Cyber Systems', category: 'physical' },
980
+ { id: 'CIP-007-6', name: 'System Security Management', category: 'config' },
981
+ { id: 'CIP-008-6', name: 'Incident Reporting and Response Planning', category: 'incident' },
982
+ { id: 'CIP-009-6', name: 'Recovery Plans for BES Cyber Systems', category: 'recovery' },
983
+ { id: 'CIP-010-4', name: 'Configuration Change Mgmt and Vulnerability Assessments', category: 'config' },
984
+ { id: 'CIP-011-3', name: 'Information Protection', category: 'data' },
985
+ { id: 'CIP-012-1', name: 'Communications between Control Centers', category: 'crypto' },
986
+ { id: 'CIP-013-2', name: 'Supply Chain Risk Management', category: 'governance' },
987
+ { id: 'CIP-014-3', name: 'Physical Security', category: 'physical' },
988
+ ];
989
+
990
+ export const HITRUST_CSF_CONTROLS = [
991
+ { id: 'HITRUST-01.a', name: 'Access Control Policy', category: 'access' },
992
+ { id: 'HITRUST-01.b', name: 'User Registration', category: 'access' },
993
+ { id: 'HITRUST-01.d', name: 'User Password Management', category: 'auth' },
994
+ { id: 'HITRUST-01.j', name: 'On-Demand Access Control', category: 'access' },
995
+ { id: 'HITRUST-01.q', name: 'User Authentication for External Connections', category: 'auth' },
996
+ { id: 'HITRUST-01.v', name: 'Information Access Restriction', category: 'access' },
997
+ { id: 'HITRUST-02.a', name: 'Management of Removable Media', category: 'data' },
998
+ { id: 'HITRUST-02.d', name: 'Physical Entry Controls', category: 'physical' },
999
+ { id: 'HITRUST-03.a', name: 'Risk Management Program', category: 'risk' },
1000
+ { id: 'HITRUST-03.b', name: 'Performing Risk Assessments', category: 'risk' },
1001
+ { id: 'HITRUST-04.a', name: 'Information Security Policy', category: 'governance' },
1002
+ { id: 'HITRUST-05.a', name: 'Management Direction for Information Security', category: 'governance' },
1003
+ { id: 'HITRUST-06.a', name: 'Identification of Applicable Legislation', category: 'governance' },
1004
+ { id: 'HITRUST-06.d', name: 'Data Protection and Privacy', category: 'data' },
1005
+ { id: 'HITRUST-07.a', name: 'Inventory of Assets', category: 'inventory' },
1006
+ { id: 'HITRUST-08.a', name: 'Reporting Information Security Events', category: 'incident' },
1007
+ { id: 'HITRUST-08.b', name: 'Reporting Information Security Weaknesses', category: 'incident' },
1008
+ { id: 'HITRUST-09.a', name: 'Documented Operating Procedures', category: 'config' },
1009
+ { id: 'HITRUST-09.ab', name: 'Monitoring System Use', category: 'monitoring' },
1010
+ { id: 'HITRUST-09.m', name: 'Network Controls', category: 'network' },
1011
+ { id: 'HITRUST-10.a', name: 'Security Requirements Analysis', category: 'code' },
1012
+ { id: 'HITRUST-10.h', name: 'Control of Technical Vulnerabilities', category: 'vuln' },
1013
+ { id: 'HITRUST-11.a', name: 'Reporting Information Security Events', category: 'incident' },
1014
+ { id: 'HITRUST-11.c', name: 'Responsibilities and Procedures', category: 'incident' },
1015
+ ];
1016
+
1017
+ export const CIS_CLOUD_CONTROLS = [
1018
+ { id: 'CIS-AWS-1', name: 'Identity and Access Management (AWS)', category: 'access' },
1019
+ { id: 'CIS-AWS-2', name: 'Storage (S3/EBS)', category: 'data' },
1020
+ { id: 'CIS-AWS-3', name: 'Logging (CloudTrail/CloudWatch)', category: 'logging' },
1021
+ { id: 'CIS-AWS-4', name: 'Monitoring (GuardDuty/Config)', category: 'monitoring' },
1022
+ { id: 'CIS-AWS-5', name: 'Networking (VPC/SG/NACLs)', category: 'network' },
1023
+ { id: 'CIS-AZURE-1', name: 'Identity and Access Management (Azure)', category: 'access' },
1024
+ { id: 'CIS-AZURE-2', name: 'Microsoft Defender for Cloud', category: 'monitoring' },
1025
+ { id: 'CIS-AZURE-3', name: 'Storage Accounts (Azure)', category: 'data' },
1026
+ { id: 'CIS-AZURE-4', name: 'Database Services (Azure)', category: 'data' },
1027
+ { id: 'CIS-AZURE-5', name: 'Logging and Monitoring (Azure)', category: 'logging' },
1028
+ { id: 'CIS-AZURE-6', name: 'Networking (Azure)', category: 'network' },
1029
+ { id: 'CIS-GCP-1', name: 'Identity and Access Management (GCP)', category: 'access' },
1030
+ { id: 'CIS-GCP-2', name: 'Logging and Monitoring (GCP)', category: 'logging' },
1031
+ { id: 'CIS-GCP-3', name: 'Networking (GCP)', category: 'network' },
1032
+ { id: 'CIS-GCP-4', name: 'Virtual Machines (GCP)', category: 'config' },
1033
+ { id: 'CIS-GCP-5', name: 'Storage (GCP)', category: 'data' },
1034
+ { id: 'CIS-GCP-6', name: 'Cloud SQL (GCP)', category: 'data' },
1035
+ { id: 'CIS-K8S-1', name: 'Control Plane Components', category: 'config' },
1036
+ { id: 'CIS-K8S-2', name: 'etcd', category: 'config' },
1037
+ { id: 'CIS-K8S-3', name: 'Control Plane Configuration', category: 'config' },
1038
+ { id: 'CIS-K8S-4', name: 'Worker Nodes', category: 'config' },
1039
+ { id: 'CIS-K8S-5', name: 'Policies', category: 'access' },
1040
+ ];
1041
+
1042
+ export const NIST_800_82_CONTROLS = [
1043
+ { id: '800-82-3.1', name: 'ICS Risk Management', category: 'risk' },
1044
+ { id: '800-82-3.2', name: 'ICS Security Architecture', category: 'network' },
1045
+ { id: '800-82-4.1', name: 'ICS Network Segmentation', category: 'network' },
1046
+ { id: '800-82-4.2', name: 'ICS Firewall Configuration', category: 'network' },
1047
+ { id: '800-82-4.3', name: 'ICS DMZ Architecture', category: 'network' },
1048
+ { id: '800-82-5.1', name: 'ICS Access Control', category: 'access' },
1049
+ { id: '800-82-5.2', name: 'ICS Authentication', category: 'auth' },
1050
+ { id: '800-82-6.1', name: 'ICS Monitoring and Logging', category: 'monitoring' },
1051
+ { id: '800-82-6.2', name: 'ICS Incident Response', category: 'incident' },
1052
+ { id: '800-82-7.1', name: 'ICS Patch Management', category: 'vuln' },
1053
+ { id: '800-82-7.2', name: 'ICS System Hardening', category: 'config' },
1054
+ { id: '800-82-8.1', name: 'ICS Physical Security', category: 'physical' },
1055
+ { id: '800-82-8.2', name: 'ICS Media Protection', category: 'data' },
1056
+ ];
1057
+
1058
+ export const OWASP_MASVS_CONTROLS = [
1059
+ { id: 'MASVS-STORAGE-1', name: 'Secure Data Storage', category: 'data' },
1060
+ { id: 'MASVS-STORAGE-2', name: 'Prevention of Data Leakage', category: 'data' },
1061
+ { id: 'MASVS-CRYPTO-1', name: 'Use of Proven Cryptography', category: 'crypto' },
1062
+ { id: 'MASVS-CRYPTO-2', name: 'Cryptographic Key Management', category: 'crypto' },
1063
+ { id: 'MASVS-AUTH-1', name: 'Authentication and Session Management', category: 'auth' },
1064
+ { id: 'MASVS-AUTH-2', name: 'Biometric Authentication', category: 'auth' },
1065
+ { id: 'MASVS-NETWORK-1', name: 'Secure Network Communication', category: 'crypto' },
1066
+ { id: 'MASVS-NETWORK-2', name: 'Certificate Pinning', category: 'crypto' },
1067
+ { id: 'MASVS-PLATFORM-1', name: 'Platform Interaction Security', category: 'code' },
1068
+ { id: 'MASVS-PLATFORM-2', name: 'WebView Security', category: 'code' },
1069
+ { id: 'MASVS-PLATFORM-3', name: 'Deep Link Validation', category: 'code' },
1070
+ { id: 'MASVS-CODE-1', name: 'Secure Coding Practices', category: 'code' },
1071
+ { id: 'MASVS-CODE-2', name: 'Code Integrity and Tampering Detection', category: 'code' },
1072
+ { id: 'MASVS-CODE-3', name: 'Anti-Reverse Engineering', category: 'code' },
1073
+ { id: 'MASVS-RESILIENCE-1', name: 'Runtime Integrity Checks', category: 'code' },
1074
+ { id: 'MASVS-RESILIENCE-2', name: 'Device Integrity Verification', category: 'config' },
1075
+ { id: 'MASVS-PRIVACY-1', name: 'Minimization of PII Collection', category: 'data' },
1076
+ { id: 'MASVS-PRIVACY-2', name: 'User Consent and Transparency', category: 'data' },
1077
+ ];
1078
+
1079
+ export const SANS_TOP_25_CONTROLS = [
1080
+ { id: 'CWE-787', name: 'Out-of-bounds Write', category: 'code' },
1081
+ { id: 'CWE-79', name: 'Improper Neutralization of Input During Web Page Generation (XSS)', category: 'injection' },
1082
+ { id: 'CWE-89', name: 'SQL Injection', category: 'injection' },
1083
+ { id: 'CWE-416', name: 'Use After Free', category: 'code' },
1084
+ { id: 'CWE-78', name: 'OS Command Injection', category: 'injection' },
1085
+ { id: 'CWE-20', name: 'Improper Input Validation', category: 'code' },
1086
+ { id: 'CWE-125', name: 'Out-of-bounds Read', category: 'code' },
1087
+ { id: 'CWE-22', name: 'Path Traversal', category: 'injection' },
1088
+ { id: 'CWE-352', name: 'Cross-Site Request Forgery (CSRF)', category: 'code' },
1089
+ { id: 'CWE-434', name: 'Unrestricted Upload of File with Dangerous Type', category: 'code' },
1090
+ { id: 'CWE-862', name: 'Missing Authorization', category: 'access' },
1091
+ { id: 'CWE-476', name: 'NULL Pointer Dereference', category: 'code' },
1092
+ { id: 'CWE-287', name: 'Improper Authentication', category: 'auth' },
1093
+ { id: 'CWE-190', name: 'Integer Overflow or Wraparound', category: 'code' },
1094
+ { id: 'CWE-502', name: 'Deserialization of Untrusted Data', category: 'code' },
1095
+ { id: 'CWE-77', name: 'Command Injection', category: 'injection' },
1096
+ { id: 'CWE-119', name: 'Improper Restriction of Operations within Bounds of Memory Buffer', category: 'code' },
1097
+ { id: 'CWE-798', name: 'Use of Hard-coded Credentials', category: 'auth' },
1098
+ { id: 'CWE-918', name: 'Server-Side Request Forgery (SSRF)', category: 'network' },
1099
+ { id: 'CWE-306', name: 'Missing Authentication for Critical Function', category: 'auth' },
1100
+ { id: 'CWE-362', name: 'Concurrent Execution Using Shared Resource (Race Condition)', category: 'code' },
1101
+ { id: 'CWE-269', name: 'Improper Privilege Management', category: 'access' },
1102
+ { id: 'CWE-94', name: 'Improper Control of Generation of Code (Code Injection)', category: 'injection' },
1103
+ { id: 'CWE-863', name: 'Incorrect Authorization', category: 'access' },
1104
+ { id: 'CWE-276', name: 'Incorrect Default Permissions', category: 'access' },
1105
+ ];
1106
+
1107
+ export const PTES_CONTROLS = [
1108
+ { id: 'PTES-1', name: 'Pre-Engagement Interactions', category: 'governance' },
1109
+ { id: 'PTES-2.1', name: 'Intelligence Gathering — OSINT', category: 'monitoring' },
1110
+ { id: 'PTES-2.2', name: 'Intelligence Gathering — Footprinting', category: 'monitoring' },
1111
+ { id: 'PTES-2.3', name: 'Intelligence Gathering — Identification of Protection Mechanisms', category: 'monitoring' },
1112
+ { id: 'PTES-3', name: 'Threat Modeling', category: 'risk' },
1113
+ { id: 'PTES-4.1', name: 'Vulnerability Analysis — Testing', category: 'vuln' },
1114
+ { id: 'PTES-4.2', name: 'Vulnerability Analysis — Validation', category: 'vuln' },
1115
+ { id: 'PTES-5.1', name: 'Exploitation — Precision Strike', category: 'testing' },
1116
+ { id: 'PTES-5.2', name: 'Exploitation — Customized Exploitation', category: 'testing' },
1117
+ { id: 'PTES-6.1', name: 'Post-Exploitation — Infrastructure Analysis', category: 'testing' },
1118
+ { id: 'PTES-6.2', name: 'Post-Exploitation — Pillaging', category: 'data' },
1119
+ { id: 'PTES-6.3', name: 'Post-Exploitation — Persistence', category: 'testing' },
1120
+ { id: 'PTES-7', name: 'Reporting', category: 'governance' },
1121
+ ];
1122
+
1123
+ export const OSSTMM_CONTROLS = [
1124
+ { id: 'OSSTMM-1', name: 'Human Security Testing', category: 'testing' },
1125
+ { id: 'OSSTMM-2', name: 'Physical Security Testing', category: 'physical' },
1126
+ { id: 'OSSTMM-3', name: 'Wireless Communications Testing', category: 'network' },
1127
+ { id: 'OSSTMM-4', name: 'Telecommunications Testing', category: 'network' },
1128
+ { id: 'OSSTMM-5', name: 'Data Networks Testing', category: 'network' },
1129
+ { id: 'OSSTMM-6', name: 'Compliance Testing', category: 'testing' },
1130
+ { id: 'OSSTMM-7', name: 'Process Verification', category: 'governance' },
1131
+ { id: 'OSSTMM-8', name: 'Posture Assessment', category: 'risk' },
1132
+ { id: 'OSSTMM-9', name: 'Controls Verification', category: 'testing' },
1133
+ { id: 'OSSTMM-10', name: 'Actual Security (rav) Calculation', category: 'risk' },
1134
+ ];
1135
+
1136
+ export const SOX_IT_CONTROLS = [
1137
+ { id: 'SOX-ITGC-1', name: 'Access to Programs and Data', category: 'access' },
1138
+ { id: 'SOX-ITGC-2', name: 'Program Changes', category: 'config' },
1139
+ { id: 'SOX-ITGC-3', name: 'Program Development', category: 'code' },
1140
+ { id: 'SOX-ITGC-4', name: 'Computer Operations', category: 'config' },
1141
+ { id: 'SOX-302', name: 'CEO/CFO Certifications', category: 'governance' },
1142
+ { id: 'SOX-404', name: 'Management Assessment of Internal Controls', category: 'testing' },
1143
+ { id: 'SOX-IT-AC-1', name: 'Application Input Controls', category: 'code' },
1144
+ { id: 'SOX-IT-AC-2', name: 'Application Processing Controls', category: 'code' },
1145
+ { id: 'SOX-IT-AC-3', name: 'Application Output Controls', category: 'code' },
1146
+ { id: 'SOX-IT-AC-4', name: 'Segregation of Duties in Applications', category: 'access' },
1147
+ { id: 'SOX-IT-LOG', name: 'IT Audit Logging and Review', category: 'logging' },
1148
+ { id: 'SOX-IT-BCP', name: 'IT Business Continuity Planning', category: 'recovery' },
1149
+ ];
1150
+
1151
+ export const COBIT_CONTROLS = [
1152
+ { id: 'COBIT-EDM01', name: 'Ensured Governance Framework Setting and Maintenance', category: 'governance' },
1153
+ { id: 'COBIT-EDM03', name: 'Ensured Risk Optimization', category: 'risk' },
1154
+ { id: 'COBIT-APO01', name: 'Managed I&T Management Framework', category: 'governance' },
1155
+ { id: 'COBIT-APO12', name: 'Managed Risk', category: 'risk' },
1156
+ { id: 'COBIT-APO13', name: 'Managed Security', category: 'governance' },
1157
+ { id: 'COBIT-APO14', name: 'Managed Data', category: 'data' },
1158
+ { id: 'COBIT-BAI01', name: 'Managed Programs', category: 'governance' },
1159
+ { id: 'COBIT-BAI03', name: 'Managed Solutions Identification and Build', category: 'code' },
1160
+ { id: 'COBIT-BAI06', name: 'Managed IT Changes', category: 'config' },
1161
+ { id: 'COBIT-BAI10', name: 'Managed Configuration', category: 'config' },
1162
+ { id: 'COBIT-DSS01', name: 'Managed Operations', category: 'config' },
1163
+ { id: 'COBIT-DSS02', name: 'Managed Service Requests and Incidents', category: 'incident' },
1164
+ { id: 'COBIT-DSS03', name: 'Managed Problems', category: 'incident' },
1165
+ { id: 'COBIT-DSS04', name: 'Managed Continuity', category: 'recovery' },
1166
+ { id: 'COBIT-DSS05', name: 'Managed Security Services', category: 'monitoring' },
1167
+ { id: 'COBIT-DSS06', name: 'Managed Business Process Controls', category: 'access' },
1168
+ { id: 'COBIT-MEA01', name: 'Managed Performance and Conformance Monitoring', category: 'monitoring' },
1169
+ { id: 'COBIT-MEA02', name: 'Managed System of Internal Control', category: 'testing' },
1170
+ { id: 'COBIT-MEA03', name: 'Managed Compliance with External Requirements', category: 'governance' },
1171
+ { id: 'COBIT-MEA04', name: 'Managed Assurance', category: 'testing' },
1172
+ ];
1173
+
1174
+ export const ITIL_SECURITY_CONTROLS = [
1175
+ { id: 'ITIL-ISM-1', name: 'Information Security Policy', category: 'governance' },
1176
+ { id: 'ITIL-ISM-2', name: 'Information Security Management System', category: 'governance' },
1177
+ { id: 'ITIL-ISM-3', name: 'Security Controls Implementation', category: 'config' },
1178
+ { id: 'ITIL-ISM-4', name: 'Security Incident Management', category: 'incident' },
1179
+ { id: 'ITIL-ISM-5', name: 'Security Evaluation and Audit', category: 'testing' },
1180
+ { id: 'ITIL-ISM-6', name: 'Security Reporting', category: 'monitoring' },
1181
+ { id: 'ITIL-CHG-1', name: 'Change Enablement — Authorization', category: 'config' },
1182
+ { id: 'ITIL-CHG-2', name: 'Change Enablement — Risk Assessment', category: 'risk' },
1183
+ { id: 'ITIL-INC-1', name: 'Incident Management — Detection and Logging', category: 'incident' },
1184
+ { id: 'ITIL-INC-2', name: 'Incident Management — Resolution', category: 'incident' },
1185
+ { id: 'ITIL-PRB-1', name: 'Problem Management — Root Cause Analysis', category: 'incident' },
1186
+ { id: 'ITIL-SLM-1', name: 'Service Level Management — Security SLAs', category: 'governance' },
1187
+ { id: 'ITIL-CAP-1', name: 'Capacity and Performance — Security Monitoring', category: 'monitoring' },
1188
+ { id: 'ITIL-AVL-1', name: 'Availability Management — Security Availability', category: 'recovery' },
1189
+ { id: 'ITIL-CNT-1', name: 'IT Service Continuity Management', category: 'recovery' },
1190
+ ];
1191
+
1192
+ export const SSDF_CONTROLS = [
1193
+ { id: 'PO.1', name: 'Define Security Requirements for Software Development', category: 'governance' },
1194
+ { id: 'PO.2', name: 'Implement Roles and Responsibilities', category: 'governance' },
1195
+ { id: 'PO.3', name: 'Implement Supporting Toolchains', category: 'code' },
1196
+ { id: 'PO.4', name: 'Define and Use Criteria for Software Security Checks', category: 'testing' },
1197
+ { id: 'PO.5', name: 'Implement and Maintain Secure Environments', category: 'config' },
1198
+ { id: 'PS.1', name: 'Protect All Forms of Code', category: 'code' },
1199
+ { id: 'PS.2', name: 'Provide a Mechanism for Verifying Software Release Integrity', category: 'code' },
1200
+ { id: 'PS.3', name: 'Archive and Protect Each Software Release', category: 'code' },
1201
+ { id: 'PW.1', name: 'Design Software to Meet Security Requirements', category: 'code' },
1202
+ { id: 'PW.2', name: 'Review the Software Design to Verify Security', category: 'testing' },
1203
+ { id: 'PW.4', name: 'Reuse Existing Well-Secured Software', category: 'code' },
1204
+ { id: 'PW.5', name: 'Create Source Code by Adhering to Secure Coding Practices', category: 'code' },
1205
+ { id: 'PW.6', name: 'Configure the Compilation, Interpreter, and Build Processes', category: 'config' },
1206
+ { id: 'PW.7', name: 'Review and/or Analyze Human-Readable Code', category: 'testing' },
1207
+ { id: 'PW.8', name: 'Test Executable Code', category: 'testing' },
1208
+ { id: 'PW.9', name: 'Configure Software to Have Secure Settings by Default', category: 'config' },
1209
+ { id: 'RV.1', name: 'Identify and Confirm Vulnerabilities on an Ongoing Basis', category: 'vuln' },
1210
+ { id: 'RV.2', name: 'Assess, Prioritize, and Remediate Vulnerabilities', category: 'vuln' },
1211
+ { id: 'RV.3', name: 'Analyze Vulnerabilities to Identify Root Causes', category: 'vuln' },
1212
+ ];
1213
+
1214
+ export const OWASP_ASVS_CONTROLS = [
1215
+ { id: 'V1.1', name: 'Secure Software Development Lifecycle', category: 'code' },
1216
+ { id: 'V1.2', name: 'Authentication Architecture', category: 'auth' },
1217
+ { id: 'V1.4', name: 'Access Control Architecture', category: 'access' },
1218
+ { id: 'V1.5', name: 'Input and Output Architecture', category: 'code' },
1219
+ { id: 'V1.6', name: 'Cryptographic Architecture', category: 'crypto' },
1220
+ { id: 'V1.7', name: 'Errors, Logging and Auditing Architecture', category: 'logging' },
1221
+ { id: 'V1.8', name: 'Data Protection and Privacy Architecture', category: 'data' },
1222
+ { id: 'V1.9', name: 'Communications Architecture', category: 'network' },
1223
+ { id: 'V1.10', name: 'Malicious Software Architecture', category: 'malware' },
1224
+ { id: 'V1.11', name: 'Business Logic Architecture', category: 'code' },
1225
+ { id: 'V1.12', name: 'Secure File Upload Architecture', category: 'code' },
1226
+ { id: 'V1.14', name: 'Configuration Architecture', category: 'config' },
1227
+ { id: 'V2.1', name: 'Password Security', category: 'auth' },
1228
+ { id: 'V2.2', name: 'General Authenticator Security', category: 'auth' },
1229
+ { id: 'V2.3', name: 'Authenticator Lifecycle', category: 'auth' },
1230
+ { id: 'V2.4', name: 'Credential Storage', category: 'crypto' },
1231
+ { id: 'V2.5', name: 'Credential Recovery', category: 'auth' },
1232
+ { id: 'V2.7', name: 'Out of Band Verifier', category: 'auth' },
1233
+ { id: 'V2.8', name: 'One-Time Verifier', category: 'auth' },
1234
+ { id: 'V2.9', name: 'Cryptographic Verifier', category: 'crypto' },
1235
+ { id: 'V2.10', name: 'Service Authentication', category: 'auth' },
1236
+ { id: 'V3.1', name: 'Fundamental Session Management', category: 'auth' },
1237
+ { id: 'V3.2', name: 'Session Binding', category: 'auth' },
1238
+ { id: 'V3.3', name: 'Session Termination', category: 'auth' },
1239
+ { id: 'V3.4', name: 'Cookie-Based Session Management', category: 'auth' },
1240
+ { id: 'V3.5', name: 'Token-Based Session Management', category: 'auth' },
1241
+ { id: 'V3.7', name: 'Defenses Against Session Management Exploits', category: 'auth' },
1242
+ { id: 'V4.1', name: 'General Access Control Design', category: 'access' },
1243
+ { id: 'V4.2', name: 'Operation Level Access Control', category: 'access' },
1244
+ { id: 'V4.3', name: 'Other Access Control Considerations', category: 'access' },
1245
+ { id: 'V5.1', name: 'Input Validation', category: 'code' },
1246
+ { id: 'V5.2', name: 'Sanitization and Sandboxing', category: 'code' },
1247
+ { id: 'V5.3', name: 'Output Encoding and Injection Prevention', category: 'injection' },
1248
+ { id: 'V5.4', name: 'Memory, String, and Unmanaged Code', category: 'code' },
1249
+ { id: 'V5.5', name: 'Deserialization Prevention', category: 'code' },
1250
+ { id: 'V6.1', name: 'Data Classification', category: 'data' },
1251
+ { id: 'V6.2', name: 'Algorithms', category: 'crypto' },
1252
+ { id: 'V6.3', name: 'Random Values', category: 'crypto' },
1253
+ { id: 'V6.4', name: 'Secret Management', category: 'crypto' },
1254
+ { id: 'V7.1', name: 'Log Content', category: 'logging' },
1255
+ { id: 'V7.2', name: 'Log Processing', category: 'logging' },
1256
+ { id: 'V7.3', name: 'Log Protection', category: 'logging' },
1257
+ { id: 'V7.4', name: 'Error Handling', category: 'code' },
1258
+ { id: 'V8.1', name: 'General Data Protection', category: 'data' },
1259
+ { id: 'V8.2', name: 'Client-Side Data Protection', category: 'data' },
1260
+ { id: 'V8.3', name: 'Sensitive Private Data', category: 'data' },
1261
+ { id: 'V9.1', name: 'Client Communication Security', category: 'crypto' },
1262
+ { id: 'V9.2', name: 'Server Communication Security', category: 'crypto' },
1263
+ { id: 'V10.1', name: 'Code Integrity', category: 'code' },
1264
+ { id: 'V10.2', name: 'Malicious Code Search', category: 'malware' },
1265
+ { id: 'V10.3', name: 'Application Integrity', category: 'code' },
1266
+ { id: 'V11.1', name: 'Business Logic Security', category: 'code' },
1267
+ { id: 'V12.1', name: 'File Upload', category: 'code' },
1268
+ { id: 'V12.3', name: 'File Execution', category: 'code' },
1269
+ { id: 'V12.4', name: 'File Storage', category: 'data' },
1270
+ { id: 'V12.5', name: 'File Download', category: 'code' },
1271
+ { id: 'V12.6', name: 'SSRF Protection', category: 'network' },
1272
+ { id: 'V13.1', name: 'Generic Web Service Security', category: 'code' },
1273
+ { id: 'V13.2', name: 'RESTful Web Service', category: 'code' },
1274
+ { id: 'V13.3', name: 'SOAP Web Service', category: 'code' },
1275
+ { id: 'V13.4', name: 'GraphQL', category: 'code' },
1276
+ { id: 'V14.1', name: 'Build and Deploy', category: 'config' },
1277
+ { id: 'V14.2', name: 'Dependency', category: 'code' },
1278
+ { id: 'V14.3', name: 'Unintended Security Disclosure', category: 'config' },
1279
+ { id: 'V14.4', name: 'HTTP Security Headers', category: 'network' },
1280
+ { id: 'V14.5', name: 'HTTP Request Header Validation', category: 'network' },
1281
+ ];
1282
+
1283
+ export const NIST_PRIVACY_CONTROLS = [
1284
+ { id: 'CT.DM-P1', name: 'Data Elements Mapped and Inventoried', category: 'data' },
1285
+ { id: 'CT.DM-P2', name: 'Data Elements Mapped to Individuals', category: 'data' },
1286
+ { id: 'CT.DM-P3', name: 'Data Processing Catalogued', category: 'data' },
1287
+ { id: 'CT.DP-P1', name: 'Data Processing Allowed Purposes Identified', category: 'governance' },
1288
+ { id: 'CT.DP-P2', name: 'Data Processing Legal Bases Identified', category: 'governance' },
1289
+ { id: 'CT.PO-P1', name: 'Privacy Policies Established', category: 'governance' },
1290
+ { id: 'CT.PO-P2', name: 'Privacy Roles and Responsibilities Defined', category: 'governance' },
1291
+ { id: 'CM.AW-P1', name: 'Privacy Awareness and Training', category: 'training' },
1292
+ { id: 'CM.AW-P2', name: 'Privacy Notices and Consent', category: 'data' },
1293
+ { id: 'PR.AC-P1', name: 'Data Processing Access Controlled', category: 'access' },
1294
+ { id: 'PR.AC-P2', name: 'Data Processing Integrity Protected', category: 'code' },
1295
+ { id: 'PR.DS-P1', name: 'Data-at-Rest Protected', category: 'crypto' },
1296
+ { id: 'PR.DS-P2', name: 'Data-in-Transit Protected', category: 'crypto' },
1297
+ { id: 'PR.MA-P1', name: 'Privacy Maintenance Performed', category: 'governance' },
1298
+ { id: 'PR.PT-P1', name: 'Audit/Log Records for Privacy Events', category: 'logging' },
1299
+ ];
1300
+
1301
+ export const CCPA_CONTROLS = [
1302
+ { id: 'CCPA-1798.100', name: 'Right to Know — Categories of PI Collected', category: 'data' },
1303
+ { id: 'CCPA-1798.105', name: 'Right to Delete Personal Information', category: 'data' },
1304
+ { id: 'CCPA-1798.106', name: 'Right to Correct Inaccurate Personal Information', category: 'data' },
1305
+ { id: 'CCPA-1798.110', name: 'Right to Know — Specific Pieces of PI', category: 'data' },
1306
+ { id: 'CCPA-1798.115', name: 'Right to Know — Sale or Sharing of PI', category: 'data' },
1307
+ { id: 'CCPA-1798.120', name: 'Right to Opt-Out of Sale/Sharing', category: 'access' },
1308
+ { id: 'CCPA-1798.121', name: 'Right to Limit Use of Sensitive PI', category: 'access' },
1309
+ { id: 'CCPA-1798.125', name: 'Non-Discrimination', category: 'governance' },
1310
+ { id: 'CCPA-1798.130', name: 'Notice at Collection', category: 'governance' },
1311
+ { id: 'CCPA-1798.135', name: 'Opt-Out Preference Signal', category: 'access' },
1312
+ { id: 'CCPA-1798.140', name: 'Privacy Policy Disclosure', category: 'governance' },
1313
+ { id: 'CCPA-1798.150', name: 'Data Breach Notification', category: 'incident' },
1314
+ { id: 'CCPA-1798.185', name: 'CPRA Cybersecurity Audit Requirement', category: 'testing' },
1315
+ { id: 'CCPA-1798.199.40', name: 'Automated Decision-Making — Right to Opt-Out', category: 'governance' },
1316
+ ];
1317
+
1318
+ // ---------------------------------------------------------------------------
1319
+ // Framework → controls mapping
1320
+ // ---------------------------------------------------------------------------
1321
+
1322
+ export const CONTROL_MAPS = {
1323
+ SOC2: SOC2_CONTROLS,
1324
+ PCI_DSS: PCI_DSS_CONTROLS,
1325
+ HIPAA: HIPAA_CONTROLS,
1326
+ NIST_800_53: NIST_800_53_CONTROLS,
1327
+ CIS: CIS_CONTROLS,
1328
+ ISO_27001: ISO_27001_CONTROLS,
1329
+ GDPR: GDPR_CONTROLS,
1330
+ CMMC: CMMC_CONTROLS,
1331
+ NIST_CSF: NIST_CSF_CONTROLS,
1332
+ NIST_AI_RMF: NIST_AI_RMF_CONTROLS,
1333
+ FEDRAMP: FEDRAMP_CONTROLS,
1334
+ OWASP_TOP_10: OWASP_TOP_10_CONTROLS,
1335
+ MITRE_ATTACK: MITRE_ATTACK_CONTROLS,
1336
+ IEC_62443: IEC_62443_CONTROLS,
1337
+ NIS2: NIS2_CONTROLS,
1338
+ DORA: DORA_CONTROLS,
1339
+ CISA_KEV: CISA_KEV_CONTROLS,
1340
+ EU_AI_ACT: EU_AI_ACT_CONTROLS,
1341
+ SWIFT_CSP: SWIFT_CSP_CONTROLS,
1342
+ NIST_800_171: NIST_800_171_CONTROLS,
1343
+ ISO_27017: ISO_27017_CONTROLS,
1344
+ ISO_27018: ISO_27018_CONTROLS,
1345
+ ISO_27701: ISO_27701_CONTROLS,
1346
+ CSA_CCM: CSA_CCM_CONTROLS,
1347
+ NERC_CIP: NERC_CIP_CONTROLS,
1348
+ HITRUST_CSF: HITRUST_CSF_CONTROLS,
1349
+ CIS_CLOUD: CIS_CLOUD_CONTROLS,
1350
+ NIST_800_82: NIST_800_82_CONTROLS,
1351
+ OWASP_MASVS: OWASP_MASVS_CONTROLS,
1352
+ SANS_TOP_25: SANS_TOP_25_CONTROLS,
1353
+ PTES: PTES_CONTROLS,
1354
+ OSSTMM: OSSTMM_CONTROLS,
1355
+ SOX_IT: SOX_IT_CONTROLS,
1356
+ COBIT: COBIT_CONTROLS,
1357
+ ITIL_SECURITY: ITIL_SECURITY_CONTROLS,
1358
+ SSDF: SSDF_CONTROLS,
1359
+ OWASP_ASVS: OWASP_ASVS_CONTROLS,
1360
+ NIST_PRIVACY: NIST_PRIVACY_CONTROLS,
1361
+ CCPA: CCPA_CONTROLS,
1362
+ };
1363
+
1364
+ // ---------------------------------------------------------------------------
1365
+ // Finding-category → control mapping keywords
1366
+ // ---------------------------------------------------------------------------
1367
+
1368
+ export const CATEGORY_KEYWORDS = {
1369
+ auth: ['auth', 'login', 'credential', 'password', 'mfa', 'brute', 'session', 'token'],
1370
+ crypto: ['crypto', 'encrypt', 'tls', 'ssl', 'certificate', 'cipher', 'hash', 'key management'],
1371
+ access: ['access', 'privilege', 'permission', 'rbac', 'authoriz', 'least privilege'],
1372
+ injection: ['inject', 'sqli', 'xss', 'command injection', 'rce', 'deseriali'],
1373
+ config: ['config', 'misconfigur', 'default', 'hardening', 'baseline'],
1374
+ network: ['network', 'firewall', 'segmentation', 'port', 'dns', 'proxy', 'boundary'],
1375
+ logging: ['log', 'audit', 'siem', 'monitor', 'event'],
1376
+ vuln: ['vuln', 'patch', 'cve', 'outdated', 'eol', 'end of life', 'update'],
1377
+ data: ['data', 'pii', 'phi', 'sensitive', 'classification', 'retention', 'backup'],
1378
+ malware: ['malware', 'antivirus', 'edr', 'ransomware', 'trojan'],
1379
+ incident: ['incident', 'breach', 'response', 'forensic', 'containment'],
1380
+ governance: ['policy', 'governance', 'compliance', 'awareness', 'training', 'risk management'],
1381
+ code: ['code', 'sast', 'dast', 'secure coding', 'dependency', 'supply chain'],
1382
+ physical: ['physical', 'facility', 'badge', 'cctv', 'environmental'],
1383
+ testing: ['pentest', 'penetration', 'scan', 'assessment', 'red team'],
1384
+ recovery: ['recovery', 'backup', 'disaster', 'continuity', 'failover'],
1385
+ inventory: ['inventory', 'asset', 'cmdb', 'discovery'],
1386
+ training: ['training', 'awareness', 'phishing simulation'],
1387
+ monitoring: ['monitoring', 'alert', 'detection', 'anomaly', 'correlation'],
1388
+ risk: ['risk assessment', 'risk register', 'threat model', 'impact analysis'],
1389
+ };
1390
+
1391
+ // ---------------------------------------------------------------------------
1392
+ // Severity weights for score calculation
1393
+ // ---------------------------------------------------------------------------
1394
+
1395
+ export const SEVERITY_WEIGHTS = {
1396
+ critical: 1.0,
1397
+ high: 0.85,
1398
+ medium: 0.6,
1399
+ low: 0.3,
1400
+ info: 0.1,
1401
+ };