code-secret-handler 1.0.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/LICENSE +79 -0
- package/README.md +221 -0
- package/dist/cli.d.ts +3 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +121 -0
- package/dist/cli.js.map +1 -0
- package/dist/env/envWriter.d.ts +9 -0
- package/dist/env/envWriter.d.ts.map +1 -0
- package/dist/env/envWriter.js +76 -0
- package/dist/env/envWriter.js.map +1 -0
- package/dist/env/keyNamer.d.ts +13 -0
- package/dist/env/keyNamer.d.ts.map +1 -0
- package/dist/env/keyNamer.js +33 -0
- package/dist/env/keyNamer.js.map +1 -0
- package/dist/interactive/confirm.d.ts +16 -0
- package/dist/interactive/confirm.d.ts.map +1 -0
- package/dist/interactive/confirm.js +72 -0
- package/dist/interactive/confirm.js.map +1 -0
- package/dist/license/gitContext.d.ts +16 -0
- package/dist/license/gitContext.d.ts.map +1 -0
- package/dist/license/gitContext.js +117 -0
- package/dist/license/gitContext.js.map +1 -0
- package/dist/license/licenseCheck.d.ts +22 -0
- package/dist/license/licenseCheck.d.ts.map +1 -0
- package/dist/license/licenseCheck.js +119 -0
- package/dist/license/licenseCheck.js.map +1 -0
- package/dist/license/telemetry.d.ts +17 -0
- package/dist/license/telemetry.d.ts.map +1 -0
- package/dist/license/telemetry.js +87 -0
- package/dist/license/telemetry.js.map +1 -0
- package/dist/reporter/console.d.ts +3 -0
- package/dist/reporter/console.d.ts.map +1 -0
- package/dist/reporter/console.js +96 -0
- package/dist/reporter/console.js.map +1 -0
- package/dist/reporter/csv.d.ts +6 -0
- package/dist/reporter/csv.d.ts.map +1 -0
- package/dist/reporter/csv.js +56 -0
- package/dist/reporter/csv.js.map +1 -0
- package/dist/reporter/index.d.ts +13 -0
- package/dist/reporter/index.d.ts.map +1 -0
- package/dist/reporter/index.js +52 -0
- package/dist/reporter/index.js.map +1 -0
- package/dist/reporter/json.d.ts +7 -0
- package/dist/reporter/json.d.ts.map +1 -0
- package/dist/reporter/json.js +39 -0
- package/dist/reporter/json.js.map +1 -0
- package/dist/reporter/markdown.d.ts +6 -0
- package/dist/reporter/markdown.d.ts.map +1 -0
- package/dist/reporter/markdown.js +106 -0
- package/dist/reporter/markdown.js.map +1 -0
- package/dist/rewriter/index.d.ts +9 -0
- package/dist/rewriter/index.d.ts.map +1 -0
- package/dist/rewriter/index.js +95 -0
- package/dist/rewriter/index.js.map +1 -0
- package/dist/rewriter/langDetector.d.ts +7 -0
- package/dist/rewriter/langDetector.d.ts.map +1 -0
- package/dist/rewriter/langDetector.js +96 -0
- package/dist/rewriter/langDetector.js.map +1 -0
- package/dist/rewriter/templates/csharp.d.ts +8 -0
- package/dist/rewriter/templates/csharp.d.ts.map +1 -0
- package/dist/rewriter/templates/csharp.js +36 -0
- package/dist/rewriter/templates/csharp.js.map +1 -0
- package/dist/rewriter/templates/generic.d.ts +7 -0
- package/dist/rewriter/templates/generic.d.ts.map +1 -0
- package/dist/rewriter/templates/generic.js +40 -0
- package/dist/rewriter/templates/generic.js.map +1 -0
- package/dist/rewriter/templates/go.d.ts +8 -0
- package/dist/rewriter/templates/go.d.ts.map +1 -0
- package/dist/rewriter/templates/go.js +56 -0
- package/dist/rewriter/templates/go.js.map +1 -0
- package/dist/rewriter/templates/java.d.ts +7 -0
- package/dist/rewriter/templates/java.d.ts.map +1 -0
- package/dist/rewriter/templates/java.js +31 -0
- package/dist/rewriter/templates/java.js.map +1 -0
- package/dist/rewriter/templates/javascript.d.ts +10 -0
- package/dist/rewriter/templates/javascript.d.ts.map +1 -0
- package/dist/rewriter/templates/javascript.js +54 -0
- package/dist/rewriter/templates/javascript.js.map +1 -0
- package/dist/rewriter/templates/php.d.ts +8 -0
- package/dist/rewriter/templates/php.d.ts.map +1 -0
- package/dist/rewriter/templates/php.js +41 -0
- package/dist/rewriter/templates/php.js.map +1 -0
- package/dist/rewriter/templates/properties.d.ts +9 -0
- package/dist/rewriter/templates/properties.d.ts.map +1 -0
- package/dist/rewriter/templates/properties.js +39 -0
- package/dist/rewriter/templates/properties.js.map +1 -0
- package/dist/rewriter/templates/python.d.ts +8 -0
- package/dist/rewriter/templates/python.d.ts.map +1 -0
- package/dist/rewriter/templates/python.js +48 -0
- package/dist/rewriter/templates/python.js.map +1 -0
- package/dist/rewriter/templates/ruby.d.ts +8 -0
- package/dist/rewriter/templates/ruby.d.ts.map +1 -0
- package/dist/rewriter/templates/ruby.js +40 -0
- package/dist/rewriter/templates/ruby.js.map +1 -0
- package/dist/rewriter/templates/rust.d.ts +7 -0
- package/dist/rewriter/templates/rust.d.ts.map +1 -0
- package/dist/rewriter/templates/rust.js +27 -0
- package/dist/rewriter/templates/rust.js.map +1 -0
- package/dist/rewriter/templates/shell.d.ts +7 -0
- package/dist/rewriter/templates/shell.d.ts.map +1 -0
- package/dist/rewriter/templates/shell.js +42 -0
- package/dist/rewriter/templates/shell.js.map +1 -0
- package/dist/rewriter/templates/toml.d.ts +9 -0
- package/dist/rewriter/templates/toml.d.ts.map +1 -0
- package/dist/rewriter/templates/toml.js +34 -0
- package/dist/rewriter/templates/toml.js.map +1 -0
- package/dist/rewriter/templates/yaml.d.ts +8 -0
- package/dist/rewriter/templates/yaml.d.ts.map +1 -0
- package/dist/rewriter/templates/yaml.js +37 -0
- package/dist/rewriter/templates/yaml.js.map +1 -0
- package/dist/scanner/detector.d.ts +18 -0
- package/dist/scanner/detector.d.ts.map +1 -0
- package/dist/scanner/detector.js +156 -0
- package/dist/scanner/detector.js.map +1 -0
- package/dist/scanner/fileWalker.d.ts +6 -0
- package/dist/scanner/fileWalker.d.ts.map +1 -0
- package/dist/scanner/fileWalker.js +146 -0
- package/dist/scanner/fileWalker.js.map +1 -0
- package/dist/scanner/index.d.ts +8 -0
- package/dist/scanner/index.d.ts.map +1 -0
- package/dist/scanner/index.js +74 -0
- package/dist/scanner/index.js.map +1 -0
- package/dist/scanner/rules/aws.d.ts +6 -0
- package/dist/scanner/rules/aws.d.ts.map +1 -0
- package/dist/scanner/rules/aws.js +90 -0
- package/dist/scanner/rules/aws.js.map +1 -0
- package/dist/scanner/rules/azure.d.ts +6 -0
- package/dist/scanner/rules/azure.d.ts.map +1 -0
- package/dist/scanner/rules/azure.js +86 -0
- package/dist/scanner/rules/azure.js.map +1 -0
- package/dist/scanner/rules/cloud.d.ts +11 -0
- package/dist/scanner/rules/cloud.d.ts.map +1 -0
- package/dist/scanner/rules/cloud.js +1066 -0
- package/dist/scanner/rules/cloud.js.map +1 -0
- package/dist/scanner/rules/database.d.ts +6 -0
- package/dist/scanner/rules/database.d.ts.map +1 -0
- package/dist/scanner/rules/database.js +283 -0
- package/dist/scanner/rules/database.js.map +1 -0
- package/dist/scanner/rules/gcp.d.ts +6 -0
- package/dist/scanner/rules/gcp.d.ts.map +1 -0
- package/dist/scanner/rules/gcp.js +108 -0
- package/dist/scanner/rules/gcp.js.map +1 -0
- package/dist/scanner/rules/generic.d.ts +13 -0
- package/dist/scanner/rules/generic.d.ts.map +1 -0
- package/dist/scanner/rules/generic.js +305 -0
- package/dist/scanner/rules/generic.js.map +1 -0
- package/dist/scanner/rules/index.d.ts +18 -0
- package/dist/scanner/rules/index.d.ts.map +1 -0
- package/dist/scanner/rules/index.js +40 -0
- package/dist/scanner/rules/index.js.map +1 -0
- package/dist/scanner/rules/jwt.d.ts +6 -0
- package/dist/scanner/rules/jwt.d.ts.map +1 -0
- package/dist/scanner/rules/jwt.js +97 -0
- package/dist/scanner/rules/jwt.js.map +1 -0
- package/dist/scanner/rules/network.d.ts +7 -0
- package/dist/scanner/rules/network.d.ts.map +1 -0
- package/dist/scanner/rules/network.js +166 -0
- package/dist/scanner/rules/network.js.map +1 -0
- package/dist/scanner/rules/privateKey.d.ts +6 -0
- package/dist/scanner/rules/privateKey.d.ts.map +1 -0
- package/dist/scanner/rules/privateKey.js +60 -0
- package/dist/scanner/rules/privateKey.js.map +1 -0
- package/dist/scanner/rules/ssh.d.ts +6 -0
- package/dist/scanner/rules/ssh.d.ts.map +1 -0
- package/dist/scanner/rules/ssh.js +49 -0
- package/dist/scanner/rules/ssh.js.map +1 -0
- package/dist/types.d.ts +78 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +3 -0
- package/dist/types.js.map +1 -0
- package/package.json +54 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"azure.d.ts","sourceRoot":"","sources":["../../../src/scanner/rules/azure.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAEnC;;GAEG;AACH,eAAO,MAAM,UAAU,EAAE,IAAI,EAgF5B,CAAC"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.azureRules = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Microsoft Azure credential patterns.
|
|
6
|
+
*/
|
|
7
|
+
exports.azureRules = [
|
|
8
|
+
{
|
|
9
|
+
id: 'azure-storage-connection-string',
|
|
10
|
+
description: 'Azure Storage Connection String',
|
|
11
|
+
pattern: /(DefaultEndpointsProtocol=https?;AccountName=[^;]+;AccountKey=[A-Za-z0-9+/=]{88};[^\s'"]*)/,
|
|
12
|
+
valueGroup: 1,
|
|
13
|
+
envKeyPrefix: 'AZURE_STORAGE_CONNECTION_STRING',
|
|
14
|
+
severity: 'critical',
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
id: 'azure-storage-account-key',
|
|
18
|
+
description: 'Azure Storage Account Key',
|
|
19
|
+
pattern: /(?:azure[_-]?storage[_-]?(?:account[_-]?)?key|AccountKey|AZURE_STORAGE_KEY)\s*[:=,]\s*['"\`]([A-Za-z0-9+/\s=]{40,})['"\`]/i,
|
|
20
|
+
valueGroup: 1,
|
|
21
|
+
envKeyPrefix: 'AZURE_STORAGE_ACCOUNT_KEY',
|
|
22
|
+
severity: 'critical',
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
id: 'azure-sas-token',
|
|
26
|
+
description: 'Azure Shared Access Signature (SAS) Token',
|
|
27
|
+
pattern: /(?:sas[_-]?token|azure[_-]?sas)\s*[:=]\s*['"\`](sv=\d{4}-\d{2}-\d{2}&[^'"\`\s]+)['"\`]/i,
|
|
28
|
+
valueGroup: 1,
|
|
29
|
+
envKeyPrefix: 'AZURE_SAS_TOKEN',
|
|
30
|
+
severity: 'critical',
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
id: 'azure-client-secret',
|
|
34
|
+
description: 'Azure AD Application Client Secret',
|
|
35
|
+
// Also handles define('AZURE_CLIENT_SECRET', '...') PHP form
|
|
36
|
+
pattern: /(?:define\s*\(\s*['"\`]AZURE_CLIENT_SECRET['"\`]\s*,\s*|(?:azure[_-]?client[_-]?secret|AZURE_CLIENT_SECRET)\s*[:=]\s*)['"\`]([A-Za-z0-9~.\-_]{8,})['"\`]/i,
|
|
37
|
+
valueGroup: 1,
|
|
38
|
+
envKeyPrefix: 'AZURE_CLIENT_SECRET',
|
|
39
|
+
severity: 'critical',
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
id: 'azure-client-id',
|
|
43
|
+
description: 'Azure AD Application Client ID (UUID)',
|
|
44
|
+
// Also handles define('AZURE_CLIENT_ID', 'uuid') PHP form
|
|
45
|
+
pattern: /(?:define\s*\(\s*['"\`]AZURE_CLIENT_ID['"\`]\s*,\s*|(?:azure[_-]?client[_-]?id|AZURE_CLIENT_ID)\s*[:=]\s*)['"\`]([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})['"\`]/i,
|
|
46
|
+
valueGroup: 1,
|
|
47
|
+
envKeyPrefix: 'AZURE_CLIENT_ID',
|
|
48
|
+
severity: 'high',
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
id: 'azure-tenant-id',
|
|
52
|
+
description: 'Azure Tenant ID (UUID)',
|
|
53
|
+
// Also handles define('AZURE_TENANT_ID', 'uuid') PHP form
|
|
54
|
+
pattern: /(?:define\s*\(\s*['"\`]AZURE_TENANT_ID['"\`]\s*,\s*|(?:azure[_-]?tenant[_-]?id|AZURE_TENANT_ID)\s*[:=]\s*)['"\`]([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})['"\`]/i,
|
|
55
|
+
valueGroup: 1,
|
|
56
|
+
envKeyPrefix: 'AZURE_TENANT_ID',
|
|
57
|
+
severity: 'high',
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
id: 'azure-servicebus-connection-string',
|
|
61
|
+
description: 'Azure Service Bus Connection String',
|
|
62
|
+
pattern: /(Endpoint=sb:\/\/[^;]+;SharedAccessKeyName=[^;]+;SharedAccessKey=[^'"\`\s]+)/i,
|
|
63
|
+
valueGroup: 1,
|
|
64
|
+
envKeyPrefix: 'AZURE_SERVICEBUS_CONNECTION_STRING',
|
|
65
|
+
severity: 'critical',
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
id: 'azure-cosmos-key',
|
|
69
|
+
description: 'Azure CosmosDB Account Key',
|
|
70
|
+
pattern: /(?:cosmos[_-]?(?:db[_-]?)?key|azure[_-]?cosmos[_-]?key)\s*[:=]\s*['"\`]([A-Za-z0-9+/=]{88})['"\`]/i,
|
|
71
|
+
valueGroup: 1,
|
|
72
|
+
envKeyPrefix: 'AZURE_COSMOS_KEY',
|
|
73
|
+
severity: 'critical',
|
|
74
|
+
},
|
|
75
|
+
// ── Azure DevOps ─────────────────────────────────────────────────────────────
|
|
76
|
+
{
|
|
77
|
+
id: 'azure-devops-pat',
|
|
78
|
+
description: 'Azure DevOps Personal Access Token (base64-encoded, 52 chars)',
|
|
79
|
+
// Azure DevOps PATs are base64-encoded strings typically 52 characters long
|
|
80
|
+
pattern: /(?:azure[_-]?devops[_-]?(?:pat|token)|AZURE_DEVOPS_PAT|AZURE_DEVOPS_TOKEN|ADO_PAT)\s*[:=]\s*['"`]([A-Za-z0-9+/]{52}={0,2})['"`]/i,
|
|
81
|
+
valueGroup: 1,
|
|
82
|
+
envKeyPrefix: 'AZURE_DEVOPS_PAT',
|
|
83
|
+
severity: 'critical',
|
|
84
|
+
},
|
|
85
|
+
];
|
|
86
|
+
//# sourceMappingURL=azure.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"azure.js","sourceRoot":"","sources":["../../../src/scanner/rules/azure.ts"],"names":[],"mappings":";;;AAEA;;GAEG;AACU,QAAA,UAAU,GAAW;IAChC;QACE,EAAE,EAAE,iCAAiC;QACrC,WAAW,EAAE,iCAAiC;QAC9C,OAAO,EAAE,4FAA4F;QACrG,UAAU,EAAE,CAAC;QACb,YAAY,EAAE,iCAAiC;QAC/C,QAAQ,EAAE,UAAU;KACrB;IACD;QACE,EAAE,EAAE,2BAA2B;QAC/B,WAAW,EAAE,2BAA2B;QACxC,OAAO,EAAE,4HAA4H;QACrI,UAAU,EAAE,CAAC;QACb,YAAY,EAAE,2BAA2B;QACzC,QAAQ,EAAE,UAAU;KACrB;IACD;QACE,EAAE,EAAE,iBAAiB;QACrB,WAAW,EAAE,2CAA2C;QACxD,OAAO,EAAE,yFAAyF;QAClG,UAAU,EAAE,CAAC;QACb,YAAY,EAAE,iBAAiB;QAC/B,QAAQ,EAAE,UAAU;KACrB;IACD;QACE,EAAE,EAAE,qBAAqB;QACzB,WAAW,EAAE,oCAAoC;QACjD,6DAA6D;QAC7D,OAAO,EAAE,2JAA2J;QACpK,UAAU,EAAE,CAAC;QACb,YAAY,EAAE,qBAAqB;QACnC,QAAQ,EAAE,UAAU;KACrB;IACD;QACE,EAAE,EAAE,iBAAiB;QACrB,WAAW,EAAE,uCAAuC;QACpD,0DAA0D;QAC1D,OAAO,EAAE,uLAAuL;QAChM,UAAU,EAAE,CAAC;QACb,YAAY,EAAE,iBAAiB;QAC/B,QAAQ,EAAE,MAAM;KACjB;IACD;QACE,EAAE,EAAE,iBAAiB;QACrB,WAAW,EAAE,wBAAwB;QACrC,0DAA0D;QAC1D,OAAO,EAAE,uLAAuL;QAChM,UAAU,EAAE,CAAC;QACb,YAAY,EAAE,iBAAiB;QAC/B,QAAQ,EAAE,MAAM;KACjB;IACD;QACE,EAAE,EAAE,oCAAoC;QACxC,WAAW,EAAE,qCAAqC;QAClD,OAAO,EAAE,+EAA+E;QACxF,UAAU,EAAE,CAAC;QACb,YAAY,EAAE,oCAAoC;QAClD,QAAQ,EAAE,UAAU;KACrB;IACD;QACE,EAAE,EAAE,kBAAkB;QACtB,WAAW,EAAE,4BAA4B;QACzC,OAAO,EAAE,oGAAoG;QAC7G,UAAU,EAAE,CAAC;QACb,YAAY,EAAE,kBAAkB;QAChC,QAAQ,EAAE,UAAU;KACrB;IAED,gFAAgF;IAChF;QACE,EAAE,EAAE,kBAAkB;QACtB,WAAW,EAAE,+DAA+D;QAC5E,4EAA4E;QAC5E,OAAO,EAAE,kIAAkI;QAC3I,UAAU,EAAE,CAAC;QACb,YAAY,EAAE,kBAAkB;QAChC,QAAQ,EAAE,UAAU;KACrB;CAEF,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Rule } from '../../types';
|
|
2
|
+
/**
|
|
3
|
+
* Third-party cloud / SaaS service credential patterns.
|
|
4
|
+
* Covers: GitHub, Stripe, Twilio, SendGrid, Slack, Heroku,
|
|
5
|
+
* Mailgun, Cloudflare, Datadog, NPM, Docker Hub,
|
|
6
|
+
* OpenAI, Anthropic, Telegram, Discord, Supabase,
|
|
7
|
+
* Vercel, DigitalOcean, Algolia, Mapbox, Pinecone,
|
|
8
|
+
* Vault, Airtable, HubSpot, Square, Razorpay, Plaid, etc.
|
|
9
|
+
*/
|
|
10
|
+
export declare const cloudRules: Rule[];
|
|
11
|
+
//# sourceMappingURL=cloud.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cloud.d.ts","sourceRoot":"","sources":["../../../src/scanner/rules/cloud.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAEnC;;;;;;;GAOG;AACH,eAAO,MAAM,UAAU,EAAE,IAAI,EAgjC5B,CAAC"}
|