@gendigital/sage-opencode 0.9.0 → 0.11.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.
Files changed (49) hide show
  1. package/README.md +60 -71
  2. package/dist/bundled-dirs.d.ts +1 -1
  3. package/dist/bundled-dirs.d.ts.map +1 -1
  4. package/dist/bundled-dirs.js +1 -1
  5. package/dist/bundled-dirs.js.map +1 -1
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/index.js +83 -18
  8. package/dist/index.js.map +1 -1
  9. package/dist/mcp-server.cjs +31776 -0
  10. package/dist/mcp-server.cjs.map +7 -0
  11. package/dist/plugin-discovery.js +1 -1
  12. package/dist/plugin-discovery.js.map +1 -1
  13. package/dist/startup-scan.d.ts.map +1 -1
  14. package/dist/startup-scan.js +3 -2
  15. package/dist/startup-scan.js.map +1 -1
  16. package/dist/tool-handler.d.ts +1 -1
  17. package/dist/tool-handler.d.ts.map +1 -1
  18. package/dist/tool-handler.js +61 -6
  19. package/dist/tool-handler.js.map +1 -1
  20. package/package.json +6 -4
  21. package/resources/threats/agent-layer.yaml +186 -0
  22. package/resources/threats/commands.yaml +24 -53
  23. package/resources/threats/credentials.yaml +12 -20
  24. package/resources/threats/dummy.yaml +22 -33
  25. package/resources/threats/files.yaml +34 -53
  26. package/resources/threats/mac-commands.yaml +20 -47
  27. package/resources/threats/mac-credentials.yaml +4 -12
  28. package/resources/threats/mac-files.yaml +5 -15
  29. package/resources/threats/mac-obfuscation.yaml +6 -13
  30. package/resources/threats/mac-persistence.yaml +11 -20
  31. package/resources/threats/mac-supply-chain.yaml +5 -8
  32. package/resources/threats/mitre.yaml +105 -167
  33. package/resources/threats/obfuscation.yaml +7 -15
  34. package/resources/threats/persistence.yaml +10 -17
  35. package/resources/threats/prompt-injection.yaml +94 -44
  36. package/resources/threats/self-defense.yaml +8 -12
  37. package/resources/threats/supply_chain.yaml +1 -2
  38. package/resources/threats/urls.yaml +9 -14
  39. package/resources/threats/win-commands.yaml +46 -106
  40. package/resources/threats/win-credentials.yaml +15 -25
  41. package/resources/threats/win-files.yaml +10 -20
  42. package/resources/threats/win-obfuscation.yaml +21 -37
  43. package/resources/threats/win-persistence.yaml +8 -16
  44. package/resources/threats/win-supply-chain.yaml +2 -3
  45. package/dist/logger-adaptor.d.ts +0 -15
  46. package/dist/logger-adaptor.d.ts.map +0 -1
  47. package/dist/logger-adaptor.js +0 -32
  48. package/dist/logger-adaptor.js.map +0 -1
  49. /package/resources/{allowlists → trusted-domains}/trusted-installer-domains.yaml +0 -0
@@ -10,7 +10,6 @@
10
10
  category: tool
11
11
  severity: critical
12
12
  confidence: 0.95
13
- action: block
14
13
  pattern: "\\b([Ii][Rr][Mm]|[Ii][Ww][Rr]|curl|wget|[Ii]nvoke-[Ww]eb[Rr]equest|[Ii]nvoke-[Rr]est[Mm]ethod)\\b.*\\|\\s*([Ii][Ee][Xx]|[Ii]nvoke-[Ee]xpression)\\b"
15
14
  match_on: command
16
15
  title: "PowerShell download piped to Invoke-Expression"
@@ -22,7 +21,6 @@
22
21
  category: tool
23
22
  severity: critical
24
23
  confidence: 0.95
25
- action: block
26
24
  pattern: "\\b([Ii][Ee][Xx]|[Ii]nvoke-[Ee]xpression)\\s*\\(?\\s*\\(?\\s*(\\b([Ii][Rr][Mm]|[Ii][Ww][Rr])\\b|[Nn]ew-[Oo]bject|[Ii]nvoke-[Ww]eb[Rr]equest|[Ii]nvoke-[Rr]est[Mm]ethod)"
27
25
  match_on: command
28
26
  title: "Invoke-Expression wrapping remote download"
@@ -32,9 +30,8 @@
32
30
  # Start-Process with executable
33
31
  - id: "CLT-WIN-CMD-003"
34
32
  category: tool
35
- severity: high
36
- confidence: 0.85
37
- action: require_approval
33
+ severity: warning
34
+ confidence: 0.60
38
35
  pattern: "[Ss]tart-[Pp]rocess.*-[Ff]ile[Pp]ath.*\\.(exe|bat|cmd|ps1)"
39
36
  match_on: command
40
37
  title: "Start-Process launching executable file"
@@ -46,7 +43,6 @@
46
43
  category: tool
47
44
  severity: critical
48
45
  confidence: 0.90
49
- action: block
50
46
  pattern: "\\b(curl|wget|[Ii][Rr][Mm]|[Ii][Ww][Rr]|[Ii]nvoke-[Ww]eb[Rr]equest|[Ii]nvoke-[Rr]est[Mm]ethod)\\b[^|]*(-[Oo]\\w*\\s+|-[Oo]ut[Ff]ile\\s+)\\S+\\.(cmd|bat|ps1|exe|msi).*(&&|;)"
51
47
  match_on: command
52
48
  title: "Download file then chain-execute"
@@ -58,7 +54,6 @@
58
54
  category: tool
59
55
  severity: critical
60
56
  confidence: 0.90
61
- action: block
62
57
  pattern: "[Nn]ew-[Oo]bject\\s+[Nn]et\\.[Ww]eb[Cc]lient.*[Dd]ownload(String|File)"
63
58
  match_on: command
64
59
  title: ".NET WebClient download (DownloadString/DownloadFile)"
@@ -68,9 +63,8 @@
68
63
  # Start-BitsTransfer cmdlet
69
64
  - id: "CLT-WIN-CMD-006"
70
65
  category: tool
71
- severity: high
72
- confidence: 0.85
73
- action: require_approval
66
+ severity: warning
67
+ confidence: 0.60
74
68
  pattern: "[Ss]tart-[Bb]its[Tt]ransfer"
75
69
  match_on: command
76
70
  title: "PowerShell BITS transfer download"
@@ -84,7 +78,6 @@
84
78
  category: tool
85
79
  severity: critical
86
80
  confidence: 0.95
87
- action: block
88
81
  pattern: "[Cc][Ee][Rr][Tt][Uu][Tt][Ii][Ll].*(-urlcache|-split|-decode)"
89
82
  match_on: command
90
83
  title: "certutil used for download or decode (LOLBin)"
@@ -96,7 +89,6 @@
96
89
  category: tool
97
90
  severity: critical
98
91
  confidence: 0.90
99
- action: block
100
92
  pattern: "[Bb][Ii][Tt][Ss][Aa][Dd][Mm][Ii][Nn].*/transfer"
101
93
  match_on: command
102
94
  title: "bitsadmin file transfer (LOLBin)"
@@ -108,7 +100,6 @@
108
100
  category: tool
109
101
  severity: critical
110
102
  confidence: 0.90
111
- action: block
112
103
  pattern: "[Mm][Ss][Hh][Tt][Aa]\\s+.*https?://"
113
104
  match_on: command
114
105
  title: "mshta executing remote HTA file (LOLBin)"
@@ -120,7 +111,6 @@
120
111
  category: tool
121
112
  severity: critical
122
113
  confidence: 0.90
123
- action: block
124
114
  pattern: "[Rr][Ee][Gg][Ss][Vv][Rr]32.*/[SsIi].*\\.(dll|sct)"
125
115
  match_on: command
126
116
  title: "regsvr32 loading DLL/scriptlet (LOLBin)"
@@ -132,7 +122,6 @@
132
122
  category: tool
133
123
  severity: critical
134
124
  confidence: 0.90
135
- action: block
136
125
  pattern: "[Rr][Uu][Nn][Dd][Ll][Ll]32.*javascript:"
137
126
  match_on: command
138
127
  title: "rundll32 executing JavaScript (LOLBin)"
@@ -142,9 +131,8 @@
142
131
  # cmstp INF install (UAC bypass)
143
132
  - id: "CLT-WIN-CMD-012"
144
133
  category: tool
145
- severity: high
134
+ severity: warning
146
135
  confidence: 0.85
147
- action: block
148
136
  pattern: "[Cc][Mm][Ss][Tt][Pp].*/[AaUuSs].*\\.inf"
149
137
  match_on: command
150
138
  title: "cmstp INF install (UAC bypass LOLBin)"
@@ -156,7 +144,6 @@
156
144
  category: tool
157
145
  severity: critical
158
146
  confidence: 0.90
159
- action: block
160
147
  pattern: "\\b[Ww][Mm][Ii][Cc]\\b.*\\bprocess\\s+call\\s+create\\b"
161
148
  match_on: command
162
149
  title: "wmic process call create (LOLBin)"
@@ -168,7 +155,6 @@
168
155
  category: tool
169
156
  severity: critical
170
157
  confidence: 0.90
171
- action: block
172
158
  pattern: "\\b[Mm][Ss][Ii][Ee][Xx][Ee][Cc]\\b.*/[QqIi].*https?://"
173
159
  match_on: command
174
160
  title: "msiexec remote MSI install (LOLBin)"
@@ -178,9 +164,8 @@
178
164
  # forfiles command execution
179
165
  - id: "CLT-WIN-CMD-015"
180
166
  category: tool
181
- severity: high
167
+ severity: warning
182
168
  confidence: 0.85
183
- action: block
184
169
  pattern: "\\b[Ff][Oo][Rr][Ff][Ii][Ll][Ee][Ss]\\b.*/[Cc].*\\b(cmd|powershell)\\b"
185
170
  match_on: command
186
171
  title: "forfiles dispatching cmd/powershell (LOLBin)"
@@ -190,9 +175,8 @@
190
175
  # pcalua execution
191
176
  - id: "CLT-WIN-CMD-016"
192
177
  category: tool
193
- severity: high
178
+ severity: warning
194
179
  confidence: 0.85
195
- action: block
196
180
  pattern: "\\b[Pp][Cc][Aa][Ll][Uu][Aa]\\b.*-a.*\\.(exe|dll)"
197
181
  match_on: command
198
182
  title: "pcalua executing binary (LOLBin)"
@@ -202,9 +186,8 @@
202
186
  # installutil abuse
203
187
  - id: "CLT-WIN-CMD-017"
204
188
  category: tool
205
- severity: high
189
+ severity: warning
206
190
  confidence: 0.85
207
- action: block
208
191
  pattern: "\\b[Ii]nstall[Uu]til\\b.*/[Ll]og[Ff]ile="
209
192
  match_on: command
210
193
  title: "installutil .NET execution (LOLBin)"
@@ -214,9 +197,8 @@
214
197
  # regasm/regsvcs
215
198
  - id: "CLT-WIN-CMD-018"
216
199
  category: tool
217
- severity: high
200
+ severity: warning
218
201
  confidence: 0.85
219
- action: block
220
202
  pattern: "\\b[Rr]eg[Aa]sm\\b.*/[Uu]|\\b[Rr]eg[Ss]vcs\\b"
221
203
  match_on: command
222
204
  title: "regasm/regsvcs .NET assembly execution (LOLBin)"
@@ -230,7 +212,6 @@
230
212
  category: tool
231
213
  severity: critical
232
214
  confidence: 0.95
233
- action: block
234
215
  pattern: "\\b[Ff][Oo][Rr][Mm][Aa][Tt]\\s+[A-Za-z]:"
235
216
  match_on: command
236
217
  title: "Format drive command"
@@ -242,7 +223,6 @@
242
223
  category: tool
243
224
  severity: critical
244
225
  confidence: 0.95
245
- action: block
246
226
  pattern: "\\b(rd|rmdir)\\b\\s+/[Ss]\\s+/[Qq]\\s+[A-Za-z]:\\\\"
247
227
  match_on: command
248
228
  title: "Recursive forced deletion from drive root"
@@ -254,7 +234,6 @@
254
234
  category: tool
255
235
  severity: critical
256
236
  confidence: 0.95
257
- action: block
258
237
  pattern: "\\b[Dd][Ee][Ll]\\b\\s+/[Ff].*\\s+/[Ss].*\\s+[A-Za-z]:\\\\"
259
238
  match_on: command
260
239
  title: "Force delete all files from drive root"
@@ -266,7 +245,6 @@
266
245
  category: tool
267
246
  severity: critical
268
247
  confidence: 0.95
269
- action: block
270
248
  pattern: "\\bdiskpart\\b"
271
249
  match_on: command
272
250
  title: "diskpart disk partition manipulation"
@@ -280,7 +258,6 @@
280
258
  category: tool
281
259
  severity: critical
282
260
  confidence: 0.90
283
- action: block
284
261
  pattern: "[Nn]ew-[Oo]bject\\s+[Ss]ystem\\.[Nn]et\\.[Ss]ockets\\.[Tt][Cc][Pp][Cc]lient"
285
262
  match_on: command
286
263
  title: "PowerShell TCP reverse shell via .NET socket"
@@ -292,7 +269,6 @@
292
269
  category: tool
293
270
  severity: critical
294
271
  confidence: 0.90
295
- action: block
296
272
  pattern: "[Nn]ew-[Oo]bject\\s+[Ss]ystem\\.[Nn]et\\.[Ss]ockets\\.[Uu][Dd][Pp][Cc]lient"
297
273
  match_on: command
298
274
  title: "PowerShell UDP reverse shell via .NET socket"
@@ -304,9 +280,8 @@
304
280
  # runas
305
281
  - id: "CLT-WIN-CMD-025"
306
282
  category: tool
307
- severity: high
308
- confidence: 0.80
309
- action: require_approval
283
+ severity: warning
284
+ confidence: 0.60
310
285
  pattern: "\\b[Rr][Uu][Nn][Aa][Ss]\\s+/user:"
311
286
  match_on: command
312
287
  title: "runas with alternate user credentials"
@@ -316,9 +291,8 @@
316
291
  # Set-ExecutionPolicy Bypass/Unrestricted
317
292
  - id: "CLT-WIN-CMD-026"
318
293
  category: tool
319
- severity: high
320
- confidence: 0.80
321
- action: require_approval
294
+ severity: warning
295
+ confidence: 0.60
322
296
  pattern: "[Ss]et-[Ee]xecution[Pp]olicy\\s+([Bb]ypass|[Uu]nrestricted)"
323
297
  match_on: command
324
298
  title: "Disabling PowerShell execution policy"
@@ -328,9 +302,8 @@
328
302
  # fodhelper UAC bypass
329
303
  - id: "CLT-WIN-CMD-027"
330
304
  category: tool
331
- severity: high
305
+ severity: warning
332
306
  confidence: 0.80
333
- action: block
334
307
  pattern: "\\b[Ff]od[Hh]elper\\b"
335
308
  match_on: command
336
309
  title: "fodhelper.exe UAC bypass"
@@ -344,8 +317,8 @@
344
317
  category: tool
345
318
  severity: critical
346
319
  confidence: 0.90
347
- action: block
348
- pattern: "\\bRemove-Item\\b.*-Recurse.*-Force|\\bRemove-Item\\b.*-Force.*-Recurse"
320
+ pattern: "\\bRemove-Item\\b(?=[^;&|#\\r\\n]*\\s-(?:Recurse|r)\\b)(?=[^;&|#\\r\\n]*\\s-(?:Force|f)\\b)[^;&|#\\r\\n]*?(?:[A-Za-z]:\\\\(?:Windows|ProgramData|Users\\\\Public|Program Files(?: \\(x86\\))?)(?=\\\\|\\s|[\"']|$)|(?:\\$env:(?:SystemRoot|ProgramData|windir)|\\$\\{env:(?:SystemRoot|ProgramData|windir)\\})(?=\\\\|\\s|[\"']|$))"
321
+ case_insensitive: true
349
322
  match_on: command
350
323
  title: "PowerShell recursive forced deletion (Remove-Item -Recurse -Force)"
351
324
  expires_at: null
@@ -354,9 +327,8 @@
354
327
  # Clear-RecycleBin -Force
355
328
  - id: "CLT-WIN-CMD-029"
356
329
  category: tool
357
- severity: high
358
- confidence: 0.80
359
- action: require_approval
330
+ severity: warning
331
+ confidence: 0.60
360
332
  pattern: "\\bClear-RecycleBin\\b.*-Force"
361
333
  match_on: command
362
334
  title: "PowerShell destructive recycle bin cleanup"
@@ -370,7 +342,6 @@
370
342
  category: tool
371
343
  severity: critical
372
344
  confidence: 0.90
373
- action: block
374
345
  pattern: "\\bncat\\b.*\\s-e\\s+(cmd|powershell|cmd\\.exe|powershell\\.exe)"
375
346
  match_on: command
376
347
  title: "Reverse shell via ncat -e cmd/powershell"
@@ -384,7 +355,6 @@
384
355
  category: tool
385
356
  severity: critical
386
357
  confidence: 0.95
387
- action: block
388
358
  pattern: "\\bvssadmin\\b.*\\bdelete\\s+shadows\\b"
389
359
  case_insensitive: true
390
360
  match_on: command
@@ -397,7 +367,6 @@
397
367
  category: tool
398
368
  severity: critical
399
369
  confidence: 0.95
400
- action: block
401
370
  pattern: "\\bwmic\\b.*\\bshadowcopy\\b.*\\bdelete\\b"
402
371
  match_on: command
403
372
  title: "Shadow copy deletion via wmic (ransomware indicator)"
@@ -409,7 +378,6 @@
409
378
  category: tool
410
379
  severity: critical
411
380
  confidence: 0.95
412
- action: block
413
381
  pattern: "\\bbcdedit\\b.*/set\\b.*\\b(recoveryenabled\\b.*\\b(No|no|NO|false|0)|bootems\\s+off|advancedoptions\\s+off|optionsedit\\s+off)\\b|\\breg\\b.*\\bdelete\\b.*\\bSYSTEM\\\\.*CurrentControlSet\\\\Control\\\\SafeBoot\\b|\\breg\\b.*\\badd\\b.*\\bSOFTWARE\\\\.*Microsoft\\\\Windows NT\\\\.*CurrentVersion\\\\Winlogon\\b.*/v.*Userinit"
414
382
  match_on: command
415
383
  title: "Recovery/boot disable via bcdedit, SafeBoot reg delete, or Winlogon Userinit (ransomware indicator)"
@@ -421,7 +389,6 @@
421
389
  category: tool
422
390
  severity: critical
423
391
  confidence: 0.95
424
- action: block
425
392
  pattern: "\\b(Get-WmiObject|Get-CimInstance)\\b.*\\bWin32_ShadowCopy\\b.*\\b(Remove-WmiObject|Remove-CimInstance|Delete)\\b"
426
393
  match_on: command
427
394
  title: "PowerShell shadow copy deletion (ransomware indicator)"
@@ -435,7 +402,6 @@
435
402
  category: tool
436
403
  severity: critical
437
404
  confidence: 0.95
438
- action: block
439
405
  pattern: "\\bwevtutil\\b.*\\b(cl|clear-log)\\b"
440
406
  match_on: command
441
407
  title: "Windows event log clearing via wevtutil (anti-forensics)"
@@ -447,7 +413,6 @@
447
413
  category: tool
448
414
  severity: critical
449
415
  confidence: 0.95
450
- action: block
451
416
  pattern: "\\b(Clear-EventLog|Remove-EventLog)\\b"
452
417
  match_on: command
453
418
  title: "PowerShell event log clearing (anti-forensics)"
@@ -459,7 +424,6 @@
459
424
  category: tool
460
425
  severity: critical
461
426
  confidence: 0.95
462
- action: block
463
427
  pattern: "\\b(Set|Add)-MpPreference\\b.*(-Disable|-Exclusion)"
464
428
  match_on: command
465
429
  title: "Windows Defender settings modification via Set/Add-MpPreference"
@@ -471,7 +435,6 @@
471
435
  category: tool
472
436
  severity: critical
473
437
  confidence: 0.90
474
- action: block
475
438
  pattern: "\\b(sc\\s+(stop|config)|net\\s+stop|Stop-Service)\\b.*\\b(WinDefend|MpsSvc|wscsvc|SecurityHealthService)\\b"
476
439
  match_on: command
477
440
  title: "Security service tampering (WinDefend/firewall service stop/disable)"
@@ -483,7 +446,6 @@
483
446
  category: tool
484
447
  severity: critical
485
448
  confidence: 0.90
486
- action: block
487
449
  pattern: "\\bnetsh\\b.*\\badvfirewall\\b.*\\bstate\\s+off\\b"
488
450
  match_on: command
489
451
  title: "Windows Firewall disabling via netsh"
@@ -495,9 +457,8 @@
495
457
  # Password-protected archive creation
496
458
  - id: "CLT-WIN-CMD-040"
497
459
  category: tool
498
- severity: high
499
- confidence: 0.85
500
- action: require_approval
460
+ severity: warning
461
+ confidence: 0.60
501
462
  pattern: "\\b(rar|winrar)(\\.exe)?\\b.*\\s-h?p|\\b(7z|7za)(\\.exe)?\\b.*\\s-p|\\bzip\\b.*\\s(-P\\s|--password\\b)"
502
463
  match_on: command
503
464
  title: "Password-protected archive creation (potential data exfiltration)"
@@ -507,9 +468,8 @@
507
468
  # Bulk document archiving with wildcards
508
469
  - id: "CLT-WIN-CMD-041"
509
470
  category: tool
510
- severity: high
511
- confidence: 0.85
512
- action: require_approval
471
+ severity: warning
472
+ confidence: 0.60
513
473
  pattern: "\\b(rar|winrar|7z|7za|zip|tar)(\\.exe)?\\b.*\\*\\.(docx?|xlsx?|pptx?|pdf|csv)\\b"
514
474
  match_on: command
515
475
  title: "Bulk document archiving with wildcards (data exfiltration indicator)"
@@ -523,7 +483,6 @@
523
483
  category: tool
524
484
  severity: critical
525
485
  confidence: 0.95
526
- action: block
527
486
  pattern: "/AutoIt3ExecuteScript"
528
487
  case_insensitive: true
529
488
  match_on: command
@@ -536,9 +495,8 @@
536
495
  # wscript/cscript executing scripts from C:\Users\Public (world-writable staging)
537
496
  - id: "CLT-WIN-CMD-043"
538
497
  category: tool
539
- severity: high
540
- confidence: 0.85
541
- action: require_approval
498
+ severity: warning
499
+ confidence: 0.60
542
500
  pattern: "(wscript|cscript)(\\.exe)?\\b.*\\\\Users\\\\Public\\\\"
543
501
  case_insensitive: true
544
502
  match_on: command
@@ -553,7 +511,6 @@
553
511
  category: tool
554
512
  severity: critical
555
513
  confidence: 0.95
556
- action: block
557
514
  pattern: "regsvr32(\\.exe)?\\b.*/[Ii]:[^\\s]*https?://"
558
515
  case_insensitive: true
559
516
  match_on: command
@@ -564,9 +521,8 @@
564
521
  # cmdl32.exe Connection Manager Profile Installer abuse
565
522
  - id: "CLT-WIN-CMD-045"
566
523
  category: tool
567
- severity: high
568
- confidence: 0.80
569
- action: require_approval
524
+ severity: warning
525
+ confidence: 0.60
570
526
  pattern: "\\bcmdl32(\\.exe)?\\b"
571
527
  case_insensitive: true
572
528
  match_on: command
@@ -581,7 +537,6 @@
581
537
  category: tool
582
538
  severity: critical
583
539
  confidence: 0.90
584
- action: block
585
540
  pattern: "\\b(curl|wget)\\b[^&]*(--(output|o\\b)|-o\\b)[^&]*&\\s*(start\\b|cmd)"
586
541
  case_insensitive: true
587
542
  match_on: command
@@ -594,7 +549,6 @@
594
549
  category: tool
595
550
  severity: critical
596
551
  confidence: 0.90
597
- action: block
598
552
  pattern: "(vssadmin.*resize.*shadowstorage|net.*stop.*swprv|reg.*add.*HKLM.*SOFTWARE.*Microsoft.*Windows NT.*CurrentVersion.*SystemRestore.*/v.*DisableSR.*/t.*REG_DWORD.*/d.*1.*/f|reg.*add.*HKLM.*SYSTEM.*CurrentControlSet.*services.*VSS.*/v.*Start.*/t.*REG_DWORD.*/d.*4.*/f|wbadmin.*delete.*catalog|wbadmin.*delete.*systemstatebackup)"
599
553
  case_insensitive: true
600
554
  match_on: command
@@ -605,9 +559,8 @@
605
559
  # Legacy firewall disable via netsh opmode (ex CLT-TECH-007, MpsSvc parts covered by CLT-WIN-CMD-038)
606
560
  - id: "CLT-WIN-CMD-048"
607
561
  category: tool
608
- severity: high
609
- confidence: 0.80
610
- action: require_approval
562
+ severity: warning
563
+ confidence: 0.60
611
564
  pattern: "netsh\\s+firewall\\s+set\\s+opmode\\s+mode[= ]+DISABLE"
612
565
  case_insensitive: true
613
566
  match_on: command
@@ -618,9 +571,8 @@
618
571
  # Firewall exclusion: add allowed program (ex CLT-TECH-008)
619
572
  - id: "CLT-WIN-CMD-049"
620
573
  category: tool
621
- severity: high
622
- confidence: 0.80
623
- action: require_approval
574
+ severity: warning
575
+ confidence: 0.60
624
576
  pattern: "(netsh\\s+firewall.+add.+allowedprogram.+ENABLE|netsh.+advfirewall.+firewall.+add.+rule.+name.+program|netsh\\s+advfirewall\\s+firewall.+allow.+program.+enable[= ]+yes)"
625
577
  case_insensitive: true
626
578
  match_on: command
@@ -631,9 +583,8 @@
631
583
  # AppLocker bypass via regsvr32 /i:http (ex CLT-TECH-006)
632
584
  - id: "CLT-WIN-CMD-050"
633
585
  category: tool
634
- severity: high
635
- confidence: 0.80
636
- action: require_approval
586
+ severity: warning
587
+ confidence: 0.60
637
588
  pattern: "regsvr32.+i:\\s*http"
638
589
  case_insensitive: true
639
590
  match_on: command
@@ -646,7 +597,6 @@
646
597
  category: tool
647
598
  severity: critical
648
599
  confidence: 0.90
649
- action: block
650
600
  pattern: "(\\\\|/)Mavinject(64|32)\\.exe"
651
601
  case_insensitive: true
652
602
  match_on: command
@@ -659,7 +609,6 @@
659
609
  category: tool
660
610
  severity: critical
661
611
  confidence: 0.90
662
- action: block
663
612
  pattern: "(\\\\|/)inject_dll_(x86|amd64)\\.exe"
664
613
  case_insensitive: true
665
614
  match_on: command
@@ -670,9 +619,8 @@
670
619
  # PowerShdll execution (ex CLT-TECH-028)
671
620
  - id: "CLT-WIN-CMD-053"
672
621
  category: tool
673
- severity: high
674
- confidence: 0.80
675
- action: require_approval
622
+ severity: warning
623
+ confidence: 0.60
676
624
  pattern: "(rundll32\\.exe PowerShdll\\.dll,main|POWERSHDLL\\.(DLL|EXE))"
677
625
  case_insensitive: true
678
626
  match_on: command
@@ -683,9 +631,8 @@
683
631
  # SyncAppvPublishingServer execution (ex CLT-TECH-030)
684
632
  - id: "CLT-WIN-CMD-054"
685
633
  category: tool
686
- severity: high
687
- confidence: 0.80
688
- action: require_approval
634
+ severity: warning
635
+ confidence: 0.60
689
636
  pattern: "SyncAppvPublishingServer\\.vbs \".*(iwr|iex)"
690
637
  case_insensitive: true
691
638
  match_on: command
@@ -698,7 +645,6 @@
698
645
  category: tool
699
646
  severity: critical
700
647
  confidence: 0.90
701
- action: block
702
648
  pattern: "(sdclt\\.exe|CompMgmtLauncher\\.exe)"
703
649
  case_insensitive: true
704
650
  match_on: command
@@ -709,9 +655,8 @@
709
655
  # PowerShell fileless execution via iex $env (ex CLT-TECH-017)
710
656
  - id: "CLT-WIN-CMD-056"
711
657
  category: tool
712
- severity: high
713
- confidence: 0.80
714
- action: require_approval
658
+ severity: warning
659
+ confidence: 0.60
715
660
  pattern: "powershell.*iex.*\\$env"
716
661
  case_insensitive: true
717
662
  match_on: command
@@ -722,9 +667,8 @@
722
667
  # PowerShell version downgrade (ex CLT-TECH-018)
723
668
  - id: "CLT-WIN-CMD-057"
724
669
  category: tool
725
- severity: high
726
- confidence: 0.80
727
- action: require_approval
670
+ severity: warning
671
+ confidence: 0.60
728
672
  pattern: "powershell.*-Version"
729
673
  case_insensitive: true
730
674
  match_on: command
@@ -737,7 +681,6 @@
737
681
  category: tool
738
682
  severity: critical
739
683
  confidence: 0.90
740
- action: block
741
684
  pattern: "(powershell.*(iex|invoke-expression).*downloadstring|powershell.*Start-BitsTransfer.*(iex|invoke-expression)|powershell.*xmlhttp.*send.*(iex|invoke-expression))"
742
685
  case_insensitive: true
743
686
  match_on: command
@@ -748,9 +691,8 @@
748
691
  # PowerShell Reflection.Assembly Load (ex CLT-TECH-024)
749
692
  - id: "CLT-WIN-CMD-059"
750
693
  category: tool
751
- severity: high
752
- confidence: 0.80
753
- action: require_approval
694
+ severity: warning
695
+ confidence: 0.60
754
696
  pattern: "powershell.+\\[Reflection\\.Assembly\\]::Load"
755
697
  case_insensitive: true
756
698
  match_on: command
@@ -761,9 +703,8 @@
761
703
  # PowerShell certificate validation bypass (ex CLT-TECH-025)
762
704
  - id: "CLT-WIN-CMD-060"
763
705
  category: tool
764
- severity: high
765
- confidence: 0.80
766
- action: require_approval
706
+ severity: warning
707
+ confidence: 0.60
767
708
  pattern: "powershell.+ServerCertificateValidationCallback\\s*=\\s*\\{\\s*\\$true\\s*\\}"
768
709
  case_insensitive: true
769
710
  match_on: command
@@ -774,9 +715,8 @@
774
715
  # PowerShell GetTypeFromCLSID (ex CLT-TECH-029)
775
716
  - id: "CLT-WIN-CMD-061"
776
717
  category: tool
777
- severity: high
778
- confidence: 0.80
779
- action: require_approval
718
+ severity: warning
719
+ confidence: 0.60
780
720
  pattern: "powershell.+GetTypeFromCLSID"
781
721
  case_insensitive: true
782
722
  match_on: command
@@ -5,9 +5,8 @@
5
5
  # cmdkey stored credentials
6
6
  - id: "CLT-WIN-CRED-001"
7
7
  category: secrets
8
- severity: high
9
- confidence: 0.85
10
- action: require_approval
8
+ severity: warning
9
+ confidence: 0.60
11
10
  pattern: "\\b[Cc]mdkey\\s+/add:"
12
11
  match_on: command
13
12
  title: "Stored credential creation via cmdkey"
@@ -17,9 +16,8 @@
17
16
  # ConvertTo-SecureString with plaintext
18
17
  - id: "CLT-WIN-CRED-002"
19
18
  category: secrets
20
- severity: high
21
- confidence: 0.85
22
- action: require_approval
19
+ severity: warning
20
+ confidence: 0.60
23
21
  pattern: "[Cc]onvert[Tt]o-[Ss]ecure[Ss]tring.*-[Aa]s[Pp]lain[Tt]ext"
24
22
  match_on: command
25
23
  title: "ConvertTo-SecureString with plaintext password"
@@ -29,10 +27,9 @@
29
27
  # Reading credential files on Windows (type, more, Get-Content)
30
28
  - id: "CLT-WIN-CRED-003"
31
29
  category: secrets
32
- severity: high
33
- confidence: 0.80
34
- action: require_approval
35
- pattern: "\\b(type|more|[Gg]et-[Cc]ontent)\\b.*\\.(env|credentials|pgpass|netrc)"
30
+ severity: warning
31
+ confidence: 0.60
32
+ pattern: "(^|[^\\w-])(?:type|more|[Gg]et-[Cc]ontent)\\b.*\\.(?:env|credentials|pgpass|netrc)(?=$|[.\\s\"'`;&|)<>])"
36
33
  match_on: command
37
34
  title: "Reading credential file via type/more/Get-Content"
38
35
  expires_at: null
@@ -41,9 +38,8 @@
41
38
  # [Environment]::SetEnvironmentVariable with credential keyword
42
39
  - id: "CLT-WIN-CRED-004"
43
40
  category: secrets
44
- severity: high
45
- confidence: 0.80
46
- action: require_approval
41
+ severity: warning
42
+ confidence: 0.60
47
43
  pattern: "\\[Environment\\]::SetEnvironmentVariable.*([Pp]assword|[Ss]ecret|[Tt]oken|[Kk]ey)"
48
44
  match_on: command
49
45
  title: "Setting credential environment variable via .NET"
@@ -53,9 +49,8 @@
53
49
  # $env: credential assignment
54
50
  - id: "CLT-WIN-CRED-005"
55
51
  category: secrets
56
- severity: high
57
- confidence: 0.80
58
- action: require_approval
52
+ severity: warning
53
+ confidence: 0.60
59
54
  pattern: "\\$env:.*([Pp]assword|[Ss]ecret|[Tt]oken|[Aa]pi_?[Kk]ey)\\s*="
60
55
  match_on: command
61
56
  title: "PowerShell $env: credential variable assignment"
@@ -67,7 +62,6 @@
67
62
  category: secrets
68
63
  severity: critical
69
64
  confidence: 0.95
70
- action: block
71
65
  pattern: "[Mm]imikatz|[Ss]ekurlsa::"
72
66
  match_on: command
73
67
  title: "Mimikatz credential dumping tool"
@@ -79,7 +73,6 @@
79
73
  category: secrets
80
74
  severity: critical
81
75
  confidence: 0.95
82
- action: block
83
76
  pattern: "\\breg\\s+save\\b.*\\bHKLM\\\\(SAM|SYSTEM|SECURITY)\\b"
84
77
  match_on: command
85
78
  title: "Registry hive export for credential theft (reg save HKLM\\SAM/SYSTEM)"
@@ -91,7 +84,6 @@
91
84
  category: secrets
92
85
  severity: critical
93
86
  confidence: 0.95
94
- action: block
95
87
  pattern: "\\b(procdump|procdump64)\\b.*\\blsass\\b|\\brundll32\\b.*\\bcomsvcs(\\.dll)?\\b.*\\bMiniDump\\b"
96
88
  match_on: command
97
89
  title: "LSASS credential dumping (procdump/comsvcs.dll MiniDump)"
@@ -101,9 +93,8 @@
101
93
  # WLAN password extraction (ex CLT-TECH-034)
102
94
  - id: "CLT-WIN-CRED-009"
103
95
  category: secrets
104
- severity: high
105
- confidence: 0.80
106
- action: require_approval
96
+ severity: warning
97
+ confidence: 0.60
107
98
  pattern: "netsh.*wlan.*show.*profiles.*key=clear"
108
99
  case_insensitive: true
109
100
  match_on: command
@@ -114,9 +105,8 @@
114
105
  # --- Windows copy/move/link of secret files ---
115
106
  - id: "CLT-WIN-CRED-010"
116
107
  category: secrets
117
- severity: high
118
- confidence: 0.80
119
- action: require_approval
108
+ severity: warning
109
+ confidence: 0.60
120
110
  # Protected files: .env*, .aws\credentials, .ssh\(id_rsa|id_ed25519|id_ecdsa|id_dsa),
121
111
  # .netrc, .pgpass, .npmrc, .pypirc, key.properties, .docker\config.json,
122
112
  # kubeconfig, .kube\config, master.key, credentials.yml