@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 CONFIG_VULNERABILITIES: Record<string, VulnerabilityDefinition> = {
12
12
  // SECURITY HEADERS
13
13
  // ========================================
14
14
  [VulnerabilityCode.HEADER_MISSING_CSP]: {
15
- id: 69,
15
+ id: 200,
16
16
  code: VulnerabilityCode.HEADER_MISSING_CSP,
17
17
  title: 'Missing Security Header - Content-Security-Policy',
18
18
  description: 'The application does not implement Content-Security-Policy header, leaving it vulnerable to cross-site scripting attacks that could be mitigated by restricting the sources from which scripts, styles, and other resources can be loaded into the page.',
19
19
  severity: 'medium',
20
+ levelId: 3,
20
21
  category: 'configuration',
21
22
  scanner: 'security-headers',
22
23
  cvss: {
@@ -33,12 +34,13 @@ export const CONFIG_VULNERABILITIES: Record<string, VulnerabilityDefinition> = {
33
34
  remediation: 'Implement Content-Security-Policy header with strict directives. Start with default-src self and progressively add required sources. Use nonce-based CSP for inline scripts.',
34
35
  },
35
36
 
36
- [VulnerabilityCode.HEADER_MISSING_HSTS]: {
37
- id: 70,
38
- code: VulnerabilityCode.HEADER_MISSING_HSTS,
39
- title: 'Missing Security Header - Strict-Transport-Security',
37
+ [VulnerabilityCode.HEADER_MISSING_HSTS]: {
38
+ id: 201,
39
+ code: VulnerabilityCode.HEADER_MISSING_HSTS,
40
+ title: 'Missing Security Header - Strict-Transport-Security',
40
41
  description: 'The application does not implement HSTS (HTTP Strict Transport Security) header, leaving users vulnerable to SSL stripping attacks and man-in-the-middle downgrades from HTTPS to HTTP connections on initial visits or after cookie expiration.',
41
42
  severity: 'medium',
43
+ levelId: 3,
42
44
  category: 'configuration',
43
45
  scanner: 'security-headers',
44
46
  cvss: {
@@ -52,667 +54,1733 @@ export const CONFIG_VULNERABILITIES: Record<string, VulnerabilityDefinition> = {
52
54
  owasp: [
53
55
  { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
54
56
  ],
55
- remediation: 'Add Strict-Transport-Security header with max-age of at least 31536000 (1 year). Include includeSubDomains directive. Consider HSTS preloading for maximum protection.',
56
- },
57
-
58
- [VulnerabilityCode.HEADER_HSTS_BAD_MAX_AGE]: {
59
- id: 1011,
60
- code: VulnerabilityCode.HEADER_HSTS_BAD_MAX_AGE,
61
- title: 'HSTS Misconfiguration - Invalid Max-Age',
62
- description: 'The Strict-Transport-Security header uses an invalid or malformed max-age value, preventing reliable HTTPS enforcement.',
63
- severity: 'medium',
64
- category: 'configuration',
65
- scanner: 'security-headers',
66
- cvss: {
67
- score: 5.3,
68
- vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N',
69
- severity: 'MEDIUM',
70
- },
71
- cwe: [
72
- { id: 'CWE-319', name: 'Cleartext Transmission', url: 'https://cwe.mitre.org/data/definitions/319.html' },
73
- ],
74
- owasp: [
75
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
76
- ],
77
- remediation: 'Set a valid numeric max-age on Strict-Transport-Security (at least 31536000).',
78
- },
79
-
80
- [VulnerabilityCode.HEADER_HSTS_SHORT_MAX_AGE]: {
81
- id: 1012,
82
- code: VulnerabilityCode.HEADER_HSTS_SHORT_MAX_AGE,
83
- title: 'HSTS Misconfiguration - Max-Age Too Short',
84
- description: 'The Strict-Transport-Security header uses a short max-age value that weakens HTTPS enforcement and allows downgrade risk to return quickly.',
85
- severity: 'medium',
86
- category: 'configuration',
87
- scanner: 'security-headers',
88
- cvss: {
89
- score: 5.3,
90
- vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N',
91
- severity: 'MEDIUM',
92
- },
93
- cwe: [
94
- { id: 'CWE-319', name: 'Cleartext Transmission', url: 'https://cwe.mitre.org/data/definitions/319.html' },
95
- ],
96
- owasp: [
97
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
98
- ],
99
- remediation: 'Increase max-age to at least 31536000 (1 year) to provide durable HTTPS enforcement.',
100
- },
101
-
102
- [VulnerabilityCode.HEADER_HSTS_NO_INCLUDESUBDOMAINS]: {
103
- id: 1013,
104
- code: VulnerabilityCode.HEADER_HSTS_NO_INCLUDESUBDOMAINS,
105
- title: 'HSTS Misconfiguration - Missing includeSubDomains',
106
- description: 'The Strict-Transport-Security header is missing includeSubDomains, leaving subdomains unprotected from downgrade and stripping attacks.',
107
- severity: 'medium',
108
- category: 'configuration',
109
- scanner: 'security-headers',
110
- cvss: {
111
- score: 5.3,
112
- vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N',
113
- severity: 'MEDIUM',
114
- },
115
- cwe: [
116
- { id: 'CWE-319', name: 'Cleartext Transmission', url: 'https://cwe.mitre.org/data/definitions/319.html' },
117
- ],
118
- owasp: [
119
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
120
- ],
121
- remediation: 'Add includeSubDomains to the HSTS header to protect all subdomains.',
122
- },
123
-
124
- [VulnerabilityCode.HEADER_HSTS_PRELOAD_LOW_MAX_AGE]: {
125
- id: 1018,
126
- code: VulnerabilityCode.HEADER_HSTS_PRELOAD_LOW_MAX_AGE,
127
- title: 'HSTS Preload Requirements Not Met',
128
- description: 'The HSTS header indicates preload intent but does not meet preload requirements, such as a sufficiently long max-age or includeSubDomains, reducing preload effectiveness.',
129
- severity: 'medium',
130
- category: 'configuration',
131
- scanner: 'security-headers',
132
- cvss: {
133
- score: 5.3,
134
- vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N',
135
- severity: 'MEDIUM',
136
- },
137
- cwe: [
138
- { id: 'CWE-319', name: 'Cleartext Transmission', url: 'https://cwe.mitre.org/data/definitions/319.html' },
139
- ],
140
- owasp: [
141
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
142
- ],
143
- remediation: 'Ensure HSTS max-age is at least 31536000, include includeSubDomains, and add preload before submitting to the preload list.',
144
- },
57
+ remediation: 'Add Strict-Transport-Security header with max-age of at least 31536000 (1 year). Include includeSubDomains directive. Consider HSTS preloading for maximum protection.',
58
+ },
59
+
60
+ [VulnerabilityCode.HEADER_HSTS_BAD_MAX_AGE]: {
61
+ id: 202,
62
+ code: VulnerabilityCode.HEADER_HSTS_BAD_MAX_AGE,
63
+ title: 'HSTS Misconfiguration - Invalid Max-Age',
64
+ description: 'The Strict-Transport-Security header uses an invalid or malformed max-age value, preventing reliable HTTPS enforcement.',
65
+ severity: 'medium',
66
+ levelId: 3,
67
+ category: 'configuration',
68
+ scanner: 'security-headers',
69
+ cvss: {
70
+ score: 5.3,
71
+ vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N',
72
+ severity: 'MEDIUM',
73
+ },
74
+ cwe: [
75
+ { id: 'CWE-319', name: 'Cleartext Transmission', url: 'https://cwe.mitre.org/data/definitions/319.html' },
76
+ ],
77
+ owasp: [
78
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
79
+ ],
80
+ remediation: 'Set a valid numeric max-age on Strict-Transport-Security (at least 31536000).',
81
+ },
82
+
83
+ [VulnerabilityCode.HEADER_HSTS_SHORT_MAX_AGE]: {
84
+ id: 203,
85
+ code: VulnerabilityCode.HEADER_HSTS_SHORT_MAX_AGE,
86
+ title: 'HSTS Misconfiguration - Max-Age Too Short',
87
+ description: 'The Strict-Transport-Security header uses a short max-age value that weakens HTTPS enforcement and allows downgrade risk to return quickly.',
88
+ severity: 'medium',
89
+ levelId: 3,
90
+ category: 'configuration',
91
+ scanner: 'security-headers',
92
+ cvss: {
93
+ score: 5.3,
94
+ vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N',
95
+ severity: 'MEDIUM',
96
+ },
97
+ cwe: [
98
+ { id: 'CWE-319', name: 'Cleartext Transmission', url: 'https://cwe.mitre.org/data/definitions/319.html' },
99
+ ],
100
+ owasp: [
101
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
102
+ ],
103
+ remediation: 'Increase max-age to at least 31536000 (1 year) to provide durable HTTPS enforcement.',
104
+ },
105
+
106
+ [VulnerabilityCode.HEADER_HSTS_NO_INCLUDESUBDOMAINS]: {
107
+ id: 204,
108
+ code: VulnerabilityCode.HEADER_HSTS_NO_INCLUDESUBDOMAINS,
109
+ title: 'HSTS Misconfiguration - Missing includeSubDomains',
110
+ description: 'The Strict-Transport-Security header is missing includeSubDomains, leaving subdomains unprotected from downgrade and stripping attacks.',
111
+ severity: 'medium',
112
+ levelId: 3,
113
+ category: 'configuration',
114
+ scanner: 'security-headers',
115
+ cvss: {
116
+ score: 5.3,
117
+ vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N',
118
+ severity: 'MEDIUM',
119
+ },
120
+ cwe: [
121
+ { id: 'CWE-319', name: 'Cleartext Transmission', url: 'https://cwe.mitre.org/data/definitions/319.html' },
122
+ ],
123
+ owasp: [
124
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
125
+ ],
126
+ remediation: 'Add includeSubDomains to the HSTS header to protect all subdomains.',
127
+ },
128
+
129
+ [VulnerabilityCode.HEADER_HSTS_PRELOAD_LOW_MAX_AGE]: {
130
+ id: 205,
131
+ code: VulnerabilityCode.HEADER_HSTS_PRELOAD_LOW_MAX_AGE,
132
+ title: 'HSTS Preload Requirements Not Met',
133
+ description: 'The HSTS header indicates preload intent but does not meet preload requirements, such as a sufficiently long max-age or includeSubDomains, reducing preload effectiveness.',
134
+ severity: 'medium',
135
+ levelId: 3,
136
+ category: 'configuration',
137
+ scanner: 'security-headers',
138
+ cvss: {
139
+ score: 5.3,
140
+ vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N',
141
+ severity: 'MEDIUM',
142
+ },
143
+ cwe: [
144
+ { id: 'CWE-319', name: 'Cleartext Transmission', url: 'https://cwe.mitre.org/data/definitions/319.html' },
145
+ ],
146
+ owasp: [
147
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
148
+ ],
149
+ remediation: 'Ensure HSTS max-age is at least 31536000, include includeSubDomains, and add preload before submitting to the preload list.',
150
+ },
151
+
152
+ [VulnerabilityCode.HEADER_MISSING_XFRAME]: {
153
+ id: 206,
154
+ code: VulnerabilityCode.HEADER_MISSING_XFRAME,
155
+ title: 'Missing Security Header - X-Frame-Options',
156
+ description: 'The application does not set X-Frame-Options header, making it vulnerable to clickjacking attacks where malicious websites can embed the application in invisible iframes and trick users into performing unintended actions through deceptive UI overlays.',
157
+ severity: 'medium',
158
+ levelId: 3,
159
+ category: 'configuration',
160
+ scanner: 'security-headers',
161
+ cvss: {
162
+ score: 4.7,
163
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:N/I:L/A:N',
164
+ severity: 'MEDIUM',
165
+ },
166
+ cwe: [
167
+ { id: 'CWE-1021', name: 'Improper Restriction of Rendered UI Layers', url: 'https://cwe.mitre.org/data/definitions/1021.html' },
168
+ ],
169
+ owasp: [
170
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
171
+ ],
172
+ remediation: 'Set X-Frame-Options header to DENY or SAMEORIGIN. Use Content-Security-Policy frame-ancestors directive for more granular control. Both headers can be used together for compatibility.',
173
+ },
174
+
175
+ [VulnerabilityCode.HEADER_WEAK_CSP]: {
176
+ id: 207,
177
+ code: VulnerabilityCode.HEADER_WEAK_CSP,
178
+ title: 'Weak Content-Security-Policy Configuration',
179
+ description: 'The Content-Security-Policy header contains unsafe directives like unsafe-inline, unsafe-eval, or overly permissive source allowlists that significantly reduce its effectiveness as an XSS mitigation and may create false sense of security.',
180
+ severity: 'medium',
181
+ levelId: 3,
182
+ category: 'configuration',
183
+ scanner: 'security-headers',
184
+ cvss: {
185
+ score: 5.3,
186
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N',
187
+ severity: 'MEDIUM',
188
+ },
189
+ cwe: [
190
+ { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
191
+ ],
192
+ owasp: [
193
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
194
+ ],
195
+ remediation: 'Remove unsafe-inline and unsafe-eval directives. Use nonce-based or hash-based CSP for inline scripts. Restrict source allowlists to specific trusted domains rather than wildcards.',
196
+ },
197
+
198
+ [VulnerabilityCode.HEADER_CSP_REPORT_ONLY]: {
199
+ id: 208,
200
+ code: VulnerabilityCode.HEADER_CSP_REPORT_ONLY,
201
+ title: 'Content-Security-Policy Report-Only Enabled',
202
+ description: 'The Content-Security-Policy header is deployed in report-only mode, which does not enforce protections and allows unsafe content to execute while only logging violations.',
203
+ severity: 'medium',
204
+ levelId: 3,
205
+ category: 'configuration',
206
+ scanner: 'security-headers',
207
+ cvss: {
208
+ score: 5.3,
209
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N',
210
+ severity: 'MEDIUM',
211
+ },
212
+ cwe: [
213
+ { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
214
+ ],
215
+ owasp: [
216
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
217
+ ],
218
+ remediation: 'Switch to enforcing Content-Security-Policy once violations are reviewed. Use report-only during rollout, then enforce with strict directives.',
219
+ },
220
+
221
+ [VulnerabilityCode.HEADER_CSP_WEAK_DIRECTIVES]: {
222
+ id: 209,
223
+ code: VulnerabilityCode.HEADER_CSP_WEAK_DIRECTIVES,
224
+ title: 'Content-Security-Policy Contains Unsafe Directives',
225
+ description: 'The Content-Security-Policy header includes unsafe directives such as unsafe-inline or unsafe-eval that reduce XSS protection and allow risky script execution paths.',
226
+ severity: 'medium',
227
+ levelId: 3,
228
+ category: 'configuration',
229
+ scanner: 'security-headers',
230
+ cvss: {
231
+ score: 5.3,
232
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N',
233
+ severity: 'MEDIUM',
234
+ },
235
+ cwe: [
236
+ { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
237
+ ],
238
+ owasp: [
239
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
240
+ ],
241
+ remediation: 'Remove unsafe-inline and unsafe-eval directives. Replace inline scripts with nonces or hashes and restrict sources to trusted domains.',
242
+ },
243
+
244
+ [VulnerabilityCode.HEADER_CSP_DATA_URI_SCRIPT]: {
245
+ id: 210,
246
+ code: VulnerabilityCode.HEADER_CSP_DATA_URI_SCRIPT,
247
+ title: 'Content-Security-Policy Allows data: in script-src',
248
+ description: 'The CSP allows data: URIs for script execution, which can enable script injection through crafted data URLs and weaken XSS protections.',
249
+ severity: 'medium',
250
+ levelId: 3,
251
+ category: 'configuration',
252
+ scanner: 'security-headers',
253
+ cvss: {
254
+ score: 5.3,
255
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N',
256
+ severity: 'MEDIUM',
257
+ },
258
+ cwe: [
259
+ { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
260
+ ],
261
+ owasp: [
262
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
263
+ ],
264
+ remediation: 'Remove data: from script-src. Use nonce or hash-based CSP for any required inline scripts.',
265
+ },
266
+
267
+ [VulnerabilityCode.HEADER_CSP_BLOB_URI_SCRIPT]: {
268
+ id: 211,
269
+ code: VulnerabilityCode.HEADER_CSP_BLOB_URI_SCRIPT,
270
+ title: 'Content-Security-Policy Allows blob: in script-src',
271
+ description: 'The CSP allows blob: URIs for script execution, which can be abused to load attacker-controlled scripts in some contexts and weaken XSS mitigations.',
272
+ severity: 'medium',
273
+ levelId: 3,
274
+ category: 'configuration',
275
+ scanner: 'security-headers',
276
+ cvss: {
277
+ score: 5.3,
278
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N',
279
+ severity: 'MEDIUM',
280
+ },
281
+ cwe: [
282
+ { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
283
+ ],
284
+ owasp: [
285
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
286
+ ],
287
+ remediation: 'Remove blob: from script-src unless strictly required. Use a narrower allowlist or nonces for trusted scripts.',
288
+ },
289
+
290
+ [VulnerabilityCode.HEADER_CSP_WILDCARD_DEFAULT]: {
291
+ id: 212,
292
+ code: VulnerabilityCode.HEADER_CSP_WILDCARD_DEFAULT,
293
+ title: 'Content-Security-Policy default-src Uses Wildcard',
294
+ description: 'The CSP default-src directive allows all origins, which effectively disables the protection and allows untrusted content to load.',
295
+ severity: 'medium',
296
+ levelId: 3,
297
+ category: 'configuration',
298
+ scanner: 'security-headers',
299
+ cvss: {
300
+ score: 5.3,
301
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N',
302
+ severity: 'MEDIUM',
303
+ },
304
+ cwe: [
305
+ { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
306
+ ],
307
+ owasp: [
308
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
309
+ ],
310
+ remediation: 'Replace wildcard default-src with explicit trusted origins and tighten resource-specific directives.',
311
+ },
312
+
313
+ [VulnerabilityCode.HEADER_CSP_NO_BASE_URI]: {
314
+ id: 213,
315
+ code: VulnerabilityCode.HEADER_CSP_NO_BASE_URI,
316
+ title: 'Content-Security-Policy Missing base-uri Directive',
317
+ description: 'The CSP does not include a base-uri directive, allowing the base URL to be set by injected markup and enabling abuse of relative URL resolution.',
318
+ severity: 'medium',
319
+ levelId: 3,
320
+ category: 'configuration',
321
+ scanner: 'security-headers',
322
+ cvss: {
323
+ score: 5.3,
324
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N',
325
+ severity: 'MEDIUM',
326
+ },
327
+ cwe: [
328
+ { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
329
+ ],
330
+ owasp: [
331
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
332
+ ],
333
+ remediation: 'Add base-uri \'self\' (or a strict allowlist) to CSP to prevent base tag abuse.',
334
+ },
335
+
336
+ [VulnerabilityCode.HEADER_CSP_NO_OBJECT_SRC]: {
337
+ id: 214,
338
+ code: VulnerabilityCode.HEADER_CSP_NO_OBJECT_SRC,
339
+ title: 'Content-Security-Policy Missing object-src Directive',
340
+ description: 'The CSP does not include an object-src directive, allowing embedded objects to load from arbitrary origins and weakening defense-in-depth against plugin-based risks.',
341
+ severity: 'medium',
342
+ levelId: 3,
343
+ category: 'configuration',
344
+ scanner: 'security-headers',
345
+ cvss: {
346
+ score: 5.3,
347
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N',
348
+ severity: 'MEDIUM',
349
+ },
350
+ cwe: [
351
+ { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
352
+ ],
353
+ owasp: [
354
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
355
+ ],
356
+ remediation: 'Add object-src \'none\' (or a strict allowlist) to CSP to prevent plugin content loading.',
357
+ },
358
+
359
+ [VulnerabilityCode.HEADER_CSP_NO_FRAME_ANCESTORS]: {
360
+ id: 215,
361
+ code: VulnerabilityCode.HEADER_CSP_NO_FRAME_ANCESTORS,
362
+ title: 'Content-Security-Policy Missing frame-ancestors Directive',
363
+ description: 'The CSP does not include a frame-ancestors directive, leaving pages potentially frameable and vulnerable to clickjacking attacks.',
364
+ severity: 'medium',
365
+ levelId: 3,
366
+ category: 'configuration',
367
+ scanner: 'security-headers',
368
+ cvss: {
369
+ score: 4.7,
370
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:N/I:L/A:N',
371
+ severity: 'MEDIUM',
372
+ },
373
+ cwe: [
374
+ { id: 'CWE-1021', name: 'Improper Restriction of Rendered UI Layers', url: 'https://cwe.mitre.org/data/definitions/1021.html' },
375
+ ],
376
+ owasp: [
377
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
378
+ ],
379
+ remediation: 'Add frame-ancestors \'none\' or a strict allowlist to CSP to prevent clickjacking.',
380
+ },
381
+
382
+ [VulnerabilityCode.HEADER_CORS_MISCONFIGURED]: {
383
+ id: 216,
384
+ code: VulnerabilityCode.HEADER_CORS_MISCONFIGURED,
385
+ title: 'CORS Misconfiguration',
386
+ description: 'Cross-Origin Resource Sharing is misconfigured with overly permissive Access-Control-Allow-Origin headers including wildcard (*) with credentials, or dynamic reflection of Origin header without proper validation, enabling cross-origin data theft.',
387
+ severity: 'high',
388
+ levelId: 2,
389
+ category: 'configuration',
390
+ scanner: 'security-headers',
391
+ cvss: {
392
+ score: 7.5,
393
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N',
394
+ severity: 'HIGH',
395
+ },
396
+ cwe: [
397
+ { id: 'CWE-942', name: 'Permissive CORS Policy', url: 'https://cwe.mitre.org/data/definitions/942.html' },
398
+ ],
399
+ owasp: [
400
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
401
+ ],
402
+ remediation: 'Implement strict Origin validation with allowlist of trusted domains. Never reflect Origin header without validation. Do not use wildcard with Access-Control-Allow-Credentials.',
403
+ },
404
+
405
+ [VulnerabilityCode.HEADER_CORS_STAR_WITH_CREDENTIALS]: {
406
+ id: 217,
407
+ code: VulnerabilityCode.HEADER_CORS_STAR_WITH_CREDENTIALS,
408
+ title: 'CORS Wildcard With Credentials',
409
+ description: 'Access-Control-Allow-Origin is set to * while Access-Control-Allow-Credentials is enabled, which browsers block but signals a dangerous CORS policy that can be misapplied in some environments.',
410
+ severity: 'high',
411
+ levelId: 2,
412
+ category: 'configuration',
413
+ scanner: 'security-headers',
414
+ cvss: {
415
+ score: 7.5,
416
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N',
417
+ severity: 'HIGH',
418
+ },
419
+ cwe: [
420
+ { id: 'CWE-942', name: 'Permissive CORS Policy', url: 'https://cwe.mitre.org/data/definitions/942.html' },
421
+ ],
422
+ owasp: [
423
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
424
+ ],
425
+ remediation: 'Never use wildcard origins with credentials. Replace * with an explicit allowlist and set Vary: Origin.',
426
+ },
427
+
428
+ [VulnerabilityCode.HEADER_CORS_ORIGIN_REFLECT_NO_VARY]: {
429
+ id: 218,
430
+ code: VulnerabilityCode.HEADER_CORS_ORIGIN_REFLECT_NO_VARY,
431
+ title: 'CORS Origin Reflection Without Vary',
432
+ description: 'The Origin header is reflected in Access-Control-Allow-Origin without Vary: Origin, which can lead to cache poisoning and unintended cross-origin access.',
433
+ severity: 'high',
434
+ levelId: 2,
435
+ category: 'configuration',
436
+ scanner: 'security-headers',
437
+ cvss: {
438
+ score: 7.5,
439
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N',
440
+ severity: 'HIGH',
441
+ },
442
+ cwe: [
443
+ { id: 'CWE-942', name: 'Permissive CORS Policy', url: 'https://cwe.mitre.org/data/definitions/942.html' },
444
+ ],
445
+ owasp: [
446
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
447
+ ],
448
+ remediation: 'Validate origins against an allowlist and always include Vary: Origin when dynamically setting Access-Control-Allow-Origin.',
449
+ },
450
+
451
+ [VulnerabilityCode.HEADER_CORS_NULL_ORIGIN]: {
452
+ id: 219,
453
+ code: VulnerabilityCode.HEADER_CORS_NULL_ORIGIN,
454
+ title: 'CORS Allows Null Origin',
455
+ description: 'Access-Control-Allow-Origin allows the null origin, enabling requests from opaque origins such as sandboxed iframes and file URLs that can be abused to access sensitive data.',
456
+ severity: 'high',
457
+ levelId: 2,
458
+ category: 'configuration',
459
+ scanner: 'security-headers',
460
+ cvss: {
461
+ score: 7.5,
462
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N',
463
+ severity: 'HIGH',
464
+ },
465
+ cwe: [
466
+ { id: 'CWE-942', name: 'Permissive CORS Policy', url: 'https://cwe.mitre.org/data/definitions/942.html' },
467
+ ],
468
+ owasp: [
469
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
470
+ ],
471
+ remediation: 'Remove null from allowed origins. Restrict CORS to explicit trusted domains only.',
472
+ },
473
+
474
+ [VulnerabilityCode.HEADER_CORS_WILDCARD_SUBDOMAIN]: {
475
+ id: 220,
476
+ code: VulnerabilityCode.HEADER_CORS_WILDCARD_SUBDOMAIN,
477
+ title: 'CORS Allows Wildcard Subdomains',
478
+ description: 'CORS policies allow wildcard subdomains that can be abused if any subdomain is compromised or can be controlled by untrusted parties.',
479
+ severity: 'high',
480
+ levelId: 2,
481
+ category: 'configuration',
482
+ scanner: 'security-headers',
483
+ cvss: {
484
+ score: 7.5,
485
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N',
486
+ severity: 'HIGH',
487
+ },
488
+ cwe: [
489
+ { id: 'CWE-942', name: 'Permissive CORS Policy', url: 'https://cwe.mitre.org/data/definitions/942.html' },
490
+ ],
491
+ owasp: [
492
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
493
+ ],
494
+ remediation: 'Replace wildcard subdomains with a strict allowlist of trusted origins.',
495
+ },
496
+
497
+ // ========================================
498
+ // DIRECTORY BROWSING
499
+ // ========================================
500
+ [VulnerabilityCode.DIRBROWSE_GENERIC]: {
501
+ id: 221,
502
+ code: VulnerabilityCode.DIRBROWSE_GENERIC,
503
+ title: 'Directory Listing Enabled (Generic)',
504
+ description: 'Directory listing is enabled and exposes directory contents to unauthenticated visitors, revealing application structure and file names.',
505
+ severity: 'low',
506
+ levelId: 4,
507
+ category: 'configuration',
508
+ scanner: 'directory-browsing',
509
+ cvss: {
510
+ score: 3.7,
511
+ vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N',
512
+ severity: 'LOW',
513
+ },
514
+ cwe: [
515
+ { id: 'CWE-548', name: 'Directory Listing', url: 'https://cwe.mitre.org/data/definitions/548.html' },
516
+ ],
517
+ owasp: [
518
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
519
+ ],
520
+ remediation: 'Disable directory listing in the web server configuration and ensure directories have index files.',
521
+ },
522
+
523
+ [VulnerabilityCode.DIRBROWSE_GENERIC_SENSITIVE]: {
524
+ id: 222,
525
+ code: VulnerabilityCode.DIRBROWSE_GENERIC_SENSITIVE,
526
+ title: 'Directory Listing Exposing Sensitive Content (Generic)',
527
+ description: 'Directory listing is enabled on a directory containing sensitive files such as backups, credentials, or configuration artifacts.',
528
+ severity: 'medium',
529
+ levelId: 3,
530
+ category: 'configuration',
531
+ scanner: 'directory-browsing',
532
+ cvss: {
533
+ score: 5.3,
534
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N',
535
+ severity: 'MEDIUM',
536
+ },
537
+ cwe: [
538
+ { id: 'CWE-548', name: 'Directory Listing', url: 'https://cwe.mitre.org/data/definitions/548.html' },
539
+ ],
540
+ owasp: [
541
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
542
+ ],
543
+ remediation: 'Disable directory listing and remove sensitive files from web-accessible directories.',
544
+ },
545
+
546
+ [VulnerabilityCode.DIRBROWSE_APACHE]: {
547
+ id: 223,
548
+ code: VulnerabilityCode.DIRBROWSE_APACHE,
549
+ title: 'Apache Autoindex Enabled',
550
+ description: 'Apache autoindex is enabled, exposing directory contents to unauthenticated visitors.',
551
+ severity: 'low',
552
+ levelId: 4,
553
+ category: 'configuration',
554
+ scanner: 'directory-browsing',
555
+ cvss: {
556
+ score: 3.7,
557
+ vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N',
558
+ severity: 'LOW',
559
+ },
560
+ cwe: [
561
+ { id: 'CWE-548', name: 'Directory Listing', url: 'https://cwe.mitre.org/data/definitions/548.html' },
562
+ ],
563
+ owasp: [
564
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
565
+ ],
566
+ remediation: 'Disable autoindex in Apache (Options -Indexes) and add index files.',
567
+ },
568
+
569
+ [VulnerabilityCode.DIRBROWSE_APACHE_SENSITIVE]: {
570
+ id: 224,
571
+ code: VulnerabilityCode.DIRBROWSE_APACHE_SENSITIVE,
572
+ title: 'Apache Autoindex Exposing Sensitive Content',
573
+ description: 'Apache autoindex is enabled on a directory containing sensitive files such as backups, credentials, or configuration artifacts.',
574
+ severity: 'medium',
575
+ levelId: 3,
576
+ category: 'configuration',
577
+ scanner: 'directory-browsing',
578
+ cvss: {
579
+ score: 5.3,
580
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N',
581
+ severity: 'MEDIUM',
582
+ },
583
+ cwe: [
584
+ { id: 'CWE-548', name: 'Directory Listing', url: 'https://cwe.mitre.org/data/definitions/548.html' },
585
+ ],
586
+ owasp: [
587
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
588
+ ],
589
+ remediation: 'Disable autoindex and remove sensitive files from web-accessible directories.',
590
+ },
591
+
592
+ [VulnerabilityCode.DIRBROWSE_NGINX]: {
593
+ id: 225,
594
+ code: VulnerabilityCode.DIRBROWSE_NGINX,
595
+ title: 'Nginx Autoindex Enabled',
596
+ description: 'Nginx autoindex is enabled, exposing directory contents to unauthenticated visitors.',
597
+ severity: 'low',
598
+ levelId: 4,
599
+ category: 'configuration',
600
+ scanner: 'directory-browsing',
601
+ cvss: {
602
+ score: 3.7,
603
+ vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N',
604
+ severity: 'LOW',
605
+ },
606
+ cwe: [
607
+ { id: 'CWE-548', name: 'Directory Listing', url: 'https://cwe.mitre.org/data/definitions/548.html' },
608
+ ],
609
+ owasp: [
610
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
611
+ ],
612
+ remediation: 'Disable autoindex in nginx (autoindex off) and add index files.',
613
+ },
614
+
615
+ [VulnerabilityCode.DIRBROWSE_NGINX_SENSITIVE]: {
616
+ id: 226,
617
+ code: VulnerabilityCode.DIRBROWSE_NGINX_SENSITIVE,
618
+ title: 'Nginx Autoindex Exposing Sensitive Content',
619
+ description: 'Nginx autoindex is enabled on a directory containing sensitive files such as backups, credentials, or configuration artifacts.',
620
+ severity: 'medium',
621
+ levelId: 3,
622
+ category: 'configuration',
623
+ scanner: 'directory-browsing',
624
+ cvss: {
625
+ score: 5.3,
626
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N',
627
+ severity: 'MEDIUM',
628
+ },
629
+ cwe: [
630
+ { id: 'CWE-548', name: 'Directory Listing', url: 'https://cwe.mitre.org/data/definitions/548.html' },
631
+ ],
632
+ owasp: [
633
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
634
+ ],
635
+ remediation: 'Disable autoindex and remove sensitive files from web-accessible directories.',
636
+ },
637
+
638
+ [VulnerabilityCode.DIRBROWSE_IIS]: {
639
+ id: 227,
640
+ code: VulnerabilityCode.DIRBROWSE_IIS,
641
+ title: 'IIS Directory Browsing Enabled',
642
+ description: 'IIS directory browsing is enabled, exposing directory contents to unauthenticated visitors.',
643
+ severity: 'low',
644
+ levelId: 4,
645
+ category: 'configuration',
646
+ scanner: 'directory-browsing',
647
+ cvss: {
648
+ score: 3.7,
649
+ vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N',
650
+ severity: 'LOW',
651
+ },
652
+ cwe: [
653
+ { id: 'CWE-548', name: 'Directory Listing', url: 'https://cwe.mitre.org/data/definitions/548.html' },
654
+ ],
655
+ owasp: [
656
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
657
+ ],
658
+ remediation: 'Disable directory browsing in IIS and ensure directories have index files.',
659
+ },
660
+
661
+ [VulnerabilityCode.DIRBROWSE_IIS_SENSITIVE]: {
662
+ id: 228,
663
+ code: VulnerabilityCode.DIRBROWSE_IIS_SENSITIVE,
664
+ title: 'IIS Directory Browsing Exposing Sensitive Content',
665
+ description: 'IIS directory browsing is enabled on a directory containing sensitive files such as backups, credentials, or configuration artifacts.',
666
+ severity: 'medium',
667
+ levelId: 3,
668
+ category: 'configuration',
669
+ scanner: 'directory-browsing',
670
+ cvss: {
671
+ score: 5.3,
672
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N',
673
+ severity: 'MEDIUM',
674
+ },
675
+ cwe: [
676
+ { id: 'CWE-548', name: 'Directory Listing', url: 'https://cwe.mitre.org/data/definitions/548.html' },
677
+ ],
678
+ owasp: [
679
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
680
+ ],
681
+ remediation: 'Disable directory browsing and remove sensitive files from web-accessible directories.',
682
+ },
683
+
684
+ [VulnerabilityCode.DIRBROWSE_TOMCAT]: {
685
+ id: 229,
686
+ code: VulnerabilityCode.DIRBROWSE_TOMCAT,
687
+ title: 'Tomcat Directory Listing Enabled',
688
+ description: 'Tomcat directory listing is enabled, exposing directory contents to unauthenticated visitors.',
689
+ severity: 'low',
690
+ levelId: 4,
691
+ category: 'configuration',
692
+ scanner: 'directory-browsing',
693
+ cvss: {
694
+ score: 3.7,
695
+ vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N',
696
+ severity: 'LOW',
697
+ },
698
+ cwe: [
699
+ { id: 'CWE-548', name: 'Directory Listing', url: 'https://cwe.mitre.org/data/definitions/548.html' },
700
+ ],
701
+ owasp: [
702
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
703
+ ],
704
+ remediation: 'Disable directory listings in Tomcat and add index files to web directories.',
705
+ },
706
+
707
+ [VulnerabilityCode.DIRBROWSE_TOMCAT_SENSITIVE]: {
708
+ id: 230,
709
+ code: VulnerabilityCode.DIRBROWSE_TOMCAT_SENSITIVE,
710
+ title: 'Tomcat Directory Listing Exposing Sensitive Content',
711
+ description: 'Tomcat directory listing is enabled on a directory containing sensitive files such as backups, credentials, or configuration artifacts.',
712
+ severity: 'medium',
713
+ levelId: 3,
714
+ category: 'configuration',
715
+ scanner: 'directory-browsing',
716
+ cvss: {
717
+ score: 5.3,
718
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N',
719
+ severity: 'MEDIUM',
720
+ },
721
+ cwe: [
722
+ { id: 'CWE-548', name: 'Directory Listing', url: 'https://cwe.mitre.org/data/definitions/548.html' },
723
+ ],
724
+ owasp: [
725
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
726
+ ],
727
+ remediation: 'Disable directory listings and remove sensitive files from web-accessible directories.',
728
+ },
729
+
730
+ [VulnerabilityCode.DIRBROWSE_CADDY]: {
731
+ id: 231,
732
+ code: VulnerabilityCode.DIRBROWSE_CADDY,
733
+ title: 'Caddy File Server Browsing Enabled',
734
+ description: 'Caddy file server browsing is enabled, exposing directory contents to unauthenticated visitors.',
735
+ severity: 'low',
736
+ levelId: 4,
737
+ category: 'configuration',
738
+ scanner: 'directory-browsing',
739
+ cvss: {
740
+ score: 3.7,
741
+ vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N',
742
+ severity: 'LOW',
743
+ },
744
+ cwe: [
745
+ { id: 'CWE-548', name: 'Directory Listing', url: 'https://cwe.mitre.org/data/definitions/548.html' },
746
+ ],
747
+ owasp: [
748
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
749
+ ],
750
+ remediation: 'Disable file_server browse in Caddy or restrict browsing to trusted users.',
751
+ },
752
+
753
+ [VulnerabilityCode.DIRBROWSE_CADDY_SENSITIVE]: {
754
+ id: 232,
755
+ code: VulnerabilityCode.DIRBROWSE_CADDY_SENSITIVE,
756
+ title: 'Caddy File Server Browsing Exposing Sensitive Content',
757
+ description: 'Caddy file server browsing is enabled on a directory containing sensitive files such as backups, credentials, or configuration artifacts.',
758
+ severity: 'medium',
759
+ levelId: 3,
760
+ category: 'configuration',
761
+ scanner: 'directory-browsing',
762
+ cvss: {
763
+ score: 5.3,
764
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N',
765
+ severity: 'MEDIUM',
766
+ },
767
+ cwe: [
768
+ { id: 'CWE-548', name: 'Directory Listing', url: 'https://cwe.mitre.org/data/definitions/548.html' },
769
+ ],
770
+ owasp: [
771
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
772
+ ],
773
+ remediation: 'Disable file_server browse and remove sensitive files from web-accessible directories.',
774
+ },
775
+
776
+ [VulnerabilityCode.DIRBROWSE_WEBDAV]: {
777
+ id: 233,
778
+ code: VulnerabilityCode.DIRBROWSE_WEBDAV,
779
+ title: 'WebDAV Directory Listing Enabled',
780
+ description: 'WebDAV responses expose directory contents, allowing unauthenticated browsing of files and folders.',
781
+ severity: 'low',
782
+ levelId: 4,
783
+ category: 'configuration',
784
+ scanner: 'directory-browsing',
785
+ cvss: {
786
+ score: 3.7,
787
+ vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N',
788
+ severity: 'LOW',
789
+ },
790
+ cwe: [
791
+ { id: 'CWE-548', name: 'Directory Listing', url: 'https://cwe.mitre.org/data/definitions/548.html' },
792
+ ],
793
+ owasp: [
794
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
795
+ ],
796
+ remediation: 'Disable unauthenticated WebDAV browsing or restrict access with authentication and authorization.',
797
+ },
798
+
799
+ [VulnerabilityCode.DIRBROWSE_WEBDAV_SENSITIVE]: {
800
+ id: 234,
801
+ code: VulnerabilityCode.DIRBROWSE_WEBDAV_SENSITIVE,
802
+ title: 'WebDAV Directory Listing Exposing Sensitive Content',
803
+ description: 'WebDAV responses expose directories containing sensitive files such as backups, credentials, or configuration artifacts.',
804
+ severity: 'medium',
805
+ levelId: 3,
806
+ category: 'configuration',
807
+ scanner: 'directory-browsing',
808
+ cvss: {
809
+ score: 5.3,
810
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N',
811
+ severity: 'MEDIUM',
812
+ },
813
+ cwe: [
814
+ { id: 'CWE-548', name: 'Directory Listing', url: 'https://cwe.mitre.org/data/definitions/548.html' },
815
+ ],
816
+ owasp: [
817
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
818
+ ],
819
+ remediation: 'Disable unauthenticated WebDAV browsing and remove sensitive files from exposed directories.',
820
+ },
821
+
822
+ [VulnerabilityCode.DIRBROWSE_S3]: {
823
+ id: 235,
824
+ code: VulnerabilityCode.DIRBROWSE_S3,
825
+ title: 'S3 Bucket Listing Enabled',
826
+ description: 'An S3 bucket listing is exposed, allowing unauthenticated enumeration of object keys.',
827
+ severity: 'low',
828
+ levelId: 4,
829
+ category: 'configuration',
830
+ scanner: 'directory-browsing',
831
+ cvss: {
832
+ score: 3.7,
833
+ vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N',
834
+ severity: 'LOW',
835
+ },
836
+ cwe: [
837
+ { id: 'CWE-200', name: 'Exposure of Sensitive Information to an Unauthorized Actor', url: 'https://cwe.mitre.org/data/definitions/200.html' },
838
+ ],
839
+ owasp: [
840
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
841
+ ],
842
+ remediation: 'Disable public ListBucket access and restrict bucket policies to authorized principals.',
843
+ },
844
+
845
+ [VulnerabilityCode.DIRBROWSE_S3_SENSITIVE]: {
846
+ id: 236,
847
+ code: VulnerabilityCode.DIRBROWSE_S3_SENSITIVE,
848
+ title: 'S3 Bucket Listing Exposing Sensitive Content',
849
+ description: 'An S3 bucket listing is exposed and includes sensitive objects such as backups, credentials, or configuration artifacts.',
850
+ severity: 'medium',
851
+ levelId: 3,
852
+ category: 'configuration',
853
+ scanner: 'directory-browsing',
854
+ cvss: {
855
+ score: 5.3,
856
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N',
857
+ severity: 'MEDIUM',
858
+ },
859
+ cwe: [
860
+ { id: 'CWE-200', name: 'Exposure of Sensitive Information to an Unauthorized Actor', url: 'https://cwe.mitre.org/data/definitions/200.html' },
861
+ ],
862
+ owasp: [
863
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
864
+ ],
865
+ remediation: 'Remove public ListBucket access and rotate any exposed credentials or secrets.',
866
+ },
867
+
868
+ [VulnerabilityCode.DIRBROWSE_GCS]: {
869
+ id: 237,
870
+ code: VulnerabilityCode.DIRBROWSE_GCS,
871
+ title: 'GCS Bucket Listing Enabled',
872
+ description: 'A Google Cloud Storage bucket listing is exposed, allowing unauthenticated enumeration of object keys.',
873
+ severity: 'low',
874
+ levelId: 4,
875
+ category: 'configuration',
876
+ scanner: 'directory-browsing',
877
+ cvss: {
878
+ score: 3.7,
879
+ vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N',
880
+ severity: 'LOW',
881
+ },
882
+ cwe: [
883
+ { id: 'CWE-200', name: 'Exposure of Sensitive Information to an Unauthorized Actor', url: 'https://cwe.mitre.org/data/definitions/200.html' },
884
+ ],
885
+ owasp: [
886
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
887
+ ],
888
+ remediation: 'Restrict bucket IAM policies to authorized principals and disable anonymous listing.',
889
+ },
890
+
891
+ [VulnerabilityCode.DIRBROWSE_GCS_SENSITIVE]: {
892
+ id: 238,
893
+ code: VulnerabilityCode.DIRBROWSE_GCS_SENSITIVE,
894
+ title: 'GCS Bucket Listing Exposing Sensitive Content',
895
+ description: 'A Google Cloud Storage bucket listing is exposed and includes sensitive objects such as backups, credentials, or configuration artifacts.',
896
+ severity: 'medium',
897
+ levelId: 3,
898
+ category: 'configuration',
899
+ scanner: 'directory-browsing',
900
+ cvss: {
901
+ score: 5.3,
902
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N',
903
+ severity: 'MEDIUM',
904
+ },
905
+ cwe: [
906
+ { id: 'CWE-200', name: 'Exposure of Sensitive Information to an Unauthorized Actor', url: 'https://cwe.mitre.org/data/definitions/200.html' },
907
+ ],
908
+ owasp: [
909
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
910
+ ],
911
+ remediation: 'Remove public listing access and rotate any exposed credentials or secrets.',
912
+ },
913
+
914
+ [VulnerabilityCode.DIRBROWSE_AZURE_BLOB]: {
915
+ id: 239,
916
+ code: VulnerabilityCode.DIRBROWSE_AZURE_BLOB,
917
+ title: 'Azure Blob Container Listing Enabled',
918
+ description: 'An Azure Blob container listing is exposed, allowing unauthenticated enumeration of blob names.',
919
+ severity: 'low',
920
+ levelId: 4,
921
+ category: 'configuration',
922
+ scanner: 'directory-browsing',
923
+ cvss: {
924
+ score: 3.7,
925
+ vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N',
926
+ severity: 'LOW',
927
+ },
928
+ cwe: [
929
+ { id: 'CWE-200', name: 'Exposure of Sensitive Information to an Unauthorized Actor', url: 'https://cwe.mitre.org/data/definitions/200.html' },
930
+ ],
931
+ owasp: [
932
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
933
+ ],
934
+ remediation: 'Disable public container listing and restrict access via SAS tokens or RBAC.',
935
+ },
936
+
937
+ [VulnerabilityCode.DIRBROWSE_AZURE_BLOB_SENSITIVE]: {
938
+ id: 240,
939
+ code: VulnerabilityCode.DIRBROWSE_AZURE_BLOB_SENSITIVE,
940
+ title: 'Azure Blob Container Listing Exposing Sensitive Content',
941
+ description: 'An Azure Blob container listing is exposed and includes sensitive blobs such as backups, credentials, or configuration artifacts.',
942
+ severity: 'medium',
943
+ levelId: 3,
944
+ category: 'configuration',
945
+ scanner: 'directory-browsing',
946
+ cvss: {
947
+ score: 5.3,
948
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N',
949
+ severity: 'MEDIUM',
950
+ },
951
+ cwe: [
952
+ { id: 'CWE-200', name: 'Exposure of Sensitive Information to an Unauthorized Actor', url: 'https://cwe.mitre.org/data/definitions/200.html' },
953
+ ],
954
+ owasp: [
955
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
956
+ ],
957
+ remediation: 'Remove public listing access and rotate any exposed credentials or secrets.',
958
+ },
959
+
960
+ // Legacy generic codes (keep for backward compatibility)
961
+ [VulnerabilityCode.DIRBROWSE_ENABLED]: {
962
+ id: 241,
963
+ code: VulnerabilityCode.DIRBROWSE_ENABLED,
964
+ title: 'Directory Listing Enabled',
965
+ description: 'Web server directory listing is enabled, exposing the contents of directories to anyone who browses to them without an index file. This reveals application structure, backup files, configuration files, and potentially sensitive data to attackers.',
966
+ severity: 'low',
967
+ levelId: 4,
968
+ category: 'configuration',
969
+ scanner: 'directory-browsing',
970
+ cvss: {
971
+ score: 3.7,
972
+ vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N',
973
+ severity: 'LOW',
974
+ },
975
+ cwe: [
976
+ { id: 'CWE-548', name: 'Directory Listing', url: 'https://cwe.mitre.org/data/definitions/548.html' },
977
+ ],
978
+ owasp: [
979
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
980
+ ],
981
+ remediation: 'Disable directory listing in web server configuration (Options -Indexes in Apache, autoindex off in nginx). Ensure all directories have proper index files.',
982
+ },
983
+
984
+ [VulnerabilityCode.DIRBROWSE_SENSITIVE]: {
985
+ id: 242,
986
+ code: VulnerabilityCode.DIRBROWSE_SENSITIVE,
987
+ title: 'Directory Listing Exposing Sensitive Content',
988
+ description: 'Directory listing is enabled on a directory containing sensitive files like backups, configuration files, source code, or credentials. This elevates the risk significantly as attackers can directly access sensitive information without guessing filenames.',
989
+ severity: 'medium',
990
+ levelId: 3,
991
+ category: 'configuration',
992
+ scanner: 'directory-browsing',
993
+ cvss: {
994
+ score: 5.3,
995
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N',
996
+ severity: 'MEDIUM',
997
+ },
998
+ cwe: [
999
+ { id: 'CWE-548', name: 'Directory Listing', url: 'https://cwe.mitre.org/data/definitions/548.html' },
1000
+ ],
1001
+ owasp: [
1002
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
1003
+ ],
1004
+ remediation: 'Immediately disable directory listing. Remove sensitive files from web-accessible directories. Implement proper access controls. Audit exposed content for credentials or sensitive data.',
1005
+ },
1006
+
1007
+ // ========================================
1008
+ // CLICKJACKING
1009
+ // ========================================
1010
+ [VulnerabilityCode.CLICK_FRAMEABLE]: {
1011
+ id: 243,
1012
+ code: VulnerabilityCode.CLICK_FRAMEABLE,
1013
+ title: 'Clickjacking - Page Frameable',
1014
+ description: 'The application pages can be embedded in iframes on malicious websites, enabling clickjacking attacks where attackers overlay transparent frames over deceptive UI elements to trick users into clicking hidden buttons or links that perform unintended actions.',
1015
+ severity: 'medium',
1016
+ levelId: 3,
1017
+ category: 'configuration',
1018
+ scanner: 'security-headers',
1019
+ cvss: {
1020
+ score: 4.7,
1021
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:N/I:L/A:N',
1022
+ severity: 'MEDIUM',
1023
+ },
1024
+ cwe: [
1025
+ { id: 'CWE-1021', name: 'Improper Restriction of Rendered UI Layers', url: 'https://cwe.mitre.org/data/definitions/1021.html' },
1026
+ ],
1027
+ owasp: [
1028
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
1029
+ ],
1030
+ remediation: 'Implement X-Frame-Options header with DENY or SAMEORIGIN value. Use Content-Security-Policy frame-ancestors directive. Add JavaScript frame-busting code as defense in depth.',
1031
+ },
1032
+
1033
+ // ========================================
1034
+ // DESERIALIZATION
1035
+ // ========================================
1036
+ [VulnerabilityCode.DESER_JAVA]: {
1037
+ id: 244,
1038
+ code: VulnerabilityCode.DESER_JAVA,
1039
+ title: 'Insecure Deserialization - Java',
1040
+ description: 'Critical Java deserialization vulnerability where untrusted serialized objects are processed, allowing attackers to achieve remote code execution through gadget chains in common libraries like Apache Commons Collections, Spring Framework, or other classpath dependencies.',
1041
+ severity: 'critical',
1042
+ levelId: 1,
1043
+ category: 'injection',
1044
+ scanner: 'deserialization',
1045
+ cvss: {
1046
+ score: 9.8,
1047
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H',
1048
+ severity: 'CRITICAL',
1049
+ },
1050
+ cwe: [
1051
+ { id: 'CWE-502', name: 'Deserialization of Untrusted Data', url: 'https://cwe.mitre.org/data/definitions/502.html' },
1052
+ ],
1053
+ owasp: [
1054
+ { id: 'A08:2021', name: 'Software and Data Integrity Failures', url: 'https://owasp.org/Top10/A08_2021-Software_and_Data_Integrity_Failures/' },
1055
+ ],
1056
+ remediation: 'Do not deserialize untrusted data. Use JSON or XML instead of Java serialization. Implement ObjectInputFilter (JEP 290) to restrict deserializable classes. Remove vulnerable gadget libraries.',
1057
+ },
1058
+
1059
+ [VulnerabilityCode.DESER_PHP]: {
1060
+ id: 245,
1061
+ code: VulnerabilityCode.DESER_PHP,
1062
+ title: 'Insecure Deserialization - PHP',
1063
+ description: 'Critical PHP deserialization vulnerability where unserialize() processes attacker-controlled data, enabling object injection attacks through magic methods like __wakeup(), __destruct(), or __toString() in application or framework classes for remote code execution.',
1064
+ severity: 'critical',
1065
+ levelId: 1,
1066
+ category: 'injection',
1067
+ scanner: 'deserialization',
1068
+ cvss: {
1069
+ score: 9.8,
1070
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H',
1071
+ severity: 'CRITICAL',
1072
+ },
1073
+ cwe: [
1074
+ { id: 'CWE-502', name: 'Deserialization of Untrusted Data', url: 'https://cwe.mitre.org/data/definitions/502.html' },
1075
+ ],
1076
+ owasp: [
1077
+ { id: 'A08:2021', name: 'Software and Data Integrity Failures', url: 'https://owasp.org/Top10/A08_2021-Software_and_Data_Integrity_Failures/' },
1078
+ ],
1079
+ remediation: 'Never pass user input to unserialize(). Use json_decode() instead. If serialization is required, use allowed_classes option with explicit allowlist. Audit code for pop chains.',
1080
+ },
1081
+
1082
+ [VulnerabilityCode.DESER_PYTHON]: {
1083
+ id: 246,
1084
+ code: VulnerabilityCode.DESER_PYTHON,
1085
+ title: 'Insecure Deserialization - Python',
1086
+ description: 'Critical Python deserialization vulnerability through pickle/cPickle processing of untrusted data, enabling remote code execution via __reduce__ method exploitation. Python pickle is inherently unsafe and should never process untrusted input.',
1087
+ severity: 'critical',
1088
+ levelId: 1,
1089
+ category: 'injection',
1090
+ scanner: 'deserialization',
1091
+ cvss: {
1092
+ score: 9.8,
1093
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H',
1094
+ severity: 'CRITICAL',
1095
+ },
1096
+ cwe: [
1097
+ { id: 'CWE-502', name: 'Deserialization of Untrusted Data', url: 'https://cwe.mitre.org/data/definitions/502.html' },
1098
+ ],
1099
+ owasp: [
1100
+ { id: 'A08:2021', name: 'Software and Data Integrity Failures', url: 'https://owasp.org/Top10/A08_2021-Software_and_Data_Integrity_Failures/' },
1101
+ ],
1102
+ remediation: 'Never pickle untrusted data. Use JSON or other safe formats. If pickle is required, use cryptographic signatures to verify data integrity before deserialization.',
1103
+ },
1104
+
1105
+ [VulnerabilityCode.DESER_DOTNET]: {
1106
+ id: 247,
1107
+ code: VulnerabilityCode.DESER_DOTNET,
1108
+ title: 'Insecure Deserialization - .NET',
1109
+ description: 'Critical .NET deserialization vulnerability through BinaryFormatter, ObjectStateFormatter, LosFormatter, or other dangerous formatters processing untrusted data, enabling remote code execution through gadget chains in the .NET runtime or third-party libraries.',
1110
+ severity: 'critical',
1111
+ levelId: 1,
1112
+ category: 'injection',
1113
+ scanner: 'deserialization',
1114
+ cvss: {
1115
+ score: 9.8,
1116
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H',
1117
+ severity: 'CRITICAL',
1118
+ },
1119
+ cwe: [
1120
+ { id: 'CWE-502', name: 'Deserialization of Untrusted Data', url: 'https://cwe.mitre.org/data/definitions/502.html' },
1121
+ ],
1122
+ owasp: [
1123
+ { id: 'A08:2021', name: 'Software and Data Integrity Failures', url: 'https://owasp.org/Top10/A08_2021-Software_and_Data_Integrity_Failures/' },
1124
+ ],
1125
+ remediation: 'Avoid BinaryFormatter for untrusted data. Use System.Text.Json or XmlSerializer with known types. For legacy code, implement SerializationBinder to restrict deserializable types.',
1126
+ },
1127
+
1128
+ [VulnerabilityCode.DESER_RUBY]: {
1129
+ id: 248,
1130
+ code: VulnerabilityCode.DESER_RUBY,
1131
+ title: 'Insecure Deserialization - Ruby',
1132
+ description: 'Critical Ruby deserialization vulnerability through Marshal.load or YAML.load processing untrusted data, enabling remote code execution through Ruby object instantiation gadgets that execute arbitrary code during object reconstruction.',
1133
+ severity: 'critical',
1134
+ levelId: 1,
1135
+ category: 'injection',
1136
+ scanner: 'deserialization',
1137
+ cvss: {
1138
+ score: 9.8,
1139
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H',
1140
+ severity: 'CRITICAL',
1141
+ },
1142
+ cwe: [
1143
+ { id: 'CWE-502', name: 'Deserialization of Untrusted Data', url: 'https://cwe.mitre.org/data/definitions/502.html' },
1144
+ ],
1145
+ owasp: [
1146
+ { id: 'A08:2021', name: 'Software and Data Integrity Failures', url: 'https://owasp.org/Top10/A08_2021-Software_and_Data_Integrity_Failures/' },
1147
+ ],
1148
+ remediation: 'Never Marshal.load untrusted data. Use JSON.parse instead. For YAML, use YAML.safe_load with permitted_classes option. Sign serialized data with HMAC for integrity.',
1149
+ },
1150
+
1151
+ [VulnerabilityCode.DESER_NODE]: {
1152
+ id: 249,
1153
+ code: VulnerabilityCode.DESER_NODE,
1154
+ title: 'Insecure Deserialization - Node.js',
1155
+ description: 'Critical Node.js deserialization vulnerability through node-serialize, funcster, or similar libraries that execute JavaScript during deserialization, enabling remote code execution when attacker-controlled serialized data containing functions or IIFE is processed.',
1156
+ severity: 'critical',
1157
+ levelId: 1,
1158
+ category: 'injection',
1159
+ scanner: 'deserialization',
1160
+ cvss: {
1161
+ score: 9.8,
1162
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H',
1163
+ severity: 'CRITICAL',
1164
+ },
1165
+ cwe: [
1166
+ { id: 'CWE-502', name: 'Deserialization of Untrusted Data', url: 'https://cwe.mitre.org/data/definitions/502.html' },
1167
+ ],
1168
+ owasp: [
1169
+ { id: 'A08:2021', name: 'Software and Data Integrity Failures', url: 'https://owasp.org/Top10/A08_2021-Software_and_Data_Integrity_Failures/' },
1170
+ ],
1171
+ remediation: 'Never use serialization libraries that can deserialize functions. Use JSON.parse() for data interchange. Avoid node-serialize and similar libraries. Implement input validation.',
1172
+ },
1173
+
1174
+ [VulnerabilityCode.CLICK_PARTIAL_PROTECTION]: {
1175
+ id: 250,
1176
+ code: VulnerabilityCode.CLICK_PARTIAL_PROTECTION,
1177
+ title: 'Clickjacking - Partial Protection',
1178
+ description: 'Incomplete clickjacking protection where X-Frame-Options or frame-ancestors CSP is only applied on some pages, uses weak values like ALLOW-FROM with bypassable origins, or has inconsistent implementation allowing certain pages to be framed.',
1179
+ severity: 'low',
1180
+ levelId: 4,
1181
+ category: 'configuration',
1182
+ scanner: 'security-headers',
1183
+ cvss: {
1184
+ score: 3.7,
1185
+ vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:N',
1186
+ severity: 'LOW',
1187
+ },
1188
+ cwe: [
1189
+ { id: 'CWE-1021', name: 'Improper Restriction of Rendered UI Layers', url: 'https://cwe.mitre.org/data/definitions/1021.html' },
1190
+ ],
1191
+ owasp: [
1192
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
1193
+ ],
1194
+ remediation: 'Apply consistent frame protection across all pages. Use DENY or SAMEORIGIN rather than ALLOW-FROM. Audit all endpoints for missing protection. Use CSP frame-ancestors instead of X-Frame-Options.',
1195
+ },
1196
+
1197
+ [VulnerabilityCode.HEADER_MISSING_XCONTENT_TYPE]: {
1198
+ id: 251,
1199
+ code: VulnerabilityCode.HEADER_MISSING_XCONTENT_TYPE,
1200
+ title: 'Missing Security Header - X-Content-Type-Options',
1201
+ description: 'The application does not set X-Content-Type-Options: nosniff header, allowing browsers to perform MIME-type sniffing that can lead to XSS attacks when user-uploaded content is served with incorrect Content-Type and browsers execute it as script.',
1202
+ severity: 'low',
1203
+ levelId: 4,
1204
+ category: 'configuration',
1205
+ scanner: 'security-headers',
1206
+ cvss: {
1207
+ score: 3.7,
1208
+ vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N',
1209
+ severity: 'LOW',
1210
+ },
1211
+ cwe: [
1212
+ { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
1213
+ ],
1214
+ owasp: [
1215
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
1216
+ ],
1217
+ remediation: 'Add X-Content-Type-Options: nosniff header to all responses. Ensure correct Content-Type headers are set for all resources. Validate file types before serving user uploads.',
1218
+ },
1219
+
1220
+ [VulnerabilityCode.HEADER_XCONTENT_TYPE_INVALID]: {
1221
+ id: 252,
1222
+ code: VulnerabilityCode.HEADER_XCONTENT_TYPE_INVALID,
1223
+ title: 'Invalid Security Header - X-Content-Type-Options',
1224
+ description: 'The X-Content-Type-Options header is present but misconfigured (not set to nosniff), which can allow MIME sniffing and reduce protection against content-type confusion.',
1225
+ severity: 'low',
1226
+ levelId: 4,
1227
+ category: 'configuration',
1228
+ scanner: 'security-headers',
1229
+ cvss: {
1230
+ score: 3.7,
1231
+ vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N',
1232
+ severity: 'LOW',
1233
+ },
1234
+ cwe: [
1235
+ { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
1236
+ ],
1237
+ owasp: [
1238
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
1239
+ ],
1240
+ remediation: 'Set X-Content-Type-Options to nosniff on all responses to prevent MIME sniffing.',
1241
+ },
1242
+
1243
+ [VulnerabilityCode.HEADER_MISSING_REFERRER_POLICY]: {
1244
+ id: 253,
1245
+ code: VulnerabilityCode.HEADER_MISSING_REFERRER_POLICY,
1246
+ title: 'Missing Security Header - Referrer-Policy',
1247
+ description: 'The application does not implement Referrer-Policy header, potentially leaking sensitive URL information including session tokens, user IDs, or query parameters to external sites when users click links or resources are loaded from third-party domains.',
1248
+ severity: 'low',
1249
+ levelId: 4,
1250
+ category: 'configuration',
1251
+ scanner: 'security-headers',
1252
+ cvss: {
1253
+ score: 3.1,
1254
+ vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:L/I:N/A:N',
1255
+ severity: 'LOW',
1256
+ },
1257
+ cwe: [
1258
+ { id: 'CWE-200', name: 'Information Exposure', url: 'https://cwe.mitre.org/data/definitions/200.html' },
1259
+ ],
1260
+ owasp: [
1261
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
1262
+ ],
1263
+ remediation: 'Implement Referrer-Policy header with strict-origin-when-cross-origin or no-referrer policy. Avoid passing sensitive data in URLs. Use POST requests for sensitive operations.',
1264
+ },
1265
+
1266
+ [VulnerabilityCode.HEADER_REFERRER_POLICY_UNSAFE]: {
1267
+ id: 254,
1268
+ code: VulnerabilityCode.HEADER_REFERRER_POLICY_UNSAFE,
1269
+ title: 'Unsafe Referrer-Policy Configuration',
1270
+ description: 'The Referrer-Policy header is set to a permissive value that can leak full URLs and sensitive query parameters to external origins.',
1271
+ severity: 'low',
1272
+ levelId: 4,
1273
+ category: 'configuration',
1274
+ scanner: 'security-headers',
1275
+ cvss: {
1276
+ score: 3.1,
1277
+ vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:L/I:N/A:N',
1278
+ severity: 'LOW',
1279
+ },
1280
+ cwe: [
1281
+ { id: 'CWE-200', name: 'Information Exposure', url: 'https://cwe.mitre.org/data/definitions/200.html' },
1282
+ ],
1283
+ owasp: [
1284
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
1285
+ ],
1286
+ remediation: 'Use strict-origin-when-cross-origin or no-referrer to minimize leakage of sensitive URL data.',
1287
+ },
1288
+
1289
+ [VulnerabilityCode.HEADER_MISSING_PERMISSIONS_POLICY]: {
1290
+ id: 255,
1291
+ code: VulnerabilityCode.HEADER_MISSING_PERMISSIONS_POLICY,
1292
+ title: 'Missing Security Header - Permissions-Policy',
1293
+ description: 'The application does not implement Permissions-Policy (formerly Feature-Policy) header, allowing embedded frames or malicious scripts to access sensitive browser features like camera, microphone, geolocation, or payment APIs without explicit permission.',
1294
+ severity: 'info',
1295
+ levelId: 5,
1296
+ category: 'configuration',
1297
+ scanner: 'security-headers',
1298
+ cvss: {
1299
+ score: 2.0,
1300
+ vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:L/I:N/A:N',
1301
+ severity: 'LOW',
1302
+ },
1303
+ cwe: [
1304
+ { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
1305
+ ],
1306
+ owasp: [
1307
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
1308
+ ],
1309
+ remediation: 'Add Permissions-Policy header restricting access to sensitive features. Disable features not needed by the application. Use () syntax to disallow features for all origins.',
1310
+ },
1311
+
1312
+ [VulnerabilityCode.HEADER_MISSING_XSS_PROTECTION]: {
1313
+ id: 256,
1314
+ code: VulnerabilityCode.HEADER_MISSING_XSS_PROTECTION,
1315
+ title: 'Missing Security Header - X-XSS-Protection',
1316
+ description: 'The legacy X-XSS-Protection header is not set. While deprecated in modern browsers, it can provide defense-in-depth for older browsers that still honor this header for their built-in XSS auditor feature.',
1317
+ severity: 'info',
1318
+ levelId: 5,
1319
+ category: 'configuration',
1320
+ scanner: 'security-headers',
1321
+ cvss: {
1322
+ score: 0.0,
1323
+ vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:N',
1324
+ severity: 'NONE',
1325
+ },
1326
+ cwe: [
1327
+ { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
1328
+ ],
1329
+ owasp: [
1330
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
1331
+ ],
1332
+ remediation: 'Set X-XSS-Protection: 0 to disable (recommended per OWASP) or use CSP instead. The XSS auditor has been removed from modern browsers due to security issues with block mode.',
1333
+ },
1334
+
1335
+ [VulnerabilityCode.HEADER_COEP_WITHOUT_COOP]: {
1336
+ id: 257,
1337
+ code: VulnerabilityCode.HEADER_COEP_WITHOUT_COOP,
1338
+ title: 'Header Misconfiguration - COEP Without COOP',
1339
+ description: 'Cross-Origin-Embedder-Policy (COEP) is set without Cross-Origin-Opener-Policy (COOP), which can create inconsistent cross-origin isolation behavior and indicate incomplete or misapplied security header strategy for isolation-sensitive applications.',
1340
+ severity: 'info',
1341
+ levelId: 5,
1342
+ category: 'configuration',
1343
+ scanner: 'security-headers',
1344
+ cvss: {
1345
+ score: 2.0,
1346
+ vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:N/A:N',
1347
+ severity: 'LOW',
1348
+ },
1349
+ cwe: [
1350
+ { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
1351
+ ],
1352
+ owasp: [
1353
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
1354
+ ],
1355
+ remediation: 'If cross-origin isolation is required, deploy COEP together with COOP and validate the intended policy combination. Otherwise remove COEP to avoid confusing or inconsistent isolation posture.',
1356
+ },
1357
+
1358
+ [VulnerabilityCode.HEADER_CORP_UNUSUAL]: {
1359
+ id: 258,
1360
+ code: VulnerabilityCode.HEADER_CORP_UNUSUAL,
1361
+ title: 'Header Misconfiguration - Unusual CORP Value',
1362
+ description: 'Cross-Origin-Resource-Policy (CORP) is set to a non-standard value, which may indicate a misconfiguration that provides no effective protection or creates unpredictable resource loading behavior across origins.',
1363
+ severity: 'info',
1364
+ levelId: 5,
1365
+ category: 'configuration',
1366
+ scanner: 'security-headers',
1367
+ cvss: {
1368
+ score: 2.0,
1369
+ vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:N/A:N',
1370
+ severity: 'LOW',
1371
+ },
1372
+ cwe: [
1373
+ { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
1374
+ ],
1375
+ owasp: [
1376
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
1377
+ ],
1378
+ remediation: 'Use valid CORP values (same-origin, same-site, or cross-origin) and confirm the chosen policy aligns with the resource sharing model of the application.',
1379
+ },
1380
+
1381
+ [VulnerabilityCode.HEADER_EXPECT_CT_PRESENT]: {
1382
+ id: 259,
1383
+ code: VulnerabilityCode.HEADER_EXPECT_CT_PRESENT,
1384
+ title: 'Deprecated Header - Expect-CT Present',
1385
+ description: 'The Expect-CT header is present even though the feature is deprecated and no longer enforced by major browsers, adding unnecessary configuration surface without meaningful security benefit.',
1386
+ severity: 'info',
1387
+ levelId: 5,
1388
+ category: 'configuration',
1389
+ scanner: 'security-headers',
1390
+ cvss: {
1391
+ score: 0.0,
1392
+ vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:N',
1393
+ severity: 'NONE',
1394
+ },
1395
+ cwe: [
1396
+ { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
1397
+ ],
1398
+ owasp: [
1399
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
1400
+ ],
1401
+ remediation: 'Remove Expect-CT unless you have a legacy operational requirement, and focus on TLS configuration and certificate transparency monitoring via modern tooling.',
1402
+ },
1403
+
1404
+ [VulnerabilityCode.HEADER_SERVER_HEADER_PRESENT]: {
1405
+ id: 260,
1406
+ code: VulnerabilityCode.HEADER_SERVER_HEADER_PRESENT,
1407
+ title: 'Information Exposure - Server Header Present',
1408
+ description: 'The Server header reveals technology or version details that can assist attackers with fingerprinting and targeted exploitation, increasing the likelihood of tailored attacks against known software weaknesses.',
1409
+ severity: 'info',
1410
+ levelId: 5,
1411
+ category: 'configuration',
1412
+ scanner: 'security-headers',
1413
+ cvss: {
1414
+ score: 3.1,
1415
+ vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N',
1416
+ severity: 'LOW',
1417
+ },
1418
+ cwe: [
1419
+ { id: 'CWE-200', name: 'Information Exposure', url: 'https://cwe.mitre.org/data/definitions/200.html' },
1420
+ ],
1421
+ owasp: [
1422
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
1423
+ ],
1424
+ remediation: 'Configure the web server or reverse proxy to minimize or remove Server header details and avoid exposing version strings in responses.',
1425
+ },
1426
+
1427
+ [VulnerabilityCode.HEADER_X_POWERED_BY_PRESENT]: {
1428
+ id: 261,
1429
+ code: VulnerabilityCode.HEADER_X_POWERED_BY_PRESENT,
1430
+ title: 'Information Exposure - X-Powered-By Present',
1431
+ description: 'The X-Powered-By header discloses framework or runtime information that can be used to fingerprint the application stack and target known vulnerabilities in specific platforms or versions.',
1432
+ severity: 'info',
1433
+ levelId: 5,
1434
+ category: 'configuration',
1435
+ scanner: 'security-headers',
1436
+ cvss: {
1437
+ score: 3.1,
1438
+ vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N',
1439
+ severity: 'LOW',
1440
+ },
1441
+ cwe: [
1442
+ { id: 'CWE-200', name: 'Information Exposure', url: 'https://cwe.mitre.org/data/definitions/200.html' },
1443
+ ],
1444
+ owasp: [
1445
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
1446
+ ],
1447
+ remediation: 'Disable X-Powered-By headers in application frameworks or reverse proxies to reduce stack fingerprinting exposure.',
1448
+ },
145
1449
 
146
- [VulnerabilityCode.HEADER_MISSING_XFRAME]: {
147
- id: 71,
148
- code: VulnerabilityCode.HEADER_MISSING_XFRAME,
149
- title: 'Missing Security Header - X-Frame-Options',
150
- description: 'The application does not set X-Frame-Options header, making it vulnerable to clickjacking attacks where malicious websites can embed the application in invisible iframes and trick users into performing unintended actions through deceptive UI overlays.',
151
- severity: 'medium',
1450
+ [VulnerabilityCode.HEADER_X_XSS_PROTECTION_ENABLED]: {
1451
+ id: 262,
1452
+ code: VulnerabilityCode.HEADER_X_XSS_PROTECTION_ENABLED,
1453
+ title: 'Deprecated Header - X-XSS-Protection Enabled',
1454
+ description: 'The X-XSS-Protection header is enabled, which is deprecated and can introduce security risks or inconsistent behavior in legacy browsers due to the removed XSS auditor feature.',
1455
+ severity: 'low',
1456
+ levelId: 4,
152
1457
  category: 'configuration',
153
1458
  scanner: 'security-headers',
154
1459
  cvss: {
155
- score: 4.7,
156
- vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:N/I:L/A:N',
157
- severity: 'MEDIUM',
1460
+ score: 3.1,
1461
+ vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:N',
1462
+ severity: 'LOW',
158
1463
  },
159
1464
  cwe: [
160
- { id: 'CWE-1021', name: 'Improper Restriction of Rendered UI Layers', url: 'https://cwe.mitre.org/data/definitions/1021.html' },
1465
+ { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
161
1466
  ],
162
1467
  owasp: [
163
1468
  { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
164
1469
  ],
165
- remediation: 'Set X-Frame-Options header to DENY or SAMEORIGIN. Use Content-Security-Policy frame-ancestors directive for more granular control. Both headers can be used together for compatibility.',
1470
+ remediation: 'Prefer modern CSP protections and set X-XSS-Protection: 0 or remove the header to avoid relying on deprecated behavior.',
166
1471
  },
167
1472
 
168
- [VulnerabilityCode.HEADER_WEAK_CSP]: {
169
- id: 72,
170
- code: VulnerabilityCode.HEADER_WEAK_CSP,
171
- title: 'Weak Content-Security-Policy Configuration',
172
- description: 'The Content-Security-Policy header contains unsafe directives like unsafe-inline, unsafe-eval, or overly permissive source allowlists that significantly reduce its effectiveness as an XSS mitigation and may create false sense of security.',
1473
+ [VulnerabilityCode.COOKIE_SAMESITE_NONE_WITHOUT_SECURE]: {
1474
+ id: 263,
1475
+ code: VulnerabilityCode.COOKIE_SAMESITE_NONE_WITHOUT_SECURE,
1476
+ title: 'Cookie Misconfiguration - SameSite=None Without Secure',
1477
+ description: 'A cookie is configured with SameSite=None but lacks the Secure attribute, enabling cross-site transmission over unencrypted connections and undermining cookie integrity and confidentiality controls.',
173
1478
  severity: 'medium',
1479
+ levelId: 3,
174
1480
  category: 'configuration',
175
1481
  scanner: 'security-headers',
176
1482
  cvss: {
177
1483
  score: 5.3,
178
- vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N',
1484
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N',
179
1485
  severity: 'MEDIUM',
180
1486
  },
181
1487
  cwe: [
182
- { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
1488
+ { id: 'CWE-614', name: 'Sensitive Cookie in HTTPS Session Without Secure Attribute', url: 'https://cwe.mitre.org/data/definitions/614.html' },
183
1489
  ],
184
1490
  owasp: [
185
1491
  { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
186
1492
  ],
187
- remediation: 'Remove unsafe-inline and unsafe-eval directives. Use nonce-based or hash-based CSP for inline scripts. Restrict source allowlists to specific trusted domains rather than wildcards.',
188
- },
189
-
190
- [VulnerabilityCode.HEADER_CSP_REPORT_ONLY]: {
191
- id: 1001,
192
- code: VulnerabilityCode.HEADER_CSP_REPORT_ONLY,
193
- title: 'Content-Security-Policy Report-Only Enabled',
194
- description: 'The Content-Security-Policy header is deployed in report-only mode, which does not enforce protections and allows unsafe content to execute while only logging violations.',
195
- severity: 'medium',
196
- category: 'configuration',
197
- scanner: 'security-headers',
198
- cvss: {
199
- score: 5.3,
200
- vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N',
201
- severity: 'MEDIUM',
202
- },
203
- cwe: [
204
- { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
205
- ],
206
- owasp: [
207
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
208
- ],
209
- remediation: 'Switch to enforcing Content-Security-Policy once violations are reviewed. Use report-only during rollout, then enforce with strict directives.',
210
- },
211
-
212
- [VulnerabilityCode.HEADER_CSP_WEAK_DIRECTIVES]: {
213
- id: 1002,
214
- code: VulnerabilityCode.HEADER_CSP_WEAK_DIRECTIVES,
215
- title: 'Content-Security-Policy Contains Unsafe Directives',
216
- description: 'The Content-Security-Policy header includes unsafe directives such as unsafe-inline or unsafe-eval that reduce XSS protection and allow risky script execution paths.',
217
- severity: 'medium',
218
- category: 'configuration',
219
- scanner: 'security-headers',
220
- cvss: {
221
- score: 5.3,
222
- vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N',
223
- severity: 'MEDIUM',
224
- },
225
- cwe: [
226
- { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
227
- ],
228
- owasp: [
229
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
230
- ],
231
- remediation: 'Remove unsafe-inline and unsafe-eval directives. Replace inline scripts with nonces or hashes and restrict sources to trusted domains.',
232
- },
233
-
234
- [VulnerabilityCode.HEADER_CSP_DATA_URI_SCRIPT]: {
235
- id: 1003,
236
- code: VulnerabilityCode.HEADER_CSP_DATA_URI_SCRIPT,
237
- title: 'Content-Security-Policy Allows data: in script-src',
238
- description: 'The CSP allows data: URIs for script execution, which can enable script injection through crafted data URLs and weaken XSS protections.',
239
- severity: 'medium',
240
- category: 'configuration',
241
- scanner: 'security-headers',
242
- cvss: {
243
- score: 5.3,
244
- vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N',
245
- severity: 'MEDIUM',
246
- },
247
- cwe: [
248
- { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
249
- ],
250
- owasp: [
251
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
252
- ],
253
- remediation: 'Remove data: from script-src. Use nonce or hash-based CSP for any required inline scripts.',
254
- },
255
-
256
- [VulnerabilityCode.HEADER_CSP_BLOB_URI_SCRIPT]: {
257
- id: 1004,
258
- code: VulnerabilityCode.HEADER_CSP_BLOB_URI_SCRIPT,
259
- title: 'Content-Security-Policy Allows blob: in script-src',
260
- description: 'The CSP allows blob: URIs for script execution, which can be abused to load attacker-controlled scripts in some contexts and weaken XSS mitigations.',
261
- severity: 'medium',
262
- category: 'configuration',
263
- scanner: 'security-headers',
264
- cvss: {
265
- score: 5.3,
266
- vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N',
267
- severity: 'MEDIUM',
268
- },
269
- cwe: [
270
- { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
271
- ],
272
- owasp: [
273
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
274
- ],
275
- remediation: 'Remove blob: from script-src unless strictly required. Use a narrower allowlist or nonces for trusted scripts.',
276
- },
277
-
278
- [VulnerabilityCode.HEADER_CSP_WILDCARD_DEFAULT]: {
279
- id: 1005,
280
- code: VulnerabilityCode.HEADER_CSP_WILDCARD_DEFAULT,
281
- title: 'Content-Security-Policy default-src Uses Wildcard',
282
- description: 'The CSP default-src directive allows all origins, which effectively disables the protection and allows untrusted content to load.',
283
- severity: 'medium',
284
- category: 'configuration',
285
- scanner: 'security-headers',
286
- cvss: {
287
- score: 5.3,
288
- vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N',
289
- severity: 'MEDIUM',
290
- },
291
- cwe: [
292
- { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
293
- ],
294
- owasp: [
295
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
296
- ],
297
- remediation: 'Replace wildcard default-src with explicit trusted origins and tighten resource-specific directives.',
298
- },
299
-
300
- [VulnerabilityCode.HEADER_CSP_NO_BASE_URI]: {
301
- id: 1006,
302
- code: VulnerabilityCode.HEADER_CSP_NO_BASE_URI,
303
- title: 'Content-Security-Policy Missing base-uri Directive',
304
- description: 'The CSP does not include a base-uri directive, allowing the base URL to be set by injected markup and enabling abuse of relative URL resolution.',
305
- severity: 'medium',
306
- category: 'configuration',
307
- scanner: 'security-headers',
308
- cvss: {
309
- score: 5.3,
310
- vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N',
311
- severity: 'MEDIUM',
312
- },
313
- cwe: [
314
- { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
315
- ],
316
- owasp: [
317
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
318
- ],
319
- remediation: 'Add base-uri \'self\' (or a strict allowlist) to CSP to prevent base tag abuse.',
320
- },
321
-
322
- [VulnerabilityCode.HEADER_CSP_NO_OBJECT_SRC]: {
323
- id: 1007,
324
- code: VulnerabilityCode.HEADER_CSP_NO_OBJECT_SRC,
325
- title: 'Content-Security-Policy Missing object-src Directive',
326
- description: 'The CSP does not include an object-src directive, allowing embedded objects to load from arbitrary origins and weakening defense-in-depth against plugin-based risks.',
327
- severity: 'medium',
328
- category: 'configuration',
329
- scanner: 'security-headers',
330
- cvss: {
331
- score: 5.3,
332
- vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N',
333
- severity: 'MEDIUM',
334
- },
335
- cwe: [
336
- { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
337
- ],
338
- owasp: [
339
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
340
- ],
341
- remediation: 'Add object-src \'none\' (or a strict allowlist) to CSP to prevent plugin content loading.',
342
- },
343
-
344
- [VulnerabilityCode.HEADER_CSP_NO_FRAME_ANCESTORS]: {
345
- id: 1008,
346
- code: VulnerabilityCode.HEADER_CSP_NO_FRAME_ANCESTORS,
347
- title: 'Content-Security-Policy Missing frame-ancestors Directive',
348
- description: 'The CSP does not include a frame-ancestors directive, leaving pages potentially frameable and vulnerable to clickjacking attacks.',
349
- severity: 'medium',
350
- category: 'configuration',
351
- scanner: 'security-headers',
352
- cvss: {
353
- score: 4.7,
354
- vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:N/I:L/A:N',
355
- severity: 'MEDIUM',
356
- },
357
- cwe: [
358
- { id: 'CWE-1021', name: 'Improper Restriction of Rendered UI Layers', url: 'https://cwe.mitre.org/data/definitions/1021.html' },
359
- ],
360
- owasp: [
361
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
362
- ],
363
- remediation: 'Add frame-ancestors \'none\' or a strict allowlist to CSP to prevent clickjacking.',
364
- },
365
-
366
- [VulnerabilityCode.HEADER_CORS_MISCONFIGURED]: {
367
- id: 73,
368
- code: VulnerabilityCode.HEADER_CORS_MISCONFIGURED,
369
- title: 'CORS Misconfiguration',
370
- description: 'Cross-Origin Resource Sharing is misconfigured with overly permissive Access-Control-Allow-Origin headers including wildcard (*) with credentials, or dynamic reflection of Origin header without proper validation, enabling cross-origin data theft.',
1493
+ remediation: 'Set Secure when SameSite=None is used and ensure the application is served exclusively over HTTPS.',
1494
+ },
1495
+
1496
+ [VulnerabilityCode.COOKIE_SESSION_MISSING_SECURE]: {
1497
+ id: 264,
1498
+ code: VulnerabilityCode.COOKIE_SESSION_MISSING_SECURE,
1499
+ title: 'Cookie Misconfiguration - Session Cookie Missing Secure',
1500
+ description: 'Session or authentication cookies are missing the Secure attribute, allowing them to be transmitted over unencrypted connections and increasing the risk of session hijacking or credential theft.',
371
1501
  severity: 'high',
1502
+ levelId: 2,
372
1503
  category: 'configuration',
373
1504
  scanner: 'security-headers',
374
1505
  cvss: {
375
- score: 7.5,
376
- vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N',
1506
+ score: 7.1,
1507
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:N',
377
1508
  severity: 'HIGH',
378
1509
  },
379
1510
  cwe: [
380
- { id: 'CWE-942', name: 'Permissive CORS Policy', url: 'https://cwe.mitre.org/data/definitions/942.html' },
1511
+ { id: 'CWE-614', name: 'Sensitive Cookie in HTTPS Session Without Secure Attribute', url: 'https://cwe.mitre.org/data/definitions/614.html' },
381
1512
  ],
382
1513
  owasp: [
383
1514
  { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
384
1515
  ],
385
- remediation: 'Implement strict Origin validation with allowlist of trusted domains. Never reflect Origin header without validation. Do not use wildcard with Access-Control-Allow-Credentials.',
386
- },
387
-
388
- [VulnerabilityCode.HEADER_CORS_STAR_WITH_CREDENTIALS]: {
389
- id: 1014,
390
- code: VulnerabilityCode.HEADER_CORS_STAR_WITH_CREDENTIALS,
391
- title: 'CORS Wildcard With Credentials',
392
- description: 'Access-Control-Allow-Origin is set to * while Access-Control-Allow-Credentials is enabled, which browsers block but signals a dangerous CORS policy that can be misapplied in some environments.',
393
- severity: 'high',
394
- category: 'configuration',
395
- scanner: 'security-headers',
396
- cvss: {
397
- score: 7.5,
398
- vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N',
399
- severity: 'HIGH',
400
- },
401
- cwe: [
402
- { id: 'CWE-942', name: 'Permissive CORS Policy', url: 'https://cwe.mitre.org/data/definitions/942.html' },
403
- ],
404
- owasp: [
405
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
406
- ],
407
- remediation: 'Never use wildcard origins with credentials. Replace * with an explicit allowlist and set Vary: Origin.',
408
- },
409
-
410
- [VulnerabilityCode.HEADER_CORS_ORIGIN_REFLECT_NO_VARY]: {
411
- id: 1015,
412
- code: VulnerabilityCode.HEADER_CORS_ORIGIN_REFLECT_NO_VARY,
413
- title: 'CORS Origin Reflection Without Vary',
414
- description: 'The Origin header is reflected in Access-Control-Allow-Origin without Vary: Origin, which can lead to cache poisoning and unintended cross-origin access.',
415
- severity: 'high',
416
- category: 'configuration',
417
- scanner: 'security-headers',
418
- cvss: {
419
- score: 7.5,
420
- vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N',
421
- severity: 'HIGH',
422
- },
423
- cwe: [
424
- { id: 'CWE-942', name: 'Permissive CORS Policy', url: 'https://cwe.mitre.org/data/definitions/942.html' },
425
- ],
426
- owasp: [
427
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
428
- ],
429
- remediation: 'Validate origins against an allowlist and always include Vary: Origin when dynamically setting Access-Control-Allow-Origin.',
430
- },
431
-
432
- [VulnerabilityCode.HEADER_CORS_NULL_ORIGIN]: {
433
- id: 1016,
434
- code: VulnerabilityCode.HEADER_CORS_NULL_ORIGIN,
435
- title: 'CORS Allows Null Origin',
436
- description: 'Access-Control-Allow-Origin allows the null origin, enabling requests from opaque origins such as sandboxed iframes and file URLs that can be abused to access sensitive data.',
437
- severity: 'high',
438
- category: 'configuration',
439
- scanner: 'security-headers',
440
- cvss: {
441
- score: 7.5,
442
- vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N',
443
- severity: 'HIGH',
444
- },
445
- cwe: [
446
- { id: 'CWE-942', name: 'Permissive CORS Policy', url: 'https://cwe.mitre.org/data/definitions/942.html' },
447
- ],
448
- owasp: [
449
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
450
- ],
451
- remediation: 'Remove null from allowed origins. Restrict CORS to explicit trusted domains only.',
452
- },
453
-
454
- [VulnerabilityCode.HEADER_CORS_WILDCARD_SUBDOMAIN]: {
455
- id: 1017,
456
- code: VulnerabilityCode.HEADER_CORS_WILDCARD_SUBDOMAIN,
457
- title: 'CORS Allows Wildcard Subdomains',
458
- description: 'CORS policies allow wildcard subdomains that can be abused if any subdomain is compromised or can be controlled by untrusted parties.',
459
- severity: 'high',
460
- category: 'configuration',
461
- scanner: 'security-headers',
462
- cvss: {
463
- score: 7.5,
464
- vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N',
465
- severity: 'HIGH',
466
- },
467
- cwe: [
468
- { id: 'CWE-942', name: 'Permissive CORS Policy', url: 'https://cwe.mitre.org/data/definitions/942.html' },
469
- ],
470
- owasp: [
471
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
472
- ],
473
- remediation: 'Replace wildcard subdomains with a strict allowlist of trusted origins.',
474
- },
1516
+ remediation: 'Apply the Secure attribute to all session cookies and enforce HTTPS with HSTS to prevent downgrade to plaintext.',
1517
+ },
475
1518
 
476
- // ========================================
477
- // DIRECTORY BROWSING
478
- // ========================================
479
- [VulnerabilityCode.DIRBROWSE_ENABLED]: {
480
- id: 74,
481
- code: VulnerabilityCode.DIRBROWSE_ENABLED,
482
- title: 'Directory Listing Enabled',
483
- description: 'Web server directory listing is enabled, exposing the contents of directories to anyone who browses to them without an index file. This reveals application structure, backup files, configuration files, and potentially sensitive data to attackers.',
484
- severity: 'low',
1519
+ [VulnerabilityCode.COOKIE_MISSING_SECURE]: {
1520
+ id: 265,
1521
+ code: VulnerabilityCode.COOKIE_MISSING_SECURE,
1522
+ title: 'Cookie Misconfiguration - Missing Secure Attribute',
1523
+ description: 'Cookies are set without the Secure attribute, permitting transmission over plaintext HTTP and exposing cookie contents to network interception or manipulation.',
1524
+ severity: 'medium',
1525
+ levelId: 3,
485
1526
  category: 'configuration',
486
- scanner: 'directory-browsing',
1527
+ scanner: 'security-headers',
487
1528
  cvss: {
488
- score: 3.7,
489
- vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N',
490
- severity: 'LOW',
1529
+ score: 5.3,
1530
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N',
1531
+ severity: 'MEDIUM',
491
1532
  },
492
1533
  cwe: [
493
- { id: 'CWE-548', name: 'Directory Listing', url: 'https://cwe.mitre.org/data/definitions/548.html' },
1534
+ { id: 'CWE-614', name: 'Sensitive Cookie in HTTPS Session Without Secure Attribute', url: 'https://cwe.mitre.org/data/definitions/614.html' },
494
1535
  ],
495
1536
  owasp: [
496
1537
  { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
497
1538
  ],
498
- remediation: 'Disable directory listing in web server configuration (Options -Indexes in Apache, autoindex off in nginx). Ensure all directories have proper index files.',
1539
+ remediation: 'Set the Secure attribute on cookies that should only be transmitted over HTTPS.',
499
1540
  },
500
1541
 
501
- [VulnerabilityCode.DIRBROWSE_SENSITIVE]: {
502
- id: 75,
503
- code: VulnerabilityCode.DIRBROWSE_SENSITIVE,
504
- title: 'Directory Listing Exposing Sensitive Content',
505
- description: 'Directory listing is enabled on a directory containing sensitive files like backups, configuration files, source code, or credentials. This elevates the risk significantly as attackers can directly access sensitive information without guessing filenames.',
1542
+ [VulnerabilityCode.COOKIE_SESSION_MISSING_HTTPONLY]: {
1543
+ id: 266,
1544
+ code: VulnerabilityCode.COOKIE_SESSION_MISSING_HTTPONLY,
1545
+ title: 'Cookie Misconfiguration - Session Cookie Missing HttpOnly',
1546
+ description: 'Session or authentication cookies are missing the HttpOnly attribute, allowing client-side scripts to access sensitive cookie values and increasing the impact of XSS attacks.',
1547
+ severity: 'high',
1548
+ levelId: 2,
1549
+ category: 'configuration',
1550
+ scanner: 'security-headers',
1551
+ cvss: {
1552
+ score: 7.1,
1553
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:N',
1554
+ severity: 'HIGH',
1555
+ },
1556
+ cwe: [
1557
+ { id: 'CWE-1004', name: 'Sensitive Cookie Without HttpOnly Flag', url: 'https://cwe.mitre.org/data/definitions/1004.html' },
1558
+ ],
1559
+ owasp: [
1560
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
1561
+ ],
1562
+ remediation: 'Set HttpOnly on session cookies to reduce access from client-side scripts and pair with CSP to mitigate XSS risk.',
1563
+ },
1564
+
1565
+ [VulnerabilityCode.COOKIE_MISSING_HTTPONLY]: {
1566
+ id: 267,
1567
+ code: VulnerabilityCode.COOKIE_MISSING_HTTPONLY,
1568
+ title: 'Cookie Misconfiguration - Missing HttpOnly Attribute',
1569
+ description: 'Cookies are missing the HttpOnly attribute, allowing JavaScript access to cookie values and increasing the potential impact of client-side script injection.',
506
1570
  severity: 'medium',
1571
+ levelId: 3,
507
1572
  category: 'configuration',
508
- scanner: 'directory-browsing',
1573
+ scanner: 'security-headers',
509
1574
  cvss: {
510
1575
  score: 5.3,
511
- vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N',
1576
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N',
512
1577
  severity: 'MEDIUM',
513
1578
  },
514
1579
  cwe: [
515
- { id: 'CWE-548', name: 'Directory Listing', url: 'https://cwe.mitre.org/data/definitions/548.html' },
1580
+ { id: 'CWE-1004', name: 'Sensitive Cookie Without HttpOnly Flag', url: 'https://cwe.mitre.org/data/definitions/1004.html' },
516
1581
  ],
517
1582
  owasp: [
518
1583
  { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
519
1584
  ],
520
- remediation: 'Immediately disable directory listing. Remove sensitive files from web-accessible directories. Implement proper access controls. Audit exposed content for credentials or sensitive data.',
1585
+ remediation: 'Add HttpOnly to cookies that should not be accessed by JavaScript to reduce the impact of XSS.',
521
1586
  },
522
1587
 
523
- // ========================================
524
- // CLICKJACKING
525
- // ========================================
526
- [VulnerabilityCode.CLICK_FRAMEABLE]: {
527
- id: 76,
528
- code: VulnerabilityCode.CLICK_FRAMEABLE,
529
- title: 'Clickjacking - Page Frameable',
530
- description: 'The application pages can be embedded in iframes on malicious websites, enabling clickjacking attacks where attackers overlay transparent frames over deceptive UI elements to trick users into clicking hidden buttons or links that perform unintended actions.',
1588
+ [VulnerabilityCode.COOKIE_MISSING_SAMESITE]: {
1589
+ id: 268,
1590
+ code: VulnerabilityCode.COOKIE_MISSING_SAMESITE,
1591
+ title: 'Cookie Misconfiguration - Missing SameSite Attribute',
1592
+ description: 'Cookies do not specify SameSite, which can allow cross-site requests to include cookies by default and increase exposure to CSRF-style attacks or cross-site leakage.',
531
1593
  severity: 'medium',
1594
+ levelId: 3,
532
1595
  category: 'configuration',
533
1596
  scanner: 'security-headers',
534
1597
  cvss: {
535
- score: 4.7,
536
- vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:N/I:L/A:N',
1598
+ score: 4.3,
1599
+ vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:L/I:L/A:N',
537
1600
  severity: 'MEDIUM',
538
1601
  },
539
1602
  cwe: [
540
- { id: 'CWE-1021', name: 'Improper Restriction of Rendered UI Layers', url: 'https://cwe.mitre.org/data/definitions/1021.html' },
1603
+ { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
541
1604
  ],
542
1605
  owasp: [
543
1606
  { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
544
1607
  ],
545
- remediation: 'Implement X-Frame-Options header with DENY or SAMEORIGIN value. Use Content-Security-Policy frame-ancestors directive. Add JavaScript frame-busting code as defense in depth.',
1608
+ remediation: 'Set SameSite=Lax for general cookies or SameSite=Strict where appropriate to reduce cross-site cookie inclusion.',
546
1609
  },
547
1610
 
548
- // ========================================
549
- // DESERIALIZATION
550
- // ========================================
551
- [VulnerabilityCode.DESER_JAVA]: {
552
- id: 77,
553
- code: VulnerabilityCode.DESER_JAVA,
554
- title: 'Insecure Deserialization - Java',
555
- description: 'Critical Java deserialization vulnerability where untrusted serialized objects are processed, allowing attackers to achieve remote code execution through gadget chains in common libraries like Apache Commons Collections, Spring Framework, or other classpath dependencies.',
556
- severity: 'critical',
557
- category: 'injection',
558
- scanner: 'deserialization',
1611
+ [VulnerabilityCode.COOKIE_HOST_PREFIX_INVALID]: {
1612
+ id: 269,
1613
+ code: VulnerabilityCode.COOKIE_HOST_PREFIX_INVALID,
1614
+ title: 'Cookie Misconfiguration - __Host- Prefix Violations',
1615
+ description: 'Cookies with the __Host- prefix do not meet required attributes (Secure, Path=/, no Domain), weakening the protections provided by host-only cookie semantics.',
1616
+ severity: 'medium',
1617
+ levelId: 3,
1618
+ category: 'configuration',
1619
+ scanner: 'security-headers',
559
1620
  cvss: {
560
- score: 9.8,
561
- vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H',
562
- severity: 'CRITICAL',
1621
+ score: 5.3,
1622
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N',
1623
+ severity: 'MEDIUM',
563
1624
  },
564
1625
  cwe: [
565
- { id: 'CWE-502', name: 'Deserialization of Untrusted Data', url: 'https://cwe.mitre.org/data/definitions/502.html' },
1626
+ { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
566
1627
  ],
567
1628
  owasp: [
568
- { id: 'A08:2021', name: 'Software and Data Integrity Failures', url: 'https://owasp.org/Top10/A08_2021-Software_and_Data_Integrity_Failures/' },
1629
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
569
1630
  ],
570
- remediation: 'Do not deserialize untrusted data. Use JSON or XML instead of Java serialization. Implement ObjectInputFilter (JEP 290) to restrict deserializable classes. Remove vulnerable gadget libraries.',
1631
+ remediation: 'Ensure __Host- cookies include Secure, Path=/, and omit the Domain attribute to preserve host-only guarantees.',
571
1632
  },
572
1633
 
573
- [VulnerabilityCode.DESER_PHP]: {
574
- id: 78,
575
- code: VulnerabilityCode.DESER_PHP,
576
- title: 'Insecure Deserialization - PHP',
577
- description: 'Critical PHP deserialization vulnerability where unserialize() processes attacker-controlled data, enabling object injection attacks through magic methods like __wakeup(), __destruct(), or __toString() in application or framework classes for remote code execution.',
578
- severity: 'critical',
579
- category: 'injection',
580
- scanner: 'deserialization',
1634
+ [VulnerabilityCode.COOKIE_SECURE_PREFIX_INVALID]: {
1635
+ id: 270,
1636
+ code: VulnerabilityCode.COOKIE_SECURE_PREFIX_INVALID,
1637
+ title: 'Cookie Misconfiguration - __Secure- Prefix Violations',
1638
+ description: 'Cookies with the __Secure- prefix are missing the Secure attribute, which defeats the prefix requirement and weakens transport security protections.',
1639
+ severity: 'medium',
1640
+ levelId: 3,
1641
+ category: 'configuration',
1642
+ scanner: 'security-headers',
581
1643
  cvss: {
582
- score: 9.8,
583
- vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H',
584
- severity: 'CRITICAL',
1644
+ score: 5.3,
1645
+ vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N',
1646
+ severity: 'MEDIUM',
585
1647
  },
586
1648
  cwe: [
587
- { id: 'CWE-502', name: 'Deserialization of Untrusted Data', url: 'https://cwe.mitre.org/data/definitions/502.html' },
1649
+ { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
588
1650
  ],
589
1651
  owasp: [
590
- { id: 'A08:2021', name: 'Software and Data Integrity Failures', url: 'https://owasp.org/Top10/A08_2021-Software_and_Data_Integrity_Failures/' },
1652
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
591
1653
  ],
592
- remediation: 'Never pass user input to unserialize(). Use json_decode() instead. If serialization is required, use allowed_classes option with explicit allowlist. Audit code for pop chains.',
1654
+ remediation: 'Set the Secure attribute for all __Secure- cookies and ensure HTTPS is enforced across the application.',
593
1655
  },
594
1656
 
595
- [VulnerabilityCode.DESER_PYTHON]: {
596
- id: 79,
597
- code: VulnerabilityCode.DESER_PYTHON,
598
- title: 'Insecure Deserialization - Python',
599
- description: 'Critical Python deserialization vulnerability through pickle/cPickle processing of untrusted data, enabling remote code execution via __reduce__ method exploitation. Python pickle is inherently unsafe and should never process untrusted input.',
600
- severity: 'critical',
601
- category: 'injection',
602
- scanner: 'deserialization',
1657
+ [VulnerabilityCode.HEADER_DRIFT_CSP]: {
1658
+ id: 271,
1659
+ code: VulnerabilityCode.HEADER_DRIFT_CSP,
1660
+ title: 'Header Drift - Content-Security-Policy Inconsistent',
1661
+ description: 'Content-Security-Policy is present on some paths but missing on others, creating uneven defenses and potentially exposing unprotected routes to script injection or content loading risks.',
1662
+ severity: 'low',
1663
+ levelId: 4,
1664
+ category: 'configuration',
1665
+ scanner: 'security-headers',
603
1666
  cvss: {
604
- score: 9.8,
605
- vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H',
606
- severity: 'CRITICAL',
1667
+ score: 3.1,
1668
+ vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:N',
1669
+ severity: 'LOW',
607
1670
  },
608
1671
  cwe: [
609
- { id: 'CWE-502', name: 'Deserialization of Untrusted Data', url: 'https://cwe.mitre.org/data/definitions/502.html' },
1672
+ { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
610
1673
  ],
611
1674
  owasp: [
612
- { id: 'A08:2021', name: 'Software and Data Integrity Failures', url: 'https://owasp.org/Top10/A08_2021-Software_and_Data_Integrity_Failures/' },
1675
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
613
1676
  ],
614
- remediation: 'Never pickle untrusted data. Use JSON or other safe formats. If pickle is required, use cryptographic signatures to verify data integrity before deserialization.',
1677
+ remediation: 'Apply CSP consistently across relevant responses, including error and authentication pages, to avoid gaps in policy coverage.',
615
1678
  },
616
1679
 
617
- [VulnerabilityCode.DESER_DOTNET]: {
618
- id: 80,
619
- code: VulnerabilityCode.DESER_DOTNET,
620
- title: 'Insecure Deserialization - .NET',
621
- description: 'Critical .NET deserialization vulnerability through BinaryFormatter, ObjectStateFormatter, LosFormatter, or other dangerous formatters processing untrusted data, enabling remote code execution through gadget chains in the .NET runtime or third-party libraries.',
622
- severity: 'critical',
623
- category: 'injection',
624
- scanner: 'deserialization',
1680
+ [VulnerabilityCode.HEADER_DRIFT_HSTS]: {
1681
+ id: 272,
1682
+ code: VulnerabilityCode.HEADER_DRIFT_HSTS,
1683
+ title: 'Header Drift - Strict-Transport-Security Inconsistent',
1684
+ description: 'Strict-Transport-Security is present on some paths but missing on others, reducing the effectiveness of HTTPS enforcement and creating mixed transport behavior across the site.',
1685
+ severity: 'low',
1686
+ levelId: 4,
1687
+ category: 'configuration',
1688
+ scanner: 'security-headers',
625
1689
  cvss: {
626
- score: 9.8,
627
- vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H',
628
- severity: 'CRITICAL',
1690
+ score: 3.1,
1691
+ vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:N',
1692
+ severity: 'LOW',
629
1693
  },
630
1694
  cwe: [
631
- { id: 'CWE-502', name: 'Deserialization of Untrusted Data', url: 'https://cwe.mitre.org/data/definitions/502.html' },
1695
+ { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
632
1696
  ],
633
1697
  owasp: [
634
- { id: 'A08:2021', name: 'Software and Data Integrity Failures', url: 'https://owasp.org/Top10/A08_2021-Software_and_Data_Integrity_Failures/' },
1698
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
635
1699
  ],
636
- remediation: 'Avoid BinaryFormatter for untrusted data. Use System.Text.Json or XmlSerializer with known types. For legacy code, implement SerializationBinder to restrict deserializable types.',
1700
+ remediation: 'Ensure HSTS is set uniformly on HTTPS responses so the browser can enforce strict transport for the entire origin.',
637
1701
  },
638
1702
 
639
- [VulnerabilityCode.DESER_RUBY]: {
640
- id: 81,
641
- code: VulnerabilityCode.DESER_RUBY,
642
- title: 'Insecure Deserialization - Ruby',
643
- description: 'Critical Ruby deserialization vulnerability through Marshal.load or YAML.load processing untrusted data, enabling remote code execution through Ruby object instantiation gadgets that execute arbitrary code during object reconstruction.',
644
- severity: 'critical',
645
- category: 'injection',
646
- scanner: 'deserialization',
1703
+ [VulnerabilityCode.HEADER_DRIFT_XCONTENT_TYPE]: {
1704
+ id: 273,
1705
+ code: VulnerabilityCode.HEADER_DRIFT_XCONTENT_TYPE,
1706
+ title: 'Header Drift - X-Content-Type-Options Inconsistent',
1707
+ description: 'X-Content-Type-Options is present on some paths but missing on others, allowing inconsistent MIME sniffing behavior that could expose unprotected routes to content-type confusion.',
1708
+ severity: 'low',
1709
+ levelId: 4,
1710
+ category: 'configuration',
1711
+ scanner: 'security-headers',
647
1712
  cvss: {
648
- score: 9.8,
649
- vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H',
650
- severity: 'CRITICAL',
1713
+ score: 3.1,
1714
+ vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:N',
1715
+ severity: 'LOW',
651
1716
  },
652
1717
  cwe: [
653
- { id: 'CWE-502', name: 'Deserialization of Untrusted Data', url: 'https://cwe.mitre.org/data/definitions/502.html' },
1718
+ { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
654
1719
  ],
655
1720
  owasp: [
656
- { id: 'A08:2021', name: 'Software and Data Integrity Failures', url: 'https://owasp.org/Top10/A08_2021-Software_and_Data_Integrity_Failures/' },
1721
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
657
1722
  ],
658
- remediation: 'Never Marshal.load untrusted data. Use JSON.parse instead. For YAML, use YAML.safe_load with permitted_classes option. Sign serialized data with HMAC for integrity.',
1723
+ remediation: 'Apply X-Content-Type-Options: nosniff across all relevant responses to avoid inconsistent browser behavior.',
659
1724
  },
660
1725
 
661
- [VulnerabilityCode.DESER_NODE]: {
662
- id: 82,
663
- code: VulnerabilityCode.DESER_NODE,
664
- title: 'Insecure Deserialization - Node.js',
665
- description: 'Critical Node.js deserialization vulnerability through node-serialize, funcster, or similar libraries that execute JavaScript during deserialization, enabling remote code execution when attacker-controlled serialized data containing functions or IIFE is processed.',
666
- severity: 'critical',
667
- category: 'injection',
668
- scanner: 'deserialization',
1726
+ [VulnerabilityCode.HEADER_DRIFT_REFERRER_POLICY]: {
1727
+ id: 274,
1728
+ code: VulnerabilityCode.HEADER_DRIFT_REFERRER_POLICY,
1729
+ title: 'Header Drift - Referrer-Policy Inconsistent',
1730
+ description: 'Referrer-Policy is present on some paths but missing on others, leading to inconsistent referrer leakage controls and potential exposure of sensitive URL data.',
1731
+ severity: 'low',
1732
+ levelId: 4,
1733
+ category: 'configuration',
1734
+ scanner: 'security-headers',
669
1735
  cvss: {
670
- score: 9.8,
671
- vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H',
672
- severity: 'CRITICAL',
1736
+ score: 3.1,
1737
+ vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:N',
1738
+ severity: 'LOW',
673
1739
  },
674
1740
  cwe: [
675
- { id: 'CWE-502', name: 'Deserialization of Untrusted Data', url: 'https://cwe.mitre.org/data/definitions/502.html' },
1741
+ { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
676
1742
  ],
677
1743
  owasp: [
678
- { id: 'A08:2021', name: 'Software and Data Integrity Failures', url: 'https://owasp.org/Top10/A08_2021-Software_and_Data_Integrity_Failures/' },
1744
+ { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
679
1745
  ],
680
- remediation: 'Never use serialization libraries that can deserialize functions. Use JSON.parse() for data interchange. Avoid node-serialize and similar libraries. Implement input validation.',
1746
+ remediation: 'Set a consistent Referrer-Policy across responses to standardize referrer leakage controls.',
681
1747
  },
682
1748
 
683
- [VulnerabilityCode.CLICK_PARTIAL_PROTECTION]: {
684
- id: 83,
685
- code: VulnerabilityCode.CLICK_PARTIAL_PROTECTION,
686
- title: 'Clickjacking - Partial Protection',
687
- description: 'Incomplete clickjacking protection where X-Frame-Options or frame-ancestors CSP is only applied on some pages, uses weak values like ALLOW-FROM with bypassable origins, or has inconsistent implementation allowing certain pages to be framed.',
1749
+ [VulnerabilityCode.HEADER_DRIFT_XFRAME]: {
1750
+ id: 275,
1751
+ code: VulnerabilityCode.HEADER_DRIFT_XFRAME,
1752
+ title: 'Header Drift - X-Frame-Options Inconsistent',
1753
+ description: 'X-Frame-Options or equivalent framing controls are present on some paths but missing on others, creating uneven clickjacking protection across the site.',
688
1754
  severity: 'low',
1755
+ levelId: 4,
689
1756
  category: 'configuration',
690
1757
  scanner: 'security-headers',
691
1758
  cvss: {
692
- score: 3.7,
1759
+ score: 3.1,
693
1760
  vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:N',
694
1761
  severity: 'LOW',
695
1762
  },
696
1763
  cwe: [
697
- { id: 'CWE-1021', name: 'Improper Restriction of Rendered UI Layers', url: 'https://cwe.mitre.org/data/definitions/1021.html' },
1764
+ { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
698
1765
  ],
699
1766
  owasp: [
700
1767
  { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
701
1768
  ],
702
- remediation: 'Apply consistent frame protection across all pages. Use DENY or SAMEORIGIN rather than ALLOW-FROM. Audit all endpoints for missing protection. Use CSP frame-ancestors instead of X-Frame-Options.',
1769
+ remediation: 'Apply X-Frame-Options or CSP frame-ancestors consistently to avoid unprotected pages.',
703
1770
  },
704
1771
 
705
- [VulnerabilityCode.HEADER_MISSING_XCONTENT_TYPE]: {
706
- id: 84,
707
- code: VulnerabilityCode.HEADER_MISSING_XCONTENT_TYPE,
708
- title: 'Missing Security Header - X-Content-Type-Options',
709
- description: 'The application does not set X-Content-Type-Options: nosniff header, allowing browsers to perform MIME-type sniffing that can lead to XSS attacks when user-uploaded content is served with incorrect Content-Type and browsers execute it as script.',
1772
+ [VulnerabilityCode.HEADER_DRIFT_PERMISSIONS_POLICY]: {
1773
+ id: 276,
1774
+ code: VulnerabilityCode.HEADER_DRIFT_PERMISSIONS_POLICY,
1775
+ title: 'Header Drift - Permissions-Policy Inconsistent',
1776
+ description: 'Permissions-Policy is present on some paths but missing on others, leading to inconsistent controls over browser features such as geolocation, camera, or microphone.',
710
1777
  severity: 'low',
1778
+ levelId: 4,
711
1779
  category: 'configuration',
712
1780
  scanner: 'security-headers',
713
1781
  cvss: {
714
- score: 3.7,
715
- vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N',
1782
+ score: 3.1,
1783
+ vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:N',
716
1784
  severity: 'LOW',
717
1785
  },
718
1786
  cwe: [
@@ -721,86 +1789,44 @@ export const CONFIG_VULNERABILITIES: Record<string, VulnerabilityDefinition> = {
721
1789
  owasp: [
722
1790
  { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
723
1791
  ],
724
- remediation: 'Add X-Content-Type-Options: nosniff header to all responses. Ensure correct Content-Type headers are set for all resources. Validate file types before serving user uploads.',
725
- },
726
-
727
- [VulnerabilityCode.HEADER_XCONTENT_TYPE_INVALID]: {
728
- id: 1009,
729
- code: VulnerabilityCode.HEADER_XCONTENT_TYPE_INVALID,
730
- title: 'Invalid Security Header - X-Content-Type-Options',
731
- description: 'The X-Content-Type-Options header is present but misconfigured (not set to nosniff), which can allow MIME sniffing and reduce protection against content-type confusion.',
732
- severity: 'low',
733
- category: 'configuration',
734
- scanner: 'security-headers',
735
- cvss: {
736
- score: 3.7,
737
- vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N',
738
- severity: 'LOW',
739
- },
740
- cwe: [
741
- { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
742
- ],
743
- owasp: [
744
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
745
- ],
746
- remediation: 'Set X-Content-Type-Options to nosniff on all responses to prevent MIME sniffing.',
747
- },
748
-
749
- [VulnerabilityCode.HEADER_MISSING_REFERRER_POLICY]: {
750
- id: 85,
751
- code: VulnerabilityCode.HEADER_MISSING_REFERRER_POLICY,
752
- title: 'Missing Security Header - Referrer-Policy',
753
- description: 'The application does not implement Referrer-Policy header, potentially leaking sensitive URL information including session tokens, user IDs, or query parameters to external sites when users click links or resources are loaded from third-party domains.',
1792
+ remediation: 'Apply Permissions-Policy consistently for pages that should restrict access to sensitive browser features.',
1793
+ },
1794
+
1795
+ [VulnerabilityCode.HEADER_DRIFT_COOP]: {
1796
+ id: 277,
1797
+ code: VulnerabilityCode.HEADER_DRIFT_COOP,
1798
+ title: 'Header Drift - COOP Inconsistent',
1799
+ description: 'Cross-Origin-Opener-Policy is present on some paths but missing on others, which can lead to uneven cross-origin isolation guarantees and inconsistent window isolation behavior.',
754
1800
  severity: 'low',
1801
+ levelId: 4,
755
1802
  category: 'configuration',
756
1803
  scanner: 'security-headers',
757
1804
  cvss: {
758
1805
  score: 3.1,
759
- vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:L/I:N/A:N',
1806
+ vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:N',
760
1807
  severity: 'LOW',
761
1808
  },
762
1809
  cwe: [
763
- { id: 'CWE-200', name: 'Information Exposure', url: 'https://cwe.mitre.org/data/definitions/200.html' },
1810
+ { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
764
1811
  ],
765
1812
  owasp: [
766
1813
  { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
767
1814
  ],
768
- remediation: 'Implement Referrer-Policy header with strict-origin-when-cross-origin or no-referrer policy. Avoid passing sensitive data in URLs. Use POST requests for sensitive operations.',
769
- },
770
-
771
- [VulnerabilityCode.HEADER_REFERRER_POLICY_UNSAFE]: {
772
- id: 1010,
773
- code: VulnerabilityCode.HEADER_REFERRER_POLICY_UNSAFE,
774
- title: 'Unsafe Referrer-Policy Configuration',
775
- description: 'The Referrer-Policy header is set to a permissive value that can leak full URLs and sensitive query parameters to external origins.',
776
- severity: 'low',
777
- category: 'configuration',
778
- scanner: 'security-headers',
779
- cvss: {
780
- score: 3.1,
781
- vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:L/I:N/A:N',
782
- severity: 'LOW',
783
- },
784
- cwe: [
785
- { id: 'CWE-200', name: 'Information Exposure', url: 'https://cwe.mitre.org/data/definitions/200.html' },
786
- ],
787
- owasp: [
788
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
789
- ],
790
- remediation: 'Use strict-origin-when-cross-origin or no-referrer to minimize leakage of sensitive URL data.',
791
- },
1815
+ remediation: 'Apply COOP consistently where cross-origin isolation is required and validate the policy across all relevant routes.',
1816
+ },
792
1817
 
793
- [VulnerabilityCode.HEADER_MISSING_PERMISSIONS_POLICY]: {
794
- id: 86,
795
- code: VulnerabilityCode.HEADER_MISSING_PERMISSIONS_POLICY,
796
- title: 'Missing Security Header - Permissions-Policy',
797
- description: 'The application does not implement Permissions-Policy (formerly Feature-Policy) header, allowing embedded frames or malicious scripts to access sensitive browser features like camera, microphone, geolocation, or payment APIs without explicit permission.',
798
- severity: 'info',
1818
+ [VulnerabilityCode.HEADER_DRIFT_COEP]: {
1819
+ id: 278,
1820
+ code: VulnerabilityCode.HEADER_DRIFT_COEP,
1821
+ title: 'Header Drift - COEP Inconsistent',
1822
+ description: 'Cross-Origin-Embedder-Policy is present on some paths but missing on others, resulting in inconsistent embedding restrictions and cross-origin isolation posture.',
1823
+ severity: 'low',
1824
+ levelId: 4,
799
1825
  category: 'configuration',
800
1826
  scanner: 'security-headers',
801
1827
  cvss: {
802
- score: 2.0,
803
- vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:L/I:N/A:N',
1828
+ score: 3.1,
1829
+ vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:N',
804
1830
  severity: 'LOW',
805
1831
  },
806
1832
  cwe: [
@@ -809,21 +1835,22 @@ export const CONFIG_VULNERABILITIES: Record<string, VulnerabilityDefinition> = {
809
1835
  owasp: [
810
1836
  { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
811
1837
  ],
812
- remediation: 'Add Permissions-Policy header restricting access to sensitive features. Disable features not needed by the application. Use () syntax to disallow features for all origins.',
1838
+ remediation: 'Apply COEP consistently on routes that are intended to enforce cross-origin embedding controls.',
813
1839
  },
814
1840
 
815
- [VulnerabilityCode.HEADER_MISSING_XSS_PROTECTION]: {
816
- id: 87,
817
- code: VulnerabilityCode.HEADER_MISSING_XSS_PROTECTION,
818
- title: 'Missing Security Header - X-XSS-Protection',
819
- description: 'The legacy X-XSS-Protection header is not set. While deprecated in modern browsers, it can provide defense-in-depth for older browsers that still honor this header for their built-in XSS auditor feature.',
820
- severity: 'info',
1841
+ [VulnerabilityCode.HEADER_DRIFT_CORP]: {
1842
+ id: 279,
1843
+ code: VulnerabilityCode.HEADER_DRIFT_CORP,
1844
+ title: 'Header Drift - CORP Inconsistent',
1845
+ description: 'Cross-Origin-Resource-Policy is present on some paths but missing on others, which can leave inconsistent controls on resource sharing and embedding across the application.',
1846
+ severity: 'low',
1847
+ levelId: 4,
821
1848
  category: 'configuration',
822
1849
  scanner: 'security-headers',
823
1850
  cvss: {
824
- score: 0.0,
825
- vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:N',
826
- severity: 'NONE',
1851
+ score: 3.1,
1852
+ vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:N',
1853
+ severity: 'LOW',
827
1854
  },
828
1855
  cwe: [
829
1856
  { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
@@ -831,514 +1858,8 @@ export const CONFIG_VULNERABILITIES: Record<string, VulnerabilityDefinition> = {
831
1858
  owasp: [
832
1859
  { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
833
1860
  ],
834
- remediation: 'Set X-XSS-Protection: 0 to disable (recommended per OWASP) or use CSP instead. The XSS auditor has been removed from modern browsers due to security issues with block mode.',
835
- },
836
-
837
- [VulnerabilityCode.HEADER_COEP_WITHOUT_COOP]: {
838
- id: 108,
839
- code: VulnerabilityCode.HEADER_COEP_WITHOUT_COOP,
840
- title: 'Header Misconfiguration - COEP Without COOP',
841
- description: 'Cross-Origin-Embedder-Policy (COEP) is set without Cross-Origin-Opener-Policy (COOP), which can create inconsistent cross-origin isolation behavior and indicate incomplete or misapplied security header strategy for isolation-sensitive applications.',
842
- severity: 'info',
843
- category: 'configuration',
844
- scanner: 'security-headers',
845
- cvss: {
846
- score: 2.0,
847
- vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:N/A:N',
848
- severity: 'LOW',
849
- },
850
- cwe: [
851
- { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
852
- ],
853
- owasp: [
854
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
855
- ],
856
- remediation: 'If cross-origin isolation is required, deploy COEP together with COOP and validate the intended policy combination. Otherwise remove COEP to avoid confusing or inconsistent isolation posture.',
857
- },
858
-
859
- [VulnerabilityCode.HEADER_CORP_UNUSUAL]: {
860
- id: 109,
861
- code: VulnerabilityCode.HEADER_CORP_UNUSUAL,
862
- title: 'Header Misconfiguration - Unusual CORP Value',
863
- description: 'Cross-Origin-Resource-Policy (CORP) is set to a non-standard value, which may indicate a misconfiguration that provides no effective protection or creates unpredictable resource loading behavior across origins.',
864
- severity: 'info',
865
- category: 'configuration',
866
- scanner: 'security-headers',
867
- cvss: {
868
- score: 2.0,
869
- vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:N/A:N',
870
- severity: 'LOW',
871
- },
872
- cwe: [
873
- { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
874
- ],
875
- owasp: [
876
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
877
- ],
878
- remediation: 'Use valid CORP values (same-origin, same-site, or cross-origin) and confirm the chosen policy aligns with the resource sharing model of the application.',
879
- },
880
-
881
- [VulnerabilityCode.HEADER_EXPECT_CT_PRESENT]: {
882
- id: 110,
883
- code: VulnerabilityCode.HEADER_EXPECT_CT_PRESENT,
884
- title: 'Deprecated Header - Expect-CT Present',
885
- description: 'The Expect-CT header is present even though the feature is deprecated and no longer enforced by major browsers, adding unnecessary configuration surface without meaningful security benefit.',
886
- severity: 'info',
887
- category: 'configuration',
888
- scanner: 'security-headers',
889
- cvss: {
890
- score: 0.0,
891
- vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:N',
892
- severity: 'NONE',
893
- },
894
- cwe: [
895
- { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
896
- ],
897
- owasp: [
898
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
899
- ],
900
- remediation: 'Remove Expect-CT unless you have a legacy operational requirement, and focus on TLS configuration and certificate transparency monitoring via modern tooling.',
901
- },
902
-
903
- [VulnerabilityCode.HEADER_SERVER_HEADER_PRESENT]: {
904
- id: 111,
905
- code: VulnerabilityCode.HEADER_SERVER_HEADER_PRESENT,
906
- title: 'Information Exposure - Server Header Present',
907
- description: 'The Server header reveals technology or version details that can assist attackers with fingerprinting and targeted exploitation, increasing the likelihood of tailored attacks against known software weaknesses.',
908
- severity: 'info',
909
- category: 'configuration',
910
- scanner: 'security-headers',
911
- cvss: {
912
- score: 3.1,
913
- vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N',
914
- severity: 'LOW',
915
- },
916
- cwe: [
917
- { id: 'CWE-200', name: 'Information Exposure', url: 'https://cwe.mitre.org/data/definitions/200.html' },
918
- ],
919
- owasp: [
920
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
921
- ],
922
- remediation: 'Configure the web server or reverse proxy to minimize or remove Server header details and avoid exposing version strings in responses.',
923
- },
924
-
925
- [VulnerabilityCode.HEADER_X_POWERED_BY_PRESENT]: {
926
- id: 112,
927
- code: VulnerabilityCode.HEADER_X_POWERED_BY_PRESENT,
928
- title: 'Information Exposure - X-Powered-By Present',
929
- description: 'The X-Powered-By header discloses framework or runtime information that can be used to fingerprint the application stack and target known vulnerabilities in specific platforms or versions.',
930
- severity: 'info',
931
- category: 'configuration',
932
- scanner: 'security-headers',
933
- cvss: {
934
- score: 3.1,
935
- vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N',
936
- severity: 'LOW',
937
- },
938
- cwe: [
939
- { id: 'CWE-200', name: 'Information Exposure', url: 'https://cwe.mitre.org/data/definitions/200.html' },
940
- ],
941
- owasp: [
942
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
943
- ],
944
- remediation: 'Disable X-Powered-By headers in application frameworks or reverse proxies to reduce stack fingerprinting exposure.',
945
- },
946
-
947
- [VulnerabilityCode.HEADER_X_XSS_PROTECTION_ENABLED]: {
948
- id: 113,
949
- code: VulnerabilityCode.HEADER_X_XSS_PROTECTION_ENABLED,
950
- title: 'Deprecated Header - X-XSS-Protection Enabled',
951
- description: 'The X-XSS-Protection header is enabled, which is deprecated and can introduce security risks or inconsistent behavior in legacy browsers due to the removed XSS auditor feature.',
952
- severity: 'low',
953
- category: 'configuration',
954
- scanner: 'security-headers',
955
- cvss: {
956
- score: 3.1,
957
- vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:N',
958
- severity: 'LOW',
959
- },
960
- cwe: [
961
- { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
962
- ],
963
- owasp: [
964
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
965
- ],
966
- remediation: 'Prefer modern CSP protections and set X-XSS-Protection: 0 or remove the header to avoid relying on deprecated behavior.',
967
- },
968
-
969
- [VulnerabilityCode.COOKIE_SAMESITE_NONE_WITHOUT_SECURE]: {
970
- id: 114,
971
- code: VulnerabilityCode.COOKIE_SAMESITE_NONE_WITHOUT_SECURE,
972
- title: 'Cookie Misconfiguration - SameSite=None Without Secure',
973
- description: 'A cookie is configured with SameSite=None but lacks the Secure attribute, enabling cross-site transmission over unencrypted connections and undermining cookie integrity and confidentiality controls.',
974
- severity: 'medium',
975
- category: 'configuration',
976
- scanner: 'security-headers',
977
- cvss: {
978
- score: 5.3,
979
- vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N',
980
- severity: 'MEDIUM',
981
- },
982
- cwe: [
983
- { id: 'CWE-614', name: 'Sensitive Cookie in HTTPS Session Without Secure Attribute', url: 'https://cwe.mitre.org/data/definitions/614.html' },
984
- ],
985
- owasp: [
986
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
987
- ],
988
- remediation: 'Set Secure when SameSite=None is used and ensure the application is served exclusively over HTTPS.',
989
- },
990
-
991
- [VulnerabilityCode.COOKIE_SESSION_MISSING_SECURE]: {
992
- id: 115,
993
- code: VulnerabilityCode.COOKIE_SESSION_MISSING_SECURE,
994
- title: 'Cookie Misconfiguration - Session Cookie Missing Secure',
995
- description: 'Session or authentication cookies are missing the Secure attribute, allowing them to be transmitted over unencrypted connections and increasing the risk of session hijacking or credential theft.',
996
- severity: 'high',
997
- category: 'configuration',
998
- scanner: 'security-headers',
999
- cvss: {
1000
- score: 7.1,
1001
- vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:N',
1002
- severity: 'HIGH',
1003
- },
1004
- cwe: [
1005
- { id: 'CWE-614', name: 'Sensitive Cookie in HTTPS Session Without Secure Attribute', url: 'https://cwe.mitre.org/data/definitions/614.html' },
1006
- ],
1007
- owasp: [
1008
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
1009
- ],
1010
- remediation: 'Apply the Secure attribute to all session cookies and enforce HTTPS with HSTS to prevent downgrade to plaintext.',
1011
- },
1012
-
1013
- [VulnerabilityCode.COOKIE_MISSING_SECURE]: {
1014
- id: 116,
1015
- code: VulnerabilityCode.COOKIE_MISSING_SECURE,
1016
- title: 'Cookie Misconfiguration - Missing Secure Attribute',
1017
- description: 'Cookies are set without the Secure attribute, permitting transmission over plaintext HTTP and exposing cookie contents to network interception or manipulation.',
1018
- severity: 'medium',
1019
- category: 'configuration',
1020
- scanner: 'security-headers',
1021
- cvss: {
1022
- score: 5.3,
1023
- vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N',
1024
- severity: 'MEDIUM',
1025
- },
1026
- cwe: [
1027
- { id: 'CWE-614', name: 'Sensitive Cookie in HTTPS Session Without Secure Attribute', url: 'https://cwe.mitre.org/data/definitions/614.html' },
1028
- ],
1029
- owasp: [
1030
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
1031
- ],
1032
- remediation: 'Set the Secure attribute on cookies that should only be transmitted over HTTPS.',
1033
- },
1034
-
1035
- [VulnerabilityCode.COOKIE_SESSION_MISSING_HTTPONLY]: {
1036
- id: 117,
1037
- code: VulnerabilityCode.COOKIE_SESSION_MISSING_HTTPONLY,
1038
- title: 'Cookie Misconfiguration - Session Cookie Missing HttpOnly',
1039
- description: 'Session or authentication cookies are missing the HttpOnly attribute, allowing client-side scripts to access sensitive cookie values and increasing the impact of XSS attacks.',
1040
- severity: 'high',
1041
- category: 'configuration',
1042
- scanner: 'security-headers',
1043
- cvss: {
1044
- score: 7.1,
1045
- vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:N',
1046
- severity: 'HIGH',
1047
- },
1048
- cwe: [
1049
- { id: 'CWE-1004', name: 'Sensitive Cookie Without HttpOnly Flag', url: 'https://cwe.mitre.org/data/definitions/1004.html' },
1050
- ],
1051
- owasp: [
1052
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
1053
- ],
1054
- remediation: 'Set HttpOnly on session cookies to reduce access from client-side scripts and pair with CSP to mitigate XSS risk.',
1055
- },
1056
-
1057
- [VulnerabilityCode.COOKIE_MISSING_HTTPONLY]: {
1058
- id: 118,
1059
- code: VulnerabilityCode.COOKIE_MISSING_HTTPONLY,
1060
- title: 'Cookie Misconfiguration - Missing HttpOnly Attribute',
1061
- description: 'Cookies are missing the HttpOnly attribute, allowing JavaScript access to cookie values and increasing the potential impact of client-side script injection.',
1062
- severity: 'medium',
1063
- category: 'configuration',
1064
- scanner: 'security-headers',
1065
- cvss: {
1066
- score: 5.3,
1067
- vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N',
1068
- severity: 'MEDIUM',
1069
- },
1070
- cwe: [
1071
- { id: 'CWE-1004', name: 'Sensitive Cookie Without HttpOnly Flag', url: 'https://cwe.mitre.org/data/definitions/1004.html' },
1072
- ],
1073
- owasp: [
1074
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
1075
- ],
1076
- remediation: 'Add HttpOnly to cookies that should not be accessed by JavaScript to reduce the impact of XSS.',
1077
- },
1078
-
1079
- [VulnerabilityCode.COOKIE_MISSING_SAMESITE]: {
1080
- id: 119,
1081
- code: VulnerabilityCode.COOKIE_MISSING_SAMESITE,
1082
- title: 'Cookie Misconfiguration - Missing SameSite Attribute',
1083
- description: 'Cookies do not specify SameSite, which can allow cross-site requests to include cookies by default and increase exposure to CSRF-style attacks or cross-site leakage.',
1084
- severity: 'medium',
1085
- category: 'configuration',
1086
- scanner: 'security-headers',
1087
- cvss: {
1088
- score: 4.3,
1089
- vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:L/I:L/A:N',
1090
- severity: 'MEDIUM',
1091
- },
1092
- cwe: [
1093
- { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
1094
- ],
1095
- owasp: [
1096
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
1097
- ],
1098
- remediation: 'Set SameSite=Lax for general cookies or SameSite=Strict where appropriate to reduce cross-site cookie inclusion.',
1099
- },
1100
-
1101
- [VulnerabilityCode.COOKIE_HOST_PREFIX_INVALID]: {
1102
- id: 120,
1103
- code: VulnerabilityCode.COOKIE_HOST_PREFIX_INVALID,
1104
- title: 'Cookie Misconfiguration - __Host- Prefix Violations',
1105
- description: 'Cookies with the __Host- prefix do not meet required attributes (Secure, Path=/, no Domain), weakening the protections provided by host-only cookie semantics.',
1106
- severity: 'medium',
1107
- category: 'configuration',
1108
- scanner: 'security-headers',
1109
- cvss: {
1110
- score: 5.3,
1111
- vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N',
1112
- severity: 'MEDIUM',
1113
- },
1114
- cwe: [
1115
- { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
1116
- ],
1117
- owasp: [
1118
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
1119
- ],
1120
- remediation: 'Ensure __Host- cookies include Secure, Path=/, and omit the Domain attribute to preserve host-only guarantees.',
1121
- },
1122
-
1123
- [VulnerabilityCode.COOKIE_SECURE_PREFIX_INVALID]: {
1124
- id: 121,
1125
- code: VulnerabilityCode.COOKIE_SECURE_PREFIX_INVALID,
1126
- title: 'Cookie Misconfiguration - __Secure- Prefix Violations',
1127
- description: 'Cookies with the __Secure- prefix are missing the Secure attribute, which defeats the prefix requirement and weakens transport security protections.',
1128
- severity: 'medium',
1129
- category: 'configuration',
1130
- scanner: 'security-headers',
1131
- cvss: {
1132
- score: 5.3,
1133
- vector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N',
1134
- severity: 'MEDIUM',
1135
- },
1136
- cwe: [
1137
- { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
1138
- ],
1139
- owasp: [
1140
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
1141
- ],
1142
- remediation: 'Set the Secure attribute for all __Secure- cookies and ensure HTTPS is enforced across the application.',
1143
- },
1144
-
1145
- [VulnerabilityCode.HEADER_DRIFT_CSP]: {
1146
- id: 122,
1147
- code: VulnerabilityCode.HEADER_DRIFT_CSP,
1148
- title: 'Header Drift - Content-Security-Policy Inconsistent',
1149
- description: 'Content-Security-Policy is present on some paths but missing on others, creating uneven defenses and potentially exposing unprotected routes to script injection or content loading risks.',
1150
- severity: 'low',
1151
- category: 'configuration',
1152
- scanner: 'security-headers',
1153
- cvss: {
1154
- score: 3.1,
1155
- vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:N',
1156
- severity: 'LOW',
1157
- },
1158
- cwe: [
1159
- { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
1160
- ],
1161
- owasp: [
1162
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
1163
- ],
1164
- remediation: 'Apply CSP consistently across relevant responses, including error and authentication pages, to avoid gaps in policy coverage.',
1165
- },
1166
-
1167
- [VulnerabilityCode.HEADER_DRIFT_HSTS]: {
1168
- id: 123,
1169
- code: VulnerabilityCode.HEADER_DRIFT_HSTS,
1170
- title: 'Header Drift - Strict-Transport-Security Inconsistent',
1171
- description: 'Strict-Transport-Security is present on some paths but missing on others, reducing the effectiveness of HTTPS enforcement and creating mixed transport behavior across the site.',
1172
- severity: 'low',
1173
- category: 'configuration',
1174
- scanner: 'security-headers',
1175
- cvss: {
1176
- score: 3.1,
1177
- vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:N',
1178
- severity: 'LOW',
1179
- },
1180
- cwe: [
1181
- { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
1182
- ],
1183
- owasp: [
1184
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
1185
- ],
1186
- remediation: 'Ensure HSTS is set uniformly on HTTPS responses so the browser can enforce strict transport for the entire origin.',
1187
- },
1188
-
1189
- [VulnerabilityCode.HEADER_DRIFT_XCONTENT_TYPE]: {
1190
- id: 124,
1191
- code: VulnerabilityCode.HEADER_DRIFT_XCONTENT_TYPE,
1192
- title: 'Header Drift - X-Content-Type-Options Inconsistent',
1193
- description: 'X-Content-Type-Options is present on some paths but missing on others, allowing inconsistent MIME sniffing behavior that could expose unprotected routes to content-type confusion.',
1194
- severity: 'low',
1195
- category: 'configuration',
1196
- scanner: 'security-headers',
1197
- cvss: {
1198
- score: 3.1,
1199
- vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:N',
1200
- severity: 'LOW',
1201
- },
1202
- cwe: [
1203
- { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
1204
- ],
1205
- owasp: [
1206
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
1207
- ],
1208
- remediation: 'Apply X-Content-Type-Options: nosniff across all relevant responses to avoid inconsistent browser behavior.',
1209
- },
1210
-
1211
- [VulnerabilityCode.HEADER_DRIFT_REFERRER_POLICY]: {
1212
- id: 125,
1213
- code: VulnerabilityCode.HEADER_DRIFT_REFERRER_POLICY,
1214
- title: 'Header Drift - Referrer-Policy Inconsistent',
1215
- description: 'Referrer-Policy is present on some paths but missing on others, leading to inconsistent referrer leakage controls and potential exposure of sensitive URL data.',
1216
- severity: 'low',
1217
- category: 'configuration',
1218
- scanner: 'security-headers',
1219
- cvss: {
1220
- score: 3.1,
1221
- vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:N',
1222
- severity: 'LOW',
1223
- },
1224
- cwe: [
1225
- { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
1226
- ],
1227
- owasp: [
1228
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
1229
- ],
1230
- remediation: 'Set a consistent Referrer-Policy across responses to standardize referrer leakage controls.',
1231
- },
1232
-
1233
- [VulnerabilityCode.HEADER_DRIFT_XFRAME]: {
1234
- id: 126,
1235
- code: VulnerabilityCode.HEADER_DRIFT_XFRAME,
1236
- title: 'Header Drift - X-Frame-Options Inconsistent',
1237
- description: 'X-Frame-Options or equivalent framing controls are present on some paths but missing on others, creating uneven clickjacking protection across the site.',
1238
- severity: 'low',
1239
- category: 'configuration',
1240
- scanner: 'security-headers',
1241
- cvss: {
1242
- score: 3.1,
1243
- vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:N',
1244
- severity: 'LOW',
1245
- },
1246
- cwe: [
1247
- { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
1248
- ],
1249
- owasp: [
1250
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
1251
- ],
1252
- remediation: 'Apply X-Frame-Options or CSP frame-ancestors consistently to avoid unprotected pages.',
1253
- },
1254
-
1255
- [VulnerabilityCode.HEADER_DRIFT_PERMISSIONS_POLICY]: {
1256
- id: 127,
1257
- code: VulnerabilityCode.HEADER_DRIFT_PERMISSIONS_POLICY,
1258
- title: 'Header Drift - Permissions-Policy Inconsistent',
1259
- description: 'Permissions-Policy is present on some paths but missing on others, leading to inconsistent controls over browser features such as geolocation, camera, or microphone.',
1260
- severity: 'low',
1261
- category: 'configuration',
1262
- scanner: 'security-headers',
1263
- cvss: {
1264
- score: 3.1,
1265
- vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:N',
1266
- severity: 'LOW',
1267
- },
1268
- cwe: [
1269
- { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
1270
- ],
1271
- owasp: [
1272
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
1273
- ],
1274
- remediation: 'Apply Permissions-Policy consistently for pages that should restrict access to sensitive browser features.',
1275
- },
1276
-
1277
- [VulnerabilityCode.HEADER_DRIFT_COOP]: {
1278
- id: 128,
1279
- code: VulnerabilityCode.HEADER_DRIFT_COOP,
1280
- title: 'Header Drift - COOP Inconsistent',
1281
- description: 'Cross-Origin-Opener-Policy is present on some paths but missing on others, which can lead to uneven cross-origin isolation guarantees and inconsistent window isolation behavior.',
1282
- severity: 'low',
1283
- category: 'configuration',
1284
- scanner: 'security-headers',
1285
- cvss: {
1286
- score: 3.1,
1287
- vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:N',
1288
- severity: 'LOW',
1289
- },
1290
- cwe: [
1291
- { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
1292
- ],
1293
- owasp: [
1294
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
1295
- ],
1296
- remediation: 'Apply COOP consistently where cross-origin isolation is required and validate the policy across all relevant routes.',
1297
- },
1298
-
1299
- [VulnerabilityCode.HEADER_DRIFT_COEP]: {
1300
- id: 129,
1301
- code: VulnerabilityCode.HEADER_DRIFT_COEP,
1302
- title: 'Header Drift - COEP Inconsistent',
1303
- description: 'Cross-Origin-Embedder-Policy is present on some paths but missing on others, resulting in inconsistent embedding restrictions and cross-origin isolation posture.',
1304
- severity: 'low',
1305
- category: 'configuration',
1306
- scanner: 'security-headers',
1307
- cvss: {
1308
- score: 3.1,
1309
- vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:N',
1310
- severity: 'LOW',
1311
- },
1312
- cwe: [
1313
- { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
1314
- ],
1315
- owasp: [
1316
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
1317
- ],
1318
- remediation: 'Apply COEP consistently on routes that are intended to enforce cross-origin embedding controls.',
1319
- },
1320
-
1321
- [VulnerabilityCode.HEADER_DRIFT_CORP]: {
1322
- id: 130,
1323
- code: VulnerabilityCode.HEADER_DRIFT_CORP,
1324
- title: 'Header Drift - CORP Inconsistent',
1325
- description: 'Cross-Origin-Resource-Policy is present on some paths but missing on others, which can leave inconsistent controls on resource sharing and embedding across the application.',
1326
- severity: 'low',
1327
- category: 'configuration',
1328
- scanner: 'security-headers',
1329
- cvss: {
1330
- score: 3.1,
1331
- vector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:N',
1332
- severity: 'LOW',
1333
- },
1334
- cwe: [
1335
- { id: 'CWE-693', name: 'Protection Mechanism Failure', url: 'https://cwe.mitre.org/data/definitions/693.html' },
1336
- ],
1337
- owasp: [
1338
- { id: 'A05:2021', name: 'Security Misconfiguration', url: 'https://owasp.org/Top10/A05_2021-Security_Misconfiguration/' },
1339
- ],
1340
- remediation: 'Apply CORP consistently where resource sharing policies should be enforced across all relevant responses.',
1341
- },
1342
- };
1861
+ remediation: 'Apply CORP consistently where resource sharing policies should be enforced across all relevant responses.',
1862
+ },
1863
+ };
1343
1864
 
1344
1865
  export default CONFIG_VULNERABILITIES;