@kubbisec/ai-linux-x64 0.1.15 → 0.1.17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (73) hide show
  1. package/bin/kubbisec +0 -0
  2. package/bundled/extensions/cli-local-shared.d.ts.map +1 -1
  3. package/bundled/extensions/cli-local-shared.js +2 -1
  4. package/bundled/extensions/cli-local-shared.js.map +1 -1
  5. package/bundled/extensions/kubbisec-naus-local.extension.js +6 -6
  6. package/bundled/extensions/kubbisec-naus-local.extension.js.map +1 -1
  7. package/bundled/node_modules/@aspm/shared/dist/dto/create-bundle-report.dto.d.ts +8 -5
  8. package/bundled/node_modules/@aspm/shared/dist/dto/create-bundle-report.dto.d.ts.map +1 -1
  9. package/bundled/node_modules/@aspm/shared/dist/dto/create-bundle-report.dto.js +35 -1
  10. package/bundled/node_modules/@aspm/shared/dist/dto/create-bundle-report.dto.js.map +1 -1
  11. package/bundled/node_modules/@aspm/shared/dist/dto/create-coverage-report.dto.d.ts +15 -1
  12. package/bundled/node_modules/@aspm/shared/dist/dto/create-coverage-report.dto.d.ts.map +1 -1
  13. package/bundled/node_modules/@aspm/shared/dist/dto/create-coverage-report.dto.js +88 -3
  14. package/bundled/node_modules/@aspm/shared/dist/dto/create-coverage-report.dto.js.map +1 -1
  15. package/bundled/node_modules/@aspm/shared/dist/dto/create-vulnerability.dto.d.ts.map +1 -1
  16. package/bundled/node_modules/@aspm/shared/dist/dto/create-vulnerability.dto.js +3 -0
  17. package/bundled/node_modules/@aspm/shared/dist/dto/create-vulnerability.dto.js.map +1 -1
  18. package/bundled/node_modules/@aspm/shared/dist/dto/index.d.ts +2 -2
  19. package/bundled/node_modules/@aspm/shared/dist/dto/index.d.ts.map +1 -1
  20. package/bundled/node_modules/@aspm/shared/dist/dto/index.js +3 -1
  21. package/bundled/node_modules/@aspm/shared/dist/dto/index.js.map +1 -1
  22. package/bundled/node_modules/@aspm/shared/dist/index.d.ts +2 -0
  23. package/bundled/node_modules/@aspm/shared/dist/index.d.ts.map +1 -1
  24. package/bundled/node_modules/@aspm/shared/dist/index.js +2 -0
  25. package/bundled/node_modules/@aspm/shared/dist/index.js.map +1 -1
  26. package/bundled/node_modules/@aspm/shared/dist/project-scanner-summary.d.ts +21 -0
  27. package/bundled/node_modules/@aspm/shared/dist/project-scanner-summary.d.ts.map +1 -0
  28. package/bundled/node_modules/@aspm/shared/dist/project-scanner-summary.js +56 -0
  29. package/bundled/node_modules/@aspm/shared/dist/project-scanner-summary.js.map +1 -0
  30. package/bundled/node_modules/@aspm/shared/dist/rbac/better-auth-org-roles.d.ts.map +1 -1
  31. package/bundled/node_modules/@aspm/shared/dist/rbac/better-auth-org-roles.js +0 -1
  32. package/bundled/node_modules/@aspm/shared/dist/rbac/better-auth-org-roles.js.map +1 -1
  33. package/bundled/node_modules/@aspm/shared/dist/redaction.d.ts.map +1 -1
  34. package/bundled/node_modules/@aspm/shared/dist/redaction.js +1 -0
  35. package/bundled/node_modules/@aspm/shared/dist/redaction.js.map +1 -1
  36. package/bundled/node_modules/@aspm/shared/dist/security/aspm-gate-rules.d.ts +19 -0
  37. package/bundled/node_modules/@aspm/shared/dist/security/aspm-gate-rules.d.ts.map +1 -0
  38. package/bundled/node_modules/@aspm/shared/dist/security/aspm-gate-rules.js +61 -0
  39. package/bundled/node_modules/@aspm/shared/dist/security/aspm-gate-rules.js.map +1 -0
  40. package/bundled/node_modules/@aspm/shared/dist/security/build-aspm-security-matrix-pipeline-yaml.d.ts +3 -0
  41. package/bundled/node_modules/@aspm/shared/dist/security/build-aspm-security-matrix-pipeline-yaml.d.ts.map +1 -0
  42. package/bundled/node_modules/@aspm/shared/dist/security/build-aspm-security-matrix-pipeline-yaml.js +54 -0
  43. package/bundled/node_modules/@aspm/shared/dist/security/build-aspm-security-matrix-pipeline-yaml.js.map +1 -0
  44. package/bundled/node_modules/@aspm/shared/dist/security/build-github-security-workflow-yaml.d.ts +4 -0
  45. package/bundled/node_modules/@aspm/shared/dist/security/build-github-security-workflow-yaml.d.ts.map +1 -0
  46. package/bundled/node_modules/@aspm/shared/dist/security/build-github-security-workflow-yaml.js +72 -0
  47. package/bundled/node_modules/@aspm/shared/dist/security/build-github-security-workflow-yaml.js.map +1 -0
  48. package/bundled/node_modules/@aspm/shared/dist/security/github-workflow-action-pins.d.ts +27 -0
  49. package/bundled/node_modules/@aspm/shared/dist/security/github-workflow-action-pins.d.ts.map +1 -0
  50. package/bundled/node_modules/@aspm/shared/dist/security/github-workflow-action-pins.js +30 -0
  51. package/bundled/node_modules/@aspm/shared/dist/security/github-workflow-action-pins.js.map +1 -0
  52. package/bundled/node_modules/@aspm/shared/dist/security/github-workflow-tool-jobs.d.ts +7 -0
  53. package/bundled/node_modules/@aspm/shared/dist/security/github-workflow-tool-jobs.d.ts.map +1 -0
  54. package/bundled/node_modules/@aspm/shared/dist/security/github-workflow-tool-jobs.js +184 -0
  55. package/bundled/node_modules/@aspm/shared/dist/security/github-workflow-tool-jobs.js.map +1 -0
  56. package/bundled/node_modules/@aspm/shared/dist/security/index.d.ts +7 -0
  57. package/bundled/node_modules/@aspm/shared/dist/security/index.d.ts.map +1 -0
  58. package/bundled/node_modules/@aspm/shared/dist/security/index.js +23 -0
  59. package/bundled/node_modules/@aspm/shared/dist/security/index.js.map +1 -0
  60. package/bundled/node_modules/@aspm/shared/dist/security/security-tool-catalog.d.ts +5 -0
  61. package/bundled/node_modules/@aspm/shared/dist/security/security-tool-catalog.d.ts.map +1 -0
  62. package/bundled/node_modules/@aspm/shared/dist/security/security-tool-catalog.js +74 -0
  63. package/bundled/node_modules/@aspm/shared/dist/security/security-tool-catalog.js.map +1 -0
  64. package/bundled/node_modules/@aspm/shared/dist/security/security-tool.types.d.ts +43 -0
  65. package/bundled/node_modules/@aspm/shared/dist/security/security-tool.types.d.ts.map +1 -0
  66. package/bundled/node_modules/@aspm/shared/dist/security/security-tool.types.js +22 -0
  67. package/bundled/node_modules/@aspm/shared/dist/security/security-tool.types.js.map +1 -0
  68. package/bundled/node_modules/@aspm/shared/dist/sonar-safe-string.d.ts +8 -0
  69. package/bundled/node_modules/@aspm/shared/dist/sonar-safe-string.d.ts.map +1 -1
  70. package/bundled/node_modules/@aspm/shared/dist/sonar-safe-string.js +65 -0
  71. package/bundled/node_modules/@aspm/shared/dist/sonar-safe-string.js.map +1 -1
  72. package/bundled/node_modules/@aspm/shared/package.json +4 -0
  73. package/package.json +1 -1
@@ -20,7 +20,6 @@ exports.ORG_INVITE_ROLE_OPTIONS = [
20
20
  /** All assignable org roles (invites exclude org_administrator by design). */
21
21
  exports.ORG_MEMBER_ROLE_OPTIONS = [
22
22
  { value: "org_administrator", label: "Administrador da organização" },
23
- { value: "org_finance", label: "Financeiro" },
24
23
  ...exports.ORG_INVITE_ROLE_OPTIONS,
25
24
  ];
26
25
  /** Maps legacy Better Auth roles and Kubbisec slugs stored in DB → canonical `OrgRoleSlug`. */
@@ -1 +1 @@
1
- {"version":3,"file":"better-auth-org-roles.js","sourceRoot":"","sources":["../../src/rbac/better-auth-org-roles.ts"],"names":[],"mappings":";;;AA0BA,wDAyBC;AAGD,kDAEC;AAtDD,mGAAmG;AACtF,QAAA,4BAA4B,GAAG;IAC1C,iBAAiB,EAAE,mBAAmB;IACtC,WAAW,EAAE,aAAa;IAC1B,qBAAqB,EAAE,uBAAuB;IAC9C,qBAAqB,EAAE,uBAAuB;IAC9C,YAAY,EAAE,cAAc;CACuB,CAAC;AAEzC,QAAA,uBAAuB,GAA4C;IAC9E,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,YAAY,EAAE;IAC7C,EAAE,KAAK,EAAE,uBAAuB,EAAE,KAAK,EAAE,oBAAoB,EAAE;IAC/D,EAAE,KAAK,EAAE,uBAAuB,EAAE,KAAK,EAAE,kBAAkB,EAAE;IAC7D,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,YAAY,EAAE;CAC/C,CAAC;AAEF,8EAA8E;AACjE,QAAA,uBAAuB,GAA4C;IAC9E,EAAE,KAAK,EAAE,mBAAmB,EAAE,KAAK,EAAE,8BAA8B,EAAE;IACrE,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,YAAY,EAAE;IAC7C,GAAG,+BAAuB;CAC3B,CAAC;AAEF,+FAA+F;AAC/F,SAAgB,sBAAsB,CAAC,GAA8B;IACnE,IAAI,CAAC,GAAG;QAAE,OAAO,cAAc,CAAC;IAChC,MAAM,CAAC,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IACrB,IACE,CAAC,KAAK,mBAAmB;QACzB,CAAC,KAAK,aAAa;QACnB,CAAC,KAAK,uBAAuB;QAC7B,CAAC,KAAK,uBAAuB;QAC7B,CAAC,KAAK,cAAc,EACpB,CAAC;QACD,OAAO,CAAC,CAAC;IACX,CAAC;IACD,MAAM,KAAK,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;IAC9B,IACE,KAAK,KAAK,OAAO;QACjB,KAAK,KAAK,OAAO;QACjB,KAAK,KAAK,eAAe;QACzB,KAAK,KAAK,WAAW,EACrB,CAAC;QACD,OAAO,mBAAmB,CAAC;IAC7B,CAAC;IACD,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,YAAY,EAAE,CAAC;QACjD,OAAO,uBAAuB,CAAC;IACjC,CAAC;IACD,OAAO,cAAc,CAAC;AACxB,CAAC;AAED,8EAA8E;AAC9E,SAAgB,mBAAmB,CAAC,IAAiB;IACnD,OAAO,oCAA4B,CAAC,IAAI,CAAC,CAAC;AAC5C,CAAC"}
1
+ {"version":3,"file":"better-auth-org-roles.js","sourceRoot":"","sources":["../../src/rbac/better-auth-org-roles.ts"],"names":[],"mappings":";;;AAyBA,wDAyBC;AAGD,kDAEC;AArDD,mGAAmG;AACtF,QAAA,4BAA4B,GAAG;IAC1C,iBAAiB,EAAE,mBAAmB;IACtC,WAAW,EAAE,aAAa;IAC1B,qBAAqB,EAAE,uBAAuB;IAC9C,qBAAqB,EAAE,uBAAuB;IAC9C,YAAY,EAAE,cAAc;CACuB,CAAC;AAEzC,QAAA,uBAAuB,GAA4C;IAC9E,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,YAAY,EAAE;IAC7C,EAAE,KAAK,EAAE,uBAAuB,EAAE,KAAK,EAAE,oBAAoB,EAAE;IAC/D,EAAE,KAAK,EAAE,uBAAuB,EAAE,KAAK,EAAE,kBAAkB,EAAE;IAC7D,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,YAAY,EAAE;CAC/C,CAAC;AAEF,8EAA8E;AACjE,QAAA,uBAAuB,GAA4C;IAC9E,EAAE,KAAK,EAAE,mBAAmB,EAAE,KAAK,EAAE,8BAA8B,EAAE;IACrE,GAAG,+BAAuB;CAC3B,CAAC;AAEF,+FAA+F;AAC/F,SAAgB,sBAAsB,CAAC,GAA8B;IACnE,IAAI,CAAC,GAAG;QAAE,OAAO,cAAc,CAAC;IAChC,MAAM,CAAC,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IACrB,IACE,CAAC,KAAK,mBAAmB;QACzB,CAAC,KAAK,aAAa;QACnB,CAAC,KAAK,uBAAuB;QAC7B,CAAC,KAAK,uBAAuB;QAC7B,CAAC,KAAK,cAAc,EACpB,CAAC;QACD,OAAO,CAAC,CAAC;IACX,CAAC;IACD,MAAM,KAAK,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;IAC9B,IACE,KAAK,KAAK,OAAO;QACjB,KAAK,KAAK,OAAO;QACjB,KAAK,KAAK,eAAe;QACzB,KAAK,KAAK,WAAW,EACrB,CAAC;QACD,OAAO,mBAAmB,CAAC;IAC7B,CAAC;IACD,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,YAAY,EAAE,CAAC;QACjD,OAAO,uBAAuB,CAAC;IACjC,CAAC;IACD,OAAO,cAAc,CAAC;AACxB,CAAC;AAED,8EAA8E;AAC9E,SAAgB,mBAAmB,CAAC,IAAiB;IACnD,OAAO,oCAA4B,CAAC,IAAI,CAAC,CAAC;AAC5C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"redaction.d.ts","sourceRoot":"","sources":["../src/redaction.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,cAAc,eAAe,CAAC;AAiD3C,MAAM,MAAM,gBAAgB,GAAG;IAC7B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AA+LF,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CA2ClD;AAED,wBAAgB,qBAAqB,CACnC,CAAC,SAAS;IACR,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,eAAe,CAAC,EAAE,KAAK,CAAC;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC,CAAC;CAChE,EACD,MAAM,EAAE,CAAC,EAAE,OAAO,GAAE,gBAAqB,GAAG,CAAC,CAyB9C"}
1
+ {"version":3,"file":"redaction.d.ts","sourceRoot":"","sources":["../src/redaction.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,cAAc,eAAe,CAAC;AAiD3C,MAAM,MAAM,gBAAgB,GAAG;IAC7B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAmMF,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CA2ClD;AAED,wBAAgB,qBAAqB,CACnC,CAAC,SAAS;IACR,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,eAAe,CAAC,EAAE,KAAK,CAAC;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC,CAAC;CAChE,EACD,MAAM,EAAE,CAAC,EAAE,OAAO,GAAE,gBAAqB,GAAG,CAAC,CAyB9C"}
@@ -88,6 +88,7 @@ function redactString(value) {
88
88
  .replace(/\bAIza[0-9A-Za-z_-]{35}\b/g, exports.REDACTED_VALUE)
89
89
  .replace(/\b(AccountKey|SharedAccessSignature)=([^;\n]+)/gi, `$1=${exports.REDACTED_VALUE}`)
90
90
  .replace(/\b((?:password|passwd|pwd|secret|token|api[_-]?key|client[_-]?secret)\b\s*[:=]\s*)(["'`]?)[^,\s"'`]+/gi, `$1$2${exports.REDACTED_VALUE}`)
91
+ .replace(/\b((?:postgres(?:ql)?|mysql|mariadb|mongodb(?:\+srv)?|redis|rediss):\/\/)([^/@\s:]*):([^/@\s]+)@/gi, `$1${exports.REDACTED_VALUE}@`)
91
92
  .replace(/(https?:\/\/)([^/@\s:]+):([^/@\s]+)@/gi, `$1${exports.REDACTED_VALUE}@`);
92
93
  }
93
94
  /** Path string for @pinojs/redact / fast-redact. */
@@ -1 +1 @@
1
- {"version":3,"file":"redaction.js","sourceRoot":"","sources":["../src/redaction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"redaction.js","sourceRoot":"","sources":["../src/redaction.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ export type AspmGateRules = {
2
+ vulnerabilities?: {
3
+ max_by_severity: Record<string, number>;
4
+ };
5
+ coverage?: {
6
+ min_line_pct: number;
7
+ };
8
+ };
9
+ export declare const DEFAULT_ASPM_GATE_RULES: AspmGateRules;
10
+ /** Base64 payload for `aspm gate --rules` (wraps rules in `{ rules: ... }`). */
11
+ export declare function encodeAspmGateRulesBase64(rules?: AspmGateRules): string;
12
+ /** Pretty JSON for `aspm gate --rules-file` (wraps rules in `{ rules: ... }`). */
13
+ export declare function formatAspmGateRulesJson(rules?: AspmGateRules): string;
14
+ /**
15
+ * GitHub Actions step with human-readable gate rules JSON and `aspm gate --rules-file`.
16
+ * Same semantics as Naus `aspm_gate`, without base64 or Node wrappers in the YAML.
17
+ */
18
+ export declare function buildAspmGateGithubWorkflowStep(rules?: AspmGateRules, projectId?: string): string;
19
+ //# sourceMappingURL=aspm-gate-rules.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aspm-gate-rules.d.ts","sourceRoot":"","sources":["../../src/security/aspm-gate-rules.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,aAAa,GAAG;IAC1B,eAAe,CAAC,EAAE;QAChB,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KACzC,CAAC;IACF,QAAQ,CAAC,EAAE;QACT,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;CACH,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,aAOrC,CAAC;AAeF,gFAAgF;AAChF,wBAAgB,yBAAyB,CACvC,KAAK,GAAE,aAAuC,GAC7C,MAAM,CAIR;AAED,kFAAkF;AAClF,wBAAgB,uBAAuB,CACrC,KAAK,GAAE,aAAuC,GAC7C,MAAM,CAIR;AAWD;;;GAGG;AACH,wBAAgB,+BAA+B,CAC7C,KAAK,GAAE,aAAuC,EAC9C,SAAS,CAAC,EAAE,MAAM,GACjB,MAAM,CAaR"}
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DEFAULT_ASPM_GATE_RULES = void 0;
4
+ exports.encodeAspmGateRulesBase64 = encodeAspmGateRulesBase64;
5
+ exports.formatAspmGateRulesJson = formatAspmGateRulesJson;
6
+ exports.buildAspmGateGithubWorkflowStep = buildAspmGateGithubWorkflowStep;
7
+ exports.DEFAULT_ASPM_GATE_RULES = {
8
+ vulnerabilities: {
9
+ max_by_severity: {
10
+ CRITICAL: 0,
11
+ HIGH: 0,
12
+ },
13
+ },
14
+ };
15
+ function encodeUtf8ToBase64(value) {
16
+ const bufferCtor = globalThis.Buffer;
17
+ if (bufferCtor) {
18
+ return bufferCtor.from(value, "utf8").toString("base64");
19
+ }
20
+ const bytes = new TextEncoder().encode(value);
21
+ let binary = "";
22
+ for (const byte of bytes) {
23
+ binary += String.fromCharCode(byte);
24
+ }
25
+ return btoa(binary);
26
+ }
27
+ /** Base64 payload for `aspm gate --rules` (wraps rules in `{ rules: ... }`). */
28
+ function encodeAspmGateRulesBase64(rules = exports.DEFAULT_ASPM_GATE_RULES) {
29
+ const body = rules && Object.keys(rules).length > 0 ? { rules } : {};
30
+ return encodeUtf8ToBase64(JSON.stringify(body));
31
+ }
32
+ /** Pretty JSON for `aspm gate --rules-file` (wraps rules in `{ rules: ... }`). */
33
+ function formatAspmGateRulesJson(rules = exports.DEFAULT_ASPM_GATE_RULES) {
34
+ const body = rules && Object.keys(rules).length > 0 ? { rules } : {};
35
+ return JSON.stringify(body, null, 2);
36
+ }
37
+ const KUBBISEC_GATE_RULES_FILENAME = "kubbisec-gate-rules.json";
38
+ function indentForYamlRunBlock(text, indent = " ") {
39
+ return text
40
+ .split("\n")
41
+ .map((line) => (line.length > 0 ? `${indent}${line}` : line))
42
+ .join("\n");
43
+ }
44
+ /**
45
+ * GitHub Actions step with human-readable gate rules JSON and `aspm gate --rules-file`.
46
+ * Same semantics as Naus `aspm_gate`, without base64 or Node wrappers in the YAML.
47
+ */
48
+ function buildAspmGateGithubWorkflowStep(rules = exports.DEFAULT_ASPM_GATE_RULES, projectId) {
49
+ const rulesJson = indentForYamlRunBlock(formatAspmGateRulesJson(rules));
50
+ const projectRef = projectId ?? `\${{ vars.KUBBISEC_PROJECT }}`;
51
+ return ` # Quality gate KubbiSec: avalia os relatórios locais desta job (modelo Naus aspm_gate)
52
+ - name: KubbiSec ASPM gate
53
+ env:
54
+ KUBBISEC_PROJECT: ${projectRef}
55
+ run: |
56
+ cat > ${KUBBISEC_GATE_RULES_FILENAME} <<'EOF'
57
+ ${rulesJson}
58
+ EOF
59
+ aspm gate --rules-file ${KUBBISEC_GATE_RULES_FILENAME} -p ${projectRef}`;
60
+ }
61
+ //# sourceMappingURL=aspm-gate-rules.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aspm-gate-rules.js","sourceRoot":"","sources":["../../src/security/aspm-gate-rules.ts"],"names":[],"mappings":";;;AAgCA,8DAMC;AAGD,0DAMC;AAeD,0EAgBC;AArEY,QAAA,uBAAuB,GAAkB;IACpD,eAAe,EAAE;QACf,eAAe,EAAE;YACf,QAAQ,EAAE,CAAC;YACX,IAAI,EAAE,CAAC;SACR;KACF;CACF,CAAC;AAEF,SAAS,kBAAkB,CAAC,KAAa;IACvC,MAAM,UAAU,GAAI,UAAuG,CAAC,MAAM,CAAC;IACnI,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,UAAU,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC3D,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC9C,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,IAAI,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;IACD,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC;AACtB,CAAC;AAED,gFAAgF;AAChF,SAAgB,yBAAyB,CACvC,QAAuB,+BAAuB;IAE9C,MAAM,IAAI,GACR,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1D,OAAO,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;AAClD,CAAC;AAED,kFAAkF;AAClF,SAAgB,uBAAuB,CACrC,QAAuB,+BAAuB;IAE9C,MAAM,IAAI,GACR,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1D,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACvC,CAAC;AAED,MAAM,4BAA4B,GAAG,0BAA0B,CAAC;AAEhE,SAAS,qBAAqB,CAAC,IAAY,EAAE,MAAM,GAAG,YAAY;IAChE,OAAO,IAAI;SACR,KAAK,CAAC,IAAI,CAAC;SACX,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;SAC5D,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC;AAED;;;GAGG;AACH,SAAgB,+BAA+B,CAC7C,QAAuB,+BAAuB,EAC9C,SAAkB;IAElB,MAAM,SAAS,GAAG,qBAAqB,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC,CAAC;IACxE,MAAM,UAAU,GAAG,SAAS,IAAI,+BAA+B,CAAC;IAEhE,OAAO;;;8BAGqB,UAAU;;kBAEtB,4BAA4B;EAC5C,SAAS;;mCAEwB,4BAA4B,OAAO,UAAU,EAAE,CAAC;AACnF,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { BuildAspmSecurityMatrixPipelineOptions } from "./security-tool.types";
2
+ export declare function buildAspmSecurityMatrixPipelineYaml(tools: readonly string[], options?: BuildAspmSecurityMatrixPipelineOptions): string;
3
+ //# sourceMappingURL=build-aspm-security-matrix-pipeline-yaml.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-aspm-security-matrix-pipeline-yaml.d.ts","sourceRoot":"","sources":["../../src/security/build-aspm-security-matrix-pipeline-yaml.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,sCAAsC,EAEvC,MAAM,uBAAuB,CAAC;AAqB/B,wBAAgB,mCAAmC,CACjD,KAAK,EAAE,SAAS,MAAM,EAAE,EACxB,OAAO,CAAC,EAAE,sCAAsC,GAC/C,MAAM,CAkCR"}
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildAspmSecurityMatrixPipelineYaml = buildAspmSecurityMatrixPipelineYaml;
4
+ const aspm_gate_rules_1 = require("./aspm-gate-rules");
5
+ const security_tool_catalog_1 = require("./security-tool-catalog");
6
+ function formatGateRulesYaml(gateRules) {
7
+ const lines = [];
8
+ if (gateRules.vulnerabilities?.max_by_severity) {
9
+ lines.push(" vulnerabilities:");
10
+ lines.push(" max_by_severity:");
11
+ for (const [severity, max] of Object.entries(gateRules.vulnerabilities.max_by_severity)) {
12
+ lines.push(` ${severity}: ${max}`);
13
+ }
14
+ }
15
+ if (gateRules.coverage?.min_line_pct != null) {
16
+ lines.push(" coverage:");
17
+ lines.push(` min_line_pct: ${gateRules.coverage.min_line_pct}`);
18
+ }
19
+ return lines.join("\n");
20
+ }
21
+ function buildAspmSecurityMatrixPipelineYaml(tools, options) {
22
+ const normalized = (0, security_tool_catalog_1.normalizeSecurityTools)(tools);
23
+ const pipelineName = options?.pipelineName?.trim() || "kubbisec-security";
24
+ const matrixStrategy = options?.matrixStrategy ?? "fanout";
25
+ const gateRules = options?.gateRules ?? aspm_gate_rules_1.DEFAULT_ASPM_GATE_RULES;
26
+ const parallelBlock = normalized.map((tool) => ` - tool: ${tool}`).join("\n");
27
+ const gateYaml = formatGateRulesYaml(gateRules);
28
+ return `name: "${pipelineName}"
29
+ description: Pipeline de segurança KubbiSec ASPM (matriz gerada automaticamente)
30
+
31
+ stages:
32
+ - security
33
+ - gate
34
+
35
+ run:
36
+ - kubbisec_security:
37
+ display_name: "KubbiSec ASPM: matriz de segurança"
38
+ stage: security
39
+ kind: aspm_matrix
40
+ mode: scan-and-upload
41
+ matrix_strategy: ${matrixStrategy}
42
+ parallel:
43
+ ${parallelBlock}
44
+ - kubbisec_gate:
45
+ display_name: "KubbiSec ASPM gate"
46
+ stage: gate
47
+ kind: aspm_gate
48
+ rules:
49
+ ${gateYaml}
50
+ depends_on:
51
+ - kubbisec_security
52
+ `;
53
+ }
54
+ //# sourceMappingURL=build-aspm-security-matrix-pipeline-yaml.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-aspm-security-matrix-pipeline-yaml.js","sourceRoot":"","sources":["../../src/security/build-aspm-security-matrix-pipeline-yaml.ts"],"names":[],"mappings":";;AAyBA,kFAqCC;AA9DD,uDAA4D;AAK5D,mEAAiE;AAEjE,SAAS,mBAAmB,CAC1B,SAA2E;IAE3E,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,SAAS,CAAC,eAAe,EAAE,eAAe,EAAE,CAAC;QAC/C,KAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;QACvC,KAAK,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;QACzC,KAAK,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC,eAAe,CAAC,EAAE,CAAC;YACxF,KAAK,CAAC,IAAI,CAAC,eAAe,QAAQ,KAAK,GAAG,EAAE,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;IACD,IAAI,SAAS,CAAC,QAAQ,EAAE,YAAY,IAAI,IAAI,EAAE,CAAC;QAC7C,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAChC,KAAK,CAAC,IAAI,CAAC,2BAA2B,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC;IAC3E,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,SAAgB,mCAAmC,CACjD,KAAwB,EACxB,OAAgD;IAEhD,MAAM,UAAU,GAAG,IAAA,8CAAsB,EAAC,KAAK,CAAqB,CAAC;IACrE,MAAM,YAAY,GAAG,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI,mBAAmB,CAAC;IAC1E,MAAM,cAAc,GAAG,OAAO,EAAE,cAAc,IAAI,QAAQ,CAAC;IAC3D,MAAM,SAAS,GAAG,OAAO,EAAE,SAAS,IAAI,yCAAuB,CAAC;IAEhE,MAAM,aAAa,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrF,MAAM,QAAQ,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAC;IAEhD,OAAO,UAAU,YAAY;;;;;;;;;;;;;yBAaN,cAAc;;EAErC,aAAa;;;;;;EAMb,QAAQ;;;CAGT,CAAC;AACF,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { BuildGithubSecurityWorkflowOptions } from "./security-tool.types";
2
+ export declare function buildGithubSecurityWorkflowYaml(tools: readonly string[], options: BuildGithubSecurityWorkflowOptions): string;
3
+ export declare const DEFAULT_GITHUB_WORKFLOW_TRIGGERS: BuildGithubSecurityWorkflowOptions["events"];
4
+ //# sourceMappingURL=build-github-security-workflow-yaml.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-github-security-workflow-yaml.d.ts","sourceRoot":"","sources":["../../src/security/build-github-security-workflow-yaml.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kCAAkC,EAAkB,MAAM,uBAAuB,CAAC;AAkDhG,wBAAgB,+BAA+B,CAC7C,KAAK,EAAE,SAAS,MAAM,EAAE,EACxB,OAAO,EAAE,kCAAkC,GAC1C,MAAM,CAgBR;AAED,eAAO,MAAM,gCAAgC,EAAE,kCAAkC,CAAC,QAAQ,CAOzF,CAAC"}
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DEFAULT_GITHUB_WORKFLOW_TRIGGERS = void 0;
4
+ exports.buildGithubSecurityWorkflowYaml = buildGithubSecurityWorkflowYaml;
5
+ const security_tool_catalog_1 = require("./security-tool-catalog");
6
+ const github_workflow_tool_jobs_1 = require("./github-workflow-tool-jobs");
7
+ function buildOnBlock(events) {
8
+ const lines = ["on:"];
9
+ if (events.push) {
10
+ const branches = events.pushBranches.filter(Boolean);
11
+ if (branches.length > 0) {
12
+ lines.push(" push:");
13
+ lines.push(" branches:");
14
+ for (const branch of branches) {
15
+ lines.push(` - ${branch}`);
16
+ }
17
+ }
18
+ else {
19
+ lines.push(" push:");
20
+ }
21
+ }
22
+ if (events.pullRequest) {
23
+ lines.push(" pull_request:");
24
+ }
25
+ if (events.workflowDispatch) {
26
+ lines.push(" workflow_dispatch:");
27
+ }
28
+ if (events.schedule && events.scheduleCron.trim()) {
29
+ lines.push(" schedule:");
30
+ lines.push(" - cron: " + JSON.stringify(events.scheduleCron.trim()));
31
+ }
32
+ if (lines.length === 1) {
33
+ lines.push(" workflow_dispatch:");
34
+ }
35
+ return lines.join("\n");
36
+ }
37
+ function buildPermissionsBlock(tools) {
38
+ const needsCodeScanning = tools.some((tool) => tool === "gitleaks" || tool === "osv");
39
+ if (!needsCodeScanning) {
40
+ return `permissions:
41
+ contents: read`;
42
+ }
43
+ return `permissions:
44
+ contents: read
45
+ actions: read
46
+ security-events: write`;
47
+ }
48
+ function buildGithubSecurityWorkflowYaml(tools, options) {
49
+ const normalized = (0, security_tool_catalog_1.normalizeSecurityTools)(tools);
50
+ const workflowName = options.workflowName.trim() || "KubbiSec Security";
51
+ const onBlock = buildOnBlock(options.events);
52
+ const permissionsBlock = buildPermissionsBlock(normalized);
53
+ const { jobsYaml } = (0, github_workflow_tool_jobs_1.buildGithubToolJobsSection)(normalized, options.inlineEnv);
54
+ return `name: ${JSON.stringify(workflowName)}
55
+
56
+ ${onBlock}
57
+
58
+ ${permissionsBlock}
59
+
60
+ jobs:
61
+ ${jobsYaml}
62
+ `;
63
+ }
64
+ exports.DEFAULT_GITHUB_WORKFLOW_TRIGGERS = {
65
+ push: true,
66
+ pushBranches: ["main"],
67
+ pullRequest: true,
68
+ workflowDispatch: true,
69
+ schedule: false,
70
+ scheduleCron: "0 6 * * 1",
71
+ };
72
+ //# sourceMappingURL=build-github-security-workflow-yaml.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-github-security-workflow-yaml.js","sourceRoot":"","sources":["../../src/security/build-github-security-workflow-yaml.ts"],"names":[],"mappings":";;;AAoDA,0EAmBC;AAvED,mEAAiE;AACjE,2EAAyE;AAGzE,SAAS,YAAY,CAAC,MAAoD;IACxE,MAAM,KAAK,GAAa,CAAC,KAAK,CAAC,CAAC;IAEhC,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAChB,MAAM,QAAQ,GAAG,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACrD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACtB,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAC5B,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE,CAAC;gBAC9B,KAAK,CAAC,IAAI,CAAC,WAAW,MAAM,EAAE,CAAC,CAAC;YAClC,CAAC;QACH,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACxB,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;QACvB,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAChC,CAAC;IAED,IAAI,MAAM,CAAC,gBAAgB,EAAE,CAAC;QAC5B,KAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IACrC,CAAC;IAED,IAAI,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC;QAClD,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC1B,KAAK,CAAC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAC1E,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,KAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IACrC,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,qBAAqB,CAAC,KAAuB;IACpD,MAAM,iBAAiB,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,UAAU,IAAI,IAAI,KAAK,KAAK,CAAC,CAAC;IACtF,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACvB,OAAO;iBACM,CAAC;IAChB,CAAC;IACD,OAAO;;;yBAGgB,CAAC;AAC1B,CAAC;AAED,SAAgB,+BAA+B,CAC7C,KAAwB,EACxB,OAA2C;IAE3C,MAAM,UAAU,GAAG,IAAA,8CAAsB,EAAC,KAAK,CAAqB,CAAC;IACrE,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,mBAAmB,CAAC;IACxE,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7C,MAAM,gBAAgB,GAAG,qBAAqB,CAAC,UAAU,CAAC,CAAC;IAC3D,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAA,sDAA0B,EAAC,UAAU,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IAE/E,OAAO,SAAS,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;;EAE5C,OAAO;;EAEP,gBAAgB;;;EAGhB,QAAQ;CACT,CAAC;AACF,CAAC;AAEY,QAAA,gCAAgC,GAAiD;IAC5F,IAAI,EAAE,IAAI;IACV,YAAY,EAAE,CAAC,MAAM,CAAC;IACtB,WAAW,EAAE,IAAI;IACjB,gBAAgB,EAAE,IAAI;IACtB,QAAQ,EAAE,KAAK;IACf,YAAY,EAAE,WAAW;CAC1B,CAAC"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Pinned GitHub Actions / images for KubbiSec workflow templates.
3
+ * Prefer stable major/minor tags maintained by vendors; pin SHAs in production if policy requires.
4
+ *
5
+ * @see https://github.com/aquasecurity/trivy/security/advisories/GHSA-69fq-xp46-6x23 (trivy-action >= v0.35.0)
6
+ */
7
+ export declare const GITHUB_CHECKOUT_ACTION = "actions/checkout@v4";
8
+ /** aquasecurity/trivy-action — filesystem scan with JSON for `aspm upload`. */
9
+ export declare const TRIVY_ACTION = "aquasecurity/trivy-action@v0.35.0";
10
+ /** anchore/sbom-action — CycloneDX JSON SBOM for `aspm upload`. */
11
+ export declare const SBOM_ACTION = "anchore/sbom-action@v0";
12
+ /** gitleaks/gitleaks-action — Node 24 / LTS track (org repos may need GITLEAKS_LICENSE). */
13
+ export declare const GITLEAKS_ACTION = "gitleaks/gitleaks-action@v3";
14
+ /** google/osv-scanner-action sub-actions (scanner + SARIF reporter). */
15
+ export declare const OSV_SCANNER_ACTION = "google/osv-scanner-action/osv-scanner-action@v2.3.8";
16
+ export declare const OSV_REPORTER_ACTION = "google/osv-scanner-action/osv-reporter-action@v2.3.8";
17
+ /** Upload SARIF to GitHub Security tab (Code Scanning). */
18
+ export declare const CODEQL_UPLOAD_SARIF_ACTION = "github/codeql-action/upload-sarif@v4";
19
+ /** Tag root for reusable OSV workflows (documentação). */
20
+ export declare const OSV_SCANNER_ACTION_REF = "google/osv-scanner-action@v2.3.8";
21
+ /** SonarSource/sonarqube-scan-action — SonarQube Server 2026.1 LTA docs recommend v7. */
22
+ export declare const SONAR_SCAN_ACTION = "SonarSource/sonarqube-scan-action@v7";
23
+ /** Official Semgrep image (semgrep/semgrep-action is deprecated). */
24
+ export declare const SEMGREP_CONTAINER_IMAGE = "semgrep/semgrep:latest";
25
+ /** Pinned Gitleaks CLI when JSON report is required for ASPM (action defaults to SARIF). */
26
+ export declare const GITLEAKS_CLI_VERSION = "8.21.2";
27
+ //# sourceMappingURL=github-workflow-action-pins.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"github-workflow-action-pins.d.ts","sourceRoot":"","sources":["../../src/security/github-workflow-action-pins.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,wBAAwB,CAAC;AAE5D,+EAA+E;AAC/E,eAAO,MAAM,YAAY,sCAAsC,CAAC;AAEhE,mEAAmE;AACnE,eAAO,MAAM,WAAW,2BAA2B,CAAC;AAEpD,4FAA4F;AAC5F,eAAO,MAAM,eAAe,gCAAgC,CAAC;AAE7D,wEAAwE;AACxE,eAAO,MAAM,kBAAkB,wDAAwD,CAAC;AACxF,eAAO,MAAM,mBAAmB,yDAAyD,CAAC;AAE1F,2DAA2D;AAC3D,eAAO,MAAM,0BAA0B,yCAAyC,CAAC;AAEjF,0DAA0D;AAC1D,eAAO,MAAM,sBAAsB,qCAAqC,CAAC;AAEzE,yFAAyF;AACzF,eAAO,MAAM,iBAAiB,yCAAyC,CAAC;AAExE,qEAAqE;AACrE,eAAO,MAAM,uBAAuB,2BAA2B,CAAC;AAEhE,4FAA4F;AAC5F,eAAO,MAAM,oBAAoB,WAAW,CAAC"}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GITLEAKS_CLI_VERSION = exports.SEMGREP_CONTAINER_IMAGE = exports.SONAR_SCAN_ACTION = exports.OSV_SCANNER_ACTION_REF = exports.CODEQL_UPLOAD_SARIF_ACTION = exports.OSV_REPORTER_ACTION = exports.OSV_SCANNER_ACTION = exports.GITLEAKS_ACTION = exports.SBOM_ACTION = exports.TRIVY_ACTION = exports.GITHUB_CHECKOUT_ACTION = void 0;
4
+ /**
5
+ * Pinned GitHub Actions / images for KubbiSec workflow templates.
6
+ * Prefer stable major/minor tags maintained by vendors; pin SHAs in production if policy requires.
7
+ *
8
+ * @see https://github.com/aquasecurity/trivy/security/advisories/GHSA-69fq-xp46-6x23 (trivy-action >= v0.35.0)
9
+ */
10
+ exports.GITHUB_CHECKOUT_ACTION = "actions/checkout@v4";
11
+ /** aquasecurity/trivy-action — filesystem scan with JSON for `aspm upload`. */
12
+ exports.TRIVY_ACTION = "aquasecurity/trivy-action@v0.35.0";
13
+ /** anchore/sbom-action — CycloneDX JSON SBOM for `aspm upload`. */
14
+ exports.SBOM_ACTION = "anchore/sbom-action@v0";
15
+ /** gitleaks/gitleaks-action — Node 24 / LTS track (org repos may need GITLEAKS_LICENSE). */
16
+ exports.GITLEAKS_ACTION = "gitleaks/gitleaks-action@v3";
17
+ /** google/osv-scanner-action sub-actions (scanner + SARIF reporter). */
18
+ exports.OSV_SCANNER_ACTION = "google/osv-scanner-action/osv-scanner-action@v2.3.8";
19
+ exports.OSV_REPORTER_ACTION = "google/osv-scanner-action/osv-reporter-action@v2.3.8";
20
+ /** Upload SARIF to GitHub Security tab (Code Scanning). */
21
+ exports.CODEQL_UPLOAD_SARIF_ACTION = "github/codeql-action/upload-sarif@v4";
22
+ /** Tag root for reusable OSV workflows (documentação). */
23
+ exports.OSV_SCANNER_ACTION_REF = "google/osv-scanner-action@v2.3.8";
24
+ /** SonarSource/sonarqube-scan-action — SonarQube Server 2026.1 LTA docs recommend v7. */
25
+ exports.SONAR_SCAN_ACTION = "SonarSource/sonarqube-scan-action@v7";
26
+ /** Official Semgrep image (semgrep/semgrep-action is deprecated). */
27
+ exports.SEMGREP_CONTAINER_IMAGE = "semgrep/semgrep:latest";
28
+ /** Pinned Gitleaks CLI when JSON report is required for ASPM (action defaults to SARIF). */
29
+ exports.GITLEAKS_CLI_VERSION = "8.21.2";
30
+ //# sourceMappingURL=github-workflow-action-pins.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"github-workflow-action-pins.js","sourceRoot":"","sources":["../../src/security/github-workflow-action-pins.ts"],"names":[],"mappings":";;;AAAA;;;;;GAKG;AACU,QAAA,sBAAsB,GAAG,qBAAqB,CAAC;AAE5D,+EAA+E;AAClE,QAAA,YAAY,GAAG,mCAAmC,CAAC;AAEhE,mEAAmE;AACtD,QAAA,WAAW,GAAG,wBAAwB,CAAC;AAEpD,4FAA4F;AAC/E,QAAA,eAAe,GAAG,6BAA6B,CAAC;AAE7D,wEAAwE;AAC3D,QAAA,kBAAkB,GAAG,qDAAqD,CAAC;AAC3E,QAAA,mBAAmB,GAAG,sDAAsD,CAAC;AAE1F,2DAA2D;AAC9C,QAAA,0BAA0B,GAAG,sCAAsC,CAAC;AAEjF,0DAA0D;AAC7C,QAAA,sBAAsB,GAAG,kCAAkC,CAAC;AAEzE,yFAAyF;AAC5E,QAAA,iBAAiB,GAAG,sCAAsC,CAAC;AAExE,qEAAqE;AACxD,QAAA,uBAAuB,GAAG,wBAAwB,CAAC;AAEhE,4FAA4F;AAC/E,QAAA,oBAAoB,GAAG,QAAQ,CAAC"}
@@ -0,0 +1,7 @@
1
+ import type { GithubWorkflowInlineEnv, SecurityToolId } from "./security-tool.types";
2
+ export declare const KUBBISEC_SCANS_JOB_ID = "kubbisec-scans";
3
+ export declare function buildGithubToolJobsSection(tools: SecurityToolId[], inlineEnv?: GithubWorkflowInlineEnv): {
4
+ jobIds: string[];
5
+ jobsYaml: string;
6
+ };
7
+ //# sourceMappingURL=github-workflow-tool-jobs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"github-workflow-tool-jobs.d.ts","sourceRoot":"","sources":["../../src/security/github-workflow-tool-jobs.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,uBAAuB,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAErF,eAAO,MAAM,qBAAqB,mBAAmB,CAAC;AAyKtD,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,cAAc,EAAE,EACvB,SAAS,CAAC,EAAE,uBAAuB,GAClC;IACD,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAkBA"}
@@ -0,0 +1,184 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.KUBBISEC_SCANS_JOB_ID = void 0;
4
+ exports.buildGithubToolJobsSection = buildGithubToolJobsSection;
5
+ const aspm_gate_rules_1 = require("./aspm-gate-rules");
6
+ const github_workflow_action_pins_1 = require("./github-workflow-action-pins");
7
+ exports.KUBBISEC_SCANS_JOB_ID = "kubbisec-scans";
8
+ const ASPM_INSTALL_STEP = ` - name: Install ASPM CLI
9
+ run: npm install -g @kubbisec/aspm`;
10
+ const CHECKOUT_STEP = ` - uses: ${github_workflow_action_pins_1.GITHUB_CHECKOUT_ACTION}`;
11
+ const CHECKOUT_FULL_HISTORY_STEP = ` - uses: ${github_workflow_action_pins_1.GITHUB_CHECKOUT_ACTION}
12
+ with:
13
+ fetch-depth: 0`;
14
+ /**
15
+ * KubbiSec job env — API URL is omitted (ASPM CLI defaults to https://api.kubbisec.com).
16
+ * Only secret key + org/project identifiers are required in CI.
17
+ */
18
+ function buildKubbisecScansJobEnv(inlineEnv) {
19
+ if (inlineEnv) {
20
+ return ` env:
21
+ KUBBISEC_API_KEY: \${{ secrets.KUBBISEC_API_KEY }}
22
+ KUBBISEC_ORG_ID: ${JSON.stringify(inlineEnv.orgId)}`;
23
+ }
24
+ return ` env:
25
+ KUBBISEC_API_KEY: \${{ secrets.KUBBISEC_API_KEY }}
26
+ KUBBISEC_ORG_ID: \${{ vars.KUBBISEC_ORG_ID }}`;
27
+ }
28
+ const GITHUB_PROJECT_VAR_REF = "${{ vars.KUBBISEC_PROJECT }}";
29
+ function projectRef(inlineEnv) {
30
+ return inlineEnv?.projectId ?? GITHUB_PROJECT_VAR_REF;
31
+ }
32
+ /** Scanner-specific steps (official actions where JSON output is compatible with `aspm upload`). */
33
+ function buildToolScanSteps(tool, inlineEnv) {
34
+ const p = projectRef(inlineEnv);
35
+ switch (tool) {
36
+ case "trivy":
37
+ return ` - name: Trivy filesystem scan
38
+ uses: ${github_workflow_action_pins_1.TRIVY_ACTION}
39
+ with:
40
+ scan-type: fs
41
+ scan-ref: .
42
+ format: json
43
+ output: trivy-report.json
44
+ exit-code: "0"
45
+
46
+ - name: Upload Trivy report
47
+ run: aspm upload trivy-report.json -s trivy -p ${p}`;
48
+ case "gitleaks":
49
+ return ` - name: Gitleaks (GitHub Security)
50
+ uses: ${github_workflow_action_pins_1.GITLEAKS_ACTION}
51
+ continue-on-error: true
52
+ env:
53
+ GITHUB_TOKEN: \${{ secrets.GITHUB_TOKEN }}
54
+ GITLEAKS_ENABLE_UPLOAD_ARTIFACT: "true"
55
+ GITLEAKS_VERSION: "${github_workflow_action_pins_1.GITLEAKS_CLI_VERSION}"
56
+
57
+ - name: Gitleaks scan (JSON para KubbiSec ASPM)
58
+ run: |
59
+ curl -sSL https://github.com/gitleaks/gitleaks/releases/download/v${github_workflow_action_pins_1.GITLEAKS_CLI_VERSION}/gitleaks_${github_workflow_action_pins_1.GITLEAKS_CLI_VERSION}_linux_x64.tar.gz | tar -xz -C /usr/local/bin
60
+ gitleaks detect --source . --report-format json --report-path gitleaks-report.json --exit-code 0 || true
61
+
62
+ - name: Upload Gitleaks report
63
+ run: aspm upload gitleaks-report.json -s gitleaks -p ${p}`;
64
+ case "syft":
65
+ return ` - name: Generate SBOM
66
+ uses: ${github_workflow_action_pins_1.SBOM_ACTION}
67
+ with:
68
+ path: .
69
+ format: cyclonedx-json
70
+ output-file: sbom.cdx.json
71
+ upload-artifact: false
72
+ upload-release-assets: false
73
+
74
+ - name: Upload SBOM
75
+ run: aspm upload sbom.cdx.json -s syft -p ${p}`;
76
+ case "osv":
77
+ return ` - name: OSV scan (JSON para KubbiSec ASPM)
78
+ uses: ${github_workflow_action_pins_1.OSV_SCANNER_ACTION}
79
+ continue-on-error: true
80
+ with:
81
+ scan-args: |-
82
+ --recursive
83
+ --format=json
84
+ --output=osv-report.json
85
+ ./
86
+
87
+ - name: OSV SARIF (GitHub Security)
88
+ uses: ${github_workflow_action_pins_1.OSV_REPORTER_ACTION}
89
+ continue-on-error: true
90
+ with:
91
+ scan-args: |-
92
+ --output=osv-results.sarif
93
+ --new=osv-report.json
94
+ --gh-annotations=false
95
+ --fail-on-vuln=false
96
+
97
+ - name: Upload OSV SARIF to GitHub Security
98
+ uses: ${github_workflow_action_pins_1.CODEQL_UPLOAD_SARIF_ACTION}
99
+ if: always()
100
+ continue-on-error: true
101
+ with:
102
+ sarif_file: osv-results.sarif
103
+ category: kubbisec-osv
104
+
105
+ - name: Upload OSV report to KubbiSec
106
+ run: aspm upload osv-report.json -s osv -p ${p}`;
107
+ case "semgrep":
108
+ return ` # semgrep/semgrep-action está deprecated — imagem oficial semgrep/semgrep (Semgrep docs).
109
+ - name: Semgrep scan
110
+ run: |
111
+ docker run --rm -v "$PWD:/src" -w /src ${github_workflow_action_pins_1.SEMGREP_CONTAINER_IMAGE} \\
112
+ semgrep scan --config auto --json -o semgrep-report.json .
113
+
114
+ - name: Upload Semgrep report
115
+ run: aspm upload semgrep-report.json -s semgrep -p ${p}`;
116
+ case "sonar":
117
+ return ` # Configure secrets.SONAR_TOKEN, vars.SONAR_HOST_URL (SonarCloud: https://sonarcloud.io), vars.SONAR_PROJECT_KEY
118
+ - name: SonarQube scan (SonarSource GitHub Action)
119
+ uses: ${github_workflow_action_pins_1.SONAR_SCAN_ACTION}
120
+ env:
121
+ SONAR_TOKEN: \${{ secrets.SONAR_TOKEN }}
122
+ SONAR_HOST_URL: \${{ vars.SONAR_HOST_URL }}
123
+ with:
124
+ args: >
125
+ -Dsonar.projectKey=\${{ vars.SONAR_PROJECT_KEY }}
126
+
127
+ - name: Export Sonar issues (JSON para KubbiSec ASPM)
128
+ run: |
129
+ if [ -n "$SONAR_HOST_URL" ] && [ -n "$SONAR_TOKEN" ]; then
130
+ curl -sS -H "Authorization: Bearer $SONAR_TOKEN" \\
131
+ "$SONAR_HOST_URL/api/issues/search?componentKeys=$SONAR_PROJECT_KEY&ps=500" \\
132
+ -o sonar-report.json || echo '{}' > sonar-report.json
133
+ else
134
+ echo '{}' > sonar-report.json
135
+ fi
136
+ env:
137
+ SONAR_HOST_URL: \${{ vars.SONAR_HOST_URL }}
138
+ SONAR_TOKEN: \${{ secrets.SONAR_TOKEN }}
139
+ SONAR_PROJECT_KEY: \${{ vars.SONAR_PROJECT_KEY }}
140
+
141
+ - name: Upload Sonar report to KubbiSec
142
+ run: aspm upload sonar-report.json -s sonar -p ${p}`;
143
+ case "nmap":
144
+ return ` - name: Install Nmap
145
+ run: sudo apt-get update && sudo apt-get install -y nmap
146
+
147
+ - name: Nmap scan placeholder
148
+ run: |
149
+ echo "Configure NMAP_TARGET (vars) para varredura real; gerando placeholder."
150
+ echo '{}' > nmap-report.json
151
+
152
+ - name: Upload Nmap report
153
+ run: aspm upload nmap-report.json -s nmap -p ${p}`;
154
+ case "skipfish":
155
+ return ` - name: Install Skipfish
156
+ run: sudo apt-get update && sudo apt-get install -y skipfish
157
+
158
+ - name: Skipfish scan placeholder
159
+ run: |
160
+ echo "Configure SKIPFISH_TARGET (vars) para DAST real; gerando placeholder."
161
+ echo '{}' > skipfish-report.json
162
+
163
+ - name: Upload Skipfish report
164
+ run: aspm upload skipfish-report.json -s skipfish -p ${p}`;
165
+ }
166
+ }
167
+ function buildGithubToolJobsSection(tools, inlineEnv) {
168
+ const checkout = tools.includes("gitleaks") ? CHECKOUT_FULL_HISTORY_STEP : CHECKOUT_STEP;
169
+ const kubbisecScansJobEnv = buildKubbisecScansJobEnv(inlineEnv);
170
+ const toolSteps = tools.map((tool) => buildToolScanSteps(tool, inlineEnv)).join("\n\n");
171
+ const jobsYaml = ` ${exports.KUBBISEC_SCANS_JOB_ID}:
172
+ runs-on: ubuntu-latest
173
+ ${kubbisecScansJobEnv}
174
+ steps:
175
+ ${checkout}
176
+
177
+ ${ASPM_INSTALL_STEP}
178
+
179
+ ${toolSteps}
180
+
181
+ ${(0, aspm_gate_rules_1.buildAspmGateGithubWorkflowStep)(undefined, inlineEnv?.projectId)}`;
182
+ return { jobIds: [exports.KUBBISEC_SCANS_JOB_ID], jobsYaml };
183
+ }
184
+ //# sourceMappingURL=github-workflow-tool-jobs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"github-workflow-tool-jobs.js","sourceRoot":"","sources":["../../src/security/github-workflow-tool-jobs.ts"],"names":[],"mappings":";;;AAwLA,gEAwBC;AAhND,uDAAoE;AACpE,+EAWuC;AAG1B,QAAA,qBAAqB,GAAG,gBAAgB,CAAC;AAEtD,MAAM,iBAAiB,GAAG;2CACiB,CAAC;AAE5C,MAAM,aAAa,GAAG,iBAAiB,oDAAsB,EAAE,CAAC;AAEhE,MAAM,0BAA0B,GAAG,iBAAiB,oDAAsB;;yBAEjD,CAAC;AAE1B;;;GAGG;AACH,SAAS,wBAAwB,CAAC,SAAmC;IACnE,IAAI,SAAS,EAAE,CAAC;QACd,OAAO;;yBAEc,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;IACzD,CAAC;IACD,OAAO;;oDAE2C,CAAC;AACrD,CAAC;AAED,MAAM,sBAAsB,GAAG,8BAA8B,CAAC;AAE9D,SAAS,UAAU,CAAC,SAAmC;IACrD,OAAO,SAAS,EAAE,SAAS,IAAI,sBAAsB,CAAC;AACxD,CAAC;AAED,oGAAoG;AACpG,SAAS,kBAAkB,CAAC,IAAoB,EAAE,SAAmC;IACnF,MAAM,CAAC,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC;IAEhC,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,OAAO;YACV,OAAO;gBACG,0CAAY;;;;;;;;;yDAS6B,CAAC,EAAE,CAAC;QACzD,KAAK,UAAU;YACb,OAAO;gBACG,6CAAe;;;;;+BAKA,kDAAoB;;;;8EAI2B,kDAAoB,aAAa,kDAAoB;;;;+DAIpE,CAAC,EAAE,CAAC;QAC/D,KAAK,MAAM;YACT,OAAO;gBACG,yCAAW;;;;;;;;;oDASyB,CAAC,EAAE,CAAC;QACpD,KAAK,KAAK;YACR,OAAO;gBACG,gDAAkB;;;;;;;;;;gBAUlB,iDAAmB;;;;;;;;;;gBAUnB,wDAA0B;;;;;;;;qDAQW,CAAC,EAAE,CAAC;QACrD,KAAK,SAAS;YACZ,OAAO;;;mDAGsC,qDAAuB;;;;6DAIb,CAAC,EAAE,CAAC;QAC7D,KAAK,OAAO;YACV,OAAO;;gBAEG,+CAAiB;;;;;;;;;;;;;;;;;;;;;;;yDAuBwB,CAAC,EAAE,CAAC;QACzD,KAAK,MAAM;YACT,OAAO;;;;;;;;;uDAS0C,CAAC,EAAE,CAAC;QACvD,KAAK,UAAU;YACb,OAAO;;;;;;;;;+DASkD,CAAC,EAAE,CAAC;IACjE,CAAC;AACH,CAAC;AAED,SAAgB,0BAA0B,CACxC,KAAuB,EACvB,SAAmC;IAKnC,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,aAAa,CAAC;IACzF,MAAM,mBAAmB,GAAG,wBAAwB,CAAC,SAAS,CAAC,CAAC;IAChE,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,kBAAkB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAExF,MAAM,QAAQ,GAAG,KAAK,6BAAqB;;EAE3C,mBAAmB;;EAEnB,QAAQ;;EAER,iBAAiB;;EAEjB,SAAS;;EAET,IAAA,iDAA+B,EAAC,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE,CAAC;IAEnE,OAAO,EAAE,MAAM,EAAE,CAAC,6BAAqB,CAAC,EAAE,QAAQ,EAAE,CAAC;AACvD,CAAC"}
@@ -0,0 +1,7 @@
1
+ export * from "./security-tool.types";
2
+ export * from "./security-tool-catalog";
3
+ export * from "./aspm-gate-rules";
4
+ export * from "./build-aspm-security-matrix-pipeline-yaml";
5
+ export * from "./build-github-security-workflow-yaml";
6
+ export * from "./github-workflow-action-pins";
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/security/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,mBAAmB,CAAC;AAClC,cAAc,4CAA4C,CAAC;AAC3D,cAAc,uCAAuC,CAAC;AACtD,cAAc,+BAA+B,CAAC"}
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./security-tool.types"), exports);
18
+ __exportStar(require("./security-tool-catalog"), exports);
19
+ __exportStar(require("./aspm-gate-rules"), exports);
20
+ __exportStar(require("./build-aspm-security-matrix-pipeline-yaml"), exports);
21
+ __exportStar(require("./build-github-security-workflow-yaml"), exports);
22
+ __exportStar(require("./github-workflow-action-pins"), exports);
23
+ //# sourceMappingURL=index.js.map