vaspera 2.9.2 → 2.10.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.
- package/CHANGELOG.md +68 -0
- package/README.md +58 -1
- package/dist/__tests__/autofix/branch-manager.test.d.ts +2 -0
- package/dist/__tests__/autofix/branch-manager.test.d.ts.map +1 -0
- package/dist/__tests__/autofix/branch-manager.test.js +60 -0
- package/dist/__tests__/autofix/branch-manager.test.js.map +1 -0
- package/dist/__tests__/autofix/commit-generator.test.d.ts +2 -0
- package/dist/__tests__/autofix/commit-generator.test.d.ts.map +1 -0
- package/dist/__tests__/autofix/commit-generator.test.js +147 -0
- package/dist/__tests__/autofix/commit-generator.test.js.map +1 -0
- package/dist/__tests__/autofix/constitution.test.d.ts +9 -0
- package/dist/__tests__/autofix/constitution.test.d.ts.map +1 -0
- package/dist/__tests__/autofix/constitution.test.js +421 -0
- package/dist/__tests__/autofix/constitution.test.js.map +1 -0
- package/dist/__tests__/autofix/pr-generator.test.d.ts +2 -0
- package/dist/__tests__/autofix/pr-generator.test.d.ts.map +1 -0
- package/dist/__tests__/autofix/pr-generator.test.js +152 -0
- package/dist/__tests__/autofix/pr-generator.test.js.map +1 -0
- package/dist/__tests__/property-test-helpers.d.ts +87 -0
- package/dist/__tests__/property-test-helpers.d.ts.map +1 -0
- package/dist/__tests__/property-test-helpers.js +136 -0
- package/dist/__tests__/property-test-helpers.js.map +1 -0
- package/dist/__tests__/scanners/ai-code/ai-detector.test.d.ts +2 -0
- package/dist/__tests__/scanners/ai-code/ai-detector.test.d.ts.map +1 -0
- package/dist/__tests__/scanners/ai-code/ai-detector.test.js +188 -0
- package/dist/__tests__/scanners/ai-code/ai-detector.test.js.map +1 -0
- package/dist/__tests__/scanners/ai-code/confidence-scorer.test.d.ts +2 -0
- package/dist/__tests__/scanners/ai-code/confidence-scorer.test.d.ts.map +1 -0
- package/dist/__tests__/scanners/ai-code/confidence-scorer.test.js +363 -0
- package/dist/__tests__/scanners/ai-code/confidence-scorer.test.js.map +1 -0
- package/dist/__tests__/scanners/ai-code/hallucination-checker.test.d.ts +2 -0
- package/dist/__tests__/scanners/ai-code/hallucination-checker.test.d.ts.map +1 -0
- package/dist/__tests__/scanners/ai-code/hallucination-checker.test.js +226 -0
- package/dist/__tests__/scanners/ai-code/hallucination-checker.test.js.map +1 -0
- package/dist/__tests__/scanners/ai-code/index.test.d.ts +2 -0
- package/dist/__tests__/scanners/ai-code/index.test.d.ts.map +1 -0
- package/dist/__tests__/scanners/ai-code/index.test.js +214 -0
- package/dist/__tests__/scanners/ai-code/index.test.js.map +1 -0
- package/dist/__tests__/scanners/dast/index.test.d.ts +2 -0
- package/dist/__tests__/scanners/dast/index.test.d.ts.map +1 -0
- package/dist/__tests__/scanners/dast/index.test.js +183 -0
- package/dist/__tests__/scanners/dast/index.test.js.map +1 -0
- package/dist/__tests__/scanners/dast/nuclei.test.d.ts +2 -0
- package/dist/__tests__/scanners/dast/nuclei.test.d.ts.map +1 -0
- package/dist/__tests__/scanners/dast/nuclei.test.js +166 -0
- package/dist/__tests__/scanners/dast/nuclei.test.js.map +1 -0
- package/dist/__tests__/scanners/dast/zap.test.d.ts +2 -0
- package/dist/__tests__/scanners/dast/zap.test.d.ts.map +1 -0
- package/dist/__tests__/scanners/dast/zap.test.js +158 -0
- package/dist/__tests__/scanners/dast/zap.test.js.map +1 -0
- package/dist/__tests__/scanners/deploy/health-checker.test.d.ts +2 -0
- package/dist/__tests__/scanners/deploy/health-checker.test.d.ts.map +1 -0
- package/dist/__tests__/scanners/deploy/health-checker.test.js +67 -0
- package/dist/__tests__/scanners/deploy/health-checker.test.js.map +1 -0
- package/dist/__tests__/scanners/deploy/index.test.d.ts +2 -0
- package/dist/__tests__/scanners/deploy/index.test.d.ts.map +1 -0
- package/dist/__tests__/scanners/deploy/index.test.js +84 -0
- package/dist/__tests__/scanners/deploy/index.test.js.map +1 -0
- package/dist/__tests__/scanners/deploy/provider-detector.test.d.ts +2 -0
- package/dist/__tests__/scanners/deploy/provider-detector.test.d.ts.map +1 -0
- package/dist/__tests__/scanners/deploy/provider-detector.test.js +88 -0
- package/dist/__tests__/scanners/deploy/provider-detector.test.js.map +1 -0
- package/dist/__tests__/scanners/deploy/types.test.d.ts +2 -0
- package/dist/__tests__/scanners/deploy/types.test.d.ts.map +1 -0
- package/dist/__tests__/scanners/deploy/types.test.js +126 -0
- package/dist/__tests__/scanners/deploy/types.test.js.map +1 -0
- package/dist/__tests__/scanners/fp-feedback.test.d.ts +2 -0
- package/dist/__tests__/scanners/fp-feedback.test.d.ts.map +1 -0
- package/dist/__tests__/scanners/fp-feedback.test.js +202 -0
- package/dist/__tests__/scanners/fp-feedback.test.js.map +1 -0
- package/dist/__tests__/scanners/fp-filter.property.test.d.ts +9 -0
- package/dist/__tests__/scanners/fp-filter.property.test.d.ts.map +1 -0
- package/dist/__tests__/scanners/fp-filter.property.test.js +253 -0
- package/dist/__tests__/scanners/fp-filter.property.test.js.map +1 -0
- package/dist/__tests__/scanners/fp-filter.test.d.ts +2 -0
- package/dist/__tests__/scanners/fp-filter.test.d.ts.map +1 -0
- package/dist/__tests__/scanners/fp-filter.test.js +234 -0
- package/dist/__tests__/scanners/fp-filter.test.js.map +1 -0
- package/dist/__tests__/scanners/fp-tracker.test.d.ts +2 -0
- package/dist/__tests__/scanners/fp-tracker.test.d.ts.map +1 -0
- package/dist/__tests__/scanners/fp-tracker.test.js +262 -0
- package/dist/__tests__/scanners/fp-tracker.test.js.map +1 -0
- package/dist/__tests__/scanners/logic/endpoint-analyzer.property.test.d.ts +10 -0
- package/dist/__tests__/scanners/logic/endpoint-analyzer.property.test.d.ts.map +1 -0
- package/dist/__tests__/scanners/logic/endpoint-analyzer.property.test.js +238 -0
- package/dist/__tests__/scanners/logic/endpoint-analyzer.property.test.js.map +1 -0
- package/dist/__tests__/scanners/logic/endpoint-analyzer.test.d.ts +2 -0
- package/dist/__tests__/scanners/logic/endpoint-analyzer.test.d.ts.map +1 -0
- package/dist/__tests__/scanners/logic/endpoint-analyzer.test.js +55 -0
- package/dist/__tests__/scanners/logic/endpoint-analyzer.test.js.map +1 -0
- package/dist/__tests__/scanners/logic/index.test.d.ts +2 -0
- package/dist/__tests__/scanners/logic/index.test.d.ts.map +1 -0
- package/dist/__tests__/scanners/logic/index.test.js +165 -0
- package/dist/__tests__/scanners/logic/index.test.js.map +1 -0
- package/dist/__tests__/scanners/logic/types.test.d.ts +2 -0
- package/dist/__tests__/scanners/logic/types.test.d.ts.map +1 -0
- package/dist/__tests__/scanners/logic/types.test.js +85 -0
- package/dist/__tests__/scanners/logic/types.test.js.map +1 -0
- package/dist/__tests__/scanners/runtime/app-launcher.test.d.ts +2 -0
- package/dist/__tests__/scanners/runtime/app-launcher.test.d.ts.map +1 -0
- package/dist/__tests__/scanners/runtime/app-launcher.test.js +94 -0
- package/dist/__tests__/scanners/runtime/app-launcher.test.js.map +1 -0
- package/dist/__tests__/scanners/runtime/golden-path-runner.test.d.ts +2 -0
- package/dist/__tests__/scanners/runtime/golden-path-runner.test.d.ts.map +1 -0
- package/dist/__tests__/scanners/runtime/golden-path-runner.test.js +195 -0
- package/dist/__tests__/scanners/runtime/golden-path-runner.test.js.map +1 -0
- package/dist/__tests__/scanners/runtime/index.test.d.ts +2 -0
- package/dist/__tests__/scanners/runtime/index.test.d.ts.map +1 -0
- package/dist/__tests__/scanners/runtime/index.test.js +120 -0
- package/dist/__tests__/scanners/runtime/index.test.js.map +1 -0
- package/dist/__tests__/scanners/runtime/types.test.d.ts +2 -0
- package/dist/__tests__/scanners/runtime/types.test.d.ts.map +1 -0
- package/dist/__tests__/scanners/runtime/types.test.js +126 -0
- package/dist/__tests__/scanners/runtime/types.test.js.map +1 -0
- package/dist/__tests__/scanners/scale/bottleneck-detector.test.d.ts +2 -0
- package/dist/__tests__/scanners/scale/bottleneck-detector.test.d.ts.map +1 -0
- package/dist/__tests__/scanners/scale/bottleneck-detector.test.js +187 -0
- package/dist/__tests__/scanners/scale/bottleneck-detector.test.js.map +1 -0
- package/dist/__tests__/scanners/scale/index.test.d.ts +2 -0
- package/dist/__tests__/scanners/scale/index.test.d.ts.map +1 -0
- package/dist/__tests__/scanners/scale/index.test.js +87 -0
- package/dist/__tests__/scanners/scale/index.test.js.map +1 -0
- package/dist/__tests__/scanners/scale/load-profiler.test.d.ts +2 -0
- package/dist/__tests__/scanners/scale/load-profiler.test.d.ts.map +1 -0
- package/dist/__tests__/scanners/scale/load-profiler.test.js +122 -0
- package/dist/__tests__/scanners/scale/load-profiler.test.js.map +1 -0
- package/dist/__tests__/scanners/scale/types.test.d.ts +2 -0
- package/dist/__tests__/scanners/scale/types.test.d.ts.map +1 -0
- package/dist/__tests__/scanners/scale/types.test.js +129 -0
- package/dist/__tests__/scanners/scale/types.test.js.map +1 -0
- package/dist/action/pr-comment.test.js +4 -0
- package/dist/action/pr-comment.test.js.map +1 -1
- package/dist/action/sarif-upload.test.js +4 -0
- package/dist/action/sarif-upload.test.js.map +1 -1
- package/dist/autofix/branch-manager.d.ts +115 -0
- package/dist/autofix/branch-manager.d.ts.map +1 -0
- package/dist/autofix/branch-manager.js +308 -0
- package/dist/autofix/branch-manager.js.map +1 -0
- package/dist/autofix/commit-generator.d.ts +55 -0
- package/dist/autofix/commit-generator.d.ts.map +1 -0
- package/dist/autofix/commit-generator.js +277 -0
- package/dist/autofix/commit-generator.js.map +1 -0
- package/dist/autofix/constitution.d.ts +77 -0
- package/dist/autofix/constitution.d.ts.map +1 -0
- package/dist/autofix/constitution.js +261 -0
- package/dist/autofix/constitution.js.map +1 -0
- package/dist/autofix/constitution.schema.d.ts +441 -0
- package/dist/autofix/constitution.schema.d.ts.map +1 -0
- package/dist/autofix/constitution.schema.js +144 -0
- package/dist/autofix/constitution.schema.js.map +1 -0
- package/dist/autofix/index.d.ts +13 -0
- package/dist/autofix/index.d.ts.map +1 -0
- package/dist/autofix/index.js +15 -0
- package/dist/autofix/index.js.map +1 -0
- package/dist/autofix/pr-generator.d.ts +57 -0
- package/dist/autofix/pr-generator.d.ts.map +1 -0
- package/dist/autofix/pr-generator.js +597 -0
- package/dist/autofix/pr-generator.js.map +1 -0
- package/dist/autofix/types.d.ts +151 -0
- package/dist/autofix/types.d.ts.map +1 -0
- package/dist/autofix/types.js +22 -0
- package/dist/autofix/types.js.map +1 -0
- package/dist/eval/fixtures.d.ts +20 -0
- package/dist/eval/fixtures.d.ts.map +1 -1
- package/dist/eval/fixtures.js +430 -0
- package/dist/eval/fixtures.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +874 -0
- package/dist/index.js.map +1 -1
- package/dist/install-skills.d.ts +11 -0
- package/dist/install-skills.d.ts.map +1 -0
- package/dist/install-skills.js +81 -0
- package/dist/install-skills.js.map +1 -0
- package/dist/scanners/ai-code/ai-detector.d.ts +25 -0
- package/dist/scanners/ai-code/ai-detector.d.ts.map +1 -0
- package/dist/scanners/ai-code/ai-detector.js +192 -0
- package/dist/scanners/ai-code/ai-detector.js.map +1 -0
- package/dist/scanners/ai-code/confidence-scorer.d.ts +40 -0
- package/dist/scanners/ai-code/confidence-scorer.d.ts.map +1 -0
- package/dist/scanners/ai-code/confidence-scorer.js +148 -0
- package/dist/scanners/ai-code/confidence-scorer.js.map +1 -0
- package/dist/scanners/ai-code/hallucination-checker.d.ts +36 -0
- package/dist/scanners/ai-code/hallucination-checker.d.ts.map +1 -0
- package/dist/scanners/ai-code/hallucination-checker.js +298 -0
- package/dist/scanners/ai-code/hallucination-checker.js.map +1 -0
- package/dist/scanners/ai-code/index.d.ts +30 -0
- package/dist/scanners/ai-code/index.d.ts.map +1 -0
- package/dist/scanners/ai-code/index.js +224 -0
- package/dist/scanners/ai-code/index.js.map +1 -0
- package/dist/scanners/ai-code/types.d.ts +192 -0
- package/dist/scanners/ai-code/types.d.ts.map +1 -0
- package/dist/scanners/ai-code/types.js +37 -0
- package/dist/scanners/ai-code/types.js.map +1 -0
- package/dist/scanners/cache.d.ts.map +1 -1
- package/dist/scanners/cache.js +4 -0
- package/dist/scanners/cache.js.map +1 -1
- package/dist/scanners/dast/index.d.ts +39 -0
- package/dist/scanners/dast/index.d.ts.map +1 -0
- package/dist/scanners/dast/index.js +259 -0
- package/dist/scanners/dast/index.js.map +1 -0
- package/dist/scanners/dast/nuclei.d.ts +26 -0
- package/dist/scanners/dast/nuclei.d.ts.map +1 -0
- package/dist/scanners/dast/nuclei.js +354 -0
- package/dist/scanners/dast/nuclei.js.map +1 -0
- package/dist/scanners/dast/types.d.ts +306 -0
- package/dist/scanners/dast/types.d.ts.map +1 -0
- package/dist/scanners/dast/types.js +52 -0
- package/dist/scanners/dast/types.js.map +1 -0
- package/dist/scanners/dast/zap.d.ts +26 -0
- package/dist/scanners/dast/zap.d.ts.map +1 -0
- package/dist/scanners/dast/zap.js +453 -0
- package/dist/scanners/dast/zap.js.map +1 -0
- package/dist/scanners/deploy/health-checker.d.ts +38 -0
- package/dist/scanners/deploy/health-checker.d.ts.map +1 -0
- package/dist/scanners/deploy/health-checker.js +272 -0
- package/dist/scanners/deploy/health-checker.js.map +1 -0
- package/dist/scanners/deploy/index.d.ts +44 -0
- package/dist/scanners/deploy/index.d.ts.map +1 -0
- package/dist/scanners/deploy/index.js +208 -0
- package/dist/scanners/deploy/index.js.map +1 -0
- package/dist/scanners/deploy/provider-detector.d.ts +25 -0
- package/dist/scanners/deploy/provider-detector.d.ts.map +1 -0
- package/dist/scanners/deploy/provider-detector.js +177 -0
- package/dist/scanners/deploy/provider-detector.js.map +1 -0
- package/dist/scanners/deploy/types.d.ts +406 -0
- package/dist/scanners/deploy/types.d.ts.map +1 -0
- package/dist/scanners/deploy/types.js +58 -0
- package/dist/scanners/deploy/types.js.map +1 -0
- package/dist/scanners/deploy/vercel-integration.d.ts +52 -0
- package/dist/scanners/deploy/vercel-integration.d.ts.map +1 -0
- package/dist/scanners/deploy/vercel-integration.js +280 -0
- package/dist/scanners/deploy/vercel-integration.js.map +1 -0
- package/dist/scanners/fp-feedback.d.ts +140 -0
- package/dist/scanners/fp-feedback.d.ts.map +1 -0
- package/dist/scanners/fp-feedback.js +292 -0
- package/dist/scanners/fp-feedback.js.map +1 -0
- package/dist/scanners/fp-filter.d.ts +94 -0
- package/dist/scanners/fp-filter.d.ts.map +1 -0
- package/dist/scanners/fp-filter.js +397 -0
- package/dist/scanners/fp-filter.js.map +1 -0
- package/dist/scanners/fp-tracker.d.ts +125 -0
- package/dist/scanners/fp-tracker.d.ts.map +1 -0
- package/dist/scanners/fp-tracker.js +330 -0
- package/dist/scanners/fp-tracker.js.map +1 -0
- package/dist/scanners/index.d.ts.map +1 -1
- package/dist/scanners/index.js +56 -0
- package/dist/scanners/index.js.map +1 -1
- package/dist/scanners/index.test.js +6 -6
- package/dist/scanners/index.test.js.map +1 -1
- package/dist/scanners/logic/auth-flow-analyzer.d.ts +18 -0
- package/dist/scanners/logic/auth-flow-analyzer.d.ts.map +1 -0
- package/dist/scanners/logic/auth-flow-analyzer.js +384 -0
- package/dist/scanners/logic/auth-flow-analyzer.js.map +1 -0
- package/dist/scanners/logic/endpoint-analyzer.d.ts +29 -0
- package/dist/scanners/logic/endpoint-analyzer.d.ts.map +1 -0
- package/dist/scanners/logic/endpoint-analyzer.js +528 -0
- package/dist/scanners/logic/endpoint-analyzer.js.map +1 -0
- package/dist/scanners/logic/index.d.ts +41 -0
- package/dist/scanners/logic/index.d.ts.map +1 -0
- package/dist/scanners/logic/index.js +268 -0
- package/dist/scanners/logic/index.js.map +1 -0
- package/dist/scanners/logic/types.d.ts +254 -0
- package/dist/scanners/logic/types.d.ts.map +1 -0
- package/dist/scanners/logic/types.js +142 -0
- package/dist/scanners/logic/types.js.map +1 -0
- package/dist/scanners/runtime/app-launcher.d.ts +33 -0
- package/dist/scanners/runtime/app-launcher.d.ts.map +1 -0
- package/dist/scanners/runtime/app-launcher.js +419 -0
- package/dist/scanners/runtime/app-launcher.js.map +1 -0
- package/dist/scanners/runtime/golden-path-runner.d.ts +48 -0
- package/dist/scanners/runtime/golden-path-runner.d.ts.map +1 -0
- package/dist/scanners/runtime/golden-path-runner.js +373 -0
- package/dist/scanners/runtime/golden-path-runner.js.map +1 -0
- package/dist/scanners/runtime/index.d.ts +41 -0
- package/dist/scanners/runtime/index.d.ts.map +1 -0
- package/dist/scanners/runtime/index.js +164 -0
- package/dist/scanners/runtime/index.js.map +1 -0
- package/dist/scanners/runtime/playwright-executor.d.ts +50 -0
- package/dist/scanners/runtime/playwright-executor.d.ts.map +1 -0
- package/dist/scanners/runtime/playwright-executor.js +387 -0
- package/dist/scanners/runtime/playwright-executor.js.map +1 -0
- package/dist/scanners/runtime/types.d.ts +215 -0
- package/dist/scanners/runtime/types.d.ts.map +1 -0
- package/dist/scanners/runtime/types.js +40 -0
- package/dist/scanners/runtime/types.js.map +1 -0
- package/dist/scanners/scale/bottleneck-detector.d.ts +17 -0
- package/dist/scanners/scale/bottleneck-detector.d.ts.map +1 -0
- package/dist/scanners/scale/bottleneck-detector.js +250 -0
- package/dist/scanners/scale/bottleneck-detector.js.map +1 -0
- package/dist/scanners/scale/capacity-estimator.d.ts +17 -0
- package/dist/scanners/scale/capacity-estimator.d.ts.map +1 -0
- package/dist/scanners/scale/capacity-estimator.js +197 -0
- package/dist/scanners/scale/capacity-estimator.js.map +1 -0
- package/dist/scanners/scale/index.d.ts +37 -0
- package/dist/scanners/scale/index.d.ts.map +1 -0
- package/dist/scanners/scale/index.js +101 -0
- package/dist/scanners/scale/index.js.map +1 -0
- package/dist/scanners/scale/load-profiler.d.ts +48 -0
- package/dist/scanners/scale/load-profiler.d.ts.map +1 -0
- package/dist/scanners/scale/load-profiler.js +377 -0
- package/dist/scanners/scale/load-profiler.js.map +1 -0
- package/dist/scanners/scale/types.d.ts +529 -0
- package/dist/scanners/scale/types.d.ts.map +1 -0
- package/dist/scanners/scale/types.js +57 -0
- package/dist/scanners/scale/types.js.map +1 -0
- package/dist/scanners/secrets.d.ts.map +1 -1
- package/dist/scanners/secrets.js +13 -2
- package/dist/scanners/secrets.js.map +1 -1
- package/dist/scanners/types.d.ts +1 -1
- package/dist/scanners/types.d.ts.map +1 -1
- package/dist/scanners/types.js +4 -0
- package/dist/scanners/types.js.map +1 -1
- package/package.json +8 -4
- package/skills/vaspera-add-tests/SKILL.md +102 -0
- package/skills/vaspera-ai-verify/SKILL.md +166 -0
- package/skills/vaspera-audit/SKILL.md +67 -0
- package/skills/vaspera-certify/SKILL.md +130 -0
- package/skills/vaspera-deploy/SKILL.md +152 -0
- package/skills/vaspera-fix-critical/SKILL.md +52 -0
- package/skills/vaspera-fix-high/SKILL.md +81 -0
- package/skills/vaspera-fix-medium/SKILL.md +56 -0
- package/skills/vaspera-fix-rls/SKILL.md +85 -0
- package/skills/vaspera-harden/SKILL.md +102 -0
- package/skills/vaspera-help/SKILL.md +61 -0
- package/skills/vaspera-load-test/SKILL.md +167 -0
- package/skills/vaspera-verify/SKILL.md +70 -0
- package/skills/vaspera-verify-e2e/SKILL.md +117 -0
|
@@ -0,0 +1,306 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* DAST Scanner Types
|
|
3
|
+
*
|
|
4
|
+
* Types for Dynamic Application Security Testing integrations
|
|
5
|
+
* with OWASP ZAP and Nuclei.
|
|
6
|
+
*
|
|
7
|
+
* @module scanners/dast/types
|
|
8
|
+
*/
|
|
9
|
+
import type { Severity } from "../../certification/types.js";
|
|
10
|
+
/**
|
|
11
|
+
* DAST scanner types
|
|
12
|
+
*/
|
|
13
|
+
export type DASTScanner = "zap" | "nuclei";
|
|
14
|
+
/**
|
|
15
|
+
* Authentication types for DAST scans
|
|
16
|
+
*/
|
|
17
|
+
export type AuthType = "none" | "basic" | "bearer" | "cookie" | "oauth2" | "api-key";
|
|
18
|
+
/**
|
|
19
|
+
* Target for DAST scanning
|
|
20
|
+
*/
|
|
21
|
+
export interface DASTTarget {
|
|
22
|
+
/** Base URL to scan */
|
|
23
|
+
url: string;
|
|
24
|
+
/** Optional name for the target */
|
|
25
|
+
name?: string;
|
|
26
|
+
/** Authentication configuration */
|
|
27
|
+
authentication?: DASTAuthentication;
|
|
28
|
+
/** Custom headers to include */
|
|
29
|
+
headers?: Record<string, string>;
|
|
30
|
+
/** URL patterns to include in scan scope */
|
|
31
|
+
scope?: string[];
|
|
32
|
+
/** URL patterns to exclude from scan */
|
|
33
|
+
exclude?: string[];
|
|
34
|
+
/** OpenAPI/Swagger spec URL for API scanning */
|
|
35
|
+
openApiUrl?: string;
|
|
36
|
+
/** GraphQL endpoint for GraphQL scanning */
|
|
37
|
+
graphqlUrl?: string;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Authentication configuration
|
|
41
|
+
*/
|
|
42
|
+
export interface DASTAuthentication {
|
|
43
|
+
/** Authentication type */
|
|
44
|
+
type: AuthType;
|
|
45
|
+
/** Credentials based on auth type */
|
|
46
|
+
credentials: {
|
|
47
|
+
/** Username for basic auth */
|
|
48
|
+
username?: string;
|
|
49
|
+
/** Password for basic auth */
|
|
50
|
+
password?: string;
|
|
51
|
+
/** Bearer token */
|
|
52
|
+
token?: string;
|
|
53
|
+
/** Cookie string */
|
|
54
|
+
cookie?: string;
|
|
55
|
+
/** API key */
|
|
56
|
+
apiKey?: string;
|
|
57
|
+
/** API key header name */
|
|
58
|
+
apiKeyHeader?: string;
|
|
59
|
+
/** OAuth2 client ID */
|
|
60
|
+
clientId?: string;
|
|
61
|
+
/** OAuth2 client secret */
|
|
62
|
+
clientSecret?: string;
|
|
63
|
+
/** OAuth2 token URL */
|
|
64
|
+
tokenUrl?: string;
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Scan policy/configuration
|
|
69
|
+
*/
|
|
70
|
+
export interface DASTPolicy {
|
|
71
|
+
/** Only run passive scans (no active attacks) */
|
|
72
|
+
passiveOnly?: boolean;
|
|
73
|
+
/** Risk threshold to report */
|
|
74
|
+
riskThreshold?: "high" | "medium" | "low" | "informational";
|
|
75
|
+
/** Maximum scan duration in seconds */
|
|
76
|
+
maxDuration?: number;
|
|
77
|
+
/** Specific Nuclei template paths or tags */
|
|
78
|
+
templates?: string[];
|
|
79
|
+
/** Nuclei template tags to include */
|
|
80
|
+
templateTags?: string[];
|
|
81
|
+
/** Nuclei template tags to exclude */
|
|
82
|
+
excludeTags?: string[];
|
|
83
|
+
/** ZAP scan policy name */
|
|
84
|
+
zapPolicy?: string;
|
|
85
|
+
/** Enable AJAX spider for JavaScript-heavy apps */
|
|
86
|
+
ajaxSpider?: boolean;
|
|
87
|
+
/** Maximum depth for spidering */
|
|
88
|
+
maxDepth?: number;
|
|
89
|
+
/** Maximum children per node for spidering */
|
|
90
|
+
maxChildren?: number;
|
|
91
|
+
/** Delay between requests in milliseconds */
|
|
92
|
+
requestDelay?: number;
|
|
93
|
+
/** Number of concurrent threads */
|
|
94
|
+
threads?: number;
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Default DAST policy
|
|
98
|
+
*/
|
|
99
|
+
export declare const DEFAULT_DAST_POLICY: DASTPolicy;
|
|
100
|
+
/**
|
|
101
|
+
* A finding from a DAST scanner
|
|
102
|
+
*/
|
|
103
|
+
export interface DASTFinding {
|
|
104
|
+
/** Which scanner found this */
|
|
105
|
+
scanner: DASTScanner;
|
|
106
|
+
/** Rule/template ID */
|
|
107
|
+
ruleId: string;
|
|
108
|
+
/** Human-readable name */
|
|
109
|
+
name: string;
|
|
110
|
+
/** Description of the vulnerability */
|
|
111
|
+
description: string;
|
|
112
|
+
/** Severity level */
|
|
113
|
+
severity: Severity;
|
|
114
|
+
/** Confidence level (0-100) */
|
|
115
|
+
confidence: number;
|
|
116
|
+
/** Affected URL */
|
|
117
|
+
url: string;
|
|
118
|
+
/** HTTP method */
|
|
119
|
+
method?: string;
|
|
120
|
+
/** Attack parameter/input */
|
|
121
|
+
parameter?: string;
|
|
122
|
+
/** Evidence/proof of vulnerability */
|
|
123
|
+
evidence?: string;
|
|
124
|
+
/** Attack payload used */
|
|
125
|
+
attack?: string;
|
|
126
|
+
/** CWE IDs */
|
|
127
|
+
cweIds?: string[];
|
|
128
|
+
/** CVE IDs */
|
|
129
|
+
cveIds?: string[];
|
|
130
|
+
/** Reference URLs */
|
|
131
|
+
references?: string[];
|
|
132
|
+
/** Suggested solution */
|
|
133
|
+
solution?: string;
|
|
134
|
+
/** Raw scanner output */
|
|
135
|
+
rawOutput?: Record<string, unknown>;
|
|
136
|
+
/** Tags/labels */
|
|
137
|
+
tags?: string[];
|
|
138
|
+
/** Timestamp when found */
|
|
139
|
+
timestamp: string;
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* Result from running a DAST scanner
|
|
143
|
+
*/
|
|
144
|
+
export interface DASTScanResult {
|
|
145
|
+
/** Scanner used */
|
|
146
|
+
scanner: DASTScanner;
|
|
147
|
+
/** Target that was scanned */
|
|
148
|
+
target: DASTTarget;
|
|
149
|
+
/** Findings discovered */
|
|
150
|
+
findings: DASTFinding[];
|
|
151
|
+
/** Scan duration in milliseconds */
|
|
152
|
+
duration: number;
|
|
153
|
+
/** Whether scan completed successfully */
|
|
154
|
+
success: boolean;
|
|
155
|
+
/** Error message if failed */
|
|
156
|
+
error?: string;
|
|
157
|
+
/** Scan statistics */
|
|
158
|
+
stats: {
|
|
159
|
+
/** Total requests made */
|
|
160
|
+
requestCount: number;
|
|
161
|
+
/** URLs discovered */
|
|
162
|
+
urlsDiscovered: number;
|
|
163
|
+
/** Unique findings */
|
|
164
|
+
uniqueFindings: number;
|
|
165
|
+
/** Findings by severity */
|
|
166
|
+
bySeverity: Partial<Record<Severity, number>>;
|
|
167
|
+
};
|
|
168
|
+
/** Scanner version */
|
|
169
|
+
version?: string;
|
|
170
|
+
/** Scan start time */
|
|
171
|
+
startTime: string;
|
|
172
|
+
/** Scan end time */
|
|
173
|
+
endTime: string;
|
|
174
|
+
/** Policy used */
|
|
175
|
+
policy: DASTPolicy;
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
* Aggregated results from multiple DAST scanners
|
|
179
|
+
*/
|
|
180
|
+
export interface AggregatedDASTResult {
|
|
181
|
+
/** Timestamp */
|
|
182
|
+
timestamp: string;
|
|
183
|
+
/** Target scanned */
|
|
184
|
+
target: DASTTarget;
|
|
185
|
+
/** Results from each scanner */
|
|
186
|
+
scanners: DASTScanResult[];
|
|
187
|
+
/** Total findings across all scanners */
|
|
188
|
+
totalFindings: number;
|
|
189
|
+
/** Deduplicated findings */
|
|
190
|
+
uniqueFindings: DASTFinding[];
|
|
191
|
+
/** Findings by severity */
|
|
192
|
+
bySeverity: Partial<Record<Severity, number>>;
|
|
193
|
+
/** Findings by scanner */
|
|
194
|
+
byScanner: Record<DASTScanner, number>;
|
|
195
|
+
/** Total scan duration */
|
|
196
|
+
totalDuration: number;
|
|
197
|
+
/** Whether all scanners succeeded */
|
|
198
|
+
allSucceeded: boolean;
|
|
199
|
+
/** Scanners that failed */
|
|
200
|
+
failedScanners: DASTScanner[];
|
|
201
|
+
}
|
|
202
|
+
/**
|
|
203
|
+
* DAST scanner availability status
|
|
204
|
+
*/
|
|
205
|
+
export interface DASTAvailability {
|
|
206
|
+
scanner: DASTScanner;
|
|
207
|
+
available: boolean;
|
|
208
|
+
version?: string;
|
|
209
|
+
path?: string;
|
|
210
|
+
error?: string;
|
|
211
|
+
features?: {
|
|
212
|
+
passiveScan: boolean;
|
|
213
|
+
activeScan: boolean;
|
|
214
|
+
apiScan: boolean;
|
|
215
|
+
authentication: boolean;
|
|
216
|
+
};
|
|
217
|
+
}
|
|
218
|
+
/**
|
|
219
|
+
* Options for running DAST scans
|
|
220
|
+
*/
|
|
221
|
+
export interface DASTScanOptions {
|
|
222
|
+
/** Scanners to run */
|
|
223
|
+
scanners?: DASTScanner[];
|
|
224
|
+
/** Scan policy */
|
|
225
|
+
policy?: DASTPolicy;
|
|
226
|
+
/** Output format */
|
|
227
|
+
outputFormat?: "json" | "sarif" | "html";
|
|
228
|
+
/** Save report to file */
|
|
229
|
+
reportPath?: string;
|
|
230
|
+
/** Verbose output */
|
|
231
|
+
verbose?: boolean;
|
|
232
|
+
/** Confirmation that scan is authorized */
|
|
233
|
+
authorized: boolean;
|
|
234
|
+
}
|
|
235
|
+
/**
|
|
236
|
+
* ZAP-specific alert structure
|
|
237
|
+
*/
|
|
238
|
+
export interface ZAPAlert {
|
|
239
|
+
sourceid: string;
|
|
240
|
+
other: string;
|
|
241
|
+
method: string;
|
|
242
|
+
evidence: string;
|
|
243
|
+
pluginId: string;
|
|
244
|
+
cweid: string;
|
|
245
|
+
confidence: string;
|
|
246
|
+
wascid: string;
|
|
247
|
+
description: string;
|
|
248
|
+
messageId: string;
|
|
249
|
+
inputVector: string;
|
|
250
|
+
url: string;
|
|
251
|
+
tags: Record<string, string>;
|
|
252
|
+
reference: string;
|
|
253
|
+
solution: string;
|
|
254
|
+
alert: string;
|
|
255
|
+
param: string;
|
|
256
|
+
attack: string;
|
|
257
|
+
name: string;
|
|
258
|
+
risk: string;
|
|
259
|
+
id: string;
|
|
260
|
+
alertRef: string;
|
|
261
|
+
}
|
|
262
|
+
/**
|
|
263
|
+
* Nuclei-specific result structure
|
|
264
|
+
*/
|
|
265
|
+
export interface NucleiResult {
|
|
266
|
+
template: string;
|
|
267
|
+
"template-url"?: string;
|
|
268
|
+
"template-id": string;
|
|
269
|
+
"template-path"?: string;
|
|
270
|
+
info: {
|
|
271
|
+
name: string;
|
|
272
|
+
author: string[];
|
|
273
|
+
tags: string[];
|
|
274
|
+
description?: string;
|
|
275
|
+
reference?: string[];
|
|
276
|
+
severity: string;
|
|
277
|
+
metadata?: Record<string, unknown>;
|
|
278
|
+
classification?: {
|
|
279
|
+
"cve-id"?: string[];
|
|
280
|
+
"cwe-id"?: string[];
|
|
281
|
+
};
|
|
282
|
+
};
|
|
283
|
+
type: string;
|
|
284
|
+
host: string;
|
|
285
|
+
matched: string;
|
|
286
|
+
"extracted-results"?: string[];
|
|
287
|
+
ip?: string;
|
|
288
|
+
timestamp: string;
|
|
289
|
+
matcher?: string;
|
|
290
|
+
"curl-command"?: string;
|
|
291
|
+
request?: string;
|
|
292
|
+
response?: string;
|
|
293
|
+
}
|
|
294
|
+
/**
|
|
295
|
+
* Map ZAP risk levels to severity
|
|
296
|
+
*/
|
|
297
|
+
export declare const ZAP_RISK_MAPPING: Record<string, Severity>;
|
|
298
|
+
/**
|
|
299
|
+
* Map ZAP confidence levels to numeric values
|
|
300
|
+
*/
|
|
301
|
+
export declare const ZAP_CONFIDENCE_MAPPING: Record<string, number>;
|
|
302
|
+
/**
|
|
303
|
+
* Map Nuclei severity to vaspera severity
|
|
304
|
+
*/
|
|
305
|
+
export declare const NUCLEI_SEVERITY_MAPPING: Record<string, Severity>;
|
|
306
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/scanners/dast/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* DAST Scanner Types
|
|
3
|
+
*
|
|
4
|
+
* Types for Dynamic Application Security Testing integrations
|
|
5
|
+
* with OWASP ZAP and Nuclei.
|
|
6
|
+
*
|
|
7
|
+
* @module scanners/dast/types
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* Default DAST policy
|
|
11
|
+
*/
|
|
12
|
+
export const DEFAULT_DAST_POLICY = {
|
|
13
|
+
passiveOnly: true,
|
|
14
|
+
riskThreshold: "medium",
|
|
15
|
+
maxDuration: 300,
|
|
16
|
+
ajaxSpider: false,
|
|
17
|
+
maxDepth: 5,
|
|
18
|
+
maxChildren: 10,
|
|
19
|
+
requestDelay: 0,
|
|
20
|
+
threads: 10,
|
|
21
|
+
};
|
|
22
|
+
/**
|
|
23
|
+
* Map ZAP risk levels to severity
|
|
24
|
+
*/
|
|
25
|
+
export const ZAP_RISK_MAPPING = {
|
|
26
|
+
"High": "high",
|
|
27
|
+
"Medium": "medium",
|
|
28
|
+
"Low": "low",
|
|
29
|
+
"Informational": "info",
|
|
30
|
+
};
|
|
31
|
+
/**
|
|
32
|
+
* Map ZAP confidence levels to numeric values
|
|
33
|
+
*/
|
|
34
|
+
export const ZAP_CONFIDENCE_MAPPING = {
|
|
35
|
+
"High": 90,
|
|
36
|
+
"Medium": 70,
|
|
37
|
+
"Low": 50,
|
|
38
|
+
"User Confirmed": 100,
|
|
39
|
+
"Confirmed": 100,
|
|
40
|
+
};
|
|
41
|
+
/**
|
|
42
|
+
* Map Nuclei severity to vaspera severity
|
|
43
|
+
*/
|
|
44
|
+
export const NUCLEI_SEVERITY_MAPPING = {
|
|
45
|
+
"critical": "critical",
|
|
46
|
+
"high": "high",
|
|
47
|
+
"medium": "medium",
|
|
48
|
+
"low": "low",
|
|
49
|
+
"info": "info",
|
|
50
|
+
"unknown": "info",
|
|
51
|
+
};
|
|
52
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/scanners/dast/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAkHH;;GAEG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAe;IAC7C,WAAW,EAAE,IAAI;IACjB,aAAa,EAAE,QAAQ;IACvB,WAAW,EAAE,GAAG;IAChB,UAAU,EAAE,KAAK;IACjB,QAAQ,EAAE,CAAC;IACX,WAAW,EAAE,EAAE;IACf,YAAY,EAAE,CAAC;IACf,OAAO,EAAE,EAAE;CACZ,CAAC;AAoPF;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAA6B;IACxD,MAAM,EAAE,MAAM;IACd,QAAQ,EAAE,QAAQ;IAClB,KAAK,EAAE,KAAK;IACZ,eAAe,EAAE,MAAM;CACxB,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAA2B;IAC5D,MAAM,EAAE,EAAE;IACV,QAAQ,EAAE,EAAE;IACZ,KAAK,EAAE,EAAE;IACT,gBAAgB,EAAE,GAAG;IACrB,WAAW,EAAE,GAAG;CACjB,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAA6B;IAC/D,UAAU,EAAE,UAAU;IACtB,MAAM,EAAE,MAAM;IACd,QAAQ,EAAE,QAAQ;IAClB,KAAK,EAAE,KAAK;IACZ,MAAM,EAAE,MAAM;IACd,SAAS,EAAE,MAAM;CAClB,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OWASP ZAP Scanner Integration
|
|
3
|
+
*
|
|
4
|
+
* Integrates with OWASP ZAP (Zed Attack Proxy) for dynamic
|
|
5
|
+
* application security testing.
|
|
6
|
+
*
|
|
7
|
+
* @module scanners/dast/zap
|
|
8
|
+
*/
|
|
9
|
+
import type { DASTTarget, DASTPolicy, DASTScanResult, DASTFinding, DASTAvailability, ZAPAlert } from "./types.js";
|
|
10
|
+
/**
|
|
11
|
+
* Check if ZAP is available
|
|
12
|
+
*/
|
|
13
|
+
export declare function checkZapAvailable(): Promise<DASTAvailability>;
|
|
14
|
+
/**
|
|
15
|
+
* Parse ZAP JSON output to DASTFinding
|
|
16
|
+
*/
|
|
17
|
+
export declare function parseZapAlerts(alerts: ZAPAlert[]): DASTFinding[];
|
|
18
|
+
/**
|
|
19
|
+
* Run ZAP scan
|
|
20
|
+
*/
|
|
21
|
+
export declare function runZap(target: DASTTarget, policy?: DASTPolicy): Promise<DASTScanResult>;
|
|
22
|
+
/**
|
|
23
|
+
* Get ZAP installation instructions
|
|
24
|
+
*/
|
|
25
|
+
export declare function getZapInstallInstructions(): string;
|
|
26
|
+
//# sourceMappingURL=zap.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zap.d.ts","sourceRoot":"","sources":["../../../src/scanners/dast/zap.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,KAAK,EACV,UAAU,EACV,UAAU,EACV,cAAc,EACd,WAAW,EACX,gBAAgB,EAChB,QAAQ,EAET,MAAM,YAAY,CAAC;AAYpB;;GAEG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,gBAAgB,CAAC,CA8InE;AA+LD;;GAEG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,WAAW,EAAE,CAoBhE;AAED;;GAEG;AACH,wBAAsB,MAAM,CAC1B,MAAM,EAAE,UAAU,EAClB,MAAM,GAAE,UAAe,GACtB,OAAO,CAAC,cAAc,CAAC,CAyGzB;AAED;;GAEG;AACH,wBAAgB,yBAAyB,IAAI,MAAM,CA6BlD"}
|