agentic-qe 3.6.11 → 3.6.13

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 (122) hide show
  1. package/.claude/helpers/learning-service.mjs +2 -0
  2. package/.claude/helpers/statusline-v3.cjs +2 -0
  3. package/.claude/skills/skills-manifest.json +1 -1
  4. package/package.json +1 -1
  5. package/scripts/migrate-v2-to-v3-memory.js +2 -0
  6. package/scripts/sync-claude-flow.cjs +1 -0
  7. package/v3/CHANGELOG.md +29 -0
  8. package/v3/dist/adapters/claude-flow/trajectory-bridge.js +2 -2
  9. package/v3/dist/adapters/claude-flow/trajectory-bridge.js.map +1 -1
  10. package/v3/dist/benchmarks/performance-benchmarks.js +1 -1
  11. package/v3/dist/cli/bundle.js +227 -98
  12. package/v3/dist/cli/commands/learning-helpers.d.ts.map +1 -1
  13. package/v3/dist/cli/commands/learning-helpers.js +3 -4
  14. package/v3/dist/cli/commands/learning-helpers.js.map +1 -1
  15. package/v3/dist/cli/commands/learning.d.ts.map +1 -1
  16. package/v3/dist/cli/commands/learning.js +5 -8
  17. package/v3/dist/cli/commands/learning.js.map +1 -1
  18. package/v3/dist/cli/commands/migrate.js +2 -2
  19. package/v3/dist/coordination/constants.d.ts +1 -1
  20. package/v3/dist/coordination/constants.js +1 -1
  21. package/v3/dist/coordination/task-executor.d.ts.map +1 -1
  22. package/v3/dist/coordination/task-executor.js +410 -88
  23. package/v3/dist/coordination/task-executor.js.map +1 -1
  24. package/v3/dist/domains/code-intelligence/coordinator-hypergraph.js +2 -2
  25. package/v3/dist/domains/code-intelligence/coordinator-hypergraph.js.map +1 -1
  26. package/v3/dist/domains/code-intelligence/coordinator.js +2 -2
  27. package/v3/dist/domains/code-intelligence/coordinator.js.map +1 -1
  28. package/v3/dist/domains/coverage-analysis/coordinator.js +1 -1
  29. package/v3/dist/domains/coverage-analysis/services/coverage-analyzer.js +1 -1
  30. package/v3/dist/domains/coverage-analysis/services/coverage-embedder.d.ts +1 -1
  31. package/v3/dist/domains/coverage-analysis/services/coverage-embedder.js +1 -1
  32. package/v3/dist/domains/coverage-analysis/services/gap-detector.js +1 -1
  33. package/v3/dist/domains/coverage-analysis/services/ghost-coverage-analyzer.js +1 -1
  34. package/v3/dist/domains/coverage-analysis/services/hnsw-index.d.ts +2 -2
  35. package/v3/dist/domains/coverage-analysis/services/hnsw-index.js +3 -3
  36. package/v3/dist/domains/coverage-analysis/services/sublinear-analyzer.d.ts +1 -1
  37. package/v3/dist/domains/coverage-analysis/services/sublinear-analyzer.js +1 -1
  38. package/v3/dist/domains/security-compliance/services/scanners/security-patterns.d.ts.map +1 -1
  39. package/v3/dist/domains/security-compliance/services/scanners/security-patterns.js +12 -0
  40. package/v3/dist/domains/security-compliance/services/scanners/security-patterns.js.map +1 -1
  41. package/v3/dist/domains/test-execution/services/test-prioritizer.js +1 -1
  42. package/v3/dist/domains/test-generation/coordinator.js +1 -1
  43. package/v3/dist/governance/feature-flags.js +2 -2
  44. package/v3/dist/governance/feature-flags.js.map +1 -1
  45. package/v3/dist/governance/shard-embeddings.js +1 -1
  46. package/v3/dist/init/fleet-integration.d.ts.map +1 -1
  47. package/v3/dist/init/fleet-integration.js +3 -4
  48. package/v3/dist/init/fleet-integration.js.map +1 -1
  49. package/v3/dist/init/init-wizard-migration.d.ts.map +1 -1
  50. package/v3/dist/init/init-wizard-migration.js +3 -7
  51. package/v3/dist/init/init-wizard-migration.js.map +1 -1
  52. package/v3/dist/init/init-wizard-steps.d.ts.map +1 -1
  53. package/v3/dist/init/init-wizard-steps.js +3 -4
  54. package/v3/dist/init/init-wizard-steps.js.map +1 -1
  55. package/v3/dist/init/migration/data-migrator.d.ts.map +1 -1
  56. package/v3/dist/init/migration/data-migrator.js +6 -10
  57. package/v3/dist/init/migration/data-migrator.js.map +1 -1
  58. package/v3/dist/init/migration/detector.d.ts.map +1 -1
  59. package/v3/dist/init/migration/detector.js +2 -4
  60. package/v3/dist/init/migration/detector.js.map +1 -1
  61. package/v3/dist/init/phases/01-detection.d.ts.map +1 -1
  62. package/v3/dist/init/phases/01-detection.js +2 -4
  63. package/v3/dist/init/phases/01-detection.js.map +1 -1
  64. package/v3/dist/init/phases/06-code-intelligence.d.ts.map +1 -1
  65. package/v3/dist/init/phases/06-code-intelligence.js +4 -6
  66. package/v3/dist/init/phases/06-code-intelligence.js.map +1 -1
  67. package/v3/dist/init/phases/07-hooks.d.ts +11 -0
  68. package/v3/dist/init/phases/07-hooks.d.ts.map +1 -1
  69. package/v3/dist/init/phases/07-hooks.js +103 -1
  70. package/v3/dist/init/phases/07-hooks.js.map +1 -1
  71. package/v3/dist/init/phases/12-verification.d.ts.map +1 -1
  72. package/v3/dist/init/phases/12-verification.js +2 -4
  73. package/v3/dist/init/phases/12-verification.js.map +1 -1
  74. package/v3/dist/integrations/embeddings/cache/EmbeddingCache.d.ts.map +1 -1
  75. package/v3/dist/integrations/embeddings/cache/EmbeddingCache.js +2 -2
  76. package/v3/dist/integrations/embeddings/cache/EmbeddingCache.js.map +1 -1
  77. package/v3/dist/integrations/rl-suite/algorithms/decision-transformer.js +1 -1
  78. package/v3/dist/kernel/constants.d.ts +1 -1
  79. package/v3/dist/kernel/constants.js +1 -1
  80. package/v3/dist/kernel/unified-memory-hnsw.d.ts.map +1 -1
  81. package/v3/dist/kernel/unified-memory-hnsw.js +25 -6
  82. package/v3/dist/kernel/unified-memory-hnsw.js.map +1 -1
  83. package/v3/dist/kernel/unified-memory-migration.d.ts.map +1 -1
  84. package/v3/dist/kernel/unified-memory-migration.js +3 -3
  85. package/v3/dist/kernel/unified-memory-migration.js.map +1 -1
  86. package/v3/dist/learning/metrics-tracker.d.ts.map +1 -1
  87. package/v3/dist/learning/metrics-tracker.js +2 -2
  88. package/v3/dist/learning/metrics-tracker.js.map +1 -1
  89. package/v3/dist/learning/sqlite-persistence.d.ts.map +1 -1
  90. package/v3/dist/learning/sqlite-persistence.js +3 -6
  91. package/v3/dist/learning/sqlite-persistence.js.map +1 -1
  92. package/v3/dist/learning/v2-to-v3-migration.d.ts.map +1 -1
  93. package/v3/dist/learning/v2-to-v3-migration.js +4 -5
  94. package/v3/dist/learning/v2-to-v3-migration.js.map +1 -1
  95. package/v3/dist/mcp/bundle.js +890 -192
  96. package/v3/dist/mcp/entry.js +8 -0
  97. package/v3/dist/mcp/entry.js.map +1 -1
  98. package/v3/dist/mcp/handlers/domain-handler-configs.d.ts.map +1 -1
  99. package/v3/dist/mcp/handlers/domain-handler-configs.js +56 -4
  100. package/v3/dist/mcp/handlers/domain-handler-configs.js.map +1 -1
  101. package/v3/dist/mcp/handlers/handler-factory.d.ts.map +1 -1
  102. package/v3/dist/mcp/handlers/handler-factory.js +10 -5
  103. package/v3/dist/mcp/handlers/handler-factory.js.map +1 -1
  104. package/v3/dist/mcp/tools/security-compliance/scan.d.ts +3 -1
  105. package/v3/dist/mcp/tools/security-compliance/scan.d.ts.map +1 -1
  106. package/v3/dist/mcp/tools/security-compliance/scan.js +417 -72
  107. package/v3/dist/mcp/tools/security-compliance/scan.js.map +1 -1
  108. package/v3/dist/planning/plan-executor.d.ts.map +1 -1
  109. package/v3/dist/planning/plan-executor.js +2 -2
  110. package/v3/dist/planning/plan-executor.js.map +1 -1
  111. package/v3/dist/shared/safe-db.d.ts +32 -0
  112. package/v3/dist/shared/safe-db.d.ts.map +1 -0
  113. package/v3/dist/shared/safe-db.js +41 -0
  114. package/v3/dist/shared/safe-db.js.map +1 -0
  115. package/v3/dist/sync/claude-flow-bridge.js +5 -5
  116. package/v3/dist/sync/claude-flow-bridge.js.map +1 -1
  117. package/v3/dist/sync/embeddings/sync-embedding-generator.js +3 -3
  118. package/v3/dist/sync/embeddings/sync-embedding-generator.js.map +1 -1
  119. package/v3/dist/sync/readers/sqlite-reader.d.ts.map +1 -1
  120. package/v3/dist/sync/readers/sqlite-reader.js +2 -2
  121. package/v3/dist/sync/readers/sqlite-reader.js.map +1 -1
  122. package/v3/package.json +1 -1
@@ -3,10 +3,55 @@
3
3
  *
4
4
  * qe/security/scan - Security scanning (SAST/DAST) and compliance validation
5
5
  *
6
- * This tool wraps the security-compliance domain service.
6
+ * Fix #287: Replaced hardcoded fake findings with real file scanning.
7
+ * Now actually reads target files and applies security patterns from
8
+ * v3/src/domains/security-compliance/services/scanners/security-patterns.ts
7
9
  */
8
10
  import { MCPToolBase } from '../base';
9
11
  import { toErrorMessage } from '../../../shared/error-utils.js';
12
+ import { ALL_SECURITY_PATTERNS, SECRET_PATTERNS, } from '../../../domains/security-compliance/services/scanners/security-patterns.js';
13
+ // ============================================================================
14
+ // Cross-language secret/config patterns (supplement security-patterns.ts)
15
+ // These catch Python, Java, Go patterns that the JS-focused patterns miss.
16
+ // ============================================================================
17
+ const CROSS_LANG_SECRET_PATTERNS = [
18
+ {
19
+ id: 'secret-key-assignment',
20
+ pattern: /(?:SECRET_KEY|secret_key|SECRET|PRIVATE_KEY)\s*=\s*['"][^'"]{4,}['"]/g,
21
+ severity: 'critical',
22
+ title: 'Hardcoded Secret Key',
23
+ description: 'Secret key assigned as string literal in source code',
24
+ cweId: 'CWE-798',
25
+ remediation: 'Use environment variables: SECRET_KEY = os.environ["SECRET_KEY"]',
26
+ },
27
+ {
28
+ id: 'cors-wildcard-credentials',
29
+ pattern: /allow_origins\s*=\s*\[\s*["']\*["']\s*\]/g,
30
+ severity: 'high',
31
+ title: 'CORS Wildcard Origin',
32
+ description: 'CORS configured to allow all origins — combined with credentials this is a security risk',
33
+ cweId: 'CWE-942',
34
+ remediation: 'Restrict CORS origins to specific trusted domains',
35
+ },
36
+ {
37
+ id: 'cors-allow-credentials-wildcard',
38
+ pattern: /allow_credentials\s*=\s*True/g,
39
+ severity: 'medium',
40
+ title: 'CORS Credentials Enabled',
41
+ description: 'CORS credentials enabled — verify origins are restricted',
42
+ cweId: 'CWE-942',
43
+ remediation: 'Ensure allow_origins does not include "*" when credentials are enabled',
44
+ },
45
+ {
46
+ id: 'token-hardcoded',
47
+ pattern: /(?:token|TOKEN)\s*[:=]\s*['"][a-zA-Z0-9_\-.]{20,}['"]/g,
48
+ severity: 'high',
49
+ title: 'Hardcoded Token',
50
+ description: 'Hardcoded token found in source code',
51
+ cweId: 'CWE-798',
52
+ remediation: 'Use environment variables or secrets manager for tokens',
53
+ },
54
+ ];
10
55
  // ============================================================================
11
56
  // Tool Implementation
12
57
  // ============================================================================
@@ -31,21 +76,24 @@ export class SecurityScanTool extends MCPToolBase {
31
76
  if (this.isAborted(context)) {
32
77
  return { success: false, error: 'Operation aborted' };
33
78
  }
79
+ // Discover source files in the target directory
80
+ const files = await discoverFiles(target, depth);
81
+ this.emitStream(context, {
82
+ status: 'discovered',
83
+ message: `Found ${files.length} files to scan`,
84
+ });
34
85
  const vulnerabilities = [];
35
- // SAST scanning
36
- if (scanType.includes('sast')) {
86
+ // SAST scanning — apply real security patterns against real files
87
+ if (scanType.includes('sast') || scanType.includes('secret')) {
37
88
  this.emitStream(context, { status: 'sast', message: 'Running static analysis' });
38
- vulnerabilities.push(...generateSASTFindings());
89
+ const sastVulns = await scanFilesWithPatterns(files, scanType);
90
+ vulnerabilities.push(...sastVulns);
39
91
  }
40
- // Dependency scanning
92
+ // Dependency scanning — parse real package manifests
41
93
  if (scanType.includes('dependency')) {
42
94
  this.emitStream(context, { status: 'dependency', message: 'Scanning dependencies' });
43
- vulnerabilities.push(...generateDependencyFindings());
44
- }
45
- // Secret scanning
46
- if (scanType.includes('secret')) {
47
- this.emitStream(context, { status: 'secret', message: 'Scanning for secrets' });
48
- vulnerabilities.push(...generateSecretFindings());
95
+ const depVulns = await scanDependencies(target);
96
+ vulnerabilities.push(...depVulns);
49
97
  }
50
98
  // DAST scanning
51
99
  if (scanType.includes('dast') && dastUrl) {
@@ -60,7 +108,7 @@ export class SecurityScanTool extends MCPToolBase {
60
108
  medium: vulnerabilities.filter(v => v.severity === 'medium').length,
61
109
  low: vulnerabilities.filter(v => v.severity === 'low').length,
62
110
  informational: vulnerabilities.filter(v => v.severity === 'informational').length,
63
- totalFiles: 150,
111
+ totalFiles: files.length,
64
112
  scanDurationMs: Date.now() - startTime,
65
113
  };
66
114
  const severityOrder = ['critical', 'high', 'medium', 'low', 'informational'];
@@ -71,7 +119,7 @@ export class SecurityScanTool extends MCPToolBase {
71
119
  const passed = worstSeverity > failThreshold;
72
120
  this.emitStream(context, {
73
121
  status: 'complete',
74
- message: `Scan complete: ${vulnerabilities.length} vulnerabilities found`,
122
+ message: `Scan complete: ${vulnerabilities.length} vulnerabilities found in ${files.length} files`,
75
123
  progress: 100,
76
124
  });
77
125
  return {
@@ -143,77 +191,371 @@ const SECURITY_SCAN_SCHEMA = {
143
191
  },
144
192
  };
145
193
  // ============================================================================
146
- // Helper Functions
194
+ // Real File Discovery
147
195
  // ============================================================================
148
- function generateSASTFindings() {
149
- return [
150
- {
151
- id: 'SAST-001',
152
- title: 'SQL Injection Risk',
153
- severity: 'high',
154
- category: 'injection',
155
- location: { file: 'src/db/queries.ts', line: 45, snippet: 'query = `SELECT * FROM ${table}`' },
156
- description: 'User input directly concatenated in SQL query',
157
- remediation: 'Use parameterized queries or prepared statements',
158
- cweId: 'CWE-89',
159
- references: ['https://owasp.org/www-community/attacks/SQL_Injection'],
160
- },
161
- {
162
- id: 'SAST-002',
163
- title: 'Hardcoded Credentials',
164
- severity: 'critical',
165
- category: 'sensitive-data',
166
- location: { file: 'src/config/database.ts', line: 12, snippet: 'password: "admin123"' },
167
- description: 'Hardcoded password found in source code',
168
- remediation: 'Use environment variables or secure vault for credentials',
169
- cweId: 'CWE-798',
170
- references: ['https://cwe.mitre.org/data/definitions/798.html'],
171
- },
172
- ];
196
+ /** Source file extensions to scan, by language */
197
+ const SCANNABLE_EXTENSIONS = new Set([
198
+ '.ts', '.tsx', '.js', '.jsx', '.mjs', '.cjs', // JavaScript/TypeScript
199
+ '.py', '.pyw', // Python
200
+ '.java', '.kt', '.scala', // JVM
201
+ '.go', // Go
202
+ '.rb', // Ruby
203
+ '.php', // PHP
204
+ '.rs', // Rust
205
+ '.cs', // C#
206
+ '.yaml', '.yml', '.json', '.toml', '.cfg', '.ini', // Config
207
+ '.env', '.env.local', '.env.production', // Env files
208
+ '.sh', '.bash', // Shell
209
+ ]);
210
+ /** Directories to always skip */
211
+ const SKIP_DIRS = new Set([
212
+ 'node_modules', '.git', '__pycache__', '.venv', 'venv',
213
+ 'dist', 'build', '.next', '.nuxt', 'coverage', '.tox',
214
+ ]);
215
+ async function discoverFiles(target, depth) {
216
+ const fs = await import('fs');
217
+ const path = await import('path');
218
+ const resolved = path.resolve(target);
219
+ const files = [];
220
+ // Limits based on scan depth
221
+ const maxFiles = depth === 'quick' ? 50 : depth === 'standard' ? 500 : 2000;
222
+ const maxDepth = depth === 'quick' ? 3 : depth === 'standard' ? 8 : 20;
223
+ function walk(dir, currentDepth) {
224
+ if (files.length >= maxFiles || currentDepth > maxDepth)
225
+ return;
226
+ let entries;
227
+ try {
228
+ entries = fs.readdirSync(dir, { withFileTypes: true });
229
+ }
230
+ catch {
231
+ return; // Permission denied or not a directory
232
+ }
233
+ for (const entry of entries) {
234
+ if (files.length >= maxFiles)
235
+ break;
236
+ const fullPath = path.join(dir, entry.name);
237
+ if (entry.isDirectory()) {
238
+ // Skip known non-source dirs, but DO scan security-relevant dot-dirs
239
+ // like .github (CI secrets), .docker, .aws (miscommitted credentials)
240
+ const SCAN_DOT_DIRS = new Set(['.github', '.docker', '.aws', '.circleci', '.gitlab']);
241
+ if (SKIP_DIRS.has(entry.name)) {
242
+ // Always skip node_modules, .git, etc.
243
+ }
244
+ else if (entry.name.startsWith('.') && !SCAN_DOT_DIRS.has(entry.name)) {
245
+ // Skip other dot-dirs (caches, IDE config)
246
+ }
247
+ else {
248
+ walk(fullPath, currentDepth + 1);
249
+ }
250
+ }
251
+ else if (entry.isFile()) {
252
+ const ext = path.extname(entry.name).toLowerCase();
253
+ // Also scan files without extension if named like config files
254
+ if (SCANNABLE_EXTENSIONS.has(ext) ||
255
+ entry.name === 'Dockerfile' ||
256
+ entry.name === 'Makefile' ||
257
+ entry.name.startsWith('.env')) {
258
+ files.push(fullPath);
259
+ }
260
+ }
261
+ }
262
+ }
263
+ // Handle single file target
264
+ try {
265
+ const stat = fs.statSync(resolved);
266
+ if (stat.isFile()) {
267
+ files.push(resolved);
268
+ }
269
+ else {
270
+ walk(resolved, 0);
271
+ }
272
+ }
273
+ catch {
274
+ // Target doesn't exist
275
+ }
276
+ return files;
173
277
  }
174
- function generateDependencyFindings() {
175
- return [
176
- {
177
- id: 'DEP-001',
178
- title: 'Vulnerable lodash version',
179
- severity: 'medium',
180
- category: 'vulnerable-components',
181
- location: { file: 'package.json', dependency: { name: 'lodash', version: '4.17.19' } },
182
- description: 'lodash < 4.17.21 has prototype pollution vulnerability',
183
- remediation: 'Upgrade lodash to 4.17.21 or later',
184
- cveId: 'CVE-2021-23337',
185
- references: ['https://nvd.nist.gov/vuln/detail/CVE-2021-23337'],
186
- },
187
- ];
278
+ // ============================================================================
279
+ // Real SAST Scanning
280
+ // ============================================================================
281
+ async function scanFilesWithPatterns(files, scanTypes) {
282
+ const fs = await import('fs');
283
+ const path = await import('path');
284
+ const vulnerabilities = [];
285
+ let vulnCounter = 0;
286
+ // Select patterns based on scan type
287
+ const patterns = [];
288
+ if (scanTypes.includes('sast')) {
289
+ // Use ALL patterns from the real security patterns module
290
+ for (const p of ALL_SECURITY_PATTERNS) {
291
+ patterns.push({
292
+ id: p.id,
293
+ pattern: new RegExp(p.pattern.source, p.pattern.flags),
294
+ severity: p.severity,
295
+ title: p.title,
296
+ description: p.description,
297
+ cweId: p.cweId,
298
+ remediation: p.remediation,
299
+ category: p.category,
300
+ });
301
+ }
302
+ // Add cross-language patterns
303
+ for (const p of CROSS_LANG_SECRET_PATTERNS) {
304
+ patterns.push({
305
+ id: p.id,
306
+ pattern: new RegExp(p.pattern.source, p.pattern.flags),
307
+ severity: p.severity,
308
+ title: p.title,
309
+ description: p.description,
310
+ cweId: p.cweId,
311
+ remediation: p.remediation,
312
+ category: 'sensitive-data',
313
+ });
314
+ }
315
+ }
316
+ if (scanTypes.includes('secret')) {
317
+ // Only secret patterns
318
+ for (const p of SECRET_PATTERNS) {
319
+ if (!patterns.some(existing => existing.id === p.id)) {
320
+ patterns.push({
321
+ id: p.id,
322
+ pattern: new RegExp(p.pattern.source, p.pattern.flags),
323
+ severity: p.severity,
324
+ title: p.title,
325
+ description: p.description,
326
+ cweId: p.cweId,
327
+ remediation: p.remediation,
328
+ category: p.category,
329
+ });
330
+ }
331
+ }
332
+ for (const p of CROSS_LANG_SECRET_PATTERNS) {
333
+ if (!patterns.some(existing => existing.id === p.id)) {
334
+ patterns.push({
335
+ ...p,
336
+ category: 'sensitive-data',
337
+ });
338
+ }
339
+ }
340
+ }
341
+ for (const filePath of files) {
342
+ let content;
343
+ try {
344
+ content = fs.readFileSync(filePath, 'utf-8');
345
+ }
346
+ catch {
347
+ continue; // Can't read file, skip
348
+ }
349
+ // Skip binary files or very large files
350
+ if (content.includes('\0') || content.length > 1_000_000)
351
+ continue;
352
+ const lines = content.split('\n');
353
+ const relPath = path.relative(process.cwd(), filePath);
354
+ for (const patternDef of patterns) {
355
+ // Reset regex state for each file
356
+ const regex = new RegExp(patternDef.pattern.source, patternDef.pattern.flags);
357
+ let match;
358
+ while ((match = regex.exec(content)) !== null) {
359
+ vulnCounter++;
360
+ const lineNum = content.substring(0, match.index).split('\n').length;
361
+ const matchedLine = lines[lineNum - 1] || '';
362
+ // Truncate snippet to avoid exposing full secrets
363
+ const snippet = matchedLine.trim().length > 100
364
+ ? matchedLine.trim().substring(0, 100) + '...'
365
+ : matchedLine.trim();
366
+ vulnerabilities.push({
367
+ id: `${patternDef.id}-${vulnCounter}`,
368
+ title: patternDef.title,
369
+ severity: patternDef.severity,
370
+ category: patternDef.category || 'security-misconfiguration',
371
+ location: {
372
+ file: relPath,
373
+ line: lineNum,
374
+ snippet,
375
+ },
376
+ description: patternDef.description,
377
+ remediation: patternDef.remediation,
378
+ cweId: patternDef.cweId,
379
+ references: [],
380
+ });
381
+ // Limit findings per pattern per file to avoid noise
382
+ if (vulnCounter > 200)
383
+ break;
384
+ }
385
+ }
386
+ }
387
+ return vulnerabilities;
188
388
  }
189
- function generateSecretFindings() {
190
- return [
191
- {
192
- id: 'SECRET-001',
193
- title: 'AWS Access Key Detected',
194
- severity: 'critical',
195
- category: 'sensitive-data',
196
- location: { file: 'src/services/aws.ts', line: 8, snippet: 'AKIA...[REDACTED]' },
197
- description: 'AWS access key found in source code',
198
- remediation: 'Remove key, rotate credentials, use AWS IAM roles',
199
- references: ['https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html'],
200
- },
201
- ];
389
+ // ============================================================================
390
+ // Real Dependency Scanning
391
+ // ============================================================================
392
+ async function scanDependencies(target) {
393
+ const fs = await import('fs');
394
+ const path = await import('path');
395
+ const vulnerabilities = [];
396
+ const resolved = path.resolve(target);
397
+ // Scan package.json (Node.js)
398
+ const pkgJsonPath = path.join(resolved, 'package.json');
399
+ if (fs.existsSync(pkgJsonPath)) {
400
+ try {
401
+ const pkg = JSON.parse(fs.readFileSync(pkgJsonPath, 'utf-8'));
402
+ const allDeps = { ...pkg.dependencies, ...pkg.devDependencies };
403
+ vulnerabilities.push(...checkKnownVulnerableDeps(allDeps, 'package.json'));
404
+ }
405
+ catch { /* skip malformed */ }
406
+ }
407
+ // Scan pyproject.toml (Python)
408
+ const pyprojectPath = path.join(resolved, 'pyproject.toml');
409
+ if (fs.existsSync(pyprojectPath)) {
410
+ try {
411
+ const content = fs.readFileSync(pyprojectPath, 'utf-8');
412
+ const deps = extractPythonDeps(content);
413
+ vulnerabilities.push(...checkKnownVulnerablePythonDeps(deps, 'pyproject.toml'));
414
+ }
415
+ catch { /* skip */ }
416
+ }
417
+ // Scan requirements.txt (Python)
418
+ const reqPath = path.join(resolved, 'requirements.txt');
419
+ if (fs.existsSync(reqPath)) {
420
+ try {
421
+ const content = fs.readFileSync(reqPath, 'utf-8');
422
+ const deps = extractRequirementsTxtDeps(content);
423
+ vulnerabilities.push(...checkKnownVulnerablePythonDeps(deps, 'requirements.txt'));
424
+ }
425
+ catch { /* skip */ }
426
+ }
427
+ if (vulnerabilities.length === 0) {
428
+ // Check if manifest exists but no known vulnerable deps
429
+ const manifests = [pkgJsonPath, pyprojectPath, reqPath].filter(p => fs.existsSync(p));
430
+ if (manifests.length > 0) {
431
+ vulnerabilities.push({
432
+ id: 'DEP-INFO-001',
433
+ title: 'Dependency audit recommended',
434
+ severity: 'informational',
435
+ category: 'vulnerable-components',
436
+ location: { file: path.relative(process.cwd(), manifests[0]) },
437
+ description: `Found ${path.basename(manifests[0])} — run language-specific dependency audit for comprehensive results`,
438
+ remediation: 'Run npm audit, pip-audit, or equivalent for full vulnerability check',
439
+ references: [],
440
+ });
441
+ }
442
+ }
443
+ return vulnerabilities;
202
444
  }
445
+ /** Known vulnerable npm packages (high-profile CVEs) */
446
+ const KNOWN_VULNERABLE_NPM = {
447
+ 'lodash': { maxSafe: '4.17.21', cve: 'CVE-2021-23337', severity: 'high', desc: 'Prototype pollution in lodash' },
448
+ 'minimist': { maxSafe: '1.2.6', cve: 'CVE-2021-44906', severity: 'critical', desc: 'Prototype pollution in minimist' },
449
+ 'node-fetch': { maxSafe: '2.6.7', cve: 'CVE-2022-0235', severity: 'high', desc: 'Information exposure in node-fetch' },
450
+ 'express': { maxSafe: '4.19.2', cve: 'CVE-2024-29041', severity: 'medium', desc: 'Open redirect in express' },
451
+ };
452
+ function checkKnownVulnerableDeps(deps, manifest) {
453
+ const vulns = [];
454
+ for (const [name, version] of Object.entries(deps)) {
455
+ const known = KNOWN_VULNERABLE_NPM[name];
456
+ if (known) {
457
+ const cleanVersion = version.replace(/^[\^~>=<]+/, '');
458
+ if (compareVersions(cleanVersion, known.maxSafe) < 0) {
459
+ vulns.push({
460
+ id: `DEP-${name}-${known.cve}`,
461
+ title: `Vulnerable ${name} version`,
462
+ severity: known.severity,
463
+ category: 'vulnerable-components',
464
+ location: { file: manifest, dependency: { name, version: cleanVersion } },
465
+ description: known.desc,
466
+ remediation: `Upgrade ${name} to >= ${known.maxSafe}`,
467
+ cveId: known.cve,
468
+ references: [`https://nvd.nist.gov/vuln/detail/${known.cve}`],
469
+ });
470
+ }
471
+ }
472
+ }
473
+ return vulns;
474
+ }
475
+ /** Known vulnerable Python packages */
476
+ const KNOWN_VULNERABLE_PYTHON = {
477
+ 'python-jose': { cve: 'CVE-2024-33663', severity: 'critical', desc: 'python-jose is abandoned and has known JWT vulnerabilities' },
478
+ 'pyjwt': { cve: 'CVE-2022-29217', severity: 'high', desc: 'PyJWT algorithm confusion vulnerability (upgrade to >= 2.4.0)' },
479
+ 'python-multipart': { cve: 'CVE-2026-24486', severity: 'high', desc: 'python-multipart DoS vulnerability' },
480
+ 'jinja2': { cve: 'CVE-2024-34064', severity: 'medium', desc: 'Jinja2 XSS via template injection' },
481
+ 'urllib3': { cve: 'CVE-2023-45803', severity: 'medium', desc: 'urllib3 request body exposure on redirect' },
482
+ 'requests': { cve: 'CVE-2023-32681', severity: 'medium', desc: 'Requests proxy credential exposure' },
483
+ };
484
+ function extractPythonDeps(tomlContent) {
485
+ const deps = [];
486
+ // Match dependencies = [...] section
487
+ const depMatch = tomlContent.match(/dependencies\s*=\s*\[([\s\S]*?)\]/);
488
+ if (depMatch) {
489
+ const matches = depMatch[1].matchAll(/["']([a-zA-Z0-9_-]+)/g);
490
+ for (const m of matches) {
491
+ deps.push(m[1].toLowerCase());
492
+ }
493
+ }
494
+ return deps;
495
+ }
496
+ function extractRequirementsTxtDeps(content) {
497
+ return content
498
+ .split('\n')
499
+ .map(line => line.trim())
500
+ .filter(line => line && !line.startsWith('#'))
501
+ .map(line => line.split(/[>=<!~\[]/)[0].trim().toLowerCase())
502
+ .filter(Boolean);
503
+ }
504
+ function checkKnownVulnerablePythonDeps(deps, manifest) {
505
+ const vulns = [];
506
+ for (const dep of deps) {
507
+ const known = KNOWN_VULNERABLE_PYTHON[dep];
508
+ if (known) {
509
+ vulns.push({
510
+ id: `DEP-py-${dep}-${known.cve}`,
511
+ title: `Vulnerable Python dependency: ${dep}`,
512
+ severity: known.severity,
513
+ category: 'vulnerable-components',
514
+ location: { file: manifest, dependency: { name: dep, version: 'any' } },
515
+ description: known.desc,
516
+ remediation: dep === 'python-jose' ? 'Migrate to PyJWT or joserfc' : `Check for updates to ${dep}`,
517
+ cveId: known.cve,
518
+ references: [`https://nvd.nist.gov/vuln/detail/${known.cve}`],
519
+ });
520
+ }
521
+ }
522
+ return vulns;
523
+ }
524
+ /** Simple semver comparison: returns -1 if a < b, 0 if equal, 1 if a > b */
525
+ function compareVersions(a, b) {
526
+ const pa = a.split('.').map(Number);
527
+ const pb = b.split('.').map(Number);
528
+ for (let i = 0; i < 3; i++) {
529
+ const va = pa[i] || 0;
530
+ const vb = pb[i] || 0;
531
+ if (va < vb)
532
+ return -1;
533
+ if (va > vb)
534
+ return 1;
535
+ }
536
+ return 0;
537
+ }
538
+ // ============================================================================
539
+ // DAST Findings (requires live URL — kept as placeholder with clear note)
540
+ // ============================================================================
203
541
  function generateDASTFindings(url) {
542
+ // DAST requires HTTP requests to a live URL — return informational note
204
543
  return [
205
544
  {
206
- id: 'DAST-001',
207
- title: 'Missing Security Headers',
208
- severity: 'medium',
545
+ id: 'DAST-INFO-001',
546
+ title: 'DAST scan target noted',
547
+ severity: 'informational',
209
548
  category: 'security-misconfiguration',
210
549
  location: { file: url },
211
- description: 'X-Frame-Options and Content-Security-Policy headers missing',
212
- remediation: 'Add security headers to HTTP responses',
213
- references: ['https://owasp.org/www-project-secure-headers/'],
550
+ description: `DAST target ${url} recorded. Full DAST requires integration with a dynamic scanner (e.g., ZAP, Burp).`,
551
+ remediation: 'Configure a DAST tool to scan the live application',
552
+ references: ['https://owasp.org/www-project-zap/'],
214
553
  },
215
554
  ];
216
555
  }
556
+ // ============================================================================
557
+ // Compliance & Recommendations
558
+ // ============================================================================
217
559
  function generateComplianceResult(standard, vulnerabilities) {
218
560
  const relevantVulns = vulnerabilities.filter(v => {
219
561
  if (standard === 'owasp')
@@ -251,6 +593,9 @@ function generateRecommendations(vulnerabilities, summary) {
251
593
  if (vulnerabilities.some(v => v.category === 'sensitive-data')) {
252
594
  recs.push('Implement proper secrets management');
253
595
  }
596
+ if (vulnerabilities.some(v => v.category === 'vulnerable-components')) {
597
+ recs.push('Run full dependency audit and update vulnerable packages');
598
+ }
254
599
  if (recs.length === 0) {
255
600
  recs.push('No critical issues found. Continue regular security reviews.');
256
601
  }
@@ -1 +1 @@
1
- {"version":3,"file":"scan.js","sourceRoot":"","sources":["../../../../src/mcp/tools/security-compliance/scan.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scan.js","sourceRoot":"","sources":["../../../../src/mcp/tools/security-compliance/scan.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"plan-executor.d.ts","sourceRoot":"","sources":["../../src/planning/plan-executor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAIH,OAAO,KAAK,EACV,QAAQ,EAER,aAAa,EACb,YAAY,EAGb,MAAM,YAAY,CAAC;AAEpB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AASrD;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,wCAAwC;IACxC,UAAU,EAAE,MAAM,CAAC;IACnB,wDAAwD;IACxD,aAAa,EAAE,MAAM,CAAC;IACtB,gDAAgD;IAChD,eAAe,EAAE,OAAO,CAAC;IACzB,6DAA6D;IAC7D,iBAAiB,EAAE,OAAO,CAAC;IAC3B,0DAA0D;IAC1D,gBAAgB,EAAE,OAAO,CAAC;IAC1B;;;;;OAKG;IACH,UAAU,EAAE,OAAO,CAAC;CACrB;AAkBD;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,gCAAgC;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,+BAA+B;IAC/B,MAAM,EAAE,WAAW,GAAG,QAAQ,GAAG,WAAW,GAAG,SAAS,CAAC;IACzD,6CAA6C;IAC7C,cAAc,EAAE,MAAM,CAAC;IACvB,kCAAkC;IAClC,WAAW,EAAE,MAAM,CAAC;IACpB,+CAA+C;IAC/C,eAAe,EAAE,MAAM,CAAC;IACxB,wCAAwC;IACxC,eAAe,CAAC,EAAE,YAAY,CAAC;IAC/B,wCAAwC;IACxC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,sCAAsC;IACtC,KAAK,EAAE,YAAY,EAAE,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,YAAa,SAAQ,aAAa;IACjD,kCAAkC;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,kCAAkC;IAClC,SAAS,EAAE,IAAI,CAAC;IAChB,oCAAoC;IACpC,WAAW,CAAC,EAAE,IAAI,CAAC;IACnB,oDAAoD;IACpD,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAMD;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,8BAA8B;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,mCAAmC;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,+CAA+C;IAC/C,OAAO,EAAE,OAAO,CAAC;IACjB,oCAAoC;IACpC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,YAAY;IAC3B;;;;;OAKG;IACH,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;CACnE;AAwCD;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,EAAE,CAAqB;IAC/B,OAAO,CAAC,OAAO,CAAc;IAC7B,OAAO,CAAC,OAAO,CAAe;IAC9B,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,gBAAgB,CAAuD;IAC/E,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,aAAa,CAAqC;IAE1D;;;;;;;OAOG;gBAED,OAAO,EAAE,WAAW,EACpB,OAAO,EAAE,YAAY,EACrB,MAAM,CAAC,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC;IAmBnC;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IA0BjC;;OAEG;IACH,OAAO,CAAC,YAAY;IAkDpB;;;;;;OAMG;IACG,OAAO,CACX,IAAI,EAAE,QAAQ,EACd,YAAY,CAAC,EAAE,YAAY,GAC1B,OAAO,CAAC,eAAe,CAAC;IAW3B;;;;;;;;OAQG;IACG,oBAAoB,CACxB,IAAI,EAAE,QAAQ,EACd,WAAW,EAAE,CAAC,IAAI,EAAE,aAAa,KAAK,IAAI,EAC1C,cAAc,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,IAAI,EAC5C,YAAY,CAAC,EAAE,YAAY,GAC1B,OAAO,CAAC,eAAe,CAAC;IAwJ3B;;OAEG;YACW,WAAW;IA8DzB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA2B5B;;;;;;;OAOG;IACG,iBAAiB,CACrB,YAAY,EAAE,QAAQ,EACtB,eAAe,EAAE,MAAM,EACvB,YAAY,EAAE,YAAY,GACzB,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAwB3B;;OAEG;IACG,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAM7B;;OAEG;IACH,WAAW,IAAI,OAAO;IAQtB;;;;;;OAMG;IACG,mBAAmB,CACvB,MAAM,CAAC,EAAE,MAAM,EACf,KAAK,GAAE,MAAY,GAClB,OAAO,CAAC,eAAe,EAAE,CAAC;IAmC7B;;OAEG;YACW,gBAAgB;IA2C9B;;OAEG;YACW,sBAAsB;IAuDpC;;OAEG;YACW,iBAAiB;IAqB/B;;OAEG;IACH,OAAO,CAAC,eAAe;IAYvB;;OAEG;IACH,OAAO,CAAC,cAAc;IA4CtB;;OAEG;IACH,OAAO,CAAC,YAAY;IAapB;;OAEG;IACH,OAAO,CAAC,WAAW;IAiCnB;;OAEG;IACH,OAAO,CAAC,aAAa;IAcrB;;;OAGG;IACH,OAAO,CAAC,aAAa;IAsDrB;;OAEG;IACH,OAAO,CAAC,UAAU;IAIlB;;OAEG;IACH,OAAO,CAAC,KAAK;IAQb;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAkB7B;AAMD;;GAEG;AACH,qBAAa,gBAAiB,YAAW,YAAY;IACnD,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,cAAc,CAAS;gBAEnB,OAAO,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,cAAc,CAAC,EAAE,MAAM,CAAA;KAAE;IAKjE,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;CAsBxE;AAMD;;;;;GAKG;AACH,qBAAa,iBAAkB,YAAW,YAAY;IACpD,OAAO,CAAC,WAAW,CAAC,CAGlB;gBAEU,WAAW,CAAC,EAAE,OAAO;IAK3B,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IA8CvE,OAAO,CAAC,oBAAoB;IAe5B,OAAO,CAAC,eAAe;CAWxB;AAMD;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,WAAW,EACpB,OAAO,CAAC,EAAE;IACR,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;CACnC,GACA,YAAY,CAMd;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,WAAW,EACpB,WAAW,CAAC,EAAE,OAAO,EACrB,OAAO,CAAC,EAAE;IACR,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;CACnC,GACA,YAAY,CASd"}
1
+ {"version":3,"file":"plan-executor.d.ts","sourceRoot":"","sources":["../../src/planning/plan-executor.ts"],"names":[],"mappings":"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"}