@link-foundation/sensitive-data-sanitizer 0.0.0-stage → 0.11.31

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 (78) hide show
  1. package/CHANGELOG.md +530 -0
  2. package/LICENSE +24 -0
  3. package/README.md +184 -2
  4. package/bin/legacy-example-package-name.js +95 -0
  5. package/bin/sensitive-data-sanitizer.js +430 -0
  6. package/bin/stream.js +56 -0
  7. package/docs/API.md +336 -0
  8. package/docs/COVERAGE.md +136 -0
  9. package/docs/HISTORY-REMEDIATION.md +41 -0
  10. package/examples/combined-scanners.mjs +23 -0
  11. package/examples/presidio-bridge.py +32 -0
  12. package/examples/realistic-fakes.mjs +18 -0
  13. package/examples/sanitize-session.mjs +27 -0
  14. package/examples/shared-tool-logs.mjs +21 -0
  15. package/examples/stream-jsonl.mjs +17 -0
  16. package/package.json +124 -4
  17. package/src/adapters.js +204 -0
  18. package/src/arithmetic.js +11 -0
  19. package/src/confidence.js +65 -0
  20. package/src/context.js +424 -0
  21. package/src/credentials.js +54 -0
  22. package/src/detection.js +293 -0
  23. package/src/encoded.js +233 -0
  24. package/src/engines.js +348 -0
  25. package/src/entities.js +166 -0
  26. package/src/escape-spans.js +20 -0
  27. package/src/eslint-plugin.d.ts +10 -0
  28. package/src/eslint-plugin.js +193 -0
  29. package/src/external.js +169 -0
  30. package/src/fake-names.js +222 -0
  31. package/src/fake.js +524 -0
  32. package/src/files.js +131 -0
  33. package/src/gitleaks.js +194 -0
  34. package/src/history-rewrite.js +339 -0
  35. package/src/history.js +103 -0
  36. package/src/identity.js +274 -0
  37. package/src/index.d.ts +321 -0
  38. package/src/index.js +40 -0
  39. package/src/jsonl-stream.js +198 -0
  40. package/src/keywords.js +45 -0
  41. package/src/known.js +164 -0
  42. package/src/legacy.d.ts +3 -0
  43. package/src/legacy.js +2 -0
  44. package/src/locales.js +217 -0
  45. package/src/log-bytes.js +85 -0
  46. package/src/names.js +65 -0
  47. package/src/national-checks.js +129 -0
  48. package/src/national.js +128 -0
  49. package/src/outbound.js +28 -0
  50. package/src/personal-context.js +85 -0
  51. package/src/personal.js +248 -0
  52. package/src/projection.js +126 -0
  53. package/src/propagation.js +163 -0
  54. package/src/public-verifier.js +77 -0
  55. package/src/public.js +153 -0
  56. package/src/record-worker.js +20 -0
  57. package/src/rules.js +210 -0
  58. package/src/sanitizer.js +794 -0
  59. package/src/specimens.js +34 -0
  60. package/src/stream-identity.js +129 -0
  61. package/src/stream-worker.js +18 -0
  62. package/src/stream.js +449 -0
  63. package/src/structured.js +278 -0
  64. package/src/transforms.js +192 -0
  65. package/src/transliteration.js +75 -0
  66. package/src/utf8.js +60 -0
  67. package/src/vendor/entities/aws.json +42 -0
  68. package/src/vendor/entities/azure.json +182 -0
  69. package/src/vendor/entities/google.json +219 -0
  70. package/src/vendor/gitleaks/LICENSE +21 -0
  71. package/src/vendor/gitleaks/provenance.json +8 -0
  72. package/src/vendor/gitleaks/rules-0.json +268 -0
  73. package/src/vendor/gitleaks/rules-1.json +1794 -0
  74. package/src/vendor/gitleaks/rules-2.json +292 -0
  75. package/src/vendor/gitleaks/rules-3.json +263 -0
  76. package/src/vendor/gitleaks/rules-4.json +277 -0
  77. package/src/vendor/gitleaks/rules-5.json +154 -0
  78. package/src/worker-options.js +27 -0
@@ -0,0 +1,277 @@
1
+ [
2
+ {
3
+ "id": "planetscale-oauth-token",
4
+ "description": "Found a PlanetScale OAuth token, posing a risk to database access control and sensitive data integrity.",
5
+ "regex": "\\b(pscale_oauth_[\\w=\\.-]{32,64})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
6
+ "entropy": 3,
7
+ "keywords": ["pscale_oauth_"]
8
+ },
9
+ {
10
+ "id": "planetscale-password",
11
+ "description": "Discovered a PlanetScale password, which could lead to unauthorized database operations and data breaches.",
12
+ "regex": "(?i)\\b(pscale_pw_(?i)[\\w=\\.-]{32,64})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
13
+ "entropy": 3,
14
+ "keywords": ["pscale_pw_"]
15
+ },
16
+ {
17
+ "id": "postman-api-token",
18
+ "description": "Uncovered a Postman API token, potentially compromising API testing and development workflows.",
19
+ "regex": "\\b(PMAK-(?i)[a-f0-9]{24}\\-[a-f0-9]{34})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
20
+ "entropy": 3,
21
+ "keywords": ["pmak-"]
22
+ },
23
+ {
24
+ "id": "prefect-api-token",
25
+ "description": "Detected a Prefect API token, risking unauthorized access to workflow management and automation services.",
26
+ "regex": "\\b(pnu_[a-zA-Z0-9]{36})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
27
+ "entropy": 2,
28
+ "keywords": ["pnu_"]
29
+ },
30
+ {
31
+ "id": "private-key",
32
+ "description": "Identified a Private Key, which may compromise cryptographic security and sensitive data encryption.",
33
+ "regex": "(?i)-----BEGIN[ A-Z0-9_-]{0,100}PRIVATE KEY(?: BLOCK)?-----[\\s\\S-]{64,}?KEY(?: BLOCK)?-----",
34
+ "keywords": ["-----begin"]
35
+ },
36
+ {
37
+ "id": "privateai-api-token",
38
+ "description": "Identified a PrivateAI Token, posing a risk of unauthorized access to AI services and data manipulation.",
39
+ "regex": "[\\w.-]{0,50}?(?i:[\\w.-]{0,50}?(?:private[_-]?ai)(?:[ \\t\\w.-]{0,20})[\\s'\"]{0,3})(?:=|>|:{1,3}=|\\|\\||:|=>|\\?=|,)[\\x60'\"\\s=]{0,5}([a-z0-9]{32})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
40
+ "entropy": 3,
41
+ "keywords": ["privateai", "private_ai", "private-ai"]
42
+ },
43
+ {
44
+ "id": "pulumi-api-token",
45
+ "description": "Found a Pulumi API token, posing a risk to infrastructure as code services and cloud resource management.",
46
+ "regex": "\\b(pul-[a-f0-9]{40})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
47
+ "entropy": 2,
48
+ "keywords": ["pul-"]
49
+ },
50
+ {
51
+ "id": "pypi-upload-token",
52
+ "description": "Discovered a PyPI upload token, potentially compromising Python package distribution and repository integrity.",
53
+ "regex": "pypi-AgEIcHlwaS5vcmc[\\w-]{50,1000}",
54
+ "entropy": 3,
55
+ "keywords": ["pypi-ageichlwas5vcmc"]
56
+ },
57
+ {
58
+ "id": "rapidapi-access-token",
59
+ "description": "Uncovered a RapidAPI Access Token, which could lead to unauthorized access to various APIs and data services.",
60
+ "regex": "(?i)[\\w.-]{0,50}?(?:rapidapi)(?:[ \\t\\w.-]{0,20})[\\s'\"]{0,3}(?:=|>|:{1,3}=|\\|\\||:|=>|\\?=|,)[\\x60'\"\\s=]{0,5}([a-z0-9_-]{50})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
61
+ "keywords": ["rapidapi"]
62
+ },
63
+ {
64
+ "id": "readme-api-token",
65
+ "description": "Detected a Readme API token, risking unauthorized documentation management and content exposure.",
66
+ "regex": "\\b(rdme_[a-z0-9]{70})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
67
+ "entropy": 2,
68
+ "keywords": ["rdme_"]
69
+ },
70
+ {
71
+ "id": "rubygems-api-token",
72
+ "description": "Identified a Rubygem API token, potentially compromising Ruby library distribution and package management.",
73
+ "regex": "\\b(rubygems_[a-f0-9]{48})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
74
+ "entropy": 2,
75
+ "keywords": ["rubygems_"]
76
+ },
77
+ {
78
+ "id": "scalingo-api-token",
79
+ "description": "Found a Scalingo API token, posing a risk to cloud platform services and application deployment security.",
80
+ "regex": "\\b(tk-us-[\\w-]{48})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
81
+ "entropy": 2,
82
+ "keywords": ["tk-us-"]
83
+ },
84
+ {
85
+ "id": "sendbird-access-id",
86
+ "description": "Discovered a Sendbird Access ID, which could compromise chat and messaging platform integrations.",
87
+ "regex": "(?i)[\\w.-]{0,50}?(?:sendbird)(?:[ \\t\\w.-]{0,20})[\\s'\"]{0,3}(?:=|>|:{1,3}=|\\|\\||:|=>|\\?=|,)[\\x60'\"\\s=]{0,5}([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
88
+ "keywords": ["sendbird"]
89
+ },
90
+ {
91
+ "id": "sendbird-access-token",
92
+ "description": "Uncovered a Sendbird Access Token, potentially risking unauthorized access to communication services and user data.",
93
+ "regex": "(?i)[\\w.-]{0,50}?(?:sendbird)(?:[ \\t\\w.-]{0,20})[\\s'\"]{0,3}(?:=|>|:{1,3}=|\\|\\||:|=>|\\?=|,)[\\x60'\"\\s=]{0,5}([a-f0-9]{40})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
94
+ "keywords": ["sendbird"]
95
+ },
96
+ {
97
+ "id": "sendgrid-api-token",
98
+ "description": "Detected a SendGrid API token, posing a risk of unauthorized email service operations and data exposure.",
99
+ "regex": "\\b(SG\\.(?i)[a-z0-9=_\\-\\.]{66})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
100
+ "entropy": 2,
101
+ "keywords": ["sg."]
102
+ },
103
+ {
104
+ "id": "sendinblue-api-token",
105
+ "description": "Identified a Sendinblue API token, which may compromise email marketing services and subscriber data privacy.",
106
+ "regex": "\\b(xkeysib-[a-f0-9]{64}\\-(?i)[a-z0-9]{16})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
107
+ "entropy": 2,
108
+ "keywords": ["xkeysib-"]
109
+ },
110
+ {
111
+ "id": "sentry-access-token",
112
+ "description": "Found a Sentry.io Access Token (old format), risking unauthorized access to error tracking services and sensitive application data.",
113
+ "regex": "(?i)[\\w.-]{0,50}?(?:sentry)(?:[ \\t\\w.-]{0,20})[\\s'\"]{0,3}(?:=|>|:{1,3}=|\\|\\||:|=>|\\?=|,)[\\x60'\"\\s=]{0,5}([a-f0-9]{64})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
114
+ "entropy": 3,
115
+ "keywords": ["sentry"]
116
+ },
117
+ {
118
+ "id": "sentry-org-token",
119
+ "description": "Found a Sentry.io Organization Token, risking unauthorized access to error tracking services and sensitive application data.",
120
+ "regex": "\\bsntrys_eyJpYXQiO[a-zA-Z0-9+/]{10,200}(?:LCJyZWdpb25fdXJs|InJlZ2lvbl91cmwi|cmVnaW9uX3VybCI6)[a-zA-Z0-9+/]{10,200}={0,2}_[a-zA-Z0-9+/]{43}(?:[^a-zA-Z0-9+/]|\\z)",
121
+ "entropy": 4.5,
122
+ "keywords": ["sntrys_eyjpyxqio"]
123
+ },
124
+ {
125
+ "id": "sentry-user-token",
126
+ "description": "Found a Sentry.io User Token, risking unauthorized access to error tracking services and sensitive application data.",
127
+ "regex": "\\b(sntryu_[a-f0-9]{64})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
128
+ "entropy": 3.5,
129
+ "keywords": ["sntryu_"]
130
+ },
131
+ {
132
+ "id": "settlemint-application-access-token",
133
+ "description": "Found a Settlemint Application Access Token.",
134
+ "regex": "\\b(sm_aat_[a-zA-Z0-9]{16})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
135
+ "entropy": 3,
136
+ "keywords": ["sm_aat"]
137
+ },
138
+ {
139
+ "id": "settlemint-personal-access-token",
140
+ "description": "Found a Settlemint Personal Access Token.",
141
+ "regex": "\\b(sm_pat_[a-zA-Z0-9]{16})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
142
+ "entropy": 3,
143
+ "keywords": ["sm_pat"]
144
+ },
145
+ {
146
+ "id": "settlemint-service-access-token",
147
+ "description": "Found a Settlemint Service Access Token.",
148
+ "regex": "\\b(sm_sat_[a-zA-Z0-9]{16})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
149
+ "entropy": 3,
150
+ "keywords": ["sm_sat"]
151
+ },
152
+ {
153
+ "id": "shippo-api-token",
154
+ "description": "Discovered a Shippo API token, potentially compromising shipping services and customer order data.",
155
+ "regex": "\\b(shippo_(?:live|test)_[a-fA-F0-9]{40})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
156
+ "entropy": 2,
157
+ "keywords": ["shippo_"]
158
+ },
159
+ {
160
+ "id": "shopify-access-token",
161
+ "description": "Uncovered a Shopify access token, which could lead to unauthorized e-commerce platform access and data breaches.",
162
+ "regex": "shpat_[a-fA-F0-9]{32}",
163
+ "entropy": 2,
164
+ "keywords": ["shpat_"]
165
+ },
166
+ {
167
+ "id": "shopify-custom-access-token",
168
+ "description": "Detected a Shopify custom access token, potentially compromising custom app integrations and e-commerce data security.",
169
+ "regex": "shpca_[a-fA-F0-9]{32}",
170
+ "entropy": 2,
171
+ "keywords": ["shpca_"]
172
+ },
173
+ {
174
+ "id": "shopify-private-app-access-token",
175
+ "description": "Identified a Shopify private app access token, risking unauthorized access to private app data and store operations.",
176
+ "regex": "shppa_[a-fA-F0-9]{32}",
177
+ "entropy": 2,
178
+ "keywords": ["shppa_"]
179
+ },
180
+ {
181
+ "id": "shopify-shared-secret",
182
+ "description": "Found a Shopify shared secret, posing a risk to application authentication and e-commerce platform security.",
183
+ "regex": "shpss_[a-fA-F0-9]{32}",
184
+ "entropy": 2,
185
+ "keywords": ["shpss_"]
186
+ },
187
+ {
188
+ "id": "sidekiq-secret",
189
+ "description": "Discovered a Sidekiq Secret, which could lead to compromised background job processing and application data breaches.",
190
+ "regex": "(?i)[\\w.-]{0,50}?(?:BUNDLE_ENTERPRISE__CONTRIBSYS__COM|BUNDLE_GEMS__CONTRIBSYS__COM)(?:[ \\t\\w.-]{0,20})[\\s'\"]{0,3}(?:=|>|:{1,3}=|\\|\\||:|=>|\\?=|,)[\\x60'\"\\s=]{0,5}([a-f0-9]{8}:[a-f0-9]{8})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
191
+ "keywords": [
192
+ "bundle_enterprise__contribsys__com",
193
+ "bundle_gems__contribsys__com"
194
+ ]
195
+ },
196
+ {
197
+ "id": "sidekiq-sensitive-url",
198
+ "description": "Uncovered a Sidekiq Sensitive URL, potentially exposing internal job queues and sensitive operation details.",
199
+ "regex": "(?i)\\bhttps?://([a-f0-9]{8}:[a-f0-9]{8})@(?:gems.contribsys.com|enterprise.contribsys.com)(?:[\\/|\\#|\\?|:]|$)",
200
+ "keywords": ["gems.contribsys.com", "enterprise.contribsys.com"]
201
+ },
202
+ {
203
+ "id": "slack-app-token",
204
+ "description": "Detected a Slack App-level token, risking unauthorized access to Slack applications and workspace data.",
205
+ "regex": "(?i)xapp-\\d-[A-Z0-9]+-\\d+-[a-z0-9]+",
206
+ "entropy": 2,
207
+ "keywords": ["xapp"]
208
+ },
209
+ {
210
+ "id": "slack-bot-token",
211
+ "description": "Identified a Slack Bot token, which may compromise bot integrations and communication channel security.",
212
+ "regex": "xoxb-[0-9]{10,13}-[0-9]{10,13}[a-zA-Z0-9-]*",
213
+ "entropy": 3,
214
+ "keywords": ["xoxb"]
215
+ },
216
+ {
217
+ "id": "slack-config-access-token",
218
+ "description": "Found a Slack Configuration access token, posing a risk to workspace configuration and sensitive data access.",
219
+ "regex": "(?i)xoxe.xox[bp]-\\d-[A-Z0-9]{163,166}",
220
+ "entropy": 2,
221
+ "keywords": ["xoxe.xoxb-", "xoxe.xoxp-"]
222
+ },
223
+ {
224
+ "id": "slack-config-refresh-token",
225
+ "description": "Discovered a Slack Configuration refresh token, potentially allowing prolonged unauthorized access to configuration settings.",
226
+ "regex": "(?i)xoxe-\\d-[A-Z0-9]{146}",
227
+ "entropy": 2,
228
+ "keywords": ["xoxe-"]
229
+ },
230
+ {
231
+ "id": "slack-legacy-bot-token",
232
+ "description": "Uncovered a Slack Legacy bot token, which could lead to compromised legacy bot operations and data exposure.",
233
+ "regex": "xoxb-[0-9]{8,14}-[a-zA-Z0-9]{18,26}",
234
+ "entropy": 2,
235
+ "keywords": ["xoxb"]
236
+ },
237
+ {
238
+ "id": "slack-legacy-token",
239
+ "description": "Detected a Slack Legacy token, risking unauthorized access to older Slack integrations and user data.",
240
+ "regex": "xox[os]-\\d+-\\d+-\\d+-[a-fA-F\\d]+",
241
+ "entropy": 2,
242
+ "keywords": ["xoxo", "xoxs"]
243
+ },
244
+ {
245
+ "id": "slack-legacy-workspace-token",
246
+ "description": "Identified a Slack Legacy Workspace token, potentially compromising access to workspace data and legacy features.",
247
+ "regex": "xox[ar]-(?:\\d-)?[0-9a-zA-Z]{8,48}",
248
+ "entropy": 2,
249
+ "keywords": ["xoxa", "xoxr"]
250
+ },
251
+ {
252
+ "id": "slack-user-token",
253
+ "description": "Found a Slack User token, posing a risk of unauthorized user impersonation and data access within Slack workspaces.",
254
+ "regex": "xox[pe](?:-[0-9]{10,13}){3}-[a-zA-Z0-9-]{28,34}",
255
+ "entropy": 2,
256
+ "keywords": ["xoxp-", "xoxe-"]
257
+ },
258
+ {
259
+ "id": "slack-webhook-url",
260
+ "description": "Discovered a Slack Webhook, which could lead to unauthorized message posting and data leakage in Slack channels.",
261
+ "regex": "(?:https?://)?hooks.slack.com/(?:services|workflows|triggers)/[A-Za-z0-9+/]{43,56}",
262
+ "keywords": ["hooks.slack.com"]
263
+ },
264
+ {
265
+ "id": "snyk-api-token",
266
+ "description": "Uncovered a Snyk API token, potentially compromising software vulnerability scanning and code security.",
267
+ "regex": "(?i)[\\w.-]{0,50}?(?:snyk[_.-]?(?:(?:api|oauth)[_.-]?)?(?:key|token))(?:[ \\t\\w.-]{0,20})[\\s'\"]{0,3}(?:=|>|:{1,3}=|\\|\\||:|=>|\\?=|,)[\\x60'\"\\s=]{0,5}([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
268
+ "keywords": ["snyk"]
269
+ },
270
+ {
271
+ "id": "sonar-api-token",
272
+ "description": "Uncovered a Sonar API token, potentially compromising software vulnerability scanning and code security.",
273
+ "regex": "(?i)[\\w.-]{0,50}?(?:sonar[_.-]?(login|token))(?:[ \\t\\w.-]{0,20})[\\s'\"]{0,3}(?:=|>|:{1,3}=|\\|\\||:|=>|\\?=|,)[\\x60'\"\\s=]{0,5}((?:squ_|sqp_|sqa_)?[a-z0-9=_\\-]{40})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
274
+ "secretGroup": 2,
275
+ "keywords": ["sonar"]
276
+ }
277
+ ]
@@ -0,0 +1,154 @@
1
+ [
2
+ {
3
+ "id": "sourcegraph-access-token",
4
+ "description": "Sourcegraph is a code search and navigation engine.",
5
+ "regex": "(?i)\\b(\\b(sgp_(?:[a-fA-F0-9]{16}|local)_[a-fA-F0-9]{40}|sgp_[a-fA-F0-9]{40}|[a-fA-F0-9]{40})\\b)(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
6
+ "entropy": 3,
7
+ "keywords": ["sgp_", "sourcegraph"]
8
+ },
9
+ {
10
+ "id": "square-access-token",
11
+ "description": "Detected a Square Access Token, risking unauthorized payment processing and financial transaction exposure.",
12
+ "regex": "\\b((?:EAAA|sq0atp-)[\\w-]{22,60})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
13
+ "entropy": 2,
14
+ "keywords": ["sq0atp-", "eaaa"]
15
+ },
16
+ {
17
+ "id": "squarespace-access-token",
18
+ "description": "Identified a Squarespace Access Token, which may compromise website management and content control on Squarespace.",
19
+ "regex": "(?i)[\\w.-]{0,50}?(?:squarespace)(?:[ \\t\\w.-]{0,20})[\\s'\"]{0,3}(?:=|>|:{1,3}=|\\|\\||:|=>|\\?=|,)[\\x60'\"\\s=]{0,5}([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
20
+ "keywords": ["squarespace"]
21
+ },
22
+ {
23
+ "id": "stripe-access-token",
24
+ "description": "Found a Stripe Access Token, posing a risk to payment processing services and sensitive financial data.",
25
+ "regex": "\\b((?:sk|rk)_(?:test|live|prod)_[a-zA-Z0-9]{10,99})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
26
+ "entropy": 2,
27
+ "keywords": [
28
+ "sk_test",
29
+ "sk_live",
30
+ "sk_prod",
31
+ "rk_test",
32
+ "rk_live",
33
+ "rk_prod"
34
+ ]
35
+ },
36
+ {
37
+ "id": "sumologic-access-id",
38
+ "description": "Discovered a SumoLogic Access ID, potentially compromising log management services and data analytics integrity.",
39
+ "regex": "[\\w.-]{0,50}?(?i:[\\w.-]{0,50}?(?:(?-i:[Ss]umo|SUMO))(?:[ \\t\\w.-]{0,20})[\\s'\"]{0,3})(?:=|>|:{1,3}=|\\|\\||:|=>|\\?=|,)[\\x60'\"\\s=]{0,5}(su[a-zA-Z0-9]{12})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
40
+ "entropy": 3,
41
+ "keywords": ["sumo"]
42
+ },
43
+ {
44
+ "id": "sumologic-access-token",
45
+ "description": "Uncovered a SumoLogic Access Token, which could lead to unauthorized access to log data and analytics insights.",
46
+ "regex": "(?i)[\\w.-]{0,50}?(?:(?-i:[Ss]umo|SUMO))(?:[ \\t\\w.-]{0,20})[\\s'\"]{0,3}(?:=|>|:{1,3}=|\\|\\||:|=>|\\?=|,)[\\x60'\"\\s=]{0,5}([a-z0-9]{64})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
47
+ "entropy": 3,
48
+ "keywords": ["sumo"]
49
+ },
50
+ {
51
+ "id": "telegram-bot-api-token",
52
+ "description": "Detected a Telegram Bot API Token, risking unauthorized bot operations and message interception on Telegram.",
53
+ "regex": "(?i)[\\w.-]{0,50}?(?:telegr)(?:[ \\t\\w.-]{0,20})[\\s'\"]{0,3}(?:=|>|:{1,3}=|\\|\\||:|=>|\\?=|,)[\\x60'\"\\s=]{0,5}([0-9]{5,16}:(?-i:A)[a-z0-9_\\-]{34})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
54
+ "keywords": ["telegr"]
55
+ },
56
+ {
57
+ "id": "travisci-access-token",
58
+ "description": "Identified a Travis CI Access Token, potentially compromising continuous integration services and codebase security.",
59
+ "regex": "(?i)[\\w.-]{0,50}?(?:travis)(?:[ \\t\\w.-]{0,20})[\\s'\"]{0,3}(?:=|>|:{1,3}=|\\|\\||:|=>|\\?=|,)[\\x60'\"\\s=]{0,5}([a-z0-9]{22})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
60
+ "keywords": ["travis"]
61
+ },
62
+ {
63
+ "id": "twilio-api-key",
64
+ "description": "Found a Twilio API Key, posing a risk to communication services and sensitive customer interaction data.",
65
+ "regex": "SK[0-9a-fA-F]{32}",
66
+ "entropy": 3,
67
+ "keywords": ["sk"]
68
+ },
69
+ {
70
+ "id": "twitch-api-token",
71
+ "description": "Discovered a Twitch API token, which could compromise streaming services and account integrations.",
72
+ "regex": "(?i)[\\w.-]{0,50}?(?:twitch)(?:[ \\t\\w.-]{0,20})[\\s'\"]{0,3}(?:=|>|:{1,3}=|\\|\\||:|=>|\\?=|,)[\\x60'\"\\s=]{0,5}([a-z0-9]{30})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
73
+ "keywords": ["twitch"]
74
+ },
75
+ {
76
+ "id": "twitter-access-secret",
77
+ "description": "Uncovered a Twitter Access Secret, potentially risking unauthorized Twitter integrations and data breaches.",
78
+ "regex": "(?i)[\\w.-]{0,50}?(?:twitter)(?:[ \\t\\w.-]{0,20})[\\s'\"]{0,3}(?:=|>|:{1,3}=|\\|\\||:|=>|\\?=|,)[\\x60'\"\\s=]{0,5}([a-z0-9]{45})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
79
+ "keywords": ["twitter"]
80
+ },
81
+ {
82
+ "id": "twitter-access-token",
83
+ "description": "Detected a Twitter Access Token, posing a risk of unauthorized account operations and social media data exposure.",
84
+ "regex": "(?i)[\\w.-]{0,50}?(?:twitter)(?:[ \\t\\w.-]{0,20})[\\s'\"]{0,3}(?:=|>|:{1,3}=|\\|\\||:|=>|\\?=|,)[\\x60'\"\\s=]{0,5}([0-9]{15,25}-[a-zA-Z0-9]{20,40})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
85
+ "keywords": ["twitter"]
86
+ },
87
+ {
88
+ "id": "twitter-api-key",
89
+ "description": "Identified a Twitter API Key, which may compromise Twitter application integrations and user data security.",
90
+ "regex": "(?i)[\\w.-]{0,50}?(?:twitter)(?:[ \\t\\w.-]{0,20})[\\s'\"]{0,3}(?:=|>|:{1,3}=|\\|\\||:|=>|\\?=|,)[\\x60'\"\\s=]{0,5}([a-z0-9]{25})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
91
+ "keywords": ["twitter"]
92
+ },
93
+ {
94
+ "id": "twitter-api-secret",
95
+ "description": "Found a Twitter API Secret, risking the security of Twitter app integrations and sensitive data access.",
96
+ "regex": "(?i)[\\w.-]{0,50}?(?:twitter)(?:[ \\t\\w.-]{0,20})[\\s'\"]{0,3}(?:=|>|:{1,3}=|\\|\\||:|=>|\\?=|,)[\\x60'\"\\s=]{0,5}([a-z0-9]{50})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
97
+ "keywords": ["twitter"]
98
+ },
99
+ {
100
+ "id": "twitter-bearer-token",
101
+ "description": "Discovered a Twitter Bearer Token, potentially compromising API access and data retrieval from Twitter.",
102
+ "regex": "(?i)[\\w.-]{0,50}?(?:twitter)(?:[ \\t\\w.-]{0,20})[\\s'\"]{0,3}(?:=|>|:{1,3}=|\\|\\||:|=>|\\?=|,)[\\x60'\"\\s=]{0,5}(A{22}[a-zA-Z0-9%]{80,100})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
103
+ "keywords": ["twitter"]
104
+ },
105
+ {
106
+ "id": "typeform-api-token",
107
+ "description": "Uncovered a Typeform API token, which could lead to unauthorized survey management and data collection.",
108
+ "regex": "(?i)[\\w.-]{0,50}?(?:typeform)(?:[ \\t\\w.-]{0,20})[\\s'\"]{0,3}(?:=|>|:{1,3}=|\\|\\||:|=>|\\?=|,)[\\x60'\"\\s=]{0,5}(tfp_[a-z0-9\\-_\\.=]{59})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
109
+ "keywords": ["tfp_"]
110
+ },
111
+ {
112
+ "id": "vault-batch-token",
113
+ "description": "Detected a Vault Batch Token, risking unauthorized access to secret management services and sensitive data.",
114
+ "regex": "\\b(hvb\\.[\\w-]{138,300})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
115
+ "entropy": 4,
116
+ "keywords": ["hvb."]
117
+ },
118
+ {
119
+ "id": "vault-service-token",
120
+ "description": "Identified a Vault Service Token, potentially compromising infrastructure security and access to sensitive credentials.",
121
+ "regex": "\\b((?:hvs\\.[\\w-]{90,120}|s\\.(?i:[a-z0-9]{24})))(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
122
+ "entropy": 3.5,
123
+ "keywords": ["hvs.", "s."],
124
+ "allowlists": [
125
+ {
126
+ "regexes": ["s\\.[A-Za-z]{24}"]
127
+ }
128
+ ]
129
+ },
130
+ {
131
+ "id": "yandex-access-token",
132
+ "description": "Found a Yandex Access Token, posing a risk to Yandex service integrations and user data privacy.",
133
+ "regex": "(?i)[\\w.-]{0,50}?(?:yandex)(?:[ \\t\\w.-]{0,20})[\\s'\"]{0,3}(?:=|>|:{1,3}=|\\|\\||:|=>|\\?=|,)[\\x60'\"\\s=]{0,5}(t1\\.[A-Z0-9a-z_-]+[=]{0,2}\\.[A-Z0-9a-z_-]{86}[=]{0,2})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
134
+ "keywords": ["yandex"]
135
+ },
136
+ {
137
+ "id": "yandex-api-key",
138
+ "description": "Discovered a Yandex API Key, which could lead to unauthorized access to Yandex services and data manipulation.",
139
+ "regex": "(?i)[\\w.-]{0,50}?(?:yandex)(?:[ \\t\\w.-]{0,20})[\\s'\"]{0,3}(?:=|>|:{1,3}=|\\|\\||:|=>|\\?=|,)[\\x60'\"\\s=]{0,5}(AQVN[A-Za-z0-9_\\-]{35,38})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
140
+ "keywords": ["yandex"]
141
+ },
142
+ {
143
+ "id": "yandex-aws-access-token",
144
+ "description": "Uncovered a Yandex AWS Access Token, potentially compromising cloud resource access and data security on Yandex Cloud.",
145
+ "regex": "(?i)[\\w.-]{0,50}?(?:yandex)(?:[ \\t\\w.-]{0,20})[\\s'\"]{0,3}(?:=|>|:{1,3}=|\\|\\||:|=>|\\?=|,)[\\x60'\"\\s=]{0,5}(YC[a-zA-Z0-9_\\-]{38})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
146
+ "keywords": ["yandex"]
147
+ },
148
+ {
149
+ "id": "zendesk-secret-key",
150
+ "description": "Detected a Zendesk Secret Key, risking unauthorized access to customer support services and sensitive ticketing data.",
151
+ "regex": "(?i)[\\w.-]{0,50}?(?:zendesk)(?:[ \\t\\w.-]{0,20})[\\s'\"]{0,3}(?:=|>|:{1,3}=|\\|\\||:|=>|\\?=|,)[\\x60'\"\\s=]{0,5}([a-z0-9]{40})(?:[\\x60'\"\\s;]|\\\\[nr]|$)",
152
+ "keywords": ["zendesk"]
153
+ }
154
+ ]
@@ -0,0 +1,27 @@
1
+ // Node normally inherits flags while excluding process/V8-only options.
2
+ // An explicit execArgv bypasses that filtering, so only override it when
3
+ // parent stdin parsing would reject the file worker's module URL.
4
+ export function workerExecArgv() {
5
+ if (!process.execArgv.some((arg) => /^--input-type(?:=|$)/.test(arg))) {
6
+ return undefined;
7
+ }
8
+ const retained = [];
9
+ for (let i = 0; i < process.execArgv.length; i++) {
10
+ const arg = process.execArgv[i];
11
+ // Preserve module hooks and permission grants during the override.
12
+ if (
13
+ /^(?:--(?:import|require|loader|experimental-loader|conditions|permission|experimental-permission|allow-[a-z-]+)|-[rC])(?:=|$)/.test(
14
+ arg
15
+ )
16
+ ) {
17
+ retained.push(arg);
18
+ if (!arg.includes('=') && process.execArgv[i + 1]?.[0] !== '-') {
19
+ const value = process.execArgv[i + 1];
20
+ if (value !== undefined) {
21
+ retained.push(process.execArgv[++i]);
22
+ }
23
+ }
24
+ }
25
+ }
26
+ return retained;
27
+ }