@x12i/memorix-retrieval 1.20.0 → 1.22.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 (78) hide show
  1. package/README.md +56 -0
  2. package/catalox-seeds/inputs/entity-descriptors/vulnerabilities.json +0 -21
  3. package/catalox-seeds/inputs/manifest.json +8 -15
  4. package/catalox-seeds/memorix-retrieval-descriptors.manifest.json +1 -492
  5. package/dist/client/types.d.ts +6 -1
  6. package/dist/client/types.d.ts.map +1 -1
  7. package/dist/data/record-display-name.d.ts +4 -0
  8. package/dist/data/record-display-name.d.ts.map +1 -0
  9. package/dist/data/record-display-name.js +44 -0
  10. package/dist/data/record-display-name.js.map +1 -0
  11. package/dist/data/record-display-name.test.d.ts +2 -0
  12. package/dist/data/record-display-name.test.d.ts.map +1 -0
  13. package/dist/data/record-display-name.test.js +49 -0
  14. package/dist/data/record-display-name.test.js.map +1 -0
  15. package/dist/data/record-id.d.ts.map +1 -1
  16. package/dist/data/record-id.js +1 -1
  17. package/dist/data/record-id.js.map +1 -1
  18. package/dist/data/record-info.d.ts +30 -0
  19. package/dist/data/record-info.d.ts.map +1 -0
  20. package/dist/data/record-info.js +80 -0
  21. package/dist/data/record-info.js.map +1 -0
  22. package/dist/data/record-info.test.d.ts +2 -0
  23. package/dist/data/record-info.test.d.ts.map +1 -0
  24. package/dist/data/record-info.test.js +61 -0
  25. package/dist/data/record-info.test.js.map +1 -0
  26. package/dist/explorer/raw-collection-records.d.ts +2 -0
  27. package/dist/explorer/raw-collection-records.d.ts.map +1 -1
  28. package/dist/explorer/raw-collection-records.js +19 -14
  29. package/dist/explorer/raw-collection-records.js.map +1 -1
  30. package/dist/explorer/raw-reads.d.ts +2 -2
  31. package/dist/explorer/raw-reads.d.ts.map +1 -1
  32. package/dist/explorer/raw-reads.js +15 -2
  33. package/dist/explorer/raw-reads.js.map +1 -1
  34. package/dist/index.d.ts +2 -0
  35. package/dist/index.d.ts.map +1 -1
  36. package/dist/index.js +2 -0
  37. package/dist/index.js.map +1 -1
  38. package/dist/retrieval/compose-row.d.ts.map +1 -1
  39. package/dist/retrieval/compose-row.js +10 -0
  40. package/dist/retrieval/compose-row.js.map +1 -1
  41. package/dist/retrieval/fetch-item.d.ts.map +1 -1
  42. package/dist/retrieval/fetch-item.js +11 -0
  43. package/dist/retrieval/fetch-item.js.map +1 -1
  44. package/dist/retrieval/fetch-narratives.d.ts.map +1 -1
  45. package/dist/retrieval/fetch-narratives.js +2 -9
  46. package/dist/retrieval/fetch-narratives.js.map +1 -1
  47. package/dist/retrieval/fetch-record-info.d.ts +33 -0
  48. package/dist/retrieval/fetch-record-info.d.ts.map +1 -0
  49. package/dist/retrieval/fetch-record-info.js +39 -0
  50. package/dist/retrieval/fetch-record-info.js.map +1 -0
  51. package/dist/seeds/build-manifest.js +1 -1
  52. package/dist/seeds/build-manifest.js.map +1 -1
  53. package/dist/seeds/default-seed-spec.d.ts.map +1 -1
  54. package/dist/seeds/default-seed-spec.js +0 -4
  55. package/dist/seeds/default-seed-spec.js.map +1 -1
  56. package/dist/tests/fetch-item.test.js +39 -0
  57. package/dist/tests/fetch-item.test.js.map +1 -1
  58. package/dist/tests/fetch-list.test.js +81 -0
  59. package/dist/tests/fetch-list.test.js.map +1 -1
  60. package/dist/tests/fetch-narratives.test.js +1 -1
  61. package/dist/tests/fetch-narratives.test.js.map +1 -1
  62. package/dist/tests/fetch-record-info.test.d.ts +2 -0
  63. package/dist/tests/fetch-record-info.test.d.ts.map +1 -0
  64. package/dist/tests/fetch-record-info.test.js +67 -0
  65. package/dist/tests/fetch-record-info.test.js.map +1 -0
  66. package/docs/MEMORIX-CATALOX-CONTRACTS.md +5 -5
  67. package/docs/MEMORIX-DATABASE-CONVENTIONS.md +0 -3
  68. package/package.json +1 -1
  69. package/catalox-seeds/inputs/entity-descriptors/variabilities-groups.json +0 -303
  70. package/catalox-seeds/inputs/item-descriptors/variabilities-group-detail-item.json +0 -87
  71. package/catalox-seeds/inputs/list-descriptors/variabilities-groups-main-list.json +0 -43
  72. package/catalox-seeds/inputs/memorix-descriptors.bundle.json +0 -1500
  73. package/catalox-seeds/inputs/memorix-item-descriptors.catalog.json +0 -283
  74. package/catalox-seeds/inputs/memorix-item-descriptors.items.json +0 -280
  75. package/catalox-seeds/inputs/memorix-list-descriptors.catalog.json +0 -207
  76. package/catalox-seeds/inputs/memorix-list-descriptors.items.json +0 -234
  77. package/catalox-seeds/inputs/memorix-object-type-descriptors.catalog.json +0 -1005
  78. package/catalox-seeds/inputs/memorix-object-type-descriptors.items.json +0 -1002
@@ -1,1500 +0,0 @@
1
- {
2
- "appId": "memorix",
3
- "catalogs": {
4
- "entityDescriptors": {
5
- "catalogId": "memorix-object-type-descriptors",
6
- "items": [
7
- {
8
- "id": "assets",
9
- "entityName": "assets",
10
- "defaultListDescriptorId": "assets-main-list",
11
- "defaultItemDescriptorId": "asset-detail-item",
12
- "target": "entity",
13
- "collectionPrefix": "assets",
14
- "identity": {
15
- "allowedIdFields": [
16
- "identity.recordId",
17
- "identity.targetId"
18
- ],
19
- "requiredExactlyOne": true,
20
- "defaultIdField": "identity.recordId"
21
- },
22
- "defaults": {
23
- "canonicalContentType": "snapshots",
24
- "dataRoot": "data",
25
- "effectiveDatePath": "lifecycle.capturedAt",
26
- "fallbackEffectiveDatePaths": [
27
- "capturedAt",
28
- "snapshot.capturedAt",
29
- "data.lastSeen"
30
- ]
31
- },
32
- "contentTypes": {
33
- "snapshots": {
34
- "postfix": "snapshots",
35
- "collection": "assets-snapshots",
36
- "dataRoot": "data",
37
- "isCanonical": true,
38
- "effectiveDatePath": "lifecycle.capturedAt",
39
- "fallbackEffectiveDatePaths": [
40
- "capturedAt",
41
- "snapshot.capturedAt",
42
- "data.lastSeen"
43
- ]
44
- }
45
- },
46
- "properties": {
47
- "ipAddress": {
48
- "label": "IP Address",
49
- "source": {
50
- "contentType": "snapshots",
51
- "path": "data.assetIp"
52
- },
53
- "humanReadable": true,
54
- "sortable": true,
55
- "filterable": true,
56
- "list": true,
57
- "item": true,
58
- "valueType": "string"
59
- },
60
- "source": {
61
- "label": "Source",
62
- "source": {
63
- "contentType": "snapshots",
64
- "path": "sourceFacts.values._source.rawValue"
65
- },
66
- "humanReadable": true,
67
- "sortable": true,
68
- "filterable": true,
69
- "list": true,
70
- "item": true,
71
- "valueType": "string"
72
- },
73
- "hostName": {
74
- "label": "Host Name",
75
- "source": {
76
- "contentType": "snapshots",
77
- "path": "data.assetName"
78
- },
79
- "humanReadable": true,
80
- "sortable": true,
81
- "filterable": true,
82
- "list": true,
83
- "item": true,
84
- "valueType": "string"
85
- },
86
- "xdrOperationalStatus": {
87
- "label": "XDR Operational Status",
88
- "source": {
89
- "contentType": "snapshots",
90
- "path": "data.operationalStatus"
91
- },
92
- "humanReadable": true,
93
- "sortable": true,
94
- "filterable": true,
95
- "list": true,
96
- "item": true,
97
- "valueType": "string"
98
- },
99
- "xdrAgentStatus": {
100
- "label": "XDR Agent Status",
101
- "source": {
102
- "contentType": "snapshots",
103
- "path": "data.agentStatus"
104
- },
105
- "humanReadable": true,
106
- "sortable": true,
107
- "filterable": true,
108
- "list": true,
109
- "item": true,
110
- "valueType": "string"
111
- },
112
- "agentType": {
113
- "label": "Agent Type",
114
- "source": {
115
- "contentType": "snapshots",
116
- "path": "data.agentType"
117
- },
118
- "humanReadable": true,
119
- "sortable": true,
120
- "filterable": true,
121
- "list": true,
122
- "item": true,
123
- "valueType": "string"
124
- },
125
- "lastSeen": {
126
- "label": "Last Seen",
127
- "source": {
128
- "contentType": "snapshots",
129
- "path": "data.lastSeen"
130
- },
131
- "humanReadable": true,
132
- "sortable": true,
133
- "filterable": true,
134
- "list": true,
135
- "item": true,
136
- "valueType": "datetime"
137
- },
138
- "hasVulnerabilities": {
139
- "label": "Has Vulnerabilities",
140
- "source": {
141
- "contentType": "snapshots",
142
- "path": "data.hasVulnerabilities"
143
- },
144
- "humanReadable": true,
145
- "sortable": true,
146
- "filterable": true,
147
- "list": true,
148
- "item": true,
149
- "valueType": "boolean"
150
- },
151
- "criticalVulnerabilities": {
152
- "label": "Critical Vulnerabilities",
153
- "source": {
154
- "contentType": "snapshots",
155
- "path": "analytics.vulnerabilities.critical"
156
- },
157
- "humanReadable": true,
158
- "sortable": true,
159
- "filterable": true,
160
- "list": true,
161
- "item": true,
162
- "valueType": "number"
163
- },
164
- "highVulnerabilities": {
165
- "label": "High Vulnerabilities",
166
- "source": {
167
- "contentType": "snapshots",
168
- "path": "analytics.vulnerabilities.high"
169
- },
170
- "humanReadable": true,
171
- "sortable": true,
172
- "filterable": true,
173
- "list": true,
174
- "item": true,
175
- "valueType": "number"
176
- },
177
- "mediumVulnerabilities": {
178
- "label": "Medium Vulnerabilities",
179
- "source": {
180
- "contentType": "snapshots",
181
- "path": "analytics.vulnerabilities.medium"
182
- },
183
- "humanReadable": true,
184
- "sortable": true,
185
- "filterable": true,
186
- "list": true,
187
- "item": true,
188
- "valueType": "number"
189
- },
190
- "lowVulnerabilities": {
191
- "label": "Low Vulnerabilities",
192
- "source": {
193
- "contentType": "snapshots",
194
- "path": "analytics.vulnerabilities.low"
195
- },
196
- "humanReadable": true,
197
- "sortable": true,
198
- "filterable": true,
199
- "list": true,
200
- "item": true,
201
- "valueType": "number"
202
- },
203
- "potentialImpactLevel": {
204
- "label": "Potential Impact",
205
- "source": {
206
- "contentType": "snapshots",
207
- "path": "insights.potentialImpact.level"
208
- },
209
- "humanReadable": true,
210
- "sortable": true,
211
- "filterable": true,
212
- "list": true,
213
- "item": true,
214
- "valueType": "string"
215
- },
216
- "potentialImpactConfidence": {
217
- "label": "Impact Confidence",
218
- "source": {
219
- "contentType": "snapshots",
220
- "path": "insights.potentialImpact.confidence"
221
- },
222
- "humanReadable": true,
223
- "sortable": true,
224
- "filterable": true,
225
- "list": true,
226
- "item": true,
227
- "valueType": "number"
228
- },
229
- "potentialImpactStory": {
230
- "label": "Potential Impact Story",
231
- "source": {
232
- "contentType": "snapshots",
233
- "path": "insights.potentialImpact.story"
234
- },
235
- "humanReadable": false,
236
- "sortable": false,
237
- "filterable": false,
238
- "list": false,
239
- "item": true,
240
- "valueType": "array"
241
- },
242
- "pathsCount": {
243
- "label": "Paths Count",
244
- "source": {
245
- "contentType": "snapshots",
246
- "path": "analytics.paths.total"
247
- },
248
- "humanReadable": true,
249
- "sortable": true,
250
- "filterable": true,
251
- "list": true,
252
- "item": true,
253
- "valueType": "number"
254
- },
255
- "rawXdr": {
256
- "label": "Raw XDR",
257
- "source": {
258
- "contentType": "snapshots",
259
- "path": "sourceFacts.values.xdrRaw.rawValue"
260
- },
261
- "humanReadable": false,
262
- "sortable": false,
263
- "filterable": false,
264
- "list": false,
265
- "item": true,
266
- "valueType": "object"
267
- }
268
- },
269
- "relations": {
270
- "assetVulnerabilities": {
271
- "targetEntity": "vulnerabilities",
272
- "type": "oneToMany",
273
- "source": {
274
- "contentType": "snapshots",
275
- "path": "data.assetIp"
276
- },
277
- "target": {
278
- "contentType": "snapshots",
279
- "path": "data.assetIp"
280
- },
281
- "defaultMode": "array",
282
- "defaultArrayProperty": "vulnerabilities",
283
- "targetFields": [
284
- "vulnerabilityId",
285
- "pluginName",
286
- "severity",
287
- "riskLevel",
288
- "priorityScore",
289
- "cveId"
290
- ]
291
- }
292
- }
293
- },
294
- {
295
- "id": "variabilities-groups",
296
- "entityName": "variabilities-groups",
297
- "defaultListDescriptorId": "variabilities-groups-main-list",
298
- "defaultItemDescriptorId": "variabilities-group-detail-item",
299
- "target": "entity",
300
- "collectionPrefix": "variabilities-groups",
301
- "identity": {
302
- "allowedIdFields": [
303
- "identity.recordId",
304
- "identity.targetId"
305
- ],
306
- "requiredExactlyOne": true,
307
- "defaultIdField": "identity.recordId"
308
- },
309
- "defaults": {
310
- "canonicalContentType": "snapshots",
311
- "dataRoot": "data",
312
- "effectiveDatePath": "lifecycle.capturedAt",
313
- "fallbackEffectiveDatePaths": [
314
- "capturedAt",
315
- "snapshot.capturedAt",
316
- "data.enrichedAt",
317
- "data.enrichment.enrichedAt"
318
- ]
319
- },
320
- "contentTypes": {
321
- "snapshots": {
322
- "postfix": "snapshots",
323
- "collection": "variabilities-groups-snapshots",
324
- "dataRoot": "data",
325
- "isCanonical": true,
326
- "effectiveDatePath": "lifecycle.capturedAt",
327
- "fallbackEffectiveDatePaths": [
328
- "capturedAt",
329
- "snapshot.capturedAt",
330
- "data.enrichedAt",
331
- "data.enrichment.enrichedAt"
332
- ]
333
- }
334
- },
335
- "properties": {
336
- "groupId": {
337
- "label": "Group ID",
338
- "source": {
339
- "contentType": "snapshots",
340
- "path": "sourceFacts.values.id.rawValue"
341
- },
342
- "humanReadable": true,
343
- "sortable": true,
344
- "filterable": true,
345
- "list": true,
346
- "item": true,
347
- "valueType": "string"
348
- },
349
- "type": {
350
- "label": "Type",
351
- "source": {
352
- "contentType": "snapshots",
353
- "path": "sourceFacts.values.type.rawValue"
354
- },
355
- "humanReadable": true,
356
- "sortable": true,
357
- "filterable": true,
358
- "list": true,
359
- "item": true,
360
- "valueType": "string"
361
- },
362
- "pluginId": {
363
- "label": "Plugin ID",
364
- "source": {
365
- "contentType": "snapshots",
366
- "path": "sourceFacts.values.plugin_id.rawValue"
367
- },
368
- "humanReadable": true,
369
- "sortable": true,
370
- "filterable": true,
371
- "list": true,
372
- "item": true,
373
- "valueType": "number"
374
- },
375
- "pluginName": {
376
- "label": "Plugin Name",
377
- "source": {
378
- "contentType": "snapshots",
379
- "path": "data.name"
380
- },
381
- "humanReadable": true,
382
- "sortable": true,
383
- "filterable": true,
384
- "list": true,
385
- "item": true,
386
- "valueType": "string"
387
- },
388
- "pluginFamily": {
389
- "label": "Plugin Family",
390
- "source": {
391
- "contentType": "snapshots",
392
- "path": "data.vulnerability_family"
393
- },
394
- "humanReadable": true,
395
- "sortable": true,
396
- "filterable": true,
397
- "list": true,
398
- "item": true,
399
- "valueType": "string"
400
- },
401
- "severity": {
402
- "label": "Severity",
403
- "source": {
404
- "contentType": "snapshots",
405
- "path": "data.severity"
406
- },
407
- "humanReadable": true,
408
- "sortable": true,
409
- "filterable": true,
410
- "list": true,
411
- "item": true,
412
- "valueType": "string"
413
- },
414
- "affectedEntities": {
415
- "label": "Affected Entities",
416
- "source": {
417
- "contentType": "snapshots",
418
- "path": "associatedData.affectedAssets"
419
- },
420
- "humanReadable": true,
421
- "sortable": false,
422
- "filterable": true,
423
- "list": false,
424
- "item": true,
425
- "valueType": "array"
426
- },
427
- "affectedEntitiesCount": {
428
- "label": "Affected Entities Count",
429
- "source": {
430
- "contentType": "snapshots",
431
- "path": "associatedData.affectedAssets"
432
- },
433
- "humanReadable": true,
434
- "sortable": false,
435
- "filterable": false,
436
- "list": true,
437
- "item": true,
438
- "valueType": "array",
439
- "format": "count"
440
- },
441
- "source": {
442
- "label": "Source",
443
- "source": {
444
- "contentType": "snapshots",
445
- "path": "data.source"
446
- },
447
- "humanReadable": true,
448
- "sortable": true,
449
- "filterable": true,
450
- "list": false,
451
- "item": true,
452
- "valueType": "string"
453
- },
454
- "cveId": {
455
- "label": "CVE",
456
- "source": {
457
- "contentType": "snapshots",
458
- "path": "data.cveId"
459
- },
460
- "humanReadable": true,
461
- "sortable": true,
462
- "filterable": true,
463
- "list": true,
464
- "item": true,
465
- "valueType": "string"
466
- },
467
- "riskLevel": {
468
- "label": "Risk Level",
469
- "source": {
470
- "contentType": "snapshots",
471
- "path": "data.enrichment.riskLevel"
472
- },
473
- "humanReadable": true,
474
- "sortable": true,
475
- "filterable": true,
476
- "list": true,
477
- "item": true,
478
- "valueType": "string"
479
- },
480
- "priorityScore": {
481
- "label": "Priority Score",
482
- "source": {
483
- "contentType": "snapshots",
484
- "path": "data.enrichment.priorityScore"
485
- },
486
- "humanReadable": true,
487
- "sortable": true,
488
- "filterable": true,
489
- "list": true,
490
- "item": true,
491
- "valueType": "number"
492
- },
493
- "compositeScore": {
494
- "label": "Composite Score",
495
- "source": {
496
- "contentType": "snapshots",
497
- "path": "data.enrichment.compositeScore"
498
- },
499
- "humanReadable": true,
500
- "sortable": true,
501
- "filterable": true,
502
- "list": true,
503
- "item": true,
504
- "valueType": "number"
505
- },
506
- "epss": {
507
- "label": "EPSS",
508
- "source": {
509
- "contentType": "snapshots",
510
- "path": "data.enrichment.epss.epss"
511
- },
512
- "humanReadable": true,
513
- "sortable": true,
514
- "filterable": true,
515
- "list": true,
516
- "item": true,
517
- "valueType": "number"
518
- },
519
- "knownExploited": {
520
- "label": "Known Exploited",
521
- "source": {
522
- "contentType": "snapshots",
523
- "path": "data.enrichment.kev.isKnownExploited"
524
- },
525
- "humanReadable": true,
526
- "sortable": true,
527
- "filterable": true,
528
- "list": true,
529
- "item": true,
530
- "valueType": "boolean"
531
- },
532
- "cvssBaseScore": {
533
- "label": "CVSS Base Score",
534
- "source": {
535
- "contentType": "snapshots",
536
- "path": "data.enrichment.cvss.baseScore"
537
- },
538
- "humanReadable": true,
539
- "sortable": true,
540
- "filterable": true,
541
- "list": true,
542
- "item": true,
543
- "valueType": "number"
544
- },
545
- "cvssVector": {
546
- "label": "CVSS Vector",
547
- "source": {
548
- "contentType": "snapshots",
549
- "path": "data.enrichment.cvss.cvssVector"
550
- },
551
- "humanReadable": true,
552
- "sortable": false,
553
- "filterable": true,
554
- "list": false,
555
- "item": true,
556
- "valueType": "string"
557
- },
558
- "enrichedAt": {
559
- "label": "Enriched At",
560
- "source": {
561
- "contentType": "snapshots",
562
- "path": "data.enrichedAt"
563
- },
564
- "humanReadable": true,
565
- "sortable": true,
566
- "filterable": true,
567
- "list": false,
568
- "item": true,
569
- "valueType": "datetime"
570
- }
571
- },
572
- "relations": {
573
- "groupVulnerabilities": {
574
- "targetEntity": "vulnerabilities",
575
- "type": "oneToMany",
576
- "source": {
577
- "contentType": "snapshots",
578
- "path": "sourceFacts.values.plugin_id.rawValue"
579
- },
580
- "target": {
581
- "contentType": "snapshots",
582
- "path": "sourceFacts.values.pluginId.rawValue"
583
- },
584
- "defaultMode": "array",
585
- "defaultArrayProperty": "vulnerabilities",
586
- "targetFields": [
587
- "vulnerabilityId",
588
- "assetIp",
589
- "pluginName",
590
- "severity",
591
- "riskLevel",
592
- "priorityScore"
593
- ]
594
- }
595
- }
596
- },
597
- {
598
- "id": "vulnerabilities",
599
- "entityName": "vulnerabilities",
600
- "defaultListDescriptorId": "vulnerabilities-main-list",
601
- "defaultItemDescriptorId": "vulnerability-detail-item",
602
- "target": "event",
603
- "collectionPrefix": "vulnerabilities",
604
- "identity": {
605
- "allowedIdFields": [
606
- "identity.recordId",
607
- "identity.targetId"
608
- ],
609
- "requiredExactlyOne": true,
610
- "defaultIdField": "identity.recordId"
611
- },
612
- "defaults": {
613
- "canonicalContentType": "snapshots",
614
- "dataRoot": "data",
615
- "effectiveDatePath": "lifecycle.capturedAt",
616
- "fallbackEffectiveDatePaths": [
617
- "capturedAt",
618
- "snapshot.capturedAt",
619
- "data.enrichment.enrichedAt"
620
- ]
621
- },
622
- "contentTypes": {
623
- "snapshots": {
624
- "postfix": "snapshots",
625
- "collection": "vulnerabilities-snapshots",
626
- "dataRoot": "data",
627
- "isCanonical": true,
628
- "effectiveDatePath": "lifecycle.capturedAt",
629
- "fallbackEffectiveDatePaths": [
630
- "capturedAt",
631
- "snapshot.capturedAt",
632
- "data.enrichment.enrichedAt"
633
- ]
634
- }
635
- },
636
- "properties": {
637
- "vulnerabilityId": {
638
- "label": "Vulnerability ID",
639
- "source": {
640
- "contentType": "snapshots",
641
- "path": "sourceFacts.values.vulnerabilityId.rawValue"
642
- },
643
- "humanReadable": true,
644
- "sortable": true,
645
- "filterable": true,
646
- "list": true,
647
- "item": true,
648
- "valueType": "string"
649
- },
650
- "assetIp": {
651
- "label": "Asset IP",
652
- "source": {
653
- "contentType": "snapshots",
654
- "path": "data.assetIp"
655
- },
656
- "humanReadable": true,
657
- "sortable": true,
658
- "filterable": true,
659
- "list": true,
660
- "item": true,
661
- "valueType": "string"
662
- },
663
- "assetType": {
664
- "label": "Asset Type",
665
- "source": {
666
- "contentType": "snapshots",
667
- "path": "data.assetType"
668
- },
669
- "humanReadable": true,
670
- "sortable": true,
671
- "filterable": true,
672
- "list": true,
673
- "item": true,
674
- "valueType": "string"
675
- },
676
- "assetZone": {
677
- "label": "Asset Zone",
678
- "source": {
679
- "contentType": "snapshots",
680
- "path": "data.assetZone"
681
- },
682
- "humanReadable": true,
683
- "sortable": true,
684
- "filterable": true,
685
- "list": true,
686
- "item": true,
687
- "valueType": "string"
688
- },
689
- "assetHostname": {
690
- "label": "Asset Hostname",
691
- "source": {
692
- "contentType": "snapshots",
693
- "path": "data.assetHostname"
694
- },
695
- "humanReadable": true,
696
- "sortable": true,
697
- "filterable": true,
698
- "list": true,
699
- "item": true,
700
- "valueType": "string"
701
- },
702
- "pluginId": {
703
- "label": "Plugin ID",
704
- "source": {
705
- "contentType": "snapshots",
706
- "path": "sourceFacts.values.pluginId.rawValue"
707
- },
708
- "humanReadable": true,
709
- "sortable": true,
710
- "filterable": true,
711
- "list": true,
712
- "item": true,
713
- "valueType": "number"
714
- },
715
- "pluginName": {
716
- "label": "Plugin Name",
717
- "source": {
718
- "contentType": "snapshots",
719
- "path": "data.vulnerabilityName"
720
- },
721
- "humanReadable": true,
722
- "sortable": true,
723
- "filterable": true,
724
- "list": true,
725
- "item": true,
726
- "valueType": "string"
727
- },
728
- "pluginFamily": {
729
- "label": "Plugin Family",
730
- "source": {
731
- "contentType": "snapshots",
732
- "path": "data.vulnerabilityFamily"
733
- },
734
- "humanReadable": true,
735
- "sortable": true,
736
- "filterable": true,
737
- "list": true,
738
- "item": true,
739
- "valueType": "string"
740
- },
741
- "severity": {
742
- "label": "Severity",
743
- "source": {
744
- "contentType": "snapshots",
745
- "path": "data.severity"
746
- },
747
- "humanReadable": true,
748
- "sortable": true,
749
- "filterable": true,
750
- "list": true,
751
- "item": true,
752
- "valueType": "string"
753
- },
754
- "cveId": {
755
- "label": "CVE",
756
- "source": {
757
- "contentType": "snapshots",
758
- "path": "data.cveId"
759
- },
760
- "humanReadable": true,
761
- "sortable": true,
762
- "filterable": true,
763
- "list": true,
764
- "item": true,
765
- "valueType": "string"
766
- },
767
- "riskLevel": {
768
- "label": "Risk Level",
769
- "source": {
770
- "contentType": "snapshots",
771
- "path": "data.enrichment.riskLevel"
772
- },
773
- "humanReadable": true,
774
- "sortable": true,
775
- "filterable": true,
776
- "list": true,
777
- "item": true,
778
- "valueType": "string"
779
- },
780
- "priorityScore": {
781
- "label": "Priority Score",
782
- "source": {
783
- "contentType": "snapshots",
784
- "path": "data.enrichment.priorityScore"
785
- },
786
- "humanReadable": true,
787
- "sortable": true,
788
- "filterable": true,
789
- "list": true,
790
- "item": true,
791
- "valueType": "number"
792
- },
793
- "compositeScore": {
794
- "label": "Composite Score",
795
- "source": {
796
- "contentType": "snapshots",
797
- "path": "data.enrichment.compositeScore"
798
- },
799
- "humanReadable": true,
800
- "sortable": true,
801
- "filterable": true,
802
- "list": true,
803
- "item": true,
804
- "valueType": "number"
805
- },
806
- "epss": {
807
- "label": "EPSS",
808
- "source": {
809
- "contentType": "snapshots",
810
- "path": "data.enrichment.epss.epss"
811
- },
812
- "humanReadable": true,
813
- "sortable": true,
814
- "filterable": true,
815
- "list": true,
816
- "item": true,
817
- "valueType": "number"
818
- },
819
- "epssPercentile": {
820
- "label": "EPSS Percentile",
821
- "source": {
822
- "contentType": "snapshots",
823
- "path": "data.enrichment.epss.percentile"
824
- },
825
- "humanReadable": true,
826
- "sortable": true,
827
- "filterable": true,
828
- "list": true,
829
- "item": true,
830
- "valueType": "number"
831
- },
832
- "knownExploited": {
833
- "label": "Known Exploited",
834
- "source": {
835
- "contentType": "snapshots",
836
- "path": "data.enrichment.kev.isKnownExploited"
837
- },
838
- "humanReadable": true,
839
- "sortable": true,
840
- "filterable": true,
841
- "list": true,
842
- "item": true,
843
- "valueType": "boolean"
844
- },
845
- "cvssBaseScore": {
846
- "label": "CVSS Base Score",
847
- "source": {
848
- "contentType": "snapshots",
849
- "path": "data.enrichment.cvss.baseScore"
850
- },
851
- "humanReadable": true,
852
- "sortable": true,
853
- "filterable": true,
854
- "list": true,
855
- "item": true,
856
- "valueType": "number"
857
- },
858
- "cvssVector": {
859
- "label": "CVSS Vector",
860
- "source": {
861
- "contentType": "snapshots",
862
- "path": "data.enrichment.cvss.cvssVector"
863
- },
864
- "humanReadable": true,
865
- "sortable": false,
866
- "filterable": true,
867
- "list": false,
868
- "item": true,
869
- "valueType": "string"
870
- },
871
- "exploitabilityScore": {
872
- "label": "Exploitability Score",
873
- "source": {
874
- "contentType": "snapshots",
875
- "path": "data.exploitabilityScore"
876
- },
877
- "humanReadable": true,
878
- "sortable": true,
879
- "filterable": true,
880
- "list": true,
881
- "item": true,
882
- "valueType": "number"
883
- },
884
- "exploitabilityLevel": {
885
- "label": "Exploitability Level",
886
- "source": {
887
- "contentType": "snapshots",
888
- "path": "data.exploitabilityLevel"
889
- },
890
- "humanReadable": true,
891
- "sortable": true,
892
- "filterable": true,
893
- "list": true,
894
- "item": true,
895
- "valueType": "string"
896
- },
897
- "assetMatched": {
898
- "label": "Asset Matched",
899
- "source": {
900
- "contentType": "snapshots",
901
- "path": "data.assetMatched"
902
- },
903
- "humanReadable": true,
904
- "sortable": true,
905
- "filterable": true,
906
- "list": false,
907
- "item": true,
908
- "valueType": "boolean"
909
- },
910
- "networkExposure": {
911
- "label": "Network Exposure",
912
- "source": {
913
- "contentType": "snapshots",
914
- "path": "data.mitreAnalysis.networkContext.exposure"
915
- },
916
- "humanReadable": true,
917
- "sortable": true,
918
- "filterable": true,
919
- "list": true,
920
- "item": true,
921
- "valueType": "string"
922
- },
923
- "attackPathCount": {
924
- "label": "Attack Path Count",
925
- "source": {
926
- "contentType": "snapshots",
927
- "path": "data.mitreAnalysis.networkContext.paths.paths"
928
- },
929
- "humanReadable": true,
930
- "sortable": false,
931
- "filterable": false,
932
- "list": false,
933
- "item": true,
934
- "valueType": "array"
935
- },
936
- "mitreTechniques": {
937
- "label": "MITRE Techniques",
938
- "source": {
939
- "contentType": "snapshots",
940
- "path": "data.mitreAnalysis.techniques"
941
- },
942
- "humanReadable": true,
943
- "sortable": false,
944
- "filterable": true,
945
- "list": false,
946
- "item": true,
947
- "valueType": "array"
948
- },
949
- "mitreAnalysis": {
950
- "label": "MITRE Analysis",
951
- "source": {
952
- "contentType": "snapshots",
953
- "path": "data.mitreAnalysis"
954
- },
955
- "humanReadable": false,
956
- "sortable": false,
957
- "filterable": false,
958
- "list": false,
959
- "item": true,
960
- "valueType": "object"
961
- }
962
- },
963
- "relations": {
964
- "affectedAsset": {
965
- "targetEntity": "assets",
966
- "type": "manyToOne",
967
- "source": {
968
- "contentType": "snapshots",
969
- "path": "data.assetIp"
970
- },
971
- "target": {
972
- "contentType": "snapshots",
973
- "path": "data.assetIp"
974
- },
975
- "defaultMode": "extendFields",
976
- "targetFields": [
977
- "ipAddress",
978
- "hostName",
979
- "xdrOperationalStatus",
980
- "xdrAgentStatus",
981
- "potentialImpactLevel"
982
- ]
983
- },
984
- "vulnerabilityGroup": {
985
- "targetEntity": "variabilities-groups",
986
- "type": "manyToOne",
987
- "source": {
988
- "contentType": "snapshots",
989
- "path": "sourceFacts.values.pluginId.rawValue"
990
- },
991
- "target": {
992
- "contentType": "snapshots",
993
- "path": "sourceFacts.values.plugin_id.rawValue"
994
- },
995
- "defaultMode": "extendFields",
996
- "targetFields": [
997
- "groupId",
998
- "pluginName",
999
- "severity",
1000
- "affectedEntitiesCount",
1001
- "riskLevel",
1002
- "priorityScore"
1003
- ]
1004
- }
1005
- }
1006
- }
1007
- ]
1008
- },
1009
- "listDescriptors": {
1010
- "catalogId": "memorix-list-descriptors",
1011
- "items": [
1012
- {
1013
- "id": "assets-main-list",
1014
- "entity": "assets",
1015
- "title": "Assets",
1016
- "leadingContentType": "snapshots",
1017
- "pagination": {
1018
- "enabled": true,
1019
- "defaultLimit": 50,
1020
- "maxLimit": 200
1021
- },
1022
- "filters": [],
1023
- "fields": [
1024
- "ipAddress",
1025
- "hostName",
1026
- "source",
1027
- "agentType",
1028
- "xdrOperationalStatus",
1029
- "xdrAgentStatus",
1030
- "hasVulnerabilities",
1031
- "criticalVulnerabilities",
1032
- "highVulnerabilities",
1033
- "potentialImpactLevel",
1034
- "pathsCount"
1035
- ],
1036
- "extensions": [],
1037
- "includeRelations": [],
1038
- "allowedSorts": [
1039
- "ipAddress",
1040
- "hostName",
1041
- "source",
1042
- "agentType",
1043
- "xdrOperationalStatus",
1044
- "xdrAgentStatus",
1045
- "hasVulnerabilities",
1046
- "criticalVulnerabilities",
1047
- "highVulnerabilities",
1048
- "potentialImpactLevel",
1049
- "pathsCount",
1050
- "lastSeen"
1051
- ],
1052
- "defaultSort": {
1053
- "property": "ipAddress",
1054
- "direction": "asc"
1055
- },
1056
- "allowSortDrivenLeadingOverride": false
1057
- },
1058
- {
1059
- "id": "vulnerabilities-main-list",
1060
- "entity": "vulnerabilities",
1061
- "title": "Vulnerabilities",
1062
- "leadingContentType": "snapshots",
1063
- "pagination": {
1064
- "enabled": true,
1065
- "defaultLimit": 50,
1066
- "maxLimit": 200
1067
- },
1068
- "filters": [],
1069
- "fields": [
1070
- "vulnerabilityId",
1071
- "assetIp",
1072
- "pluginName",
1073
- "pluginFamily",
1074
- "severity",
1075
- "cveId",
1076
- "riskLevel",
1077
- "priorityScore",
1078
- "epss",
1079
- "knownExploited",
1080
- "exploitabilityLevel",
1081
- "networkExposure"
1082
- ],
1083
- "extensions": [],
1084
- "includeRelations": [],
1085
- "allowedSorts": [
1086
- "vulnerabilityId",
1087
- "assetIp",
1088
- "pluginName",
1089
- "pluginFamily",
1090
- "severity",
1091
- "riskLevel",
1092
- "priorityScore",
1093
- "epss",
1094
- "knownExploited",
1095
- "exploitabilityScore",
1096
- "exploitabilityLevel",
1097
- "networkExposure"
1098
- ],
1099
- "defaultSort": {
1100
- "property": "priorityScore",
1101
- "direction": "desc"
1102
- },
1103
- "allowSortDrivenLeadingOverride": false
1104
- },
1105
- {
1106
- "id": "critical-vulnerabilities-list",
1107
- "entity": "vulnerabilities",
1108
- "title": "Critical Vulnerabilities",
1109
- "leadingContentType": "snapshots",
1110
- "pagination": {
1111
- "enabled": true,
1112
- "defaultLimit": 50,
1113
- "maxLimit": 200
1114
- },
1115
- "filters": [
1116
- {
1117
- "property": "severity",
1118
- "operator": "eq",
1119
- "value": "critical"
1120
- }
1121
- ],
1122
- "fields": [
1123
- "vulnerabilityId",
1124
- "assetIp",
1125
- "pluginName",
1126
- "severity",
1127
- "riskLevel",
1128
- "priorityScore",
1129
- "epss",
1130
- "knownExploited",
1131
- "exploitabilityLevel"
1132
- ],
1133
- "extensions": [],
1134
- "includeRelations": [],
1135
- "allowedSorts": [
1136
- "severity",
1137
- "riskLevel",
1138
- "priorityScore",
1139
- "epss",
1140
- "knownExploited",
1141
- "exploitabilityScore"
1142
- ],
1143
- "defaultSort": {
1144
- "property": "priorityScore",
1145
- "direction": "desc"
1146
- },
1147
- "allowSortDrivenLeadingOverride": false
1148
- },
1149
- {
1150
- "id": "variabilities-groups-main-list",
1151
- "entity": "variabilities-groups",
1152
- "title": "Vulnerability Groups",
1153
- "leadingContentType": "snapshots",
1154
- "pagination": {
1155
- "enabled": true,
1156
- "defaultLimit": 50,
1157
- "maxLimit": 200
1158
- },
1159
- "filters": [],
1160
- "fields": [
1161
- "groupId",
1162
- "pluginName",
1163
- "pluginFamily",
1164
- "severity",
1165
- "affectedEntitiesCount",
1166
- "cveId",
1167
- "riskLevel",
1168
- "priorityScore",
1169
- "epss",
1170
- "knownExploited"
1171
- ],
1172
- "extensions": [],
1173
- "includeRelations": [],
1174
- "allowedSorts": [
1175
- "groupId",
1176
- "pluginId",
1177
- "pluginName",
1178
- "pluginFamily",
1179
- "severity",
1180
- "riskLevel",
1181
- "priorityScore",
1182
- "epss",
1183
- "knownExploited",
1184
- "cvssBaseScore"
1185
- ],
1186
- "defaultSort": {
1187
- "property": "priorityScore",
1188
- "direction": "desc"
1189
- },
1190
- "allowSortDrivenLeadingOverride": false
1191
- },
1192
- {
1193
- "id": "memorix-workspace-records-list",
1194
- "kind": "workspace",
1195
- "title": "Workspace records",
1196
- "fields": [
1197
- "entityName",
1198
- "recordTitle",
1199
- "recordId",
1200
- "source",
1201
- "lastUpdated",
1202
- "status"
1203
- ],
1204
- "pagination": {
1205
- "enabled": true,
1206
- "defaultLimit": 50,
1207
- "maxLimit": 200
1208
- },
1209
- "defaultSort": {
1210
- "property": "lastUpdated",
1211
- "direction": "desc"
1212
- }
1213
- }
1214
- ]
1215
- },
1216
- "itemDescriptors": {
1217
- "catalogId": "memorix-item-descriptors",
1218
- "items": [
1219
- {
1220
- "id": "asset-detail-item",
1221
- "entity": "assets",
1222
- "title": "Asset Detail",
1223
- "identity": {
1224
- "idField": "identity.recordId"
1225
- },
1226
- "contentTypes": [
1227
- {
1228
- "contentType": "snapshots",
1229
- "required": true,
1230
- "multiMatch": {
1231
- "strategy": "last",
1232
- "effectiveDatePath": "lifecycle.capturedAt",
1233
- "fallbackEffectiveDatePaths": [
1234
- "capturedAt",
1235
- "snapshot.capturedAt",
1236
- "data.lastSeen"
1237
- ]
1238
- }
1239
- }
1240
- ],
1241
- "sections": [
1242
- {
1243
- "id": "summary",
1244
- "title": "Summary",
1245
- "fields": [
1246
- "ipAddress",
1247
- "hostName",
1248
- "source",
1249
- "agentType",
1250
- "xdrOperationalStatus",
1251
- "xdrAgentStatus",
1252
- "lastSeen",
1253
- "pathsCount"
1254
- ]
1255
- },
1256
- {
1257
- "id": "vulnerabilitySummary",
1258
- "title": "Vulnerability Summary",
1259
- "fields": [
1260
- "hasVulnerabilities",
1261
- "criticalVulnerabilities",
1262
- "highVulnerabilities",
1263
- "mediumVulnerabilities",
1264
- "lowVulnerabilities"
1265
- ]
1266
- },
1267
- {
1268
- "id": "impact",
1269
- "title": "Potential Impact",
1270
- "fields": [
1271
- "potentialImpactLevel",
1272
- "potentialImpactConfidence",
1273
- "potentialImpactStory"
1274
- ]
1275
- },
1276
- {
1277
- "id": "xdr",
1278
- "title": "XDR",
1279
- "fields": [
1280
- "rawXdr"
1281
- ]
1282
- }
1283
- ],
1284
- "includeRelations": [
1285
- {
1286
- "relation": "assetVulnerabilities",
1287
- "mode": "array",
1288
- "arrayProperty": "vulnerabilities",
1289
- "limit": 100,
1290
- "fields": [
1291
- "vulnerabilityId",
1292
- "pluginName",
1293
- "severity",
1294
- "riskLevel",
1295
- "priorityScore",
1296
- "cveId"
1297
- ]
1298
- }
1299
- ],
1300
- "content": {
1301
- "allowed": false
1302
- }
1303
- },
1304
- {
1305
- "id": "vulnerability-detail-item",
1306
- "entity": "vulnerabilities",
1307
- "title": "Vulnerability Detail",
1308
- "identity": {
1309
- "idField": "identity.recordId"
1310
- },
1311
- "contentTypes": [
1312
- {
1313
- "contentType": "snapshots",
1314
- "required": true,
1315
- "multiMatch": {
1316
- "strategy": "last",
1317
- "effectiveDatePath": "lifecycle.capturedAt",
1318
- "fallbackEffectiveDatePaths": [
1319
- "capturedAt",
1320
- "snapshot.capturedAt",
1321
- "data.enrichment.enrichedAt"
1322
- ]
1323
- }
1324
- }
1325
- ],
1326
- "sections": [
1327
- {
1328
- "id": "summary",
1329
- "title": "Summary",
1330
- "fields": [
1331
- "vulnerabilityId",
1332
- "pluginName",
1333
- "pluginFamily",
1334
- "severity",
1335
- "cveId"
1336
- ]
1337
- },
1338
- {
1339
- "id": "asset",
1340
- "title": "Affected Asset",
1341
- "fields": [
1342
- "assetIp",
1343
- "assetType",
1344
- "assetZone",
1345
- "assetHostname",
1346
- "assetMatched"
1347
- ]
1348
- },
1349
- {
1350
- "id": "risk",
1351
- "title": "Risk",
1352
- "fields": [
1353
- "riskLevel",
1354
- "priorityScore",
1355
- "compositeScore",
1356
- "exploitabilityScore",
1357
- "exploitabilityLevel"
1358
- ]
1359
- },
1360
- {
1361
- "id": "threatIntelligence",
1362
- "title": "Threat Intelligence",
1363
- "fields": [
1364
- "epss",
1365
- "epssPercentile",
1366
- "knownExploited",
1367
- "cvssBaseScore",
1368
- "cvssVector"
1369
- ]
1370
- },
1371
- {
1372
- "id": "networkAndMitre",
1373
- "title": "Network & MITRE",
1374
- "fields": [
1375
- "networkExposure",
1376
- "mitreTechniques",
1377
- "mitreAnalysis"
1378
- ]
1379
- }
1380
- ],
1381
- "includeRelations": [
1382
- {
1383
- "relation": "affectedAsset",
1384
- "mode": "extendFields",
1385
- "fields": [
1386
- "ipAddress",
1387
- "hostName",
1388
- "xdrOperationalStatus",
1389
- "xdrAgentStatus",
1390
- "potentialImpactLevel"
1391
- ]
1392
- },
1393
- {
1394
- "relation": "vulnerabilityGroup",
1395
- "mode": "extendFields",
1396
- "fields": [
1397
- "groupId",
1398
- "pluginName",
1399
- "severity",
1400
- "affectedEntitiesCount",
1401
- "riskLevel",
1402
- "priorityScore"
1403
- ]
1404
- }
1405
- ],
1406
- "content": {
1407
- "allowed": false
1408
- }
1409
- },
1410
- {
1411
- "id": "variabilities-group-detail-item",
1412
- "entity": "variabilities-groups",
1413
- "title": "Vulnerability Group Detail",
1414
- "identity": {
1415
- "idField": "identity.recordId"
1416
- },
1417
- "contentTypes": [
1418
- {
1419
- "contentType": "snapshots",
1420
- "required": true,
1421
- "multiMatch": {
1422
- "strategy": "last",
1423
- "effectiveDatePath": "lifecycle.capturedAt",
1424
- "fallbackEffectiveDatePaths": [
1425
- "capturedAt",
1426
- "snapshot.capturedAt",
1427
- "data.enrichedAt",
1428
- "data.enrichment.enrichedAt"
1429
- ]
1430
- }
1431
- }
1432
- ],
1433
- "sections": [
1434
- {
1435
- "id": "summary",
1436
- "title": "Summary",
1437
- "fields": [
1438
- "groupId",
1439
- "type",
1440
- "pluginId",
1441
- "pluginName",
1442
- "pluginFamily",
1443
- "severity",
1444
- "cveId",
1445
- "source"
1446
- ]
1447
- },
1448
- {
1449
- "id": "affectedEntities",
1450
- "title": "Affected Entities",
1451
- "fields": [
1452
- "affectedEntities",
1453
- "affectedEntitiesCount"
1454
- ]
1455
- },
1456
- {
1457
- "id": "risk",
1458
- "title": "Risk",
1459
- "fields": [
1460
- "riskLevel",
1461
- "priorityScore",
1462
- "compositeScore"
1463
- ]
1464
- },
1465
- {
1466
- "id": "threatIntelligence",
1467
- "title": "Threat Intelligence",
1468
- "fields": [
1469
- "epss",
1470
- "knownExploited",
1471
- "cvssBaseScore",
1472
- "cvssVector",
1473
- "enrichedAt"
1474
- ]
1475
- }
1476
- ],
1477
- "includeRelations": [
1478
- {
1479
- "relation": "groupVulnerabilities",
1480
- "mode": "array",
1481
- "arrayProperty": "vulnerabilities",
1482
- "limit": 200,
1483
- "fields": [
1484
- "vulnerabilityId",
1485
- "assetIp",
1486
- "pluginName",
1487
- "severity",
1488
- "riskLevel",
1489
- "priorityScore"
1490
- ]
1491
- }
1492
- ],
1493
- "content": {
1494
- "allowed": false
1495
- }
1496
- }
1497
- ]
1498
- }
1499
- }
1500
- }