@zerothreatai/vulnerability-registry 3.0.0 → 5.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.
Files changed (77) hide show
  1. package/dist/categories/authentication.js +34 -17
  2. package/dist/categories/configuration.js +561 -60
  3. package/dist/categories/injection.js +68 -34
  4. package/dist/categories/sensitive-paths.js +168 -84
  5. package/dist/categories/ssrf.js +22 -11
  6. package/dist/categories/xss.js +30 -15
  7. package/dist/category.d.ts +6 -0
  8. package/dist/category.js +15 -0
  9. package/dist/error-codes.d.ts +20 -0
  10. package/dist/error-codes.js +20 -0
  11. package/dist/index.d.ts +9 -1
  12. package/dist/index.js +5 -1
  13. package/dist/scanner.d.ts +6 -0
  14. package/dist/scanner.js +22 -0
  15. package/dist/types.d.ts +2 -0
  16. package/dist-cjs/categories/authentication.js +34 -17
  17. package/dist-cjs/categories/configuration.js +561 -60
  18. package/dist-cjs/categories/injection.js +68 -34
  19. package/dist-cjs/categories/sensitive-paths.js +168 -84
  20. package/dist-cjs/categories/ssrf.js +22 -11
  21. package/dist-cjs/categories/xss.js +30 -15
  22. package/dist-cjs/category.js +18 -0
  23. package/dist-cjs/error-codes.js +20 -0
  24. package/dist-cjs/index.js +7 -1
  25. package/dist-cjs/scanner.js +25 -0
  26. package/package.json +35 -32
  27. package/scripts/assign-ids.ts +105 -0
  28. package/scripts/check-duplicate-ids.ts +45 -0
  29. package/src/categories/authentication.ts +145 -128
  30. package/src/categories/configuration.ts +1632 -1111
  31. package/src/categories/injection.ts +158 -124
  32. package/src/categories/sensitive-paths.ts +168 -84
  33. package/src/categories/ssrf.ts +22 -11
  34. package/src/categories/xss.ts +30 -15
  35. package/src/category.ts +16 -0
  36. package/src/error-codes.ts +25 -5
  37. package/src/id-registry.json +1235 -0
  38. package/src/index.ts +20 -14
  39. package/src/scanner.ts +23 -0
  40. package/src/types.ts +4 -2
  41. package/zerothreatai-vulnerability-registry-4npm .0.0.tgz +0 -0
  42. package/src/categories/authentication.d.ts +0 -8
  43. package/src/categories/authentication.d.ts.map +0 -1
  44. package/src/categories/authentication.js +0 -378
  45. package/src/categories/authentication.js.map +0 -1
  46. package/src/categories/configuration.d.ts +0 -8
  47. package/src/categories/configuration.d.ts.map +0 -1
  48. package/src/categories/configuration.js +0 -906
  49. package/src/categories/configuration.js.map +0 -1
  50. package/src/categories/injection.d.ts +0 -8
  51. package/src/categories/injection.d.ts.map +0 -1
  52. package/src/categories/injection.js +0 -750
  53. package/src/categories/injection.js.map +0 -1
  54. package/src/categories/sensitive-paths.d.ts +0 -9
  55. package/src/categories/sensitive-paths.d.ts.map +0 -1
  56. package/src/categories/sensitive-paths.js +0 -1791
  57. package/src/categories/sensitive-paths.js.map +0 -1
  58. package/src/categories/ssrf.d.ts +0 -8
  59. package/src/categories/ssrf.d.ts.map +0 -1
  60. package/src/categories/ssrf.js +0 -250
  61. package/src/categories/ssrf.js.map +0 -1
  62. package/src/categories/xss.d.ts +0 -7
  63. package/src/categories/xss.d.ts.map +0 -1
  64. package/src/categories/xss.js +0 -328
  65. package/src/categories/xss.js.map +0 -1
  66. package/src/error-codes.d.ts +0 -242
  67. package/src/error-codes.d.ts.map +0 -1
  68. package/src/error-codes.js +0 -315
  69. package/src/error-codes.js.map +0 -1
  70. package/src/index.d.ts +0 -60
  71. package/src/index.d.ts.map +0 -1
  72. package/src/index.js +0 -107
  73. package/src/index.js.map +0 -1
  74. package/src/types.d.ts +0 -86
  75. package/src/types.d.ts.map +0 -1
  76. package/src/types.js +0 -7
  77. package/src/types.js.map +0 -1
@@ -12,11 +12,12 @@ export const INJECTION_VULNERABILITIES: Record<string, VulnerabilityDefinition>
12
12
  // SQL INJECTION
13
13
  // ========================================
14
14
  [VulnerabilityCode.SQLI_ERROR_BASED]: {
15
- id: 1,
15
+ id: 300,
16
16
  code: VulnerabilityCode.SQLI_ERROR_BASED,
17
17
  title: 'SQL Injection - Error Based',
18
18
  description: 'Error-based SQL injection vulnerability detected where database error messages are reflected in the application response, allowing attackers to extract sensitive data from the database by manipulating SQL queries and analyzing error output.',
19
19
  severity: 'high',
20
+ levelId: 2,
20
21
  category: 'injection',
21
22
  scanner: 'sql-injection',
22
23
  cvss: {
@@ -34,11 +35,12 @@ export const INJECTION_VULNERABILITIES: Record<string, VulnerabilityDefinition>
34
35
  },
35
36
 
36
37
  [VulnerabilityCode.SQLI_BOOLEAN_BASED]: {
37
- id: 2,
38
+ id: 301,
38
39
  code: VulnerabilityCode.SQLI_BOOLEAN_BASED,
39
40
  title: 'SQL Injection - Boolean Based Blind',
40
41
  description: 'Boolean-based blind SQL injection vulnerability where the application responds differently based on whether injected conditions evaluate to true or false, enabling attackers to infer database contents one bit at a time through systematic query manipulation.',
41
42
  severity: 'high',
43
+ levelId: 2,
42
44
  category: 'injection',
43
45
  scanner: 'sql-injection',
44
46
  cvss: {
@@ -56,11 +58,12 @@ export const INJECTION_VULNERABILITIES: Record<string, VulnerabilityDefinition>
56
58
  },
57
59
 
58
60
  [VulnerabilityCode.SQLI_TIME_BASED]: {
59
- id: 3,
61
+ id: 302,
60
62
  code: VulnerabilityCode.SQLI_TIME_BASED,
61
63
  title: 'SQL Injection - Time Based Blind',
62
64
  description: 'Time-based blind SQL injection vulnerability where attackers can infer database contents by measuring response time differences caused by injected time delay functions like SLEEP() or WAITFOR, enabling complete database extraction through timing analysis.',
63
65
  severity: 'high',
66
+ levelId: 2,
64
67
  category: 'injection',
65
68
  scanner: 'sql-injection',
66
69
  cvss: {
@@ -78,11 +81,12 @@ export const INJECTION_VULNERABILITIES: Record<string, VulnerabilityDefinition>
78
81
  },
79
82
 
80
83
  [VulnerabilityCode.SQLI_STACK_BASED]: {
81
- id: 4,
84
+ id: 303,
82
85
  code: VulnerabilityCode.SQLI_STACK_BASED,
83
86
  title: 'SQL Injection - Stacked Queries',
84
87
  description: 'Critical stacked queries SQL injection vulnerability allowing attackers to execute multiple SQL statements in a single query, enabling destructive operations like DROP TABLE, INSERT into admin tables, or creating backdoor accounts with full database control.',
85
88
  severity: 'critical',
89
+ levelId: 1,
86
90
  category: 'injection',
87
91
  scanner: 'sql-injection',
88
92
  cvss: {
@@ -100,11 +104,12 @@ export const INJECTION_VULNERABILITIES: Record<string, VulnerabilityDefinition>
100
104
  },
101
105
 
102
106
  [VulnerabilityCode.SQLI_UNION_BASED]: {
103
- id: 5,
107
+ id: 304,
104
108
  code: VulnerabilityCode.SQLI_UNION_BASED,
105
109
  title: 'SQL Injection - UNION Based',
106
110
  description: 'UNION-based SQL injection vulnerability allowing attackers to append additional SELECT queries using UNION operator, enabling direct extraction of data from other database tables including user credentials, personal information, and sensitive business data.',
107
111
  severity: 'high',
112
+ levelId: 2,
108
113
  category: 'injection',
109
114
  scanner: 'sql-injection',
110
115
  cvss: {
@@ -125,11 +130,12 @@ export const INJECTION_VULNERABILITIES: Record<string, VulnerabilityDefinition>
125
130
  // COMMAND INJECTION
126
131
  // ========================================
127
132
  [VulnerabilityCode.CMDI_OOB_CONFIRMED]: {
128
- id: 6,
133
+ id: 305,
129
134
  code: VulnerabilityCode.CMDI_OOB_CONFIRMED,
130
135
  title: 'OS Command Injection - OOB Confirmed',
131
136
  description: 'Critical OS command injection vulnerability confirmed through out-of-band callback detection, proving that attacker-controlled shell commands are being executed on the server operating system with full access to system resources and potential for complete server compromise.',
132
137
  severity: 'critical',
138
+ levelId: 1,
133
139
  category: 'injection',
134
140
  scanner: 'command-injection',
135
141
  cvss: {
@@ -147,11 +153,12 @@ export const INJECTION_VULNERABILITIES: Record<string, VulnerabilityDefinition>
147
153
  },
148
154
 
149
155
  [VulnerabilityCode.CMDI_REFLECTED]: {
150
- id: 7,
156
+ id: 306,
151
157
  code: VulnerabilityCode.CMDI_REFLECTED,
152
158
  title: 'OS Command Injection - Reflected Output',
153
159
  description: 'OS command injection vulnerability confirmed by command output being reflected in the application response, indicating that shell commands execute on the server and their results are returned to the attacker for data exfiltration and system reconnaissance.',
154
160
  severity: 'critical',
161
+ levelId: 1,
155
162
  category: 'injection',
156
163
  scanner: 'command-injection',
157
164
  cvss: {
@@ -169,11 +176,12 @@ export const INJECTION_VULNERABILITIES: Record<string, VulnerabilityDefinition>
169
176
  },
170
177
 
171
178
  [VulnerabilityCode.CMDI_TIME_BASED]: {
172
- id: 8,
179
+ id: 307,
173
180
  code: VulnerabilityCode.CMDI_TIME_BASED,
174
181
  title: 'OS Command Injection - Time Based',
175
182
  description: 'Time-based OS command injection vulnerability detected through measurable response time delays caused by injected sleep or ping commands, strongly indicating that shell commands execute on the server even though output is not directly visible in responses.',
176
183
  severity: 'high',
184
+ levelId: 2,
177
185
  category: 'injection',
178
186
  scanner: 'command-injection',
179
187
  cvss: {
@@ -191,11 +199,12 @@ export const INJECTION_VULNERABILITIES: Record<string, VulnerabilityDefinition>
191
199
  },
192
200
 
193
201
  [VulnerabilityCode.CMDI_ERROR_BASED]: {
194
- id: 9,
202
+ id: 308,
195
203
  code: VulnerabilityCode.CMDI_ERROR_BASED,
196
204
  title: 'OS Command Injection - Error Based',
197
205
  description: 'Potential OS command injection vulnerability indicated by distinctive error messages or system-level exceptions in the application response when malformed shell payloads are submitted, suggesting command execution attempts reach the operating system interpreter.',
198
206
  severity: 'medium',
207
+ levelId: 3,
199
208
  category: 'injection',
200
209
  scanner: 'command-injection',
201
210
  cvss: {
@@ -216,11 +225,12 @@ export const INJECTION_VULNERABILITIES: Record<string, VulnerabilityDefinition>
216
225
  // SERVER-SIDE TEMPLATE INJECTION
217
226
  // ========================================
218
227
  [VulnerabilityCode.SSTI_JINJA2]: {
219
- id: 10,
228
+ id: 309,
220
229
  code: VulnerabilityCode.SSTI_JINJA2,
221
230
  title: 'Server-Side Template Injection - Jinja2',
222
231
  description: 'Critical server-side template injection vulnerability in Jinja2 (Python/Flask) where user input is processed as template code, enabling attackers to execute arbitrary Python code on the server through template expressions like {{config}} or {{request.application.__globals__}}.',
223
232
  severity: 'critical',
233
+ levelId: 1,
224
234
  category: 'injection',
225
235
  scanner: 'ssti',
226
236
  cvss: {
@@ -238,11 +248,12 @@ export const INJECTION_VULNERABILITIES: Record<string, VulnerabilityDefinition>
238
248
  },
239
249
 
240
250
  [VulnerabilityCode.SSTI_TWIG]: {
241
- id: 11,
251
+ id: 310,
242
252
  code: VulnerabilityCode.SSTI_TWIG,
243
253
  title: 'Server-Side Template Injection - Twig',
244
254
  description: 'Critical server-side template injection vulnerability in Twig (PHP/Symfony) where user input is evaluated as template expressions, allowing attackers to execute arbitrary PHP code on the server through filter chains and object method invocations within template syntax.',
245
255
  severity: 'critical',
256
+ levelId: 1,
246
257
  category: 'injection',
247
258
  scanner: 'ssti',
248
259
  cvss: {
@@ -260,11 +271,12 @@ export const INJECTION_VULNERABILITIES: Record<string, VulnerabilityDefinition>
260
271
  },
261
272
 
262
273
  [VulnerabilityCode.SSTI_FREEMARKER]: {
263
- id: 12,
274
+ id: 311,
264
275
  code: VulnerabilityCode.SSTI_FREEMARKER,
265
276
  title: 'Server-Side Template Injection - FreeMarker',
266
277
  description: 'Critical server-side template injection vulnerability in FreeMarker (Java) where user-controlled data is interpreted as template directives, enabling remote code execution through Java class instantiation and method invocation via FreeMarker built-in expressions.',
267
278
  severity: 'critical',
279
+ levelId: 1,
268
280
  category: 'injection',
269
281
  scanner: 'ssti',
270
282
  cvss: {
@@ -282,11 +294,12 @@ export const INJECTION_VULNERABILITIES: Record<string, VulnerabilityDefinition>
282
294
  },
283
295
 
284
296
  [VulnerabilityCode.SSTI_GENERIC]: {
285
- id: 13,
297
+ id: 312,
286
298
  code: VulnerabilityCode.SSTI_GENERIC,
287
299
  title: 'Server-Side Template Injection - Generic',
288
300
  description: 'Server-side template injection vulnerability detected where user input is being processed by a template engine, potentially allowing code execution. The specific template engine could not be determined, but mathematical expression evaluation confirms server-side processing of user input.',
289
301
  severity: 'high',
302
+ levelId: 2,
290
303
  category: 'injection',
291
304
  scanner: 'ssti',
292
305
  cvss: {
@@ -304,11 +317,12 @@ export const INJECTION_VULNERABILITIES: Record<string, VulnerabilityDefinition>
304
317
  },
305
318
 
306
319
  [VulnerabilityCode.SSTI_VELOCITY]: {
307
- id: 14,
320
+ id: 313,
308
321
  code: VulnerabilityCode.SSTI_VELOCITY,
309
322
  title: 'Server-Side Template Injection - Velocity',
310
323
  description: 'Critical server-side template injection vulnerability in Apache Velocity (Java) where user-controlled data is processed as template directives, enabling arbitrary Java code execution through Velocity Template Language expressions and class instantiation.',
311
324
  severity: 'critical',
325
+ levelId: 1,
312
326
  category: 'injection',
313
327
  scanner: 'ssti',
314
328
  cvss: {
@@ -326,11 +340,12 @@ export const INJECTION_VULNERABILITIES: Record<string, VulnerabilityDefinition>
326
340
  },
327
341
 
328
342
  [VulnerabilityCode.SSTI_THYMELEAF]: {
329
- id: 15,
343
+ id: 314,
330
344
  code: VulnerabilityCode.SSTI_THYMELEAF,
331
345
  title: 'Server-Side Template Injection - Thymeleaf',
332
346
  description: 'Critical server-side template injection vulnerability in Thymeleaf (Spring/Java) where user input is processed as template expressions, enabling remote code execution through SpEL (Spring Expression Language) injection in template attributes.',
333
347
  severity: 'critical',
348
+ levelId: 1,
334
349
  category: 'injection',
335
350
  scanner: 'ssti',
336
351
  cvss: {
@@ -348,11 +363,12 @@ export const INJECTION_VULNERABILITIES: Record<string, VulnerabilityDefinition>
348
363
  },
349
364
 
350
365
  [VulnerabilityCode.SSTI_ERB]: {
351
- id: 16,
366
+ id: 315,
352
367
  code: VulnerabilityCode.SSTI_ERB,
353
368
  title: 'Server-Side Template Injection - ERB',
354
369
  description: 'Critical server-side template injection vulnerability in ERB (Ruby on Rails) where user input is embedded in ERB templates and executed as Ruby code, enabling arbitrary system command execution and complete server compromise through Ruby runtime access.',
355
370
  severity: 'critical',
371
+ levelId: 1,
356
372
  category: 'injection',
357
373
  scanner: 'ssti',
358
374
  cvss: {
@@ -370,11 +386,12 @@ export const INJECTION_VULNERABILITIES: Record<string, VulnerabilityDefinition>
370
386
  },
371
387
 
372
388
  [VulnerabilityCode.SSTI_EJS]: {
373
- id: 17,
389
+ id: 316,
374
390
  code: VulnerabilityCode.SSTI_EJS,
375
391
  title: 'Server-Side Template Injection - EJS',
376
392
  description: 'Critical server-side template injection vulnerability in EJS (Node.js) where user-controlled data is processed as template code, allowing arbitrary JavaScript execution on the server through embedded JavaScript expressions and access to Node.js runtime.',
377
393
  severity: 'critical',
394
+ levelId: 1,
378
395
  category: 'injection',
379
396
  scanner: 'ssti',
380
397
  cvss: {
@@ -392,11 +409,12 @@ export const INJECTION_VULNERABILITIES: Record<string, VulnerabilityDefinition>
392
409
  },
393
410
 
394
411
  [VulnerabilityCode.SSTI_PUG]: {
395
- id: 18,
412
+ id: 317,
396
413
  code: VulnerabilityCode.SSTI_PUG,
397
414
  title: 'Server-Side Template Injection - Pug/Jade',
398
415
  description: 'Critical server-side template injection vulnerability in Pug (formerly Jade, Node.js) where user input is interpreted as template syntax, enabling arbitrary JavaScript code execution through Pug embedded code blocks and access to server-side Node.js environment.',
399
416
  severity: 'critical',
417
+ levelId: 1,
400
418
  category: 'injection',
401
419
  scanner: 'ssti',
402
420
  cvss: {
@@ -414,11 +432,12 @@ export const INJECTION_VULNERABILITIES: Record<string, VulnerabilityDefinition>
414
432
  },
415
433
 
416
434
  [VulnerabilityCode.SSTI_SMARTY]: {
417
- id: 19,
435
+ id: 318,
418
436
  code: VulnerabilityCode.SSTI_SMARTY,
419
437
  title: 'Server-Side Template Injection - Smarty',
420
438
  description: 'Critical server-side template injection vulnerability in Smarty (PHP) where user input is processed as template code, enabling arbitrary PHP code execution through Smarty tags and function calls that can lead to complete server compromise.',
421
439
  severity: 'critical',
440
+ levelId: 1,
422
441
  category: 'injection',
423
442
  scanner: 'ssti',
424
443
  cvss: {
@@ -436,11 +455,12 @@ export const INJECTION_VULNERABILITIES: Record<string, VulnerabilityDefinition>
436
455
  },
437
456
 
438
457
  [VulnerabilityCode.SSTI_MAKO]: {
439
- id: 20,
458
+ id: 319,
440
459
  code: VulnerabilityCode.SSTI_MAKO,
441
460
  title: 'Server-Side Template Injection - Mako',
442
461
  description: 'Critical server-side template injection vulnerability in Mako (Python) where user-controlled data is executed as template code, enabling arbitrary Python code execution through Mako expressions and full access to the Python runtime environment.',
443
462
  severity: 'critical',
463
+ levelId: 1,
444
464
  category: 'injection',
445
465
  scanner: 'ssti',
446
466
  cvss: {
@@ -461,11 +481,12 @@ export const INJECTION_VULNERABILITIES: Record<string, VulnerabilityDefinition>
461
481
  // XXE (XML EXTERNAL ENTITY) - Additional
462
482
  // ========================================
463
483
  [VulnerabilityCode.XXE_ERROR_BASED]: {
464
- id: 21,
484
+ id: 320,
465
485
  code: VulnerabilityCode.XXE_ERROR_BASED,
466
486
  title: 'XML External Entity Injection - Error Based',
467
487
  description: 'Error-based XXE vulnerability where file contents can be extracted through parser error messages by crafting malformed external entities that include file data in error output, enabling data exfiltration even when direct output is not reflected.',
468
488
  severity: 'high',
489
+ levelId: 2,
469
490
  category: 'injection',
470
491
  scanner: 'xxe',
471
492
  cvss: {
@@ -483,11 +504,12 @@ export const INJECTION_VULNERABILITIES: Record<string, VulnerabilityDefinition>
483
504
  },
484
505
 
485
506
  [VulnerabilityCode.XXE_PARAMETER_ENTITY]: {
486
- id: 22,
507
+ id: 321,
487
508
  code: VulnerabilityCode.XXE_PARAMETER_ENTITY,
488
509
  title: 'XML External Entity Injection - Parameter Entity',
489
510
  description: 'XXE vulnerability exploiting parameter entities in DTD declarations to exfiltrate data or perform SSRF attacks when regular external entities are blocked, by using percent-encoded entity references within the document type definition.',
490
511
  severity: 'high',
512
+ levelId: 2,
491
513
  category: 'injection',
492
514
  scanner: 'xxe',
493
515
  cvss: {
@@ -508,11 +530,12 @@ export const INJECTION_VULNERABILITIES: Record<string, VulnerabilityDefinition>
508
530
  // LOCAL FILE INCLUSION - Additional
509
531
  // ========================================
510
532
  [VulnerabilityCode.LFI_FILTER_BYPASS]: {
511
- id: 23,
533
+ id: 322,
512
534
  code: VulnerabilityCode.LFI_FILTER_BYPASS,
513
535
  title: 'Local File Inclusion - Filter Bypass',
514
536
  description: 'Local file inclusion vulnerability that bypasses input validation filters through encoding tricks (URL encoding, double encoding, null bytes), alternate path separators, or case manipulation to access files despite security controls.',
515
537
  severity: 'high',
538
+ levelId: 2,
516
539
  category: 'file_inclusion',
517
540
  scanner: 'local-file-inclusion',
518
541
  cvss: {
@@ -530,11 +553,12 @@ export const INJECTION_VULNERABILITIES: Record<string, VulnerabilityDefinition>
530
553
  },
531
554
 
532
555
  [VulnerabilityCode.LFI_PROC_DISCLOSURE]: {
533
- id: 24,
556
+ id: 323,
534
557
  code: VulnerabilityCode.LFI_PROC_DISCLOSURE,
535
558
  title: 'Local File Inclusion - Process Information Disclosure',
536
559
  description: 'LFI vulnerability enabling access to /proc filesystem on Linux systems, exposing process memory maps, environment variables with credentials, command line arguments, and other runtime information that can reveal secrets and aid further attacks.',
537
560
  severity: 'high',
561
+ levelId: 2,
538
562
  category: 'file_inclusion',
539
563
  scanner: 'local-file-inclusion',
540
564
  cvss: {
@@ -555,11 +579,12 @@ export const INJECTION_VULNERABILITIES: Record<string, VulnerabilityDefinition>
555
579
  // XXE (XML EXTERNAL ENTITY)
556
580
  // ========================================
557
581
  [VulnerabilityCode.XXE_CLASSIC]: {
558
- id: 25,
582
+ id: 324,
559
583
  code: VulnerabilityCode.XXE_CLASSIC,
560
584
  title: 'XML External Entity Injection - Classic',
561
585
  description: 'Classic XXE vulnerability where external XML entities are processed by the parser, allowing attackers to read local files like /etc/passwd or application configuration files by defining external entities that reference file:// protocol URIs in the XML document type definition.',
562
586
  severity: 'high',
587
+ levelId: 2,
563
588
  category: 'injection',
564
589
  scanner: 'xxe',
565
590
  cvss: {
@@ -577,11 +602,12 @@ export const INJECTION_VULNERABILITIES: Record<string, VulnerabilityDefinition>
577
602
  },
578
603
 
579
604
  [VulnerabilityCode.XXE_BLIND]: {
580
- id: 26,
605
+ id: 325,
581
606
  code: VulnerabilityCode.XXE_BLIND,
582
607
  title: 'XML External Entity Injection - Blind',
583
608
  description: 'Blind XXE vulnerability where external entities are processed but file contents are not directly returned in the response. Exploitation requires out-of-band techniques like error-based extraction or HTTP callbacks to exfiltrate data from the target server.',
584
609
  severity: 'high',
610
+ levelId: 2,
585
611
  category: 'injection',
586
612
  scanner: 'xxe',
587
613
  cvss: {
@@ -599,11 +625,12 @@ export const INJECTION_VULNERABILITIES: Record<string, VulnerabilityDefinition>
599
625
  },
600
626
 
601
627
  [VulnerabilityCode.XXE_OOB]: {
602
- id: 27,
628
+ id: 326,
603
629
  code: VulnerabilityCode.XXE_OOB,
604
630
  title: 'XML External Entity Injection - Out-of-Band',
605
631
  description: 'Critical out-of-band XXE vulnerability confirmed through external HTTP/DNS callbacks, proving the XML parser fetches external resources. This enables data exfiltration through URL parameters and server-side request forgery attacks against internal network resources.',
606
632
  severity: 'critical',
633
+ levelId: 1,
607
634
  category: 'injection',
608
635
  scanner: 'xxe',
609
636
  cvss: {
@@ -625,11 +652,12 @@ export const INJECTION_VULNERABILITIES: Record<string, VulnerabilityDefinition>
625
652
  // LOCAL FILE INCLUSION
626
653
  // ========================================
627
654
  [VulnerabilityCode.LFI_PATH_TRAVERSAL]: {
628
- id: 28,
655
+ id: 327,
629
656
  code: VulnerabilityCode.LFI_PATH_TRAVERSAL,
630
657
  title: 'Local File Inclusion - Path Traversal',
631
658
  description: 'Path traversal vulnerability allowing attackers to read arbitrary files on the server by manipulating file path parameters with directory traversal sequences like ../ to escape the intended directory and access sensitive system or application configuration files.',
632
659
  severity: 'high',
660
+ levelId: 2,
633
661
  category: 'file_inclusion',
634
662
  scanner: 'local-file-inclusion',
635
663
  cvss: {
@@ -648,11 +676,12 @@ export const INJECTION_VULNERABILITIES: Record<string, VulnerabilityDefinition>
648
676
  },
649
677
 
650
678
  [VulnerabilityCode.LFI_SOURCE_DISCLOSURE]: {
651
- id: 29,
679
+ id: 328,
652
680
  code: VulnerabilityCode.LFI_SOURCE_DISCLOSURE,
653
681
  title: 'Local File Inclusion - Source Code Disclosure',
654
682
  description: 'Critical source code disclosure vulnerability where application source files can be read through file inclusion, exposing proprietary code, hardcoded credentials, API keys, database connection strings, and security implementation details that facilitate further attacks.',
655
683
  severity: 'high',
684
+ levelId: 2,
656
685
  category: 'file_inclusion',
657
686
  scanner: 'local-file-inclusion',
658
687
  cvss: {
@@ -670,12 +699,13 @@ export const INJECTION_VULNERABILITIES: Record<string, VulnerabilityDefinition>
670
699
  remediation: 'Use allowlist validation for file access. Store source files outside web root. Implement proper access controls on file reading functionality. Remove any debug endpoints that read files.',
671
700
  },
672
701
 
673
- [VulnerabilityCode.LFI_WRAPPER_PROTOCOL]: {
674
- id: 30,
675
- code: VulnerabilityCode.LFI_WRAPPER_PROTOCOL,
676
- title: 'Local File Inclusion - PHP Wrapper Protocol',
702
+ [VulnerabilityCode.LFI_WRAPPER_PROTOCOL]: {
703
+ id: 329,
704
+ code: VulnerabilityCode.LFI_WRAPPER_PROTOCOL,
705
+ title: 'Local File Inclusion - PHP Wrapper Protocol',
677
706
  description: 'PHP wrapper protocol exploitation where filter or data wrappers like php://filter or php://input can be used to read source files as base64, write arbitrary files, or achieve remote code execution through deserialization when phar:// wrapper is enabled.',
678
707
  severity: 'critical',
708
+ levelId: 1,
679
709
  category: 'file_inclusion',
680
710
  scanner: 'local-file-inclusion',
681
711
  cvss: {
@@ -689,97 +719,101 @@ export const INJECTION_VULNERABILITIES: Record<string, VulnerabilityDefinition>
689
719
  owasp: [
690
720
  { id: 'A01:2021', name: 'Broken Access Control', url: 'https://owasp.org/Top10/A01_2021-Broken_Access_Control/' },
691
721
  ],
692
- remediation: 'Disable allow_url_include and allow_url_fopen in PHP configuration. Filter and validate all file path inputs. Block protocol wrappers in user input. Use allowlist for file access.',
693
- },
694
-
695
- [VulnerabilityCode.XPATH_AUTH_BYPASS]: {
696
- id: 136,
697
- code: VulnerabilityCode.XPATH_AUTH_BYPASS,
698
- title: 'XPath Injection - Authentication Bypass',
699
- description: 'XPath injection vulnerability where crafted input manipulates XPath queries to bypass authentication or authorization checks, allowing attackers to log in as other users or access protected resources without valid credentials.',
700
- severity: 'high',
701
- category: 'injection',
702
- scanner: 'xpath-injection',
703
- cvss: {
704
- score: 8.1,
705
- vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N',
706
- severity: 'HIGH',
707
- },
708
- cwe: [
709
- { id: 'CWE-643', name: 'Improper Neutralization of XPath Expression', url: 'https://cwe.mitre.org/data/definitions/643.html' },
710
- ],
711
- owasp: [
712
- { id: 'A03:2021', name: 'Injection', url: 'https://owasp.org/Top10/A03_2021-Injection/' },
713
- ],
714
- remediation: 'Use parameterized XPath queries or safe APIs that separate data from query logic. Validate and constrain user input for XPath contexts. Use allowlists and avoid dynamic XPath string concatenation.',
715
- },
716
-
717
- [VulnerabilityCode.XPATH_DATA_EXTRACTION]: {
718
- id: 137,
719
- code: VulnerabilityCode.XPATH_DATA_EXTRACTION,
720
- title: 'XPath Injection - Data Extraction',
721
- description: 'XPath injection vulnerability that allows attackers to read or enumerate sensitive XML data by manipulating query predicates, leading to disclosure of user data, configuration, or credentials stored in XML-backed systems.',
722
- severity: 'high',
723
- category: 'injection',
724
- scanner: 'xpath-injection',
725
- cvss: {
726
- score: 7.5,
727
- vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N',
728
- severity: 'HIGH',
729
- },
730
- cwe: [
731
- { id: 'CWE-643', name: 'Improper Neutralization of XPath Expression', url: 'https://cwe.mitre.org/data/definitions/643.html' },
732
- ],
733
- owasp: [
734
- { id: 'A03:2021', name: 'Injection', url: 'https://owasp.org/Top10/A03_2021-Injection/' },
735
- ],
736
- remediation: 'Use safe XPath APIs with variables/bind parameters. Apply strict input validation and encoding for XPath contexts. Restrict accessible XML data and apply least-privilege access controls.',
737
- },
738
-
739
- [VulnerabilityCode.XPATH_BLIND]: {
740
- id: 138,
741
- code: VulnerabilityCode.XPATH_BLIND,
742
- title: 'XPath Injection - Blind',
743
- description: 'Blind XPath injection vulnerability where attackers infer query results through boolean or timing differences, enabling gradual extraction of sensitive XML data despite no direct response output.',
744
- severity: 'medium',
745
- category: 'injection',
746
- scanner: 'xpath-injection',
747
- cvss: {
748
- score: 6.1,
749
- vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N',
750
- severity: 'MEDIUM',
751
- },
752
- cwe: [
753
- { id: 'CWE-643', name: 'Improper Neutralization of XPath Expression', url: 'https://cwe.mitre.org/data/definitions/643.html' },
754
- ],
755
- owasp: [
756
- { id: 'A03:2021', name: 'Injection', url: 'https://owasp.org/Top10/A03_2021-Injection/' },
757
- ],
758
- remediation: 'Use parameterized XPath queries and input validation. Normalize error and response behaviors to reduce side-channel differences. Apply rate limiting to limit inference attacks.',
759
- },
760
-
761
- [VulnerabilityCode.XPATH_ERROR_BASED]: {
762
- id: 139,
763
- code: VulnerabilityCode.XPATH_ERROR_BASED,
764
- title: 'XPath Injection - Error Based',
765
- description: 'XPath injection vulnerability where malformed input triggers verbose error messages that reveal query structure or XML data, enabling attackers to craft precise XPath exploits or extract sensitive information.',
766
- severity: 'medium',
767
- category: 'injection',
768
- scanner: 'xpath-injection',
769
- cvss: {
770
- score: 5.9,
771
- vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N',
772
- severity: 'MEDIUM',
773
- },
774
- cwe: [
775
- { id: 'CWE-643', name: 'Improper Neutralization of XPath Expression', url: 'https://cwe.mitre.org/data/definitions/643.html' },
776
- ],
777
- owasp: [
778
- { id: 'A03:2021', name: 'Injection', url: 'https://owasp.org/Top10/A03_2021-Injection/' },
779
- ],
780
- remediation: 'Suppress detailed XPath error messages in production. Use safe XPath APIs and validation to prevent injection. Implement centralized error handling with generic responses.',
781
- },
782
- };
722
+ remediation: 'Disable allow_url_include and allow_url_fopen in PHP configuration. Filter and validate all file path inputs. Block protocol wrappers in user input. Use allowlist for file access.',
723
+ },
724
+
725
+ [VulnerabilityCode.XPATH_AUTH_BYPASS]: {
726
+ id: 330,
727
+ code: VulnerabilityCode.XPATH_AUTH_BYPASS,
728
+ title: 'XPath Injection - Authentication Bypass',
729
+ description: 'XPath injection vulnerability where crafted input manipulates XPath queries to bypass authentication or authorization checks, allowing attackers to log in as other users or access protected resources without valid credentials.',
730
+ severity: 'high',
731
+ levelId: 2,
732
+ category: 'injection',
733
+ scanner: 'xpath-injection',
734
+ cvss: {
735
+ score: 8.1,
736
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N',
737
+ severity: 'HIGH',
738
+ },
739
+ cwe: [
740
+ { id: 'CWE-643', name: 'Improper Neutralization of XPath Expression', url: 'https://cwe.mitre.org/data/definitions/643.html' },
741
+ ],
742
+ owasp: [
743
+ { id: 'A03:2021', name: 'Injection', url: 'https://owasp.org/Top10/A03_2021-Injection/' },
744
+ ],
745
+ remediation: 'Use parameterized XPath queries or safe APIs that separate data from query logic. Validate and constrain user input for XPath contexts. Use allowlists and avoid dynamic XPath string concatenation.',
746
+ },
747
+
748
+ [VulnerabilityCode.XPATH_DATA_EXTRACTION]: {
749
+ id: 331,
750
+ code: VulnerabilityCode.XPATH_DATA_EXTRACTION,
751
+ title: 'XPath Injection - Data Extraction',
752
+ description: 'XPath injection vulnerability that allows attackers to read or enumerate sensitive XML data by manipulating query predicates, leading to disclosure of user data, configuration, or credentials stored in XML-backed systems.',
753
+ severity: 'high',
754
+ levelId: 2,
755
+ category: 'injection',
756
+ scanner: 'xpath-injection',
757
+ cvss: {
758
+ score: 7.5,
759
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N',
760
+ severity: 'HIGH',
761
+ },
762
+ cwe: [
763
+ { id: 'CWE-643', name: 'Improper Neutralization of XPath Expression', url: 'https://cwe.mitre.org/data/definitions/643.html' },
764
+ ],
765
+ owasp: [
766
+ { id: 'A03:2021', name: 'Injection', url: 'https://owasp.org/Top10/A03_2021-Injection/' },
767
+ ],
768
+ remediation: 'Use safe XPath APIs with variables/bind parameters. Apply strict input validation and encoding for XPath contexts. Restrict accessible XML data and apply least-privilege access controls.',
769
+ },
770
+
771
+ [VulnerabilityCode.XPATH_BLIND]: {
772
+ id: 332,
773
+ code: VulnerabilityCode.XPATH_BLIND,
774
+ title: 'XPath Injection - Blind',
775
+ description: 'Blind XPath injection vulnerability where attackers infer query results through boolean or timing differences, enabling gradual extraction of sensitive XML data despite no direct response output.',
776
+ severity: 'medium',
777
+ levelId: 3,
778
+ category: 'injection',
779
+ scanner: 'xpath-injection',
780
+ cvss: {
781
+ score: 6.1,
782
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N',
783
+ severity: 'MEDIUM',
784
+ },
785
+ cwe: [
786
+ { id: 'CWE-643', name: 'Improper Neutralization of XPath Expression', url: 'https://cwe.mitre.org/data/definitions/643.html' },
787
+ ],
788
+ owasp: [
789
+ { id: 'A03:2021', name: 'Injection', url: 'https://owasp.org/Top10/A03_2021-Injection/' },
790
+ ],
791
+ remediation: 'Use parameterized XPath queries and input validation. Normalize error and response behaviors to reduce side-channel differences. Apply rate limiting to limit inference attacks.',
792
+ },
793
+
794
+ [VulnerabilityCode.XPATH_ERROR_BASED]: {
795
+ id: 333,
796
+ code: VulnerabilityCode.XPATH_ERROR_BASED,
797
+ title: 'XPath Injection - Error Based',
798
+ description: 'XPath injection vulnerability where malformed input triggers verbose error messages that reveal query structure or XML data, enabling attackers to craft precise XPath exploits or extract sensitive information.',
799
+ severity: 'medium',
800
+ levelId: 3,
801
+ category: 'injection',
802
+ scanner: 'xpath-injection',
803
+ cvss: {
804
+ score: 5.9,
805
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N',
806
+ severity: 'MEDIUM',
807
+ },
808
+ cwe: [
809
+ { id: 'CWE-643', name: 'Improper Neutralization of XPath Expression', url: 'https://cwe.mitre.org/data/definitions/643.html' },
810
+ ],
811
+ owasp: [
812
+ { id: 'A03:2021', name: 'Injection', url: 'https://owasp.org/Top10/A03_2021-Injection/' },
813
+ ],
814
+ remediation: 'Suppress detailed XPath error messages in production. Use safe XPath APIs and validation to prevent injection. Implement centralized error handling with generic responses.',
815
+ },
816
+ };
783
817
 
784
818
  export default INJECTION_VULNERABILITIES;
785
819