vaspera 2.7.0 → 2.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +72 -0
- package/README.md +111 -7
- package/dist/__tests__/agents/adversary/tactics/api.test.d.ts +5 -0
- package/dist/__tests__/agents/adversary/tactics/api.test.d.ts.map +1 -0
- package/dist/__tests__/agents/adversary/tactics/api.test.js +369 -0
- package/dist/__tests__/agents/adversary/tactics/api.test.js.map +1 -0
- package/dist/__tests__/agents/adversary/tactics/llm.test.d.ts +5 -0
- package/dist/__tests__/agents/adversary/tactics/llm.test.d.ts.map +1 -0
- package/dist/__tests__/agents/adversary/tactics/llm.test.js +409 -0
- package/dist/__tests__/agents/adversary/tactics/llm.test.js.map +1 -0
- package/dist/__tests__/agents/adversary/tactics/registry.test.d.ts +7 -0
- package/dist/__tests__/agents/adversary/tactics/registry.test.d.ts.map +1 -0
- package/dist/__tests__/agents/adversary/tactics/registry.test.js +74 -0
- package/dist/__tests__/agents/adversary/tactics/registry.test.js.map +1 -0
- package/dist/__tests__/agents/adversary/tactics/web-app.test.d.ts +7 -0
- package/dist/__tests__/agents/adversary/tactics/web-app.test.d.ts.map +1 -0
- package/dist/__tests__/agents/adversary/tactics/web-app.test.js +374 -0
- package/dist/__tests__/agents/adversary/tactics/web-app.test.js.map +1 -0
- package/dist/__tests__/compliance-bundle.test.d.ts +9 -0
- package/dist/__tests__/compliance-bundle.test.d.ts.map +1 -0
- package/dist/__tests__/compliance-bundle.test.js +344 -0
- package/dist/__tests__/compliance-bundle.test.js.map +1 -0
- package/dist/__tests__/healthcare-compliance.test.d.ts +9 -0
- package/dist/__tests__/healthcare-compliance.test.d.ts.map +1 -0
- package/dist/__tests__/healthcare-compliance.test.js +233 -0
- package/dist/__tests__/healthcare-compliance.test.js.map +1 -0
- package/dist/action/diff-mode.d.ts +124 -8
- package/dist/action/diff-mode.d.ts.map +1 -1
- package/dist/action/diff-mode.js +384 -65
- package/dist/action/diff-mode.js.map +1 -1
- package/dist/action/diff-mode.test.js +3 -3
- package/dist/action/diff-mode.test.js.map +1 -1
- package/dist/action/pr-comment.test.js +1 -0
- package/dist/action/pr-comment.test.js.map +1 -1
- package/dist/action/sarif-upload.test.js +1 -0
- package/dist/action/sarif-upload.test.js.map +1 -1
- package/dist/agents/adversary/config.d.ts +113 -0
- package/dist/agents/adversary/config.d.ts.map +1 -0
- package/dist/agents/adversary/config.js +391 -0
- package/dist/agents/adversary/config.js.map +1 -0
- package/dist/agents/adversary/index.d.ts +41 -0
- package/dist/agents/adversary/index.d.ts.map +1 -0
- package/dist/agents/adversary/index.js +838 -0
- package/dist/agents/adversary/index.js.map +1 -0
- package/dist/agents/adversary/reporting/compliance-mapper.d.ts +108 -0
- package/dist/agents/adversary/reporting/compliance-mapper.d.ts.map +1 -0
- package/dist/agents/adversary/reporting/compliance-mapper.js +391 -0
- package/dist/agents/adversary/reporting/compliance-mapper.js.map +1 -0
- package/dist/agents/adversary/reporting/index.d.ts +10 -0
- package/dist/agents/adversary/reporting/index.d.ts.map +1 -0
- package/dist/agents/adversary/reporting/index.js +10 -0
- package/dist/agents/adversary/reporting/index.js.map +1 -0
- package/dist/agents/adversary/reporting/poc-generator.d.ts +44 -0
- package/dist/agents/adversary/reporting/poc-generator.d.ts.map +1 -0
- package/dist/agents/adversary/reporting/poc-generator.js +308 -0
- package/dist/agents/adversary/reporting/poc-generator.js.map +1 -0
- package/dist/agents/adversary/tactics/api.d.ts +13 -0
- package/dist/agents/adversary/tactics/api.d.ts.map +1 -0
- package/dist/agents/adversary/tactics/api.js +815 -0
- package/dist/agents/adversary/tactics/api.js.map +1 -0
- package/dist/agents/adversary/tactics/auth.d.ts +13 -0
- package/dist/agents/adversary/tactics/auth.d.ts.map +1 -0
- package/dist/agents/adversary/tactics/auth.js +676 -0
- package/dist/agents/adversary/tactics/auth.js.map +1 -0
- package/dist/agents/adversary/tactics/index.d.ts +129 -0
- package/dist/agents/adversary/tactics/index.d.ts.map +1 -0
- package/dist/agents/adversary/tactics/index.js +199 -0
- package/dist/agents/adversary/tactics/index.js.map +1 -0
- package/dist/agents/adversary/tactics/infra.d.ts +13 -0
- package/dist/agents/adversary/tactics/infra.d.ts.map +1 -0
- package/dist/agents/adversary/tactics/infra.js +827 -0
- package/dist/agents/adversary/tactics/infra.js.map +1 -0
- package/dist/agents/adversary/tactics/injection.d.ts +12 -0
- package/dist/agents/adversary/tactics/injection.d.ts.map +1 -0
- package/dist/agents/adversary/tactics/injection.js +549 -0
- package/dist/agents/adversary/tactics/injection.js.map +1 -0
- package/dist/agents/adversary/tactics/llm.d.ts +13 -0
- package/dist/agents/adversary/tactics/llm.d.ts.map +1 -0
- package/dist/agents/adversary/tactics/llm.js +767 -0
- package/dist/agents/adversary/tactics/llm.js.map +1 -0
- package/dist/agents/adversary/tactics/web-app.d.ts +13 -0
- package/dist/agents/adversary/tactics/web-app.d.ts.map +1 -0
- package/dist/agents/adversary/tactics/web-app.js +717 -0
- package/dist/agents/adversary/tactics/web-app.js.map +1 -0
- package/dist/agents/adversary/types.d.ts +407 -0
- package/dist/agents/adversary/types.d.ts.map +1 -0
- package/dist/agents/adversary/types.js +12 -0
- package/dist/agents/adversary/types.js.map +1 -0
- package/dist/agents/index.d.ts +1 -0
- package/dist/agents/index.d.ts.map +1 -1
- package/dist/agents/index.js +2 -0
- package/dist/agents/index.js.map +1 -1
- package/dist/agents/zero-day-hunter.d.ts +1 -1
- package/dist/agents/zero-day-hunter.d.ts.map +1 -1
- package/dist/analysis/data-flow.d.ts +154 -0
- package/dist/analysis/data-flow.d.ts.map +1 -0
- package/dist/analysis/data-flow.js +393 -0
- package/dist/analysis/data-flow.js.map +1 -0
- package/dist/analysis/index.d.ts +9 -0
- package/dist/analysis/index.d.ts.map +1 -0
- package/dist/analysis/index.js +9 -0
- package/dist/analysis/index.js.map +1 -0
- package/dist/badge-service/index.d.ts +144 -0
- package/dist/badge-service/index.d.ts.map +1 -0
- package/dist/badge-service/index.js +206 -0
- package/dist/badge-service/index.js.map +1 -0
- package/dist/certification/consensus.test.js +2 -0
- package/dist/certification/consensus.test.js.map +1 -1
- package/dist/certification/store.d.ts.map +1 -1
- package/dist/certification/store.js +4 -0
- package/dist/certification/store.js.map +1 -1
- package/dist/certification/types.d.ts +3 -3
- package/dist/certification/types.d.ts.map +1 -1
- package/dist/certification/types.js +2 -0
- package/dist/certification/types.js.map +1 -1
- package/dist/commands/certification/certify.d.ts.map +1 -1
- package/dist/commands/certification/certify.js +18 -4
- package/dist/commands/certification/certify.js.map +1 -1
- package/dist/compliance/attestation.d.ts +39 -0
- package/dist/compliance/attestation.d.ts.map +1 -0
- package/dist/compliance/attestation.js +364 -0
- package/dist/compliance/attestation.js.map +1 -0
- package/dist/compliance/cfr42-part2.d.ts +42 -0
- package/dist/compliance/cfr42-part2.d.ts.map +1 -0
- package/dist/compliance/cfr42-part2.js +408 -0
- package/dist/compliance/cfr42-part2.js.map +1 -0
- package/dist/compliance/compliance-bundle.d.ts +100 -0
- package/dist/compliance/compliance-bundle.d.ts.map +1 -0
- package/dist/compliance/compliance-bundle.js +210 -0
- package/dist/compliance/compliance-bundle.js.map +1 -0
- package/dist/compliance/healthcare-bundle.d.ts +68 -0
- package/dist/compliance/healthcare-bundle.d.ts.map +1 -0
- package/dist/compliance/healthcare-bundle.js +104 -0
- package/dist/compliance/healthcare-bundle.js.map +1 -0
- package/dist/compliance/hipaa.d.ts.map +1 -1
- package/dist/compliance/hipaa.js +14 -11
- package/dist/compliance/hipaa.js.map +1 -1
- package/dist/compliance/index.d.ts +10 -2
- package/dist/compliance/index.d.ts.map +1 -1
- package/dist/compliance/index.js +9 -3
- package/dist/compliance/index.js.map +1 -1
- package/dist/compliance/mapper.d.ts.map +1 -1
- package/dist/compliance/mapper.js +3 -17
- package/dist/compliance/mapper.js.map +1 -1
- package/dist/compliance/nist-800-53.d.ts +22 -6
- package/dist/compliance/nist-800-53.d.ts.map +1 -1
- package/dist/compliance/nist-800-53.js +264 -272
- package/dist/compliance/nist-800-53.js.map +1 -1
- package/dist/compliance/report.d.ts +31 -2
- package/dist/compliance/report.d.ts.map +1 -1
- package/dist/compliance/report.js +255 -4
- package/dist/compliance/report.js.map +1 -1
- package/dist/compliance/types.d.ts +1 -1
- package/dist/compliance/types.d.ts.map +1 -1
- package/dist/config/flags.d.ts +12 -12
- package/dist/cost/index.d.ts +1 -1
- package/dist/cost/index.d.ts.map +1 -1
- package/dist/cost/index.js +1 -1
- package/dist/cost/index.js.map +1 -1
- package/dist/cost/tracker.d.ts +64 -0
- package/dist/cost/tracker.d.ts.map +1 -1
- package/dist/cost/tracker.js +165 -0
- package/dist/cost/tracker.js.map +1 -1
- package/dist/eval/fixtures/healthcare/audit-gaps.d.ts +28 -0
- package/dist/eval/fixtures/healthcare/audit-gaps.d.ts.map +1 -0
- package/dist/eval/fixtures/healthcare/audit-gaps.js +90 -0
- package/dist/eval/fixtures/healthcare/audit-gaps.js.map +1 -0
- package/dist/eval/fixtures/healthcare/consent-bypass.d.ts +31 -0
- package/dist/eval/fixtures/healthcare/consent-bypass.d.ts.map +1 -0
- package/dist/eval/fixtures/healthcare/consent-bypass.js +61 -0
- package/dist/eval/fixtures/healthcare/consent-bypass.js.map +1 -0
- package/dist/eval/fixtures/healthcare/phi-in-logs.d.ts +24 -0
- package/dist/eval/fixtures/healthcare/phi-in-logs.d.ts.map +1 -0
- package/dist/eval/fixtures/healthcare/phi-in-logs.js +41 -0
- package/dist/eval/fixtures/healthcare/phi-in-logs.js.map +1 -0
- package/dist/evidence/collector.d.ts +21 -0
- package/dist/evidence/collector.d.ts.map +1 -0
- package/dist/evidence/collector.js +340 -0
- package/dist/evidence/collector.js.map +1 -0
- package/dist/evidence/index.d.ts +11 -0
- package/dist/evidence/index.d.ts.map +1 -0
- package/dist/evidence/index.js +12 -0
- package/dist/evidence/index.js.map +1 -0
- package/dist/evidence/store.d.ts +39 -0
- package/dist/evidence/store.d.ts.map +1 -0
- package/dist/evidence/store.js +173 -0
- package/dist/evidence/store.js.map +1 -0
- package/dist/evidence/types.d.ts +175 -0
- package/dist/evidence/types.d.ts.map +1 -0
- package/dist/evidence/types.js +9 -0
- package/dist/evidence/types.js.map +1 -0
- package/dist/exporters/checkmarx.d.ts +18 -0
- package/dist/exporters/checkmarx.d.ts.map +1 -0
- package/dist/exporters/checkmarx.js +203 -0
- package/dist/exporters/checkmarx.js.map +1 -0
- package/dist/exporters/index.d.ts +22 -0
- package/dist/exporters/index.d.ts.map +1 -0
- package/dist/exporters/index.js +41 -0
- package/dist/exporters/index.js.map +1 -0
- package/dist/exporters/snyk.d.ts +18 -0
- package/dist/exporters/snyk.d.ts.map +1 -0
- package/dist/exporters/snyk.js +119 -0
- package/dist/exporters/snyk.js.map +1 -0
- package/dist/exporters/sonarqube.d.ts +18 -0
- package/dist/exporters/sonarqube.d.ts.map +1 -0
- package/dist/exporters/sonarqube.js +125 -0
- package/dist/exporters/sonarqube.js.map +1 -0
- package/dist/exporters/types.d.ts +190 -0
- package/dist/exporters/types.d.ts.map +1 -0
- package/dist/exporters/types.js +9 -0
- package/dist/exporters/types.js.map +1 -0
- package/dist/frontier/index.d.ts +12 -0
- package/dist/frontier/index.d.ts.map +1 -0
- package/dist/frontier/index.js +12 -0
- package/dist/frontier/index.js.map +1 -0
- package/dist/frontier/orchestrator.d.ts +73 -0
- package/dist/frontier/orchestrator.d.ts.map +1 -0
- package/dist/frontier/orchestrator.js +312 -0
- package/dist/frontier/orchestrator.js.map +1 -0
- package/dist/frontier/providers/stub.d.ts +32 -0
- package/dist/frontier/providers/stub.d.ts.map +1 -0
- package/dist/frontier/providers/stub.js +66 -0
- package/dist/frontier/providers/stub.js.map +1 -0
- package/dist/frontier/types.d.ts +318 -0
- package/dist/frontier/types.d.ts.map +1 -0
- package/dist/frontier/types.js +27 -0
- package/dist/frontier/types.js.map +1 -0
- package/dist/history/index.d.ts +13 -0
- package/dist/history/index.d.ts.map +1 -0
- package/dist/history/index.js +15 -0
- package/dist/history/index.js.map +1 -0
- package/dist/history/store.d.ts +74 -0
- package/dist/history/store.d.ts.map +1 -0
- package/dist/history/store.js +399 -0
- package/dist/history/store.js.map +1 -0
- package/dist/history/types.d.ts +282 -0
- package/dist/history/types.d.ts.map +1 -0
- package/dist/history/types.js +41 -0
- package/dist/history/types.js.map +1 -0
- package/dist/history/verify.d.ts +44 -0
- package/dist/history/verify.d.ts.map +1 -0
- package/dist/history/verify.js +230 -0
- package/dist/history/verify.js.map +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +431 -18
- package/dist/index.js.map +1 -1
- package/dist/multimodel/index.d.ts +1 -0
- package/dist/multimodel/index.d.ts.map +1 -1
- package/dist/multimodel/index.js +2 -0
- package/dist/multimodel/index.js.map +1 -1
- package/dist/multimodel/leaderboard.d.ts +116 -0
- package/dist/multimodel/leaderboard.d.ts.map +1 -0
- package/dist/multimodel/leaderboard.js +262 -0
- package/dist/multimodel/leaderboard.js.map +1 -0
- package/dist/observability/otel.d.ts.map +1 -1
- package/dist/observability/otel.js +1 -3
- package/dist/observability/otel.js.map +1 -1
- package/dist/plugins/loader.js +1 -1
- package/dist/plugins/loader.js.map +1 -1
- package/dist/sbom/provenance.test.js +2 -2
- package/dist/sbom/provenance.test.js.map +1 -1
- package/dist/scanners/agent/agent-chain-analysis.d.ts +152 -0
- package/dist/scanners/agent/agent-chain-analysis.d.ts.map +1 -0
- package/dist/scanners/agent/agent-chain-analysis.js +438 -0
- package/dist/scanners/agent/agent-chain-analysis.js.map +1 -0
- package/dist/scanners/agent/manifest-audit.d.ts.map +1 -1
- package/dist/scanners/agent/manifest-audit.js +30 -18
- package/dist/scanners/agent/manifest-audit.js.map +1 -1
- package/dist/scanners/agent/payloads/index.d.ts +2 -1
- package/dist/scanners/agent/payloads/index.d.ts.map +1 -1
- package/dist/scanners/agent/payloads/index.js +25 -6
- package/dist/scanners/agent/payloads/index.js.map +1 -1
- package/dist/scanners/agent/prompt-injection-fuzzer.d.ts.map +1 -1
- package/dist/scanners/agent/prompt-injection-fuzzer.js +14 -0
- package/dist/scanners/agent/prompt-injection-fuzzer.js.map +1 -1
- package/dist/scanners/agent/types.d.ts +5 -5
- package/dist/scanners/agent/types.d.ts.map +1 -1
- package/dist/scanners/agent/types.js.map +1 -1
- package/dist/scanners/cache.d.ts +156 -0
- package/dist/scanners/cache.d.ts.map +1 -0
- package/dist/scanners/cache.js +462 -0
- package/dist/scanners/cache.js.map +1 -0
- package/dist/scanners/dependencies.d.ts.map +1 -1
- package/dist/scanners/dependencies.js +5 -6
- package/dist/scanners/dependencies.js.map +1 -1
- package/dist/scanners/gosec.d.ts.map +1 -1
- package/dist/scanners/gosec.js +47 -9
- package/dist/scanners/gosec.js.map +1 -1
- package/dist/scanners/healthcare.d.ts +29 -0
- package/dist/scanners/healthcare.d.ts.map +1 -0
- package/dist/scanners/healthcare.js +526 -0
- package/dist/scanners/healthcare.js.map +1 -0
- package/dist/scanners/index.d.ts +1 -0
- package/dist/scanners/index.d.ts.map +1 -1
- package/dist/scanners/index.js +33 -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/secrets.js +4 -4
- package/dist/scanners/secrets.js.map +1 -1
- package/dist/scanners/semgrep.js +5 -5
- package/dist/scanners/semgrep.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 +1 -0
- package/dist/scanners/types.js.map +1 -1
- package/dist/scanners/typescript.test.js +1 -1
- package/dist/scanners/typescript.test.js.map +1 -1
- package/dist/telemetry/index.d.ts +10 -0
- package/dist/telemetry/index.d.ts.map +1 -0
- package/dist/telemetry/index.js +10 -0
- package/dist/telemetry/index.js.map +1 -0
- package/dist/telemetry/registry.d.ts +178 -0
- package/dist/telemetry/registry.d.ts.map +1 -0
- package/dist/telemetry/registry.js +297 -0
- package/dist/telemetry/registry.js.map +1 -0
- package/dist/telemetry/usage.d.ts +197 -0
- package/dist/telemetry/usage.d.ts.map +1 -0
- package/dist/telemetry/usage.js +244 -0
- package/dist/telemetry/usage.js.map +1 -0
- package/package.json +11 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"web-app.js","sourceRoot":"","sources":["../../../../src/agents/adversary/tactics/web-app.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AASH,OAAO,EACL,cAAc,EACd,iBAAiB,GAClB,MAAM,YAAY,CAAC;AAEpB,+EAA+E;AAC/E,WAAW;AACX,+EAA+E;AAE/E,MAAM,mBAAmB,GAA2B;IAClD;QACE,EAAE,EAAE,oCAAoC;QACxC,IAAI,EAAE,wCAAwC;QAC9C,WAAW,EAAE,yEAAyE;QACtF,GAAG,EAAE,QAAQ;QACb,QAAQ,EAAE,UAAU;QACpB,KAAK,EAAE,2IAA2I;KACnJ;IACD;QACE,EAAE,EAAE,sBAAsB;QAC1B,IAAI,EAAE,0BAA0B;QAChC,WAAW,EAAE,yDAAyD;QACtE,GAAG,EAAE,QAAQ;QACb,QAAQ,EAAE,UAAU;QACpB,KAAK,EAAE,yGAAyG;KACjH;IACD;QACE,EAAE,EAAE,mBAAmB;QACvB,IAAI,EAAE,6BAA6B;QACnC,WAAW,EAAE,kEAAkE;QAC/E,GAAG,EAAE,QAAQ;QACb,QAAQ,EAAE,UAAU;QACpB,KAAK,EAAE,yEAAyE;KACjF;IACD;QACE,EAAE,EAAE,yBAAyB;QAC7B,IAAI,EAAE,uCAAuC;QAC7C,WAAW,EAAE,2DAA2D;QACxE,GAAG,EAAE,QAAQ;QACb,QAAQ,EAAE,UAAU;QACpB,KAAK,EAAE,0EAA0E;KAClF;CACF,CAAC;AAEF,MAAM,sBAAsB,GAA2B;IACrD;QACE,EAAE,EAAE,2BAA2B;QAC/B,IAAI,EAAE,mCAAmC;QACzC,WAAW,EAAE,wDAAwD;QACrE,GAAG,EAAE,QAAQ;QACb,QAAQ,EAAE,MAAM;QAChB,KAAK,EAAE,0GAA0G;KAClH;IACD;QACE,EAAE,EAAE,wBAAwB;QAC5B,IAAI,EAAE,2BAA2B;QACjC,WAAW,EAAE,kDAAkD;QAC/D,GAAG,EAAE,QAAQ;QACb,QAAQ,EAAE,MAAM;QAChB,KAAK,EAAE,4EAA4E;KACpF;IACD;QACE,EAAE,EAAE,8BAA8B;QAClC,IAAI,EAAE,kCAAkC;QACxC,WAAW,EAAE,qDAAqD;QAClE,GAAG,EAAE,QAAQ;QACb,QAAQ,EAAE,MAAM;QAChB,KAAK,EAAE,oFAAoF;KAC5F;CACF,CAAC;AAEF,MAAM,gBAAgB,GAA2B;IAC/C;QACE,EAAE,EAAE,uBAAuB;QAC3B,IAAI,EAAE,2BAA2B;QACjC,WAAW,EAAE,qDAAqD;QAClE,GAAG,EAAE,QAAQ;QACb,QAAQ,EAAE,MAAM;QAChB,KAAK,EAAE,yFAAyF;KACjG;IACD;QACE,EAAE,EAAE,yBAAyB;QAC7B,IAAI,EAAE,6BAA6B;QACnC,WAAW,EAAE,6CAA6C;QAC1D,GAAG,EAAE,QAAQ;QACb,QAAQ,EAAE,MAAM;QAChB,KAAK,EAAE,2FAA2F;KACnG;IACD;QACE,EAAE,EAAE,qBAAqB;QACzB,IAAI,EAAE,yBAAyB;QAC/B,WAAW,EAAE,6DAA6D;QAC1E,GAAG,EAAE,QAAQ;QACb,QAAQ,EAAE,MAAM;QAChB,KAAK,EAAE,4HAA4H;KACpI;IACD;QACE,EAAE,EAAE,uBAAuB;QAC3B,IAAI,EAAE,gCAAgC;QACtC,WAAW,EAAE,4CAA4C;QACzD,GAAG,EAAE,QAAQ;QACb,QAAQ,EAAE,UAAU;QACpB,KAAK,EAAE,+FAA+F;KACvG;CACF,CAAC;AAEF,MAAM,aAAa,GAA2B;IAC5C;QACE,EAAE,EAAE,oBAAoB;QACxB,IAAI,EAAE,gCAAgC;QACtC,WAAW,EAAE,uDAAuD;QACpE,GAAG,EAAE,SAAS;QACd,QAAQ,EAAE,MAAM;QAChB,KAAK,EAAE,+GAA+G;KACvH;IACD;QACE,EAAE,EAAE,eAAe;QACnB,IAAI,EAAE,2BAA2B;QACjC,WAAW,EAAE,qCAAqC;QAClD,GAAG,EAAE,SAAS;QACd,QAAQ,EAAE,MAAM;QAChB,KAAK,EAAE,oEAAoE;KAC5E;IACD;QACE,EAAE,EAAE,oBAAoB;QACxB,IAAI,EAAE,4BAA4B;QAClC,WAAW,EAAE,sDAAsD;QACnE,GAAG,EAAE,SAAS;QACd,QAAQ,EAAE,QAAQ;QAClB,KAAK,EAAE,iCAAiC;KACzC;IACD;QACE,EAAE,EAAE,qBAAqB;QACzB,IAAI,EAAE,kCAAkC;QACxC,WAAW,EAAE,kDAAkD;QAC/D,GAAG,EAAE,SAAS;QACd,QAAQ,EAAE,QAAQ;QAClB,KAAK,EAAE,8GAA8G;KACtH;CACF,CAAC;AAEF,MAAM,qBAAqB,GAA2B;IACpD;QACE,EAAE,EAAE,+BAA+B;QACnC,IAAI,EAAE,uCAAuC;QAC7C,WAAW,EAAE,yDAAyD;QACtE,GAAG,EAAE,UAAU;QACf,QAAQ,EAAE,QAAQ;QAClB,KAAK,EAAE,0GAA0G;KAClH;IACD;QACE,EAAE,EAAE,qCAAqC;QACzC,IAAI,EAAE,wCAAwC;QAC9C,WAAW,EAAE,gDAAgD;QAC7D,GAAG,EAAE,UAAU;QACf,QAAQ,EAAE,QAAQ;QAClB,KAAK,EAAE,yDAAyD;KACjE;CACF,CAAC;AAEF,MAAM,sBAAsB,GAA2B;IACrD;QACE,EAAE,EAAE,2BAA2B;QAC/B,IAAI,EAAE,mCAAmC;QACzC,WAAW,EAAE,8DAA8D;QAC3E,GAAG,EAAE,SAAS;QACd,QAAQ,EAAE,QAAQ;QAClB,KAAK,EAAE,wKAAwK;KAChL;IACD;QACE,EAAE,EAAE,sBAAsB;QAC1B,IAAI,EAAE,yCAAyC;QAC/C,WAAW,EAAE,4CAA4C;QACzD,GAAG,EAAE,SAAS;QACd,QAAQ,EAAE,QAAQ;QAClB,KAAK,EAAE,4FAA4F;KACpG;IACD;QACE,EAAE,EAAE,0BAA0B;QAC9B,IAAI,EAAE,kCAAkC;QACxC,WAAW,EAAE,4CAA4C;QACzD,GAAG,EAAE,SAAS;QACd,QAAQ,EAAE,MAAM;QAChB,KAAK,EAAE,+HAA+H;KACvI;CACF,CAAC;AAEF,MAAM,aAAa,GAA2B;IAC5C;QACE,EAAE,EAAE,qBAAqB;QACzB,IAAI,EAAE,wBAAwB;QAC9B,WAAW,EAAE,oDAAoD;QACjE,GAAG,EAAE,SAAS;QACd,QAAQ,EAAE,MAAM;QAChB,KAAK,EAAE,6FAA6F;KACrG;IACD;QACE,EAAE,EAAE,kBAAkB;QACtB,IAAI,EAAE,2BAA2B;QACjC,WAAW,EAAE,4CAA4C;QACzD,GAAG,EAAE,SAAS;QACd,QAAQ,EAAE,QAAQ;QAClB,KAAK,EAAE,wDAAwD;KAChE;IACD;QACE,EAAE,EAAE,2BAA2B;QAC/B,IAAI,EAAE,iCAAiC;QACvC,WAAW,EAAE,4CAA4C;QACzD,GAAG,EAAE,SAAS;QACd,QAAQ,EAAE,MAAM;QAChB,KAAK,EAAE,uDAAuD;KAC/D;IACD;QACE,EAAE,EAAE,mBAAmB;QACvB,IAAI,EAAE,+BAA+B;QACrC,WAAW,EAAE,2CAA2C;QACxD,GAAG,EAAE,SAAS;QACd,QAAQ,EAAE,QAAQ;QAClB,KAAK,EAAE,uEAAuE;KAC/E;CACF,CAAC;AAEF,+EAA+E;AAC/E,wBAAwB;AACxB,+EAA+E;AAE/E,MAAM,YAAY,GAAiB;IACjC,SAAS,EAAE,SAAS;IACpB,IAAI,EAAE,iBAAiB;IACvB,WAAW,EAAE,0EAA0E;IAEvF,QAAQ,EAAE;QACR,GAAG,mBAAmB;QACtB,GAAG,sBAAsB;QACzB,GAAG,gBAAgB;QACnB,GAAG,aAAa;QAChB,GAAG,qBAAqB;QACxB,GAAG,sBAAsB;QACzB,GAAG,aAAa;KACjB;IAED,KAAK,CAAC,WAAW,CAAC,IAAiB,EAAE,MAAuB;QAC1D,MAAM,QAAQ,GAAoB,EAAE,CAAC;QAErC,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACpC,IAAI,CAAC,OAAO,CAAC,KAAK;gBAAE,SAAS;YAE7B,oBAAoB;YACpB,OAAO,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC;YAE5B,IAAI,KAA6B,CAAC;YAClC,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;gBAC3D,wBAAwB;gBACxB,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC3D,MAAM,OAAO,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;gBAE5D,qBAAqB;gBACrB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;gBAC3C,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;oBACtB,SAAS;gBACX,CAAC;gBAED,6BAA6B;gBAC7B,IAAI,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC;oBAChD,SAAS;gBACX,CAAC;gBAED,MAAM,OAAO,GAAkB;oBAC7B,EAAE,EAAE,iBAAiB,CAAC,SAAS,EAAE,IAAI,CAAC,YAAY,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC;oBACxE,UAAU,EAAE,SAAS;oBACrB,SAAS,EAAE,SAAS;oBACpB,SAAS,EAAE,OAAO,CAAC,EAAE;oBACrB,IAAI,EAAE,IAAI,CAAC,YAAY;oBACvB,IAAI,EAAE,OAAO;oBACb,OAAO,EAAE,GAAG,OAAO,CAAC,IAAI,KAAK,OAAO,CAAC,WAAW,EAAE;oBAClD,QAAQ,EAAE,OAAO,CAAC,QAAQ;oBAC1B,UAAU,EAAE,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC;oBACxD,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC;oBACpC,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC;oBACrB,QAAQ,EAAE,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC;oBACjC,YAAY,EAAE,eAAe,CAAC,OAAO,CAAC,EAAE,CAAC;iBAC1C,CAAC;gBAEF,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACzB,CAAC;QACH,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,OAAsB;QACtC,MAAM,MAAM,GAAyC;YACnD,oCAAoC,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,+BAA+B,CAAC;YAClG,sBAAsB,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,WAAW,CAAC;YAChE,mBAAmB,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,YAAY,CAAC;YAC9D,2BAA2B,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,OAAO,CAAC;YAC3D,wBAAwB,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,OAAO,CAAC;YACxD,uBAAuB,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,eAAe,CAAC;YAClE,yBAAyB,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,iBAAiB,CAAC;YACtE,qBAAqB,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,aAAa,CAAC;YAC9D,oBAAoB,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC;YAC5C,eAAe,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC;YACvC,+BAA+B,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,OAAO,CAAC;YAC/D,2BAA2B,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,OAAO,CAAC;YAC3D,0BAA0B,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,OAAO,CAAC;YAC1D,qBAAqB,EAAE,GAAG,EAAE,CAAC,gBAAgB,CAAC,OAAO,CAAC;YACtD,2BAA2B,EAAE,GAAG,EAAE,CAAC,gBAAgB,CAAC,OAAO,CAAC;SAC7D,CAAC;QAEF,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAC5C,OAAO,SAAS,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IACxC,CAAC;IAED,oBAAoB;QAClB,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2DAmCgD,CAAC;IAC1D,CAAC;IAED,uBAAuB;QACrB,OAAO;YACL,kBAAkB;YAClB,aAAa;YACb,aAAa;YACb,iBAAiB;YACjB,WAAW;YACX,cAAc;YACd,mBAAmB;YACnB,kBAAkB;YAClB,UAAU;YACV,UAAU;YACV,UAAU;YACV,aAAa;YACb,WAAW;YACX,SAAS;YACT,SAAS;SACV,CAAC;IACJ,CAAC;CACF,CAAC;AAEF,+EAA+E;AAC/E,mBAAmB;AACnB,+EAA+E;AAE/E,SAAS,WAAW,CAAC,IAAY;IAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IAC5B,OAAO,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;AACtH,CAAC;AAED,SAAS,eAAe,CAAC,KAAa,EAAE,SAAiB,EAAE,IAAiB;IAC1E,kBAAkB;IAClB,IAAI,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC;QAClC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC;QAClC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QACvC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,qCAAqC;IACrC,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;IACvC,IAAI,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC;QAChC,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC;QAC/B,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAC7B,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QAClC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,uCAAuC;IACvC,IAAI,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACnF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAa,EAAE,OAA6B,EAAE,IAAiB;IAC1F,IAAI,UAAU,GAAG,EAAE,CAAC;IAEpB,iDAAiD;IACjD,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;QAClH,UAAU,IAAI,EAAE,CAAC;IACnB,CAAC;IAED,0CAA0C;IAC1C,IAAI,OAAO,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC;QACpC,UAAU,IAAI,EAAE,CAAC;IACnB,CAAC;IAED,uCAAuC;IACvC,IAAI,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QACtF,UAAU,IAAI,EAAE,CAAC;IACnB,CAAC;IAED,4CAA4C;IAC5C,IAAI,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QACpF,UAAU,IAAI,CAAC,CAAC;IAClB,CAAC;IAED,OAAO,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC,CAAC;AAChD,CAAC;AAED,SAAS,WAAW,CAAC,SAAiB;IACpC,MAAM,OAAO,GAA6B;QACxC,oCAAoC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;QACxD,sBAAsB,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;QAC1C,2BAA2B,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;QAC/C,uBAAuB,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;QAC3C,oBAAoB,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;QACxC,+BAA+B,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;QACnD,2BAA2B,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;QAC/C,qBAAqB,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;KAC1C,CAAC;IACF,OAAO,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,eAAe,CAAC,SAAiB;IACxC,MAAM,KAAK,GAA2B;QACpC,oCAAoC,EAAE,0HAA0H;QAChK,sBAAsB,EAAE,oEAAoE;QAC5F,mBAAmB,EAAE,kFAAkF;QACvG,2BAA2B,EAAE,4FAA4F;QACzH,wBAAwB,EAAE,mGAAmG;QAC7H,uBAAuB,EAAE,2FAA2F;QACpH,qBAAqB,EAAE,2EAA2E;QAClG,oBAAoB,EAAE,iGAAiG;QACvH,eAAe,EAAE,qDAAqD;QACtE,oBAAoB,EAAE,2FAA2F;QACjH,+BAA+B,EAAE,6EAA6E;QAC9G,qCAAqC,EAAE,0EAA0E;QACjH,2BAA2B,EAAE,4FAA4F;QACzH,0BAA0B,EAAE,oEAAoE;QAChG,qBAAqB,EAAE,oFAAoF;QAC3G,kBAAkB,EAAE,6DAA6D;QACjF,2BAA2B,EAAE,mFAAmF;QAChH,mBAAmB,EAAE,4EAA4E;KAClG,CAAC;IACF,OAAO,KAAK,CAAC,SAAS,CAAC,IAAI,kEAAkE,CAAC;AAChG,CAAC;AAED,+EAA+E;AAC/E,iBAAiB;AACjB,+EAA+E;AAE/E,SAAS,YAAY,CAAC,OAAsB,EAAE,IAAY;IACxD,MAAM,KAAK,GAAiB;QAC1B;YACE,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,gBAAgB;YACxB,WAAW,EAAE,0CAA0C;YACvD,OAAO,EAAE,UAAU,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,0DAA0D;YACzG,cAAc,EAAE,gEAAgE;SACjF;QACD;YACE,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,gBAAgB;YACxB,WAAW,EAAE,iCAAiC;YAC9C,OAAO,EAAE,iDAAiD;YAC1D,cAAc,EAAE,4CAA4C;SAC7D;QACD;YACE,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,cAAc;YACtB,WAAW,EAAE,+BAA+B;YAC5C,OAAO,EAAE,sFAAsF;YAC/F,cAAc,EAAE,gEAAgE;SACjF;KACF,CAAC;IAEF,OAAO;QACL,EAAE,EAAE,OAAO,OAAO,CAAC,EAAE,EAAE;QACvB,SAAS,EAAE,OAAO,CAAC,EAAE;QACrB,aAAa,EAAE;YACb,qCAAqC;YACrC,qCAAqC,IAAI,EAAE;SAC5C;QACD,KAAK;QACL,OAAO,EAAE,4CAA4C;QACrD,cAAc,EAAE,yCAAyC;QACzD,oBAAoB,EAAE,2HAA2H;KAClJ,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,OAAsB;IAC7C,MAAM,KAAK,GAAiB;QAC1B;YACE,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,qBAAqB;YAC7B,WAAW,EAAE,kCAAkC;YAC/C,OAAO,EAAE,UAAU,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,2BAA2B;YAC1E,cAAc,EAAE,0DAA0D;SAC3E;QACD;YACE,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,iBAAiB;YACzB,WAAW,EAAE,2BAA2B;YACxC,OAAO,EAAE,wCAAwC;YACjD,cAAc,EAAE,4DAA4D;SAC7E;QACD;YACE,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,eAAe;YACvB,WAAW,EAAE,mBAAmB;YAChC,OAAO,EAAE,+DAA+D;YACxE,cAAc,EAAE,6CAA6C;SAC9D;KACF,CAAC;IAEF,OAAO;QACL,EAAE,EAAE,OAAO,OAAO,CAAC,EAAE,EAAE;QACvB,SAAS,EAAE,OAAO,CAAC,EAAE;QACrB,aAAa,EAAE;YACb,oCAAoC;YACpC,0CAA0C;SAC3C;QACD,KAAK;QACL,OAAO,EAAE,4CAA4C;QACrD,cAAc,EAAE,uDAAuD;QACvE,oBAAoB,EAAE,uFAAuF;KAC9G,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAAC,OAAsB,EAAE,MAAc;IACvD,MAAM,QAAQ,GAA2B;QACvC,eAAe,EAAE,6CAA6C;QAC9D,iBAAiB,EAAE,qCAAqC;QACxD,aAAa,EAAE,yDAAyD;KACzE,CAAC;IAEF,MAAM,KAAK,GAAiB;QAC1B;YACE,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,gBAAgB;YACxB,WAAW,EAAE,eAAe,MAAM,sBAAsB;YACxD,OAAO,EAAE,UAAU,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,gBAAgB;YAC/D,cAAc,EAAE,GAAG,MAAM,8CAA8C;SACxE;QACD;YACE,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,cAAc;YACtB,WAAW,EAAE,kBAAkB;YAC/B,OAAO,EAAE,mCAAmC,QAAQ,CAAC,MAAM,CAAC,IAAI,SAAS,EAAE;YAC3E,cAAc,EAAE,wCAAwC;SACzD;KACF,CAAC;IAEF,OAAO;QACL,EAAE,EAAE,OAAO,OAAO,CAAC,EAAE,EAAE;QACvB,SAAS,EAAE,OAAO,CAAC,EAAE;QACrB,aAAa,EAAE;YACb,yBAAyB,MAAM,cAAc;YAC7C,qCAAqC;SACtC;QACD,KAAK;QACL,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,8BAA8B;QAC3D,cAAc,EAAE,kCAAkC;QAClD,oBAAoB,EAAE,2FAA2F;KAClH,CAAC;AACJ,CAAC;AAED,SAAS,OAAO,CAAC,OAAsB;IACrC,MAAM,KAAK,GAAiB;QAC1B;YACE,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,mBAAmB;YAC3B,WAAW,EAAE,0DAA0D;YACvE,OAAO,EAAE,UAAU,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,gCAAgC;YAC/E,cAAc,EAAE,4DAA4D;SAC7E;QACD;YACE,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,YAAY;YACpB,WAAW,EAAE,2BAA2B;YACxC,OAAO,EAAE;;;;4CAI6B;YACtC,cAAc,EAAE,4BAA4B;SAC7C;QACD;YACE,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,WAAW;YACnB,WAAW,EAAE,8BAA8B;YAC3C,OAAO,EAAE,iEAAiE;YAC1E,cAAc,EAAE,uDAAuD;SACxE;KACF,CAAC;IAEF,OAAO;QACL,EAAE,EAAE,OAAO,OAAO,CAAC,EAAE,EAAE;QACvB,SAAS,EAAE,OAAO,CAAC,EAAE;QACrB,aAAa,EAAE;YACb,iDAAiD;YACjD,8BAA8B;SAC/B;QACD,KAAK;QACL,OAAO,EAAE,+IAA+I;QACxJ,cAAc,EAAE,kDAAkD;QAClE,oBAAoB,EAAE,yFAAyF;KAChH,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,OAAsB;IAC7C,MAAM,KAAK,GAAiB;QAC1B;YACE,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,kBAAkB;YAC1B,WAAW,EAAE,qCAAqC;YAClD,OAAO,EAAE,4DAA4D;YACrE,cAAc,EAAE,mCAAmC;SACpD;QACD;YACE,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,eAAe;YACvB,WAAW,EAAE,4BAA4B;YACzC,OAAO,EAAE;;iFAEkE;YAC3E,cAAc,EAAE,8CAA8C;SAC/D;QACD;YACE,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,YAAY;YACpB,WAAW,EAAE,+BAA+B;YAC5C,OAAO,EAAE,oDAAoD;YAC7D,cAAc,EAAE,0DAA0D;SAC3E;KACF,CAAC;IAEF,OAAO;QACL,EAAE,EAAE,OAAO,OAAO,CAAC,EAAE,EAAE;QACvB,SAAS,EAAE,OAAO,CAAC,EAAE;QACrB,aAAa,EAAE;YACb,wCAAwC;YACxC,0CAA0C;SAC3C;QACD,KAAK;QACL,OAAO,EAAE,wEAAwE;QACjF,cAAc,EAAE,8CAA8C;QAC9D,oBAAoB,EAAE,kEAAkE;KACzF,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,OAAsB;IAC7C,MAAM,KAAK,GAAiB;QAC1B;YACE,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,gBAAgB;YACxB,WAAW,EAAE,6BAA6B;YAC1C,OAAO,EAAE,UAAU,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,qBAAqB;YACpE,cAAc,EAAE,2DAA2D;SAC5E;QACD;YACE,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,eAAe;YACvB,WAAW,EAAE,oBAAoB;YACjC,OAAO,EAAE,2DAA2D;YACpE,cAAc,EAAE,4CAA4C;SAC7D;QACD;YACE,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,aAAa;YACrB,WAAW,EAAE,+BAA+B;YAC5C,OAAO,EAAE,2EAA2E;YACpF,cAAc,EAAE,gDAAgD;SACjE;KACF,CAAC;IAEF,OAAO;QACL,EAAE,EAAE,OAAO,OAAO,CAAC,EAAE,EAAE;QACvB,SAAS,EAAE,OAAO,CAAC,EAAE;QACrB,aAAa,EAAE;YACb,iDAAiD;YACjD,6BAA6B;SAC9B;QACD,KAAK;QACL,OAAO,EAAE,0CAA0C;QACnD,cAAc,EAAE,0DAA0D;QAC1E,oBAAoB,EAAE,oFAAoF;KAC3G,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,OAAsB;IAC9C,MAAM,KAAK,GAAiB;QAC1B;YACE,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,aAAa;YACrB,WAAW,EAAE,8BAA8B;YAC3C,OAAO,EAAE,iEAAiE;YAC1E,cAAc,EAAE,2DAA2D;SAC5E;QACD;YACE,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,eAAe;YACvB,WAAW,EAAE,oCAAoC;YACjD,OAAO,EAAE;;;;;;UAML;YACJ,cAAc,EAAE,yCAAyC;SAC1D;QACD;YACE,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,cAAc;YACtB,WAAW,EAAE,uCAAuC;YACpD,OAAO,EAAE,2DAA2D;YACpE,cAAc,EAAE,8CAA8C;SAC/D;KACF,CAAC;IAEF,OAAO;QACL,EAAE,EAAE,OAAO,OAAO,CAAC,EAAE,EAAE;QACvB,SAAS,EAAE,OAAO,CAAC,EAAE;QACrB,aAAa,EAAE;YACb,kDAAkD;YAClD,+CAA+C;SAChD;QACD,KAAK;QACL,OAAO,EAAE,2DAA2D;QACpE,cAAc,EAAE,kDAAkD;QAClE,oBAAoB,EAAE,6GAA6G;KACpI,CAAC;AACJ,CAAC;AAED,+EAA+E;AAC/E,kBAAkB;AAClB,+EAA+E;AAE/E,cAAc,CAAC,YAAY,CAAC,CAAC;AAE7B,OAAO,EAAE,YAAY,EAAE,CAAC"}
|
|
@@ -0,0 +1,407 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Adversary Agent - Type Definitions
|
|
3
|
+
*
|
|
4
|
+
* The Adversary agent is a mythos-class ethical hacker that uses real
|
|
5
|
+
* LLM reasoning (Claude API) to find vulnerabilities that pattern-based
|
|
6
|
+
* scanners miss. It thinks like an attacker, generates PoCs, and chains
|
|
7
|
+
* vulnerabilities into attack paths.
|
|
8
|
+
*
|
|
9
|
+
* @module agents/adversary/types
|
|
10
|
+
*/
|
|
11
|
+
import type { Severity, FindingCategory } from "../../certification/types.js";
|
|
12
|
+
/**
|
|
13
|
+
* Claude model for adversary analysis
|
|
14
|
+
*
|
|
15
|
+
* Accepts any valid Claude model ID. Configure via environment variables:
|
|
16
|
+
* ADVERSARY_SONNET_MODEL - Pro tier model
|
|
17
|
+
* ADVERSARY_OPUS_MODEL - Enterprise tier model
|
|
18
|
+
*
|
|
19
|
+
* Common models:
|
|
20
|
+
* claude-sonnet-4-20250514 (default Pro)
|
|
21
|
+
* claude-opus-4-20250514 (default Enterprise)
|
|
22
|
+
*/
|
|
23
|
+
export type AdversaryModel = string;
|
|
24
|
+
/**
|
|
25
|
+
* Aggressiveness level determines depth and risk of analysis
|
|
26
|
+
*/
|
|
27
|
+
export type AggressivenessLevel = "passive" | "active" | "aggressive";
|
|
28
|
+
/**
|
|
29
|
+
* Focus areas for adversarial analysis
|
|
30
|
+
*/
|
|
31
|
+
export type AttackFocusArea = "web-app" | "api" | "auth" | "injection" | "llm" | "infra" | "crypto" | "data-flow" | "supply-chain";
|
|
32
|
+
/**
|
|
33
|
+
* Configuration for the adversary agent
|
|
34
|
+
*/
|
|
35
|
+
export interface AdversaryConfig {
|
|
36
|
+
/** Claude model to use (Pro gets Sonnet 4, Enterprise gets Opus 4) */
|
|
37
|
+
model: AdversaryModel;
|
|
38
|
+
/** Analysis aggressiveness level */
|
|
39
|
+
aggressiveness: AggressivenessLevel;
|
|
40
|
+
/** Attack focus areas to analyze */
|
|
41
|
+
focusAreas: AttackFocusArea[];
|
|
42
|
+
/** Maximum time for analysis in milliseconds */
|
|
43
|
+
maxAnalysisTime: number;
|
|
44
|
+
/** Whether to generate proof-of-concept exploits */
|
|
45
|
+
generatePoC: boolean;
|
|
46
|
+
/** Maximum files to analyze */
|
|
47
|
+
maxFiles?: number;
|
|
48
|
+
/** Include patterns for file selection */
|
|
49
|
+
includePatterns?: string[];
|
|
50
|
+
/** Exclude patterns for file selection */
|
|
51
|
+
excludePatterns?: string[];
|
|
52
|
+
/** Enable chain analysis to find multi-step attacks */
|
|
53
|
+
enableChaining?: boolean;
|
|
54
|
+
/** Existing findings to consider for chaining */
|
|
55
|
+
existingFindings?: AdversaryFinding[];
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Exploitability assessment
|
|
59
|
+
*/
|
|
60
|
+
export type Exploitability = "trivial" | "easy" | "moderate" | "hard" | "expert";
|
|
61
|
+
/**
|
|
62
|
+
* Attack step in a proof of concept
|
|
63
|
+
*/
|
|
64
|
+
export interface AttackStep {
|
|
65
|
+
/** Step order number */
|
|
66
|
+
order: number;
|
|
67
|
+
/** Action identifier */
|
|
68
|
+
action: string;
|
|
69
|
+
/** Step description */
|
|
70
|
+
description: string;
|
|
71
|
+
/** Command to execute if applicable */
|
|
72
|
+
command?: string;
|
|
73
|
+
/** Expected outcome */
|
|
74
|
+
expectedResult?: string;
|
|
75
|
+
/** Payload or data if applicable */
|
|
76
|
+
payload?: string;
|
|
77
|
+
/** Additional notes */
|
|
78
|
+
note?: string;
|
|
79
|
+
/** Target URL/endpoint if applicable */
|
|
80
|
+
target?: string;
|
|
81
|
+
/** HTTP method if applicable */
|
|
82
|
+
method?: "GET" | "POST" | "PUT" | "DELETE" | "PATCH";
|
|
83
|
+
/** Headers if applicable */
|
|
84
|
+
headers?: Record<string, string>;
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Proof of concept for a vulnerability
|
|
88
|
+
*/
|
|
89
|
+
export interface ProofOfConcept {
|
|
90
|
+
/** Unique PoC ID */
|
|
91
|
+
id: string;
|
|
92
|
+
/** Reference to the finding */
|
|
93
|
+
findingId: string;
|
|
94
|
+
/** Prerequisites before executing PoC */
|
|
95
|
+
prerequisites: string[];
|
|
96
|
+
/** Steps to reproduce */
|
|
97
|
+
steps: AttackStep[];
|
|
98
|
+
/** Exploit payload if applicable */
|
|
99
|
+
payload?: string;
|
|
100
|
+
/** Expected result demonstrating vulnerability */
|
|
101
|
+
expectedResult: string;
|
|
102
|
+
/** Instructions for safe testing */
|
|
103
|
+
safeTestInstructions: string;
|
|
104
|
+
/** Whether this PoC was validated */
|
|
105
|
+
validated?: boolean;
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Adversary finding with attack narrative and PoC
|
|
109
|
+
*/
|
|
110
|
+
export interface AdversaryFinding {
|
|
111
|
+
/** Unique finding ID */
|
|
112
|
+
id: string;
|
|
113
|
+
/** Finding title */
|
|
114
|
+
title: string;
|
|
115
|
+
/** Detailed description */
|
|
116
|
+
description: string;
|
|
117
|
+
/** Severity level */
|
|
118
|
+
severity: Severity;
|
|
119
|
+
/** Confidence score 0-100 */
|
|
120
|
+
confidence: number;
|
|
121
|
+
/** Finding category */
|
|
122
|
+
category: FindingCategory;
|
|
123
|
+
/** Attack focus area */
|
|
124
|
+
focusArea: AttackFocusArea;
|
|
125
|
+
/** Affected file */
|
|
126
|
+
file: string;
|
|
127
|
+
/** Line number */
|
|
128
|
+
line: number;
|
|
129
|
+
/** End line if multi-line */
|
|
130
|
+
endLine?: number;
|
|
131
|
+
/** Code snippet */
|
|
132
|
+
codeSnippet: string;
|
|
133
|
+
/** Step-by-step attack narrative */
|
|
134
|
+
attackScenario: string;
|
|
135
|
+
/** How difficult to exploit */
|
|
136
|
+
exploitability: Exploitability;
|
|
137
|
+
/** Proof of concept if generated */
|
|
138
|
+
proofOfConcept?: ProofOfConcept;
|
|
139
|
+
/** Finding IDs that can be chained with this one */
|
|
140
|
+
chainPotential: string[];
|
|
141
|
+
/** MITRE ATT&CK technique IDs */
|
|
142
|
+
mitreAttackTechniques: string[];
|
|
143
|
+
/** CWE identifiers */
|
|
144
|
+
cweIds: string[];
|
|
145
|
+
/** OWASP category if applicable */
|
|
146
|
+
owaspCategory?: string;
|
|
147
|
+
/** Remediation recommendation */
|
|
148
|
+
recommendation: string;
|
|
149
|
+
/** AI reasoning that led to this finding */
|
|
150
|
+
aiReasoning: string;
|
|
151
|
+
/** Claude model that found this (or "deterministic" for pattern-based) */
|
|
152
|
+
modelUsed: AdversaryModel | "deterministic";
|
|
153
|
+
/** Compliance framework mappings */
|
|
154
|
+
complianceMapping?: {
|
|
155
|
+
owaspLlm?: {
|
|
156
|
+
id: string;
|
|
157
|
+
name: string;
|
|
158
|
+
description: string;
|
|
159
|
+
severity: string;
|
|
160
|
+
};
|
|
161
|
+
mitreAtlas?: {
|
|
162
|
+
technique: string;
|
|
163
|
+
tactic: string;
|
|
164
|
+
description: string;
|
|
165
|
+
};
|
|
166
|
+
mitreAttack?: {
|
|
167
|
+
technique: string;
|
|
168
|
+
tactic: string;
|
|
169
|
+
description: string;
|
|
170
|
+
};
|
|
171
|
+
cwe?: {
|
|
172
|
+
id: string;
|
|
173
|
+
name: string;
|
|
174
|
+
description: string;
|
|
175
|
+
};
|
|
176
|
+
soc2?: {
|
|
177
|
+
criteria: string;
|
|
178
|
+
control: string;
|
|
179
|
+
description: string;
|
|
180
|
+
};
|
|
181
|
+
iso27001?: {
|
|
182
|
+
control: string;
|
|
183
|
+
annex: string;
|
|
184
|
+
description: string;
|
|
185
|
+
};
|
|
186
|
+
pciDss?: {
|
|
187
|
+
requirement: string;
|
|
188
|
+
description: string;
|
|
189
|
+
};
|
|
190
|
+
gdpr?: {
|
|
191
|
+
article: string;
|
|
192
|
+
description: string;
|
|
193
|
+
};
|
|
194
|
+
};
|
|
195
|
+
}
|
|
196
|
+
/**
|
|
197
|
+
* Technology detection result
|
|
198
|
+
*/
|
|
199
|
+
export interface TechnologyStack {
|
|
200
|
+
framework?: string;
|
|
201
|
+
language: string;
|
|
202
|
+
runtime?: string;
|
|
203
|
+
database?: string[];
|
|
204
|
+
auth?: string[];
|
|
205
|
+
cloud?: string;
|
|
206
|
+
apis?: ("rest" | "graphql" | "grpc" | "websocket")[];
|
|
207
|
+
}
|
|
208
|
+
/**
|
|
209
|
+
* Entry point for attack surface
|
|
210
|
+
*/
|
|
211
|
+
export interface EntryPoint {
|
|
212
|
+
/** Type of entry point */
|
|
213
|
+
type: "route" | "handler" | "endpoint" | "webhook" | "socket" | "cli";
|
|
214
|
+
/** Path or identifier */
|
|
215
|
+
path: string;
|
|
216
|
+
/** HTTP methods if applicable */
|
|
217
|
+
methods?: string[];
|
|
218
|
+
/** File location */
|
|
219
|
+
file: string;
|
|
220
|
+
/** Line number */
|
|
221
|
+
line: number;
|
|
222
|
+
/** Authentication required */
|
|
223
|
+
authRequired: boolean;
|
|
224
|
+
/** Input parameters */
|
|
225
|
+
inputs: {
|
|
226
|
+
name: string;
|
|
227
|
+
source: "query" | "body" | "header" | "path" | "cookie";
|
|
228
|
+
validated: boolean;
|
|
229
|
+
}[];
|
|
230
|
+
/** Risk score 0-100 */
|
|
231
|
+
riskScore: number;
|
|
232
|
+
}
|
|
233
|
+
/**
|
|
234
|
+
* Trust boundary in the application
|
|
235
|
+
*/
|
|
236
|
+
export interface TrustBoundary {
|
|
237
|
+
/** Boundary name */
|
|
238
|
+
name: string;
|
|
239
|
+
/** Description */
|
|
240
|
+
description: string;
|
|
241
|
+
/** Entry points at this boundary */
|
|
242
|
+
entryPoints: string[];
|
|
243
|
+
/** Data flowing across this boundary */
|
|
244
|
+
dataFlow: string[];
|
|
245
|
+
/** Security controls at this boundary */
|
|
246
|
+
controls: string[];
|
|
247
|
+
}
|
|
248
|
+
/**
|
|
249
|
+
* Reconnaissance phase result
|
|
250
|
+
*/
|
|
251
|
+
export interface ReconResult {
|
|
252
|
+
/** Detected technology stack */
|
|
253
|
+
techStack: TechnologyStack;
|
|
254
|
+
/** Source files analyzed */
|
|
255
|
+
filesAnalyzed: string[];
|
|
256
|
+
/** Entry points discovered */
|
|
257
|
+
entryPoints: EntryPoint[];
|
|
258
|
+
/** Trust boundaries identified */
|
|
259
|
+
trustBoundaries: TrustBoundary[];
|
|
260
|
+
/** Third-party integrations */
|
|
261
|
+
thirdParty: {
|
|
262
|
+
name: string;
|
|
263
|
+
type: "api" | "sdk" | "service";
|
|
264
|
+
riskLevel: "low" | "medium" | "high";
|
|
265
|
+
}[];
|
|
266
|
+
/** Duration of recon phase */
|
|
267
|
+
duration: number;
|
|
268
|
+
}
|
|
269
|
+
/**
|
|
270
|
+
* Attack surface analysis result
|
|
271
|
+
*/
|
|
272
|
+
export interface AttackSurfaceResult {
|
|
273
|
+
/** All entry points categorized */
|
|
274
|
+
entryPoints: EntryPoint[];
|
|
275
|
+
/** High-risk areas requiring deep analysis */
|
|
276
|
+
highRiskAreas: {
|
|
277
|
+
area: string;
|
|
278
|
+
reason: string;
|
|
279
|
+
files: string[];
|
|
280
|
+
}[];
|
|
281
|
+
/** Data flow paths (input to output) */
|
|
282
|
+
dataFlows: {
|
|
283
|
+
input: string;
|
|
284
|
+
output: string;
|
|
285
|
+
transformations: string[];
|
|
286
|
+
validated: boolean;
|
|
287
|
+
}[];
|
|
288
|
+
/** Permission boundaries */
|
|
289
|
+
permissionBoundaries: {
|
|
290
|
+
role: string;
|
|
291
|
+
allowedActions: string[];
|
|
292
|
+
files: string[];
|
|
293
|
+
}[];
|
|
294
|
+
/** Duration */
|
|
295
|
+
duration: number;
|
|
296
|
+
}
|
|
297
|
+
/**
|
|
298
|
+
* Exploitation phase result
|
|
299
|
+
*/
|
|
300
|
+
export interface ExploitationResult {
|
|
301
|
+
/** Vulnerabilities discovered */
|
|
302
|
+
findings: AdversaryFinding[];
|
|
303
|
+
/** Files analyzed in depth */
|
|
304
|
+
filesAnalyzed: number;
|
|
305
|
+
/** Token usage for this phase */
|
|
306
|
+
tokensUsed: number;
|
|
307
|
+
/** Duration */
|
|
308
|
+
duration: number;
|
|
309
|
+
}
|
|
310
|
+
/**
|
|
311
|
+
* Exploit chain analysis
|
|
312
|
+
*/
|
|
313
|
+
export interface ExploitChain {
|
|
314
|
+
/** Chain ID */
|
|
315
|
+
id: string;
|
|
316
|
+
/** Chain name */
|
|
317
|
+
name: string;
|
|
318
|
+
/** Chain description */
|
|
319
|
+
description: string;
|
|
320
|
+
/** Finding IDs in chain order */
|
|
321
|
+
findingIds: string[];
|
|
322
|
+
/** Combined severity (often escalates) */
|
|
323
|
+
combinedSeverity: Severity;
|
|
324
|
+
/** Impact if chain is exploited */
|
|
325
|
+
impact: string;
|
|
326
|
+
/** MITRE ATT&CK techniques for full chain */
|
|
327
|
+
mitreChain: string[];
|
|
328
|
+
/** Likelihood of successful chaining */
|
|
329
|
+
likelihood: "high" | "medium" | "low";
|
|
330
|
+
}
|
|
331
|
+
/**
|
|
332
|
+
* Chaining phase result
|
|
333
|
+
*/
|
|
334
|
+
export interface ChainingResult {
|
|
335
|
+
/** Discovered exploit chains */
|
|
336
|
+
chains: ExploitChain[];
|
|
337
|
+
/** Single findings that couldn't be chained */
|
|
338
|
+
isolatedFindings: string[];
|
|
339
|
+
/** Duration */
|
|
340
|
+
duration: number;
|
|
341
|
+
}
|
|
342
|
+
/**
|
|
343
|
+
* Complete adversary analysis result
|
|
344
|
+
*/
|
|
345
|
+
export interface AdversaryResult {
|
|
346
|
+
/** Whether analysis succeeded */
|
|
347
|
+
success: boolean;
|
|
348
|
+
/** Unique analysis ID */
|
|
349
|
+
analysisId: string;
|
|
350
|
+
/** Project path analyzed */
|
|
351
|
+
projectPath: string;
|
|
352
|
+
/** Configuration used */
|
|
353
|
+
config: AdversaryConfig;
|
|
354
|
+
/** Reconnaissance results */
|
|
355
|
+
recon?: ReconResult;
|
|
356
|
+
/** Attack surface results */
|
|
357
|
+
attackSurface?: AttackSurfaceResult;
|
|
358
|
+
/** Exploitation results */
|
|
359
|
+
exploitation?: ExploitationResult;
|
|
360
|
+
/** Chaining results */
|
|
361
|
+
chaining?: ChainingResult;
|
|
362
|
+
/** All findings (deduplicated) */
|
|
363
|
+
findings: AdversaryFinding[];
|
|
364
|
+
/** All discovered chains */
|
|
365
|
+
chains: ExploitChain[];
|
|
366
|
+
/** Total token usage */
|
|
367
|
+
totalTokensUsed: number;
|
|
368
|
+
/** Total duration in milliseconds */
|
|
369
|
+
totalDuration: number;
|
|
370
|
+
/** Error if analysis failed */
|
|
371
|
+
error?: string;
|
|
372
|
+
/** Summary recommendations */
|
|
373
|
+
recommendations: string[];
|
|
374
|
+
}
|
|
375
|
+
/**
|
|
376
|
+
* Message for Claude API
|
|
377
|
+
*/
|
|
378
|
+
export interface ClaudeMessage {
|
|
379
|
+
role: "user" | "assistant";
|
|
380
|
+
content: string;
|
|
381
|
+
}
|
|
382
|
+
/**
|
|
383
|
+
* Response from Claude API
|
|
384
|
+
*/
|
|
385
|
+
export interface ClaudeResponse {
|
|
386
|
+
content: string;
|
|
387
|
+
tokensUsed: {
|
|
388
|
+
input: number;
|
|
389
|
+
output: number;
|
|
390
|
+
};
|
|
391
|
+
model: string;
|
|
392
|
+
stopReason: "end_turn" | "max_tokens" | "stop_sequence";
|
|
393
|
+
}
|
|
394
|
+
/**
|
|
395
|
+
* Analysis prompt for Claude
|
|
396
|
+
*/
|
|
397
|
+
export interface AnalysisPrompt {
|
|
398
|
+
/** System prompt establishing adversarial thinking */
|
|
399
|
+
systemPrompt: string;
|
|
400
|
+
/** Code context to analyze */
|
|
401
|
+
codeContext: string;
|
|
402
|
+
/** Specific analysis instructions */
|
|
403
|
+
instructions: string;
|
|
404
|
+
/** Expected output format */
|
|
405
|
+
outputFormat: string;
|
|
406
|
+
}
|
|
407
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/agents/adversary/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Adversary Agent - Type Definitions
|
|
3
|
+
*
|
|
4
|
+
* The Adversary agent is a mythos-class ethical hacker that uses real
|
|
5
|
+
* LLM reasoning (Claude API) to find vulnerabilities that pattern-based
|
|
6
|
+
* scanners miss. It thinks like an attacker, generates PoCs, and chains
|
|
7
|
+
* vulnerabilities into attack paths.
|
|
8
|
+
*
|
|
9
|
+
* @module agents/adversary/types
|
|
10
|
+
*/
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/agents/adversary/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG"}
|
package/dist/agents/index.d.ts
CHANGED
|
@@ -11,4 +11,5 @@ export { analyzeConsensus, hashFinding, verifyFindingChain, detectCrossContamina
|
|
|
11
11
|
export { runZeroDayHunter, zeroDayToFindings, type ZeroDayHunterConfig, type ZeroDayHunterResult, type ZeroDayFinding, type ZeroDayFocusArea, } from "./zero-day-hunter.js";
|
|
12
12
|
export { runLogicFlawDetector, logicFlawToFindings, type LogicFlawDetectorConfig, type LogicFlawDetectorResult, type LogicFlawFinding, type LogicFlawCategory, } from "./logic-flaw-detector.js";
|
|
13
13
|
export { analyzeExploitChains, exploitChainsToFindings, getChainSummary, type ExploitChain, type ExploitChainResult, type ChainStep, } from "./exploit-chain.js";
|
|
14
|
+
export { runAdversaryAnalysis, adversaryToFindings, estimateAdversaryCost, createDefaultConfig, createFocusedConfig, getModelForTier, type AdversaryConfig, type AdversaryResult, type AdversaryFinding, type AdversaryModel, type AggressivenessLevel, type AttackFocusArea, type ProofOfConcept, type ExploitChain as AdversaryExploitChain, } from "./adversary/index.js";
|
|
14
15
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/agents/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,KAAK,OAAO,EACZ,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,qBAAqB,GAC3B,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EACL,gBAAgB,EAChB,WAAW,EACX,kBAAkB,EAClB,wBAAwB,EACxB,iBAAiB,EACjB,mBAAmB,EACnB,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,GACvB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,cAAc,EACnB,KAAK,gBAAgB,GACtB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,EAC5B,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,GACvB,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EACL,oBAAoB,EACpB,uBAAuB,EACvB,eAAe,EACf,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,SAAS,GACf,MAAM,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/agents/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,KAAK,OAAO,EACZ,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,qBAAqB,GAC3B,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EACL,gBAAgB,EAChB,WAAW,EACX,kBAAkB,EAClB,wBAAwB,EACxB,iBAAiB,EACjB,mBAAmB,EACnB,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,GACvB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,cAAc,EACnB,KAAK,gBAAgB,GACtB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,EAC5B,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,GACvB,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EACL,oBAAoB,EACpB,uBAAuB,EACvB,eAAe,EACf,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,SAAS,GACf,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACnB,eAAe,EACf,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,YAAY,IAAI,qBAAqB,GAC3C,MAAM,sBAAsB,CAAC"}
|
package/dist/agents/index.js
CHANGED
|
@@ -16,4 +16,6 @@ export { runZeroDayHunter, zeroDayToFindings, } from "./zero-day-hunter.js";
|
|
|
16
16
|
export { runLogicFlawDetector, logicFlawToFindings, } from "./logic-flaw-detector.js";
|
|
17
17
|
// Exploit Chain Analyzer - Vulnerability chaining detection
|
|
18
18
|
export { analyzeExploitChains, exploitChainsToFindings, getChainSummary, } from "./exploit-chain.js";
|
|
19
|
+
// Adversary Agent - Mythos-class ethical hacker with Claude API reasoning
|
|
20
|
+
export { runAdversaryAnalysis, adversaryToFindings, estimateAdversaryCost, createDefaultConfig, createFocusedConfig, getModelForTier, } from "./adversary/index.js";
|
|
19
21
|
//# sourceMappingURL=index.js.map
|
package/dist/agents/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/agents/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,qDAAqD;AACrD,OAAO,EACL,kBAAkB,EAClB,iBAAiB,GAKlB,MAAM,oBAAoB,CAAC;AAE5B,kEAAkE;AAClE,OAAO,EACL,gBAAgB,EAChB,WAAW,EACX,kBAAkB,EAClB,wBAAwB,EACxB,iBAAiB,EACjB,mBAAmB,GAMpB,MAAM,sBAAsB,CAAC;AAE9B,uDAAuD;AACvD,OAAO,EACL,gBAAgB,EAChB,iBAAiB,GAKlB,MAAM,sBAAsB,CAAC;AAE9B,+DAA+D;AAC/D,OAAO,EACL,oBAAoB,EACpB,mBAAmB,GAKpB,MAAM,0BAA0B,CAAC;AAElC,4DAA4D;AAC5D,OAAO,EACL,oBAAoB,EACpB,uBAAuB,EACvB,eAAe,GAIhB,MAAM,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/agents/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,qDAAqD;AACrD,OAAO,EACL,kBAAkB,EAClB,iBAAiB,GAKlB,MAAM,oBAAoB,CAAC;AAE5B,kEAAkE;AAClE,OAAO,EACL,gBAAgB,EAChB,WAAW,EACX,kBAAkB,EAClB,wBAAwB,EACxB,iBAAiB,EACjB,mBAAmB,GAMpB,MAAM,sBAAsB,CAAC;AAE9B,uDAAuD;AACvD,OAAO,EACL,gBAAgB,EAChB,iBAAiB,GAKlB,MAAM,sBAAsB,CAAC;AAE9B,+DAA+D;AAC/D,OAAO,EACL,oBAAoB,EACpB,mBAAmB,GAKpB,MAAM,0BAA0B,CAAC;AAElC,4DAA4D;AAC5D,OAAO,EACL,oBAAoB,EACpB,uBAAuB,EACvB,eAAe,GAIhB,MAAM,oBAAoB,CAAC;AAE5B,0EAA0E;AAC1E,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACnB,eAAe,GAShB,MAAM,sBAAsB,CAAC"}
|
|
@@ -18,7 +18,7 @@ import type { Severity, Finding } from "../certification/types.js";
|
|
|
18
18
|
* Configuration for zero-day hunter
|
|
19
19
|
*/
|
|
20
20
|
export interface ZeroDayHunterConfig {
|
|
21
|
-
model?: "claude-sonnet-4" | "claude-opus-4" | "claude-haiku";
|
|
21
|
+
model?: "claude-sonnet-4-20250514" | "claude-opus-4-20250514" | "claude-3-5-haiku-20241022";
|
|
22
22
|
analysisDepth: "quick" | "standard" | "thorough";
|
|
23
23
|
focusAreas: ZeroDayFocusArea[];
|
|
24
24
|
maxFilesToAnalyze?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zero-day-hunter.d.ts","sourceRoot":"","sources":["../../src/agents/zero-day-hunter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAKH,OAAO,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAmB,MAAM,2BAA2B,CAAC;AAMpF;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,KAAK,CAAC,EAAE,
|
|
1
|
+
{"version":3,"file":"zero-day-hunter.d.ts","sourceRoot":"","sources":["../../src/agents/zero-day-hunter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAKH,OAAO,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAmB,MAAM,2BAA2B,CAAC;AAMpF;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,KAAK,CAAC,EAAE,0BAA0B,GAAG,wBAAwB,GAAG,2BAA2B,CAAC;IAC5F,aAAa,EAAE,OAAO,GAAG,UAAU,GAAG,UAAU,CAAC;IACjD,UAAU,EAAE,gBAAgB,EAAE,CAAC;IAC/B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;CAC5B;AAED,MAAM,MAAM,gBAAgB,GACxB,MAAM,GACN,QAAQ,GACR,WAAW,GACX,OAAO,GACP,OAAO,GACP,gBAAgB,GAChB,iBAAiB,GACjB,SAAS,GACT,KAAK,CAAC;AAEV;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,QAAQ,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,QAAQ,GAAG,QAAQ,GAAG,UAAU,GAAG,aAAa,CAAC;IACjE,WAAW,EAAE,MAAM,CAAC;CACrB;AAeD;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,cAAc,EAAE,CAAC;IAC3B,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,gBAAgB,EAAE,CAAC;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,EAAE,MAAM,EAAE,CAAC;CAC3B;AA8iBD;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,mBAAmB,GAC1B,OAAO,CAAC,mBAAmB,CAAC,CA6D9B;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,mBAAmB,GAAG,OAAO,EAAE,CAkBxE"}
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Data Flow Analysis Module
|
|
3
|
+
*
|
|
4
|
+
* Tracks data flow from sources (user input, API responses) to sinks
|
|
5
|
+
* (database writes, command execution) to identify potential vulnerabilities.
|
|
6
|
+
*
|
|
7
|
+
* This module provides the foundation for semantic vulnerability detection
|
|
8
|
+
* by identifying risky data flows that bypass sanitization.
|
|
9
|
+
*
|
|
10
|
+
* @module analysis/data-flow
|
|
11
|
+
*/
|
|
12
|
+
import type { Severity } from "../certification/types.js";
|
|
13
|
+
/**
|
|
14
|
+
* Trust level of a data source
|
|
15
|
+
*/
|
|
16
|
+
export type TrustLevel = "untrusted" | "semi-trusted" | "trusted";
|
|
17
|
+
/**
|
|
18
|
+
* Types of data sources
|
|
19
|
+
*/
|
|
20
|
+
export type DataSourceType = "user-input" | "api-response" | "file-read" | "env-var" | "database" | "url-param" | "form-data" | "header" | "cookie";
|
|
21
|
+
/**
|
|
22
|
+
* Types of data sinks (dangerous operations)
|
|
23
|
+
*/
|
|
24
|
+
export type DataSinkType = "sql-query" | "command-exec" | "file-write" | "network-request" | "eval" | "template-render" | "html-render" | "redirect" | "log-output" | "response-body";
|
|
25
|
+
/**
|
|
26
|
+
* Risk level of a sink
|
|
27
|
+
*/
|
|
28
|
+
export type SinkRiskLevel = "critical" | "high" | "medium" | "low";
|
|
29
|
+
/**
|
|
30
|
+
* File location reference
|
|
31
|
+
*/
|
|
32
|
+
export interface FileLocation {
|
|
33
|
+
/** File path */
|
|
34
|
+
file: string;
|
|
35
|
+
/** Line number */
|
|
36
|
+
line: number;
|
|
37
|
+
/** Column number (optional) */
|
|
38
|
+
column?: number;
|
|
39
|
+
/** Code snippet */
|
|
40
|
+
snippet?: string;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* A data source (entry point for potentially tainted data)
|
|
44
|
+
*/
|
|
45
|
+
export interface DataSource {
|
|
46
|
+
/** Unique identifier */
|
|
47
|
+
id: string;
|
|
48
|
+
/** Type of source */
|
|
49
|
+
type: DataSourceType;
|
|
50
|
+
/** Location in code */
|
|
51
|
+
location: FileLocation;
|
|
52
|
+
/** Variable or expression that holds the data */
|
|
53
|
+
variable: string;
|
|
54
|
+
/** Trust level */
|
|
55
|
+
trustLevel: TrustLevel;
|
|
56
|
+
/** Description */
|
|
57
|
+
description: string;
|
|
58
|
+
/** Framework-specific pattern that matched */
|
|
59
|
+
pattern?: string;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* A data sink (potentially dangerous operation)
|
|
63
|
+
*/
|
|
64
|
+
export interface DataSink {
|
|
65
|
+
/** Unique identifier */
|
|
66
|
+
id: string;
|
|
67
|
+
/** Type of sink */
|
|
68
|
+
type: DataSinkType;
|
|
69
|
+
/** Location in code */
|
|
70
|
+
location: FileLocation;
|
|
71
|
+
/** Function or method call */
|
|
72
|
+
function: string;
|
|
73
|
+
/** Risk level */
|
|
74
|
+
riskLevel: SinkRiskLevel;
|
|
75
|
+
/** Description */
|
|
76
|
+
description: string;
|
|
77
|
+
/** Parameters that are dangerous */
|
|
78
|
+
dangerousParams?: string[];
|
|
79
|
+
/** Framework-specific pattern that matched */
|
|
80
|
+
pattern?: string;
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* A sanitizer that can make data safe
|
|
84
|
+
*/
|
|
85
|
+
export interface Sanitizer {
|
|
86
|
+
/** Unique identifier */
|
|
87
|
+
id: string;
|
|
88
|
+
/** Function or method name */
|
|
89
|
+
function: string;
|
|
90
|
+
/** Location in code */
|
|
91
|
+
location: FileLocation;
|
|
92
|
+
/** What sink types this sanitizes for */
|
|
93
|
+
sanitizesFor: DataSinkType[];
|
|
94
|
+
/** Description */
|
|
95
|
+
description: string;
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* A path from a source to a sink
|
|
99
|
+
*/
|
|
100
|
+
export interface DataFlowPath {
|
|
101
|
+
/** Source of the data */
|
|
102
|
+
source: DataSource;
|
|
103
|
+
/** Sink where the data ends up */
|
|
104
|
+
sink: DataSink;
|
|
105
|
+
/** Intermediate locations in the path */
|
|
106
|
+
path: FileLocation[];
|
|
107
|
+
/** Whether the flow passes through a sanitizer */
|
|
108
|
+
passesThroughSanitizer: boolean;
|
|
109
|
+
/** Sanitizer locations if any */
|
|
110
|
+
sanitizerLocations?: FileLocation[];
|
|
111
|
+
/** Overall risk assessment */
|
|
112
|
+
riskLevel: Severity;
|
|
113
|
+
/** Description of the vulnerability */
|
|
114
|
+
description: string;
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Complete data flow context for a project
|
|
118
|
+
*/
|
|
119
|
+
export interface DataFlowContext {
|
|
120
|
+
/** All identified sources */
|
|
121
|
+
sources: DataSource[];
|
|
122
|
+
/** All identified sinks */
|
|
123
|
+
sinks: DataSink[];
|
|
124
|
+
/** All identified sanitizers */
|
|
125
|
+
sanitizers: Sanitizer[];
|
|
126
|
+
/** All data flow paths */
|
|
127
|
+
flows: DataFlowPath[];
|
|
128
|
+
/** Statistics */
|
|
129
|
+
stats: {
|
|
130
|
+
totalSources: number;
|
|
131
|
+
totalSinks: number;
|
|
132
|
+
totalSanitizers: number;
|
|
133
|
+
totalFlows: number;
|
|
134
|
+
riskyFlows: number;
|
|
135
|
+
sanitizedFlows: number;
|
|
136
|
+
};
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* Build data flow context for a project
|
|
140
|
+
*/
|
|
141
|
+
export declare function buildDataFlowContext(projectPath: string, files?: string[]): Promise<DataFlowContext>;
|
|
142
|
+
/**
|
|
143
|
+
* Get only risky (unsanitized) flows
|
|
144
|
+
*/
|
|
145
|
+
export declare function getRiskyFlows(context: DataFlowContext): DataFlowPath[];
|
|
146
|
+
/**
|
|
147
|
+
* Get flows by severity
|
|
148
|
+
*/
|
|
149
|
+
export declare function getFlowsBySeverity(context: DataFlowContext, severity: Severity): DataFlowPath[];
|
|
150
|
+
/**
|
|
151
|
+
* Format context for LLM analysis
|
|
152
|
+
*/
|
|
153
|
+
export declare function formatContextForLLM(riskyFlows: DataFlowPath[], maxFlows?: number): string;
|
|
154
|
+
//# sourceMappingURL=data-flow.d.ts.map
|