@nahisaho/musubix-security 1.8.0 → 1.8.1

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 (186) hide show
  1. package/README.md +27 -0
  2. package/dist/analyzers/ai/index.d.ts +6 -0
  3. package/dist/analyzers/ai/index.d.ts.map +1 -0
  4. package/dist/analyzers/ai/index.js +6 -0
  5. package/dist/analyzers/ai/index.js.map +1 -0
  6. package/dist/analyzers/ai/prompt-injection-detector.d.ts +152 -0
  7. package/dist/analyzers/ai/prompt-injection-detector.d.ts.map +1 -0
  8. package/dist/analyzers/ai/prompt-injection-detector.js +468 -0
  9. package/dist/analyzers/ai/prompt-injection-detector.js.map +1 -0
  10. package/dist/analyzers/api/api-security-analyzer.d.ts +263 -0
  11. package/dist/analyzers/api/api-security-analyzer.d.ts.map +1 -0
  12. package/dist/analyzers/api/api-security-analyzer.js +581 -0
  13. package/dist/analyzers/api/api-security-analyzer.js.map +1 -0
  14. package/dist/analyzers/compliance/compliance-checker.d.ts +201 -0
  15. package/dist/analyzers/compliance/compliance-checker.d.ts.map +1 -0
  16. package/dist/analyzers/compliance/compliance-checker.js +772 -0
  17. package/dist/analyzers/compliance/compliance-checker.js.map +1 -0
  18. package/dist/analyzers/container/image-scanner.d.ts +163 -0
  19. package/dist/analyzers/container/image-scanner.d.ts.map +1 -0
  20. package/dist/analyzers/container/image-scanner.js +459 -0
  21. package/dist/analyzers/container/image-scanner.js.map +1 -0
  22. package/dist/analyzers/container/index.d.ts +6 -0
  23. package/dist/analyzers/container/index.d.ts.map +1 -0
  24. package/dist/analyzers/container/index.js +6 -0
  25. package/dist/analyzers/container/index.js.map +1 -0
  26. package/dist/analyzers/dashboard/security-dashboard.d.ts +286 -0
  27. package/dist/analyzers/dashboard/security-dashboard.d.ts.map +1 -0
  28. package/dist/analyzers/dashboard/security-dashboard.js +796 -0
  29. package/dist/analyzers/dashboard/security-dashboard.js.map +1 -0
  30. package/dist/analyzers/iac/iac-checker.d.ts +124 -0
  31. package/dist/analyzers/iac/iac-checker.d.ts.map +1 -0
  32. package/dist/analyzers/iac/iac-checker.js +755 -0
  33. package/dist/analyzers/iac/iac-checker.js.map +1 -0
  34. package/dist/analyzers/iac/index.d.ts +6 -0
  35. package/dist/analyzers/iac/index.d.ts.map +1 -0
  36. package/dist/analyzers/iac/index.js +6 -0
  37. package/dist/analyzers/iac/index.js.map +1 -0
  38. package/dist/analyzers/index.d.ts +9 -0
  39. package/dist/analyzers/index.d.ts.map +1 -0
  40. package/dist/analyzers/index.js +13 -0
  41. package/dist/analyzers/index.js.map +1 -0
  42. package/dist/analyzers/monitor/realtime-monitor.d.ts +216 -0
  43. package/dist/analyzers/monitor/realtime-monitor.d.ts.map +1 -0
  44. package/dist/analyzers/monitor/realtime-monitor.js +601 -0
  45. package/dist/analyzers/monitor/realtime-monitor.js.map +1 -0
  46. package/dist/analyzers/sast/index.d.ts +7 -0
  47. package/dist/analyzers/sast/index.d.ts.map +1 -0
  48. package/dist/analyzers/sast/index.js +7 -0
  49. package/dist/analyzers/sast/index.js.map +1 -0
  50. package/dist/analyzers/sast/interprocedural-analyzer.d.ts +276 -0
  51. package/dist/analyzers/sast/interprocedural-analyzer.d.ts.map +1 -0
  52. package/dist/analyzers/sast/interprocedural-analyzer.js +635 -0
  53. package/dist/analyzers/sast/interprocedural-analyzer.js.map +1 -0
  54. package/dist/analyzers/sast/zero-day-detector.d.ts +183 -0
  55. package/dist/analyzers/sast/zero-day-detector.d.ts.map +1 -0
  56. package/dist/analyzers/sast/zero-day-detector.js +593 -0
  57. package/dist/analyzers/sast/zero-day-detector.js.map +1 -0
  58. package/dist/analyzers/sca/dependency-scanner.d.ts +275 -0
  59. package/dist/analyzers/sca/dependency-scanner.d.ts.map +1 -0
  60. package/dist/analyzers/sca/dependency-scanner.js +642 -0
  61. package/dist/analyzers/sca/dependency-scanner.js.map +1 -0
  62. package/dist/core/index.d.ts +8 -0
  63. package/dist/core/index.d.ts.map +1 -0
  64. package/dist/core/index.js +10 -0
  65. package/dist/core/index.js.map +1 -0
  66. package/dist/core/pipeline-manager.d.ts +105 -0
  67. package/dist/core/pipeline-manager.d.ts.map +1 -0
  68. package/dist/core/pipeline-manager.js +449 -0
  69. package/dist/core/pipeline-manager.js.map +1 -0
  70. package/dist/core/result-aggregator.d.ts +96 -0
  71. package/dist/core/result-aggregator.d.ts.map +1 -0
  72. package/dist/core/result-aggregator.js +462 -0
  73. package/dist/core/result-aggregator.js.map +1 -0
  74. package/dist/index.d.ts +15 -0
  75. package/dist/index.d.ts.map +1 -1
  76. package/dist/index.js +68 -0
  77. package/dist/index.js.map +1 -1
  78. package/dist/integrations/ci-integration.d.ts +227 -0
  79. package/dist/integrations/ci-integration.d.ts.map +1 -0
  80. package/dist/integrations/ci-integration.js +472 -0
  81. package/dist/integrations/ci-integration.js.map +1 -0
  82. package/dist/integrations/git-hooks.d.ts +155 -0
  83. package/dist/integrations/git-hooks.d.ts.map +1 -0
  84. package/dist/integrations/git-hooks.js +425 -0
  85. package/dist/integrations/git-hooks.js.map +1 -0
  86. package/dist/integrations/index.d.ts +9 -0
  87. package/dist/integrations/index.d.ts.map +1 -0
  88. package/dist/integrations/index.js +9 -0
  89. package/dist/integrations/index.js.map +1 -0
  90. package/dist/integrations/report-aggregator.d.ts +250 -0
  91. package/dist/integrations/report-aggregator.d.ts.map +1 -0
  92. package/dist/integrations/report-aggregator.js +488 -0
  93. package/dist/integrations/report-aggregator.js.map +1 -0
  94. package/dist/integrations/vscode-integration.d.ts +245 -0
  95. package/dist/integrations/vscode-integration.d.ts.map +1 -0
  96. package/dist/integrations/vscode-integration.js +449 -0
  97. package/dist/integrations/vscode-integration.js.map +1 -0
  98. package/dist/intelligence/attack-pattern-matcher.d.ts +217 -0
  99. package/dist/intelligence/attack-pattern-matcher.d.ts.map +1 -0
  100. package/dist/intelligence/attack-pattern-matcher.js +887 -0
  101. package/dist/intelligence/attack-pattern-matcher.js.map +1 -0
  102. package/dist/intelligence/index.d.ts +12 -0
  103. package/dist/intelligence/index.d.ts.map +1 -0
  104. package/dist/intelligence/index.js +18 -0
  105. package/dist/intelligence/index.js.map +1 -0
  106. package/dist/intelligence/neuro-symbolic-core.d.ts +88 -0
  107. package/dist/intelligence/neuro-symbolic-core.d.ts.map +1 -0
  108. package/dist/intelligence/neuro-symbolic-core.js +403 -0
  109. package/dist/intelligence/neuro-symbolic-core.js.map +1 -0
  110. package/dist/intelligence/predictive-analyzer.d.ts +317 -0
  111. package/dist/intelligence/predictive-analyzer.d.ts.map +1 -0
  112. package/dist/intelligence/predictive-analyzer.js +714 -0
  113. package/dist/intelligence/predictive-analyzer.js.map +1 -0
  114. package/dist/intelligence/risk-scorer.d.ts +333 -0
  115. package/dist/intelligence/risk-scorer.d.ts.map +1 -0
  116. package/dist/intelligence/risk-scorer.js +824 -0
  117. package/dist/intelligence/risk-scorer.js.map +1 -0
  118. package/dist/intelligence/security-analytics.d.ts +349 -0
  119. package/dist/intelligence/security-analytics.d.ts.map +1 -0
  120. package/dist/intelligence/security-analytics.js +813 -0
  121. package/dist/intelligence/security-analytics.js.map +1 -0
  122. package/dist/intelligence/threat-intelligence.d.ts +288 -0
  123. package/dist/intelligence/threat-intelligence.d.ts.map +1 -0
  124. package/dist/intelligence/threat-intelligence.js +639 -0
  125. package/dist/intelligence/threat-intelligence.js.map +1 -0
  126. package/dist/policy/index.d.ts +6 -0
  127. package/dist/policy/index.d.ts.map +1 -0
  128. package/dist/policy/index.js +6 -0
  129. package/dist/policy/index.js.map +1 -0
  130. package/dist/policy/policy-engine.d.ts +254 -0
  131. package/dist/policy/policy-engine.d.ts.map +1 -0
  132. package/dist/policy/policy-engine.js +651 -0
  133. package/dist/policy/policy-engine.js.map +1 -0
  134. package/dist/remediation/auto-fixer.d.ts +179 -0
  135. package/dist/remediation/auto-fixer.d.ts.map +1 -0
  136. package/dist/remediation/auto-fixer.js +540 -0
  137. package/dist/remediation/auto-fixer.js.map +1 -0
  138. package/dist/remediation/fix-validator.d.ts +195 -0
  139. package/dist/remediation/fix-validator.d.ts.map +1 -0
  140. package/dist/remediation/fix-validator.js +462 -0
  141. package/dist/remediation/fix-validator.js.map +1 -0
  142. package/dist/remediation/index.d.ts +10 -0
  143. package/dist/remediation/index.d.ts.map +1 -0
  144. package/dist/remediation/index.js +15 -0
  145. package/dist/remediation/index.js.map +1 -0
  146. package/dist/remediation/patch-generator.d.ts +203 -0
  147. package/dist/remediation/patch-generator.d.ts.map +1 -0
  148. package/dist/remediation/patch-generator.js +533 -0
  149. package/dist/remediation/patch-generator.js.map +1 -0
  150. package/dist/remediation/remediation-planner.d.ts +262 -0
  151. package/dist/remediation/remediation-planner.d.ts.map +1 -0
  152. package/dist/remediation/remediation-planner.js +531 -0
  153. package/dist/remediation/remediation-planner.js.map +1 -0
  154. package/dist/remediation/secure-code-transformer.d.ts +222 -0
  155. package/dist/remediation/secure-code-transformer.d.ts.map +1 -0
  156. package/dist/remediation/secure-code-transformer.js +625 -0
  157. package/dist/remediation/secure-code-transformer.js.map +1 -0
  158. package/dist/types/fix.d.ts +3 -1
  159. package/dist/types/fix.d.ts.map +1 -1
  160. package/dist/types/index.d.ts +6 -0
  161. package/dist/types/index.d.ts.map +1 -1
  162. package/dist/types/index.js +1 -0
  163. package/dist/types/index.js.map +1 -1
  164. package/dist/types/interprocedural.d.ts +203 -0
  165. package/dist/types/interprocedural.d.ts.map +1 -0
  166. package/dist/types/interprocedural.js +7 -0
  167. package/dist/types/interprocedural.js.map +1 -0
  168. package/dist/types/neuro-symbolic.d.ts +179 -0
  169. package/dist/types/neuro-symbolic.d.ts.map +1 -0
  170. package/dist/types/neuro-symbolic.js +7 -0
  171. package/dist/types/neuro-symbolic.js.map +1 -0
  172. package/dist/types/pipeline.d.ts +173 -0
  173. package/dist/types/pipeline.d.ts.map +1 -0
  174. package/dist/types/pipeline.js +7 -0
  175. package/dist/types/pipeline.js.map +1 -0
  176. package/dist/types/result.d.ts +134 -0
  177. package/dist/types/result.d.ts.map +1 -0
  178. package/dist/types/result.js +25 -0
  179. package/dist/types/result.js.map +1 -0
  180. package/dist/types/vulnerability.d.ts +2 -2
  181. package/dist/types/vulnerability.d.ts.map +1 -1
  182. package/dist/types/zero-day.d.ts +146 -0
  183. package/dist/types/zero-day.d.ts.map +1 -0
  184. package/dist/types/zero-day.js +7 -0
  185. package/dist/types/zero-day.js.map +1 -0
  186. package/package.json +2 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"attack-pattern-matcher.js","sourceRoot":"","sources":["../../src/intelligence/attack-pattern-matcher.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * @fileoverview Intelligence layer components (Neuro-Symbolic)
3
+ * @module @nahisaho/musubix-security/intelligence
4
+ * @trace DES-SEC2-INT-001, DES-SEC2-INT-002, DES-SEC2-INT-003
5
+ */
6
+ export { NeuroSymbolicCore, createNeuroSymbolicCore, StubLLMAnalyzer, StubKnowledgeQuery, } from './neuro-symbolic-core.js';
7
+ export { ThreatIntelligence, createThreatIntelligence, quickIOCCheck, enrichWithThreatIntel, isCVEActivelyExploited, type IOCType, type ThreatSeverity, type ThreatConfidence, type IOC, type ThreatFeed, type ThreatMatch, type ThreatContext, type ThreatInfo, type ThreatIntelligenceOptions, } from './threat-intelligence.js';
8
+ export { AttackPatternMatcher, createAttackPatternMatcher, quickPatternMatch, mapToMitre, getMitreTechnique, type MitreTactic, type MitrePlatform, type MitreTechnique, type AttackPattern, type PatternMatch, type AttackChain, type AttackPatternMatcherOptions, } from './attack-pattern-matcher.js';
9
+ export { RiskScorer, createRiskScorer, calculateCVSS, quickRiskScore, scoreVulnerabilities, type AttackVector, type AttackComplexity, type PrivilegesRequired, type UserInteraction, type Scope, type Impact, type CVSSMetrics, type CVSSScore, type BusinessImpactCategory, type BusinessImpact, type AssetClassification, type RiskFactor, type RiskScore, type RiskSummary, type RiskScorerOptions, } from './risk-scorer.js';
10
+ export { SecurityAnalytics, createSecurityAnalytics, generateDashboard, type TimePeriod, type MetricType, type SecurityMetric, type SecurityTrend, type VulnerabilityStats, type SecurityScorecard, type SecurityDashboard, type AnalyticsReport, type AnalyticsEvent, type SecurityAnalyticsOptions, } from './security-analytics.js';
11
+ export { PredictiveAnalyzer, createPredictiveAnalyzer, projectRisk, predictVulnerabilities, detectAnomalies, type PredictionConfidence, type RiskProjection, type VulnerabilityPrediction, type SecurityAnomaly, type ProactiveAlert, type SecurityForecast, type HistoricalDataPoint, type PredictiveAnalyzerOptions, } from './predictive-analyzer.js';
12
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/intelligence/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EACL,iBAAiB,EACjB,uBAAuB,EACvB,eAAe,EACf,kBAAkB,GACnB,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EACL,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,qBAAqB,EACrB,sBAAsB,EACtB,KAAK,OAAO,EACZ,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,GAAG,EACR,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,UAAU,EACf,KAAK,yBAAyB,GAC/B,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EACL,oBAAoB,EACpB,0BAA0B,EAC1B,iBAAiB,EACjB,UAAU,EACV,iBAAiB,EACjB,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,2BAA2B,GACjC,MAAM,6BAA6B,CAAC;AAGrC,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,aAAa,EACb,cAAc,EACd,oBAAoB,EACpB,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACvB,KAAK,eAAe,EACpB,KAAK,KAAK,EACV,KAAK,MAAM,EACX,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,sBAAsB,EAC3B,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACxB,KAAK,UAAU,EACf,KAAK,SAAS,EACd,KAAK,WAAW,EAChB,KAAK,iBAAiB,GACvB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EACL,iBAAiB,EACjB,uBAAuB,EACvB,iBAAiB,EACjB,KAAK,UAAU,EACf,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,wBAAwB,GAC9B,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EACL,kBAAkB,EAClB,wBAAwB,EACxB,WAAW,EACX,sBAAsB,EACtB,eAAe,EACf,KAAK,oBAAoB,EACzB,KAAK,cAAc,EACnB,KAAK,uBAAuB,EAC5B,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EACxB,KAAK,yBAAyB,GAC/B,MAAM,0BAA0B,CAAC"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * @fileoverview Intelligence layer components (Neuro-Symbolic)
3
+ * @module @nahisaho/musubix-security/intelligence
4
+ * @trace DES-SEC2-INT-001, DES-SEC2-INT-002, DES-SEC2-INT-003
5
+ */
6
+ // Neuro-Symbolic Core
7
+ export { NeuroSymbolicCore, createNeuroSymbolicCore, StubLLMAnalyzer, StubKnowledgeQuery, } from './neuro-symbolic-core.js';
8
+ // Threat Intelligence
9
+ export { ThreatIntelligence, createThreatIntelligence, quickIOCCheck, enrichWithThreatIntel, isCVEActivelyExploited, } from './threat-intelligence.js';
10
+ // Attack Pattern Matcher
11
+ export { AttackPatternMatcher, createAttackPatternMatcher, quickPatternMatch, mapToMitre, getMitreTechnique, } from './attack-pattern-matcher.js';
12
+ // Risk Scorer
13
+ export { RiskScorer, createRiskScorer, calculateCVSS, quickRiskScore, scoreVulnerabilities, } from './risk-scorer.js';
14
+ // Security Analytics
15
+ export { SecurityAnalytics, createSecurityAnalytics, generateDashboard, } from './security-analytics.js';
16
+ // Predictive Analyzer
17
+ export { PredictiveAnalyzer, createPredictiveAnalyzer, projectRisk, predictVulnerabilities, detectAnomalies, } from './predictive-analyzer.js';
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/intelligence/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,sBAAsB;AACtB,OAAO,EACL,iBAAiB,EACjB,uBAAuB,EACvB,eAAe,EACf,kBAAkB,GACnB,MAAM,0BAA0B,CAAC;AAElC,sBAAsB;AACtB,OAAO,EACL,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,qBAAqB,EACrB,sBAAsB,GAUvB,MAAM,0BAA0B,CAAC;AAElC,yBAAyB;AACzB,OAAO,EACL,oBAAoB,EACpB,0BAA0B,EAC1B,iBAAiB,EACjB,UAAU,EACV,iBAAiB,GAQlB,MAAM,6BAA6B,CAAC;AAErC,cAAc;AACd,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,aAAa,EACb,cAAc,EACd,oBAAoB,GAgBrB,MAAM,kBAAkB,CAAC;AAE1B,qBAAqB;AACrB,OAAO,EACL,iBAAiB,EACjB,uBAAuB,EACvB,iBAAiB,GAWlB,MAAM,yBAAyB,CAAC;AAEjC,sBAAsB;AACtB,OAAO,EACL,kBAAkB,EAClB,wBAAwB,EACxB,WAAW,EACX,sBAAsB,EACtB,eAAe,GAShB,MAAM,0BAA0B,CAAC"}
@@ -0,0 +1,88 @@
1
+ /**
2
+ * @fileoverview Neuro-Symbolic Core - integrates neural (LLM) and symbolic reasoning
3
+ * @module @nahisaho/musubix-security/intelligence/neuro-symbolic-core
4
+ * @trace DES-SEC2-INT-001, REQ-SEC2-INT-001, REQ-SEC2-INT-002, REQ-SEC2-INT-003
5
+ */
6
+ import type { Vulnerability } from '../types/vulnerability.js';
7
+ import type { NeuralResult, SymbolicResult, KnowledgeGraphMatch, NeuroSymbolicResult, IntegrationOptions, INeuroSymbolicCore, ILLMAnalyzer, IKnowledgeQuery } from '../types/neuro-symbolic.js';
8
+ import type { TaintPath } from '../types/taint.js';
9
+ /**
10
+ * Neuro-Symbolic Core implementation
11
+ * Integrates neural (LLM) analysis with symbolic (knowledge graph) reasoning
12
+ * @trace DES-SEC2-INT-001
13
+ */
14
+ export declare class NeuroSymbolicCore implements INeuroSymbolicCore {
15
+ private options;
16
+ private llmAnalyzer;
17
+ private knowledgeQuery;
18
+ constructor(options?: IntegrationOptions);
19
+ /**
20
+ * Set LLM analyzer implementation
21
+ */
22
+ setLLMAnalyzer(analyzer: ILLMAnalyzer): void;
23
+ /**
24
+ * Set knowledge query implementation
25
+ */
26
+ setKnowledgeQuery(query: IKnowledgeQuery): void;
27
+ /**
28
+ * Integrate neural and symbolic analysis for a vulnerability
29
+ * @trace REQ-SEC2-INT-003
30
+ */
31
+ integrate(vulnerability: Vulnerability, options?: IntegrationOptions): Promise<NeuroSymbolicResult>;
32
+ /**
33
+ * Validate a finding using symbolic reasoning only
34
+ */
35
+ validateSymbolic(vulnerability: Vulnerability): Promise<SymbolicResult>;
36
+ /**
37
+ * Analyze a finding using neural (LLM) analysis
38
+ */
39
+ analyzeNeural(vulnerability: Vulnerability, context?: string): Promise<NeuralResult>;
40
+ /**
41
+ * Generate heuristic-based pseudo-neural result when LLM is not available
42
+ */
43
+ private generateHeuristicNeuralResult;
44
+ /**
45
+ * Generate human-readable explanation
46
+ */
47
+ private generateExplanation;
48
+ /**
49
+ * Calculate combined confidence score
50
+ * @trace REQ-SEC2-INT-002
51
+ */
52
+ calculateScore(neuralResult: NeuralResult, symbolicResult: SymbolicResult): number;
53
+ /**
54
+ * Apply integration rules to determine final decision
55
+ * @trace REQ-SEC2-INT-002
56
+ *
57
+ * Rules:
58
+ * - If symbolic validation fails -> reject neural result
59
+ * - If symbolic valid AND neural confidence >= threshold -> confirm
60
+ * - If symbolic valid AND neural confidence < threshold -> prefer symbolic
61
+ */
62
+ private applyIntegrationRules;
63
+ /**
64
+ * Generate rationale for the decision
65
+ */
66
+ private generateRationale;
67
+ }
68
+ /**
69
+ * Create a default Neuro-Symbolic Core instance
70
+ */
71
+ export declare function createNeuroSymbolicCore(options?: IntegrationOptions): NeuroSymbolicCore;
72
+ /**
73
+ * Stub LLM Analyzer for testing without actual LLM
74
+ */
75
+ export declare class StubLLMAnalyzer implements ILLMAnalyzer {
76
+ analyzeContext(codeSnippet: string, vulnerability: Vulnerability): Promise<NeuralResult>;
77
+ generateExplanation(vulnerability: Vulnerability, dataFlow?: TaintPath): Promise<string>;
78
+ suggestFix(vulnerability: Vulnerability): Promise<string[]>;
79
+ }
80
+ /**
81
+ * Stub Knowledge Query for testing without actual knowledge graph
82
+ */
83
+ export declare class StubKnowledgeQuery implements IKnowledgeQuery {
84
+ queryPattern(_codePattern: string, cwes?: string[]): Promise<KnowledgeGraphMatch[]>;
85
+ matchRule(vulnerability: Vulnerability): Promise<string[]>;
86
+ inferVulnerability(codeSnippet: string): Promise<string[]>;
87
+ }
88
+ //# sourceMappingURL=neuro-symbolic-core.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"neuro-symbolic-core.d.ts","sourceRoot":"","sources":["../../src/intelligence/neuro-symbolic-core.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAY,MAAM,2BAA2B,CAAC;AACzE,OAAO,KAAK,EAEV,YAAY,EACZ,cAAc,EACd,mBAAmB,EAEnB,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EAClB,YAAY,EACZ,eAAe,EAChB,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAiEnD;;;;GAIG;AACH,qBAAa,iBAAkB,YAAW,kBAAkB;IAC1D,OAAO,CAAC,OAAO,CAA+B;IAC9C,OAAO,CAAC,WAAW,CAA6B;IAChD,OAAO,CAAC,cAAc,CAAgC;gBAE1C,OAAO,GAAE,kBAAuB;IAI5C;;OAEG;IACH,cAAc,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI;IAI5C;;OAEG;IACH,iBAAiB,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI;IAI/C;;;OAGG;IACG,SAAS,CACb,aAAa,EAAE,aAAa,EAC5B,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,mBAAmB,CAAC;IA2C/B;;OAEG;IACG,gBAAgB,CAAC,aAAa,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC;IAwF7E;;OAEG;IACG,aAAa,CACjB,aAAa,EAAE,aAAa,EAC5B,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,YAAY,CAAC;IAWxB;;OAEG;IACH,OAAO,CAAC,6BAA6B;IA2BrC;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAU3B;;;OAGG;IACH,cAAc,CACZ,YAAY,EAAE,YAAY,EAC1B,cAAc,EAAE,cAAc,GAC7B,MAAM;IAwBT;;;;;;;;OAQG;IACH,OAAO,CAAC,qBAAqB;IA4B7B;;OAEG;IACH,OAAO,CAAC,iBAAiB;CAqC1B;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,CAAC,EAAE,kBAAkB,GAC3B,iBAAiB,CAEnB;AAED;;GAEG;AACH,qBAAa,eAAgB,YAAW,YAAY;IAC5C,cAAc,CAClB,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,aAAa,GAC3B,OAAO,CAAC,YAAY,CAAC;IAoBlB,mBAAmB,CACvB,aAAa,EAAE,aAAa,EAC5B,QAAQ,CAAC,EAAE,SAAS,GACnB,OAAO,CAAC,MAAM,CAAC;IAWZ,UAAU,CAAC,aAAa,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;CAGlE;AAED;;GAEG;AACH,qBAAa,kBAAmB,YAAW,eAAe;IAClD,YAAY,CAChB,YAAY,EAAE,MAAM,EACpB,IAAI,CAAC,EAAE,MAAM,EAAE,GACd,OAAO,CAAC,mBAAmB,EAAE,CAAC;IAkB3B,SAAS,CAAC,aAAa,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAY1D,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;CAgBjE"}
@@ -0,0 +1,403 @@
1
+ /**
2
+ * @fileoverview Neuro-Symbolic Core - integrates neural (LLM) and symbolic reasoning
3
+ * @module @nahisaho/musubix-security/intelligence/neuro-symbolic-core
4
+ * @trace DES-SEC2-INT-001, REQ-SEC2-INT-001, REQ-SEC2-INT-002, REQ-SEC2-INT-003
5
+ */
6
+ /**
7
+ * Default integration options
8
+ */
9
+ const DEFAULT_OPTIONS = {
10
+ neuralThreshold: 0.8,
11
+ requireSymbolicValidation: true,
12
+ llmProvider: 'openai',
13
+ maxTokens: 2000,
14
+ kgQueryDepth: 3,
15
+ };
16
+ /**
17
+ * Security patterns for symbolic matching
18
+ */
19
+ const SECURITY_PATTERNS = new Map([
20
+ ['sql-injection', { cwes: ['CWE-89'], severity: 'critical' }],
21
+ ['command-injection', { cwes: ['CWE-78'], severity: 'critical' }],
22
+ ['xss', { cwes: ['CWE-79'], severity: 'high' }],
23
+ ['path-traversal', { cwes: ['CWE-22'], severity: 'high' }],
24
+ ['ssrf', { cwes: ['CWE-918'], severity: 'high' }],
25
+ ['insecure-deserialization', { cwes: ['CWE-502'], severity: 'critical' }],
26
+ ['hardcoded-secret', { cwes: ['CWE-798'], severity: 'high' }],
27
+ ['missing-authentication', { cwes: ['CWE-306'], severity: 'critical' }],
28
+ ['missing-authorization', { cwes: ['CWE-862'], severity: 'high' }],
29
+ ['sensitive-data-exposure', { cwes: ['CWE-200'], severity: 'medium' }],
30
+ ]);
31
+ /**
32
+ * Security rules for inference
33
+ */
34
+ const SECURITY_RULES = [
35
+ {
36
+ id: 'RULE-001',
37
+ name: 'Unsanitized User Input to SQL',
38
+ pattern: 'user_input -> sql_query',
39
+ cwes: ['CWE-89'],
40
+ },
41
+ {
42
+ id: 'RULE-002',
43
+ name: 'Unsanitized User Input to Shell',
44
+ pattern: 'user_input -> exec|spawn',
45
+ cwes: ['CWE-78'],
46
+ },
47
+ {
48
+ id: 'RULE-003',
49
+ name: 'Unsanitized User Input to HTML',
50
+ pattern: 'user_input -> html_output',
51
+ cwes: ['CWE-79'],
52
+ },
53
+ {
54
+ id: 'RULE-004',
55
+ name: 'Unsanitized User Input to File Path',
56
+ pattern: 'user_input -> file_path',
57
+ cwes: ['CWE-22'],
58
+ },
59
+ {
60
+ id: 'RULE-005',
61
+ name: 'Unsanitized User Input to URL',
62
+ pattern: 'user_input -> http_request',
63
+ cwes: ['CWE-918'],
64
+ },
65
+ ];
66
+ /**
67
+ * Neuro-Symbolic Core implementation
68
+ * Integrates neural (LLM) analysis with symbolic (knowledge graph) reasoning
69
+ * @trace DES-SEC2-INT-001
70
+ */
71
+ export class NeuroSymbolicCore {
72
+ options;
73
+ llmAnalyzer = null;
74
+ knowledgeQuery = null;
75
+ constructor(options = {}) {
76
+ this.options = { ...DEFAULT_OPTIONS, ...options };
77
+ }
78
+ /**
79
+ * Set LLM analyzer implementation
80
+ */
81
+ setLLMAnalyzer(analyzer) {
82
+ this.llmAnalyzer = analyzer;
83
+ }
84
+ /**
85
+ * Set knowledge query implementation
86
+ */
87
+ setKnowledgeQuery(query) {
88
+ this.knowledgeQuery = query;
89
+ }
90
+ /**
91
+ * Integrate neural and symbolic analysis for a vulnerability
92
+ * @trace REQ-SEC2-INT-003
93
+ */
94
+ async integrate(vulnerability, options) {
95
+ const opts = { ...this.options, ...options };
96
+ // Run neural analysis (if LLM analyzer is available)
97
+ let neuralResult;
98
+ if (this.llmAnalyzer) {
99
+ neuralResult = await this.analyzeNeural(vulnerability, vulnerability.codeSnippet);
100
+ }
101
+ else {
102
+ // Fallback: use heuristic-based pseudo-neural analysis
103
+ neuralResult = this.generateHeuristicNeuralResult(vulnerability);
104
+ }
105
+ // Run symbolic validation
106
+ const symbolicResult = await this.validateSymbolic(vulnerability);
107
+ // Apply integration rules (REQ-SEC2-INT-002)
108
+ const finalDecision = this.applyIntegrationRules(neuralResult, symbolicResult, opts.neuralThreshold);
109
+ // Calculate combined confidence
110
+ const combinedConfidence = this.calculateScore(neuralResult, symbolicResult);
111
+ // Generate rationale
112
+ const rationale = this.generateRationale(neuralResult, symbolicResult, finalDecision);
113
+ return {
114
+ neuralConfidence: neuralResult.confidence,
115
+ symbolicValid: symbolicResult.valid,
116
+ finalDecision,
117
+ neuralExplanation: neuralResult.explanation,
118
+ symbolicEvidence: symbolicResult.evidence,
119
+ combinedConfidence,
120
+ rationale,
121
+ };
122
+ }
123
+ /**
124
+ * Validate a finding using symbolic reasoning only
125
+ */
126
+ async validateSymbolic(vulnerability) {
127
+ const evidence = [];
128
+ const matchedPatterns = [];
129
+ const appliedRules = [];
130
+ let knowledgeGraphMatches = [];
131
+ // 1. Pattern matching
132
+ for (const [patternName, patternInfo] of SECURITY_PATTERNS) {
133
+ const hasMatchingCWE = vulnerability.cwes.some(cwe => patternInfo.cwes.includes(cwe));
134
+ if (hasMatchingCWE) {
135
+ matchedPatterns.push(patternName);
136
+ evidence.push({
137
+ type: 'pattern-match',
138
+ source: patternName,
139
+ description: `Matched security pattern: ${patternName} (${patternInfo.cwes.join(', ')})`,
140
+ weight: 0.8,
141
+ relatedCWEs: patternInfo.cwes,
142
+ });
143
+ }
144
+ }
145
+ // 2. Rule inference
146
+ for (const rule of SECURITY_RULES) {
147
+ const hasMatchingCWE = vulnerability.cwes.some(cwe => rule.cwes.includes(cwe));
148
+ if (hasMatchingCWE) {
149
+ appliedRules.push(rule.id);
150
+ evidence.push({
151
+ type: 'rule-inference',
152
+ source: rule.id,
153
+ description: `Applied rule: ${rule.name}`,
154
+ weight: 0.7,
155
+ relatedCWEs: rule.cwes,
156
+ });
157
+ }
158
+ }
159
+ // 3. Knowledge graph query (if available)
160
+ if (this.knowledgeQuery) {
161
+ try {
162
+ const codePattern = vulnerability.codeSnippet ?? '';
163
+ knowledgeGraphMatches = await this.knowledgeQuery.queryPattern(codePattern, vulnerability.cwes);
164
+ for (const match of knowledgeGraphMatches) {
165
+ evidence.push({
166
+ type: 'knowledge-graph',
167
+ source: match.entityUri,
168
+ description: `Knowledge graph match: ${match.entityType} (score: ${match.score})`,
169
+ weight: match.score,
170
+ });
171
+ }
172
+ }
173
+ catch {
174
+ // Knowledge graph query failed, continue without it
175
+ }
176
+ }
177
+ // 4. Static analysis evidence (from vulnerability detection)
178
+ evidence.push({
179
+ type: 'static-analysis',
180
+ source: vulnerability.ruleId,
181
+ description: `Detected by static analysis rule: ${vulnerability.ruleId}`,
182
+ weight: vulnerability.confidence,
183
+ });
184
+ // Determine validity based on evidence weight
185
+ const totalWeight = evidence.reduce((sum, e) => sum + e.weight, 0);
186
+ const avgWeight = evidence.length > 0 ? totalWeight / evidence.length : 0;
187
+ const valid = avgWeight >= 0.5 && matchedPatterns.length > 0;
188
+ return {
189
+ valid,
190
+ evidence,
191
+ matchedPatterns,
192
+ appliedRules,
193
+ knowledgeGraphMatches: knowledgeGraphMatches.length > 0
194
+ ? knowledgeGraphMatches
195
+ : undefined,
196
+ };
197
+ }
198
+ /**
199
+ * Analyze a finding using neural (LLM) analysis
200
+ */
201
+ async analyzeNeural(vulnerability, context) {
202
+ if (!this.llmAnalyzer) {
203
+ return this.generateHeuristicNeuralResult(vulnerability);
204
+ }
205
+ return this.llmAnalyzer.analyzeContext(context ?? vulnerability.codeSnippet ?? '', vulnerability);
206
+ }
207
+ /**
208
+ * Generate heuristic-based pseudo-neural result when LLM is not available
209
+ */
210
+ generateHeuristicNeuralResult(vulnerability) {
211
+ // Estimate confidence based on vulnerability characteristics
212
+ let confidence = vulnerability.confidence;
213
+ // Adjust based on severity
214
+ const severityBoost = {
215
+ critical: 0.1,
216
+ high: 0.05,
217
+ medium: 0,
218
+ low: -0.05,
219
+ info: -0.1,
220
+ };
221
+ confidence = Math.max(0, Math.min(1, confidence + severityBoost[vulnerability.severity]));
222
+ // Generate explanation based on vulnerability info
223
+ const explanation = this.generateExplanation(vulnerability);
224
+ return {
225
+ confidence,
226
+ explanation,
227
+ suggestedSeverity: vulnerability.severity,
228
+ suggestedFixes: [vulnerability.recommendation],
229
+ model: 'heuristic-fallback',
230
+ latency: 0,
231
+ };
232
+ }
233
+ /**
234
+ * Generate human-readable explanation
235
+ */
236
+ generateExplanation(vulnerability) {
237
+ const cwes = vulnerability.cwes.join(', ');
238
+ const location = `${vulnerability.location.file}:${vulnerability.location.startLine}`;
239
+ return `Security vulnerability detected at ${location}. ` +
240
+ `This finding is classified as ${vulnerability.severity} severity ` +
241
+ `and relates to ${cwes}. ${vulnerability.description} ` +
242
+ `Recommended action: ${vulnerability.recommendation}`;
243
+ }
244
+ /**
245
+ * Calculate combined confidence score
246
+ * @trace REQ-SEC2-INT-002
247
+ */
248
+ calculateScore(neuralResult, symbolicResult) {
249
+ // If symbolic validation fails, significantly reduce confidence
250
+ if (!symbolicResult.valid) {
251
+ return neuralResult.confidence * 0.3;
252
+ }
253
+ // Weight symbolic evidence
254
+ const symbolicWeight = symbolicResult.evidence.reduce((sum, e) => sum + e.weight, 0) / Math.max(1, symbolicResult.evidence.length);
255
+ // Combined score: weighted average favoring symbolic when neural is uncertain
256
+ const neuralWeight = neuralResult.confidence >= this.options.neuralThreshold
257
+ ? 0.6
258
+ : 0.4;
259
+ const symbolicWeightFactor = 1 - neuralWeight;
260
+ const combined = neuralResult.confidence * neuralWeight +
261
+ symbolicWeight * symbolicWeightFactor;
262
+ return Math.round(combined * 100) / 100;
263
+ }
264
+ /**
265
+ * Apply integration rules to determine final decision
266
+ * @trace REQ-SEC2-INT-002
267
+ *
268
+ * Rules:
269
+ * - If symbolic validation fails -> reject neural result
270
+ * - If symbolic valid AND neural confidence >= threshold -> confirm
271
+ * - If symbolic valid AND neural confidence < threshold -> prefer symbolic
272
+ */
273
+ applyIntegrationRules(neuralResult, symbolicResult, neuralThreshold) {
274
+ // Rule 1: Symbolic invalid -> reject
275
+ if (!symbolicResult.valid) {
276
+ return 'rejected';
277
+ }
278
+ // Rule 2: Symbolic valid AND high neural confidence -> confirm
279
+ if (neuralResult.confidence >= neuralThreshold) {
280
+ return 'confirmed';
281
+ }
282
+ // Rule 3: Symbolic valid but low neural confidence -> needs review
283
+ // However, if symbolic evidence is strong, can still confirm
284
+ const strongSymbolicEvidence = symbolicResult.evidence.filter(e => e.weight >= 0.7);
285
+ if (strongSymbolicEvidence.length >= 2) {
286
+ return 'confirmed';
287
+ }
288
+ return 'needs-review';
289
+ }
290
+ /**
291
+ * Generate rationale for the decision
292
+ */
293
+ generateRationale(neuralResult, symbolicResult, decision) {
294
+ const parts = [];
295
+ // Neural confidence
296
+ parts.push(`Neural analysis confidence: ${(neuralResult.confidence * 100).toFixed(1)}%`);
297
+ // Symbolic validation
298
+ parts.push(`Symbolic validation: ${symbolicResult.valid ? 'VALID' : 'INVALID'}`);
299
+ // Evidence summary
300
+ if (symbolicResult.matchedPatterns.length > 0) {
301
+ parts.push(`Matched patterns: ${symbolicResult.matchedPatterns.join(', ')}`);
302
+ }
303
+ if (symbolicResult.appliedRules.length > 0) {
304
+ parts.push(`Applied rules: ${symbolicResult.appliedRules.join(', ')}`);
305
+ }
306
+ // Decision rationale
307
+ switch (decision) {
308
+ case 'confirmed':
309
+ parts.push('Decision: CONFIRMED - Both neural and symbolic analysis indicate a real vulnerability.');
310
+ break;
311
+ case 'rejected':
312
+ parts.push('Decision: REJECTED - Symbolic validation failed, likely false positive.');
313
+ break;
314
+ case 'needs-review':
315
+ parts.push('Decision: NEEDS REVIEW - Neural confidence is low, manual review recommended.');
316
+ break;
317
+ }
318
+ return parts.join('\n');
319
+ }
320
+ }
321
+ /**
322
+ * Create a default Neuro-Symbolic Core instance
323
+ */
324
+ export function createNeuroSymbolicCore(options) {
325
+ return new NeuroSymbolicCore(options);
326
+ }
327
+ /**
328
+ * Stub LLM Analyzer for testing without actual LLM
329
+ */
330
+ export class StubLLMAnalyzer {
331
+ async analyzeContext(codeSnippet, vulnerability) {
332
+ // Simple heuristic-based analysis
333
+ const hasUserInput = /req\.(body|query|params)|process\.env|fs\.read/i.test(codeSnippet);
334
+ const hasDangerousSink = /exec|query|eval|innerHTML|write/i.test(codeSnippet);
335
+ let confidence = vulnerability.confidence;
336
+ if (hasUserInput && hasDangerousSink) {
337
+ confidence = Math.min(1, confidence + 0.2);
338
+ }
339
+ return {
340
+ confidence,
341
+ explanation: `Code analysis: ${hasUserInput ? 'User input detected' : 'No obvious user input'}. ${hasDangerousSink ? 'Dangerous sink detected' : 'No dangerous sinks'}.`,
342
+ suggestedSeverity: vulnerability.severity,
343
+ suggestedFixes: [vulnerability.recommendation],
344
+ model: 'stub-analyzer',
345
+ latency: 10,
346
+ };
347
+ }
348
+ async generateExplanation(vulnerability, dataFlow) {
349
+ let explanation = `This ${vulnerability.severity} severity vulnerability at ${vulnerability.location.file}:${vulnerability.location.startLine} `;
350
+ explanation += `involves ${vulnerability.cwes.join(' and ')}. `;
351
+ if (dataFlow) {
352
+ explanation += `Data flows from ${dataFlow.source.variableName} through ${dataFlow.steps.length} steps to a dangerous sink.`;
353
+ }
354
+ return explanation;
355
+ }
356
+ async suggestFix(vulnerability) {
357
+ return [vulnerability.recommendation];
358
+ }
359
+ }
360
+ /**
361
+ * Stub Knowledge Query for testing without actual knowledge graph
362
+ */
363
+ export class StubKnowledgeQuery {
364
+ async queryPattern(_codePattern, cwes) {
365
+ const matches = [];
366
+ // Simple pattern matching
367
+ if (cwes) {
368
+ for (const cwe of cwes) {
369
+ matches.push({
370
+ entityUri: `https://cwe.mitre.org/data/definitions/${cwe.replace('CWE-', '')}.html`,
371
+ entityType: 'CWE',
372
+ score: 0.8,
373
+ relatedEntities: [],
374
+ });
375
+ }
376
+ }
377
+ return matches;
378
+ }
379
+ async matchRule(vulnerability) {
380
+ const matchedRules = [];
381
+ for (const rule of SECURITY_RULES) {
382
+ if (vulnerability.cwes.some(cwe => rule.cwes.includes(cwe))) {
383
+ matchedRules.push(rule.id);
384
+ }
385
+ }
386
+ return matchedRules;
387
+ }
388
+ async inferVulnerability(codeSnippet) {
389
+ const inferred = [];
390
+ // Simple inference based on code patterns
391
+ if (/query.*\$\{/.test(codeSnippet) || /query.*\+/.test(codeSnippet)) {
392
+ inferred.push('CWE-89');
393
+ }
394
+ if (/exec.*\$\{/.test(codeSnippet) || /spawn.*\+/.test(codeSnippet)) {
395
+ inferred.push('CWE-78');
396
+ }
397
+ if (/innerHTML\s*=/.test(codeSnippet) || /document\.write/.test(codeSnippet)) {
398
+ inferred.push('CWE-79');
399
+ }
400
+ return inferred;
401
+ }
402
+ }
403
+ //# sourceMappingURL=neuro-symbolic-core.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"neuro-symbolic-core.js","sourceRoot":"","sources":["../../src/intelligence/neuro-symbolic-core.ts"],"names":[],"mappings":"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"}