mihari 5.4.1 → 5.4.2

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.
@@ -2,443 +2,446 @@
2
2
  info:
3
3
  title: Mihari API
4
4
  version: 0.0.1
5
- swagger: "2.0"
5
+ swagger: '2.0'
6
6
  produces:
7
- - application/json
7
+ - application/json
8
8
  tags:
9
- - name: alerts
10
- description: Operations about alerts
11
- - name: artifacts
12
- description: Operations about artifacts
13
- - name: configs
14
- description: Operations about configs
15
- - name: ip_addresses
16
- description: Operations about ip_addresses
17
- - name: rules
18
- description: Operations about rules
19
- - name: tags
20
- description: Operations about tags
9
+ - name: alerts
10
+ description: Operations about alerts
11
+ - name: artifacts
12
+ description: Operations about artifacts
13
+ - name: configs
14
+ description: Operations about configs
15
+ - name: ip_addresses
16
+ description: Operations about ip_addresses
17
+ - name: rules
18
+ description: Operations about rules
19
+ - name: tags
20
+ description: Operations about tags
21
21
  paths:
22
- "/api/alerts/{id}":
23
- delete:
24
- summary: Delete an alert
25
- description: Delete an alert
22
+ "/api/alerts":
23
+ post:
24
+ summary: Create an alert
25
+ description: Create an alert
26
26
  produces:
27
- - application/json
27
+ - application/json
28
+ consumes:
29
+ - application/json
28
30
  parameters:
29
- - in: path
30
- name: id
31
- type: integer
32
- format: int32
33
- required: true
31
+ - name: postApiAlerts
32
+ in: body
33
+ required: true
34
+ schema:
35
+ "$ref": "#/definitions/postApiAlerts"
34
36
  responses:
35
- "200":
36
- description: Delete an alert
37
- schema:
38
- "$ref": "#/definitions/Mihari_Entities_Message"
39
- "404":
40
- description: Not found
37
+ '201':
38
+ description: Create an alert
41
39
  schema:
42
- "$ref": "#/definitions/Mihari_Entities_Message"
40
+ "$ref": "#/definitions/Mihari_Entities_Alert"
43
41
  tags:
44
- - alerts
45
- "/api/alerts":
42
+ - alerts
46
43
  get:
47
44
  summary: Search alerts
48
45
  description: Search alerts
49
46
  produces:
50
- - application/json
47
+ - application/json
51
48
  parameters:
52
- - in: query
53
- name: page
54
- type: integer
55
- format: int32
56
- default: 1
57
- required: false
58
- - in: query
59
- name: limit
60
- type: integer
61
- format: int32
62
- default: 10
63
- required: false
64
- - in: query
65
- name: artifact
66
- type: string
67
- required: false
68
- - in: query
69
- name: rule_id
70
- type: string
71
- required: false
72
- - in: query
73
- name: tag
74
- type: string
75
- required: false
76
- - in: query
77
- name: fromAt
78
- type: string
79
- format: date-time
80
- required: false
81
- - in: query
82
- name: toAt
83
- type: string
84
- format: date-time
85
- required: false
49
+ - in: query
50
+ name: page
51
+ type: integer
52
+ format: int32
53
+ default: 1
54
+ required: false
55
+ - in: query
56
+ name: limit
57
+ type: integer
58
+ format: int32
59
+ default: 10
60
+ required: false
61
+ - in: query
62
+ name: artifact
63
+ type: string
64
+ required: false
65
+ - in: query
66
+ name: rule_id
67
+ type: string
68
+ required: false
69
+ - in: query
70
+ name: tag
71
+ type: string
72
+ required: false
73
+ - in: query
74
+ name: fromAt
75
+ type: string
76
+ format: date-time
77
+ required: false
78
+ - in: query
79
+ name: toAt
80
+ type: string
81
+ format: date-time
82
+ required: false
86
83
  responses:
87
- "200":
84
+ '200':
88
85
  description: Search alerts
89
86
  schema:
90
87
  type: array
91
88
  items:
92
89
  "$ref": "#/definitions/Mihari_Entities_AlertsWithPagination"
93
- "404":
90
+ '404':
91
+ description: Not found
92
+ schema:
93
+ "$ref": "#/definitions/Mihari_Entities_Message"
94
+ tags:
95
+ - alerts
96
+ "/api/alerts/{id}":
97
+ delete:
98
+ summary: Delete an alert
99
+ description: Delete an alert
100
+ produces:
101
+ - application/json
102
+ parameters:
103
+ - in: path
104
+ name: id
105
+ type: integer
106
+ format: int32
107
+ required: true
108
+ responses:
109
+ '200':
110
+ description: Delete an alert
111
+ schema:
112
+ "$ref": "#/definitions/Mihari_Entities_Message"
113
+ '404':
94
114
  description: Not found
95
115
  schema:
96
116
  "$ref": "#/definitions/Mihari_Entities_Message"
97
117
  tags:
98
- - alerts
118
+ - alerts
99
119
  "/api/artifacts/{id}":
100
120
  delete:
101
121
  summary: Delete an artifact
102
122
  description: Delete an artifact
103
123
  produces:
104
- - application/json
124
+ - application/json
105
125
  parameters:
106
- - in: path
107
- name: id
108
- type: integer
109
- format: int32
110
- required: true
126
+ - in: path
127
+ name: id
128
+ type: integer
129
+ format: int32
130
+ required: true
111
131
  responses:
112
- "200":
132
+ '200':
113
133
  description: Delete an artifact
114
134
  schema:
115
135
  "$ref": "#/definitions/Mihari_Entities_Message"
116
- "404":
136
+ '404':
117
137
  description: Not found
118
138
  schema:
119
139
  "$ref": "#/definitions/Mihari_Entities_Message"
120
140
  tags:
121
- - artifacts
141
+ - artifacts
122
142
  get:
123
143
  summary: Get an artifact
124
144
  description: Get an artifact
125
145
  produces:
126
- - application/json
146
+ - application/json
127
147
  parameters:
128
- - in: path
129
- name: id
130
- type: integer
131
- format: int32
132
- required: true
148
+ - in: path
149
+ name: id
150
+ type: integer
151
+ format: int32
152
+ required: true
133
153
  responses:
134
- "200":
154
+ '200':
135
155
  description: Get an artifact
136
156
  schema:
137
157
  "$ref": "#/definitions/Mihari_Entities_Artifact"
138
- "404":
158
+ '404':
139
159
  description: Not found
140
160
  schema:
141
161
  "$ref": "#/definitions/Mihari_Entities_Message"
142
162
  tags:
143
- - artifacts
163
+ - artifacts
144
164
  "/api/artifacts/{id}/enrich":
145
165
  get:
146
166
  summary: Enrich an artifact
147
167
  description: Enrich an artifact
148
168
  produces:
149
- - application/json
169
+ - application/json
150
170
  parameters:
151
- - in: path
152
- name: id
153
- type: integer
154
- format: int32
155
- required: true
171
+ - in: path
172
+ name: id
173
+ type: integer
174
+ format: int32
175
+ required: true
156
176
  responses:
157
- "200":
177
+ '200':
158
178
  description: Enrich an artifact
159
179
  schema:
160
180
  "$ref": "#/definitions/Mihari_Entities_Message"
161
- "404":
181
+ '404':
162
182
  description: Not found
163
183
  schema:
164
184
  "$ref": "#/definitions/Mihari_Entities_Message"
165
185
  tags:
166
- - artifacts
186
+ - artifacts
167
187
  "/api/configs":
168
188
  get:
169
189
  summary: Get configs
170
190
  description: Get configs
171
191
  produces:
172
- - application/json
192
+ - application/json
173
193
  responses:
174
- "200":
194
+ '200':
175
195
  description: Get configs
176
196
  schema:
177
197
  type: array
178
198
  items:
179
199
  "$ref": "#/definitions/Mihari_Entities_Config"
180
200
  tags:
181
- - configs
201
+ - configs
182
202
  "/api/ip_addresses/{ip}":
183
203
  get:
184
204
  summary: Get an IP address
185
205
  description: Get an IP address
186
206
  produces:
187
- - application/json
207
+ - application/json
188
208
  parameters:
189
- - in: path
190
- name: ip
191
- type: string
192
- required: true
209
+ - in: path
210
+ name: ip
211
+ type: string
212
+ required: true
193
213
  responses:
194
- "200":
214
+ '200':
195
215
  description: Get an IP address
196
216
  schema:
197
217
  "$ref": "#/definitions/Mihari_Entities_IPAddress"
198
- "404":
218
+ '404':
199
219
  description: Not found
200
220
  schema:
201
221
  "$ref": "#/definitions/Mihari_Entities_Message"
202
222
  tags:
203
- - ip_addresses
223
+ - ip_addresses
204
224
  "/api/rules/{id}":
205
225
  delete:
206
226
  summary: Delete a rule
207
227
  description: Delete a rule
208
228
  produces:
209
- - application/json
229
+ - application/json
210
230
  parameters:
211
- - in: path
212
- name: id
213
- type: string
214
- required: true
231
+ - in: path
232
+ name: id
233
+ type: string
234
+ required: true
215
235
  responses:
216
- "200":
236
+ '200':
217
237
  description: Delete a rule
218
238
  schema:
219
239
  "$ref": "#/definitions/Mihari_Entities_Message"
220
- "404":
240
+ '404':
221
241
  description: Not found
222
242
  schema:
223
243
  "$ref": "#/definitions/Mihari_Entities_Message"
224
244
  tags:
225
- - rules
245
+ - rules
226
246
  get:
227
247
  summary: Get a rule
228
248
  description: Get a rule
229
249
  produces:
230
- - application/json
250
+ - application/json
231
251
  parameters:
232
- - in: path
233
- name: id
234
- type: string
235
- required: true
252
+ - in: path
253
+ name: id
254
+ type: string
255
+ required: true
236
256
  responses:
237
- "200":
257
+ '200':
238
258
  description: Get a rule
239
259
  schema:
240
260
  "$ref": "#/definitions/Mihari_Entities_Rule"
241
- "404":
261
+ '404':
242
262
  description: Not found
243
263
  schema:
244
264
  "$ref": "#/definitions/Mihari_Entities_Message"
245
265
  tags:
246
- - rules
266
+ - rules
247
267
  "/api/rules":
248
268
  put:
249
269
  summary: Update a rule
250
270
  description: Update a rule
251
271
  produces:
252
- - application/json
272
+ - application/json
253
273
  consumes:
254
- - application/json
274
+ - application/json
255
275
  parameters:
256
- - name: putApiRules
257
- in: body
258
- required: true
259
- schema:
260
- "$ref": "#/definitions/putApiRules"
276
+ - name: putApiRules
277
+ in: body
278
+ required: true
279
+ schema:
280
+ "$ref": "#/definitions/putApiRules"
261
281
  responses:
262
- "200":
282
+ '200':
263
283
  description: Update a rule
264
284
  schema:
265
285
  "$ref": "#/definitions/Mihari_Entities_Rule"
266
286
  tags:
267
- - rules
287
+ - rules
268
288
  post:
269
289
  summary: Create a rule
270
290
  description: Create a rule
271
291
  produces:
272
- - application/json
292
+ - application/json
273
293
  consumes:
274
- - application/json
294
+ - application/json
275
295
  parameters:
276
- - name: postApiRules
277
- in: body
278
- required: true
279
- schema:
280
- "$ref": "#/definitions/postApiRules"
296
+ - name: postApiRules
297
+ in: body
298
+ required: true
299
+ schema:
300
+ "$ref": "#/definitions/postApiRules"
281
301
  responses:
282
- "201":
302
+ '201':
283
303
  description: Create a rule
284
304
  schema:
285
305
  "$ref": "#/definitions/Mihari_Entities_Rule"
286
306
  tags:
287
- - rules
307
+ - rules
288
308
  get:
289
309
  summary: Search rules
290
310
  description: Search rules
291
311
  produces:
292
- - application/json
312
+ - application/json
293
313
  parameters:
294
- - in: query
295
- name: page
296
- type: integer
297
- format: int32
298
- default: 1
299
- required: false
300
- - in: query
301
- name: limit
302
- type: integer
303
- format: int32
304
- default: 10
305
- required: false
306
- - in: query
307
- name: title
308
- type: string
309
- required: false
310
- - in: query
311
- name: description
312
- type: string
313
- required: false
314
- - in: query
315
- name: tag
316
- type: string
317
- required: false
318
- - in: query
319
- name: fromAt
320
- type: string
321
- format: date-time
322
- required: false
323
- - in: query
324
- name: toAt
325
- type: string
326
- format: date-time
327
- required: false
314
+ - in: query
315
+ name: page
316
+ type: integer
317
+ format: int32
318
+ default: 1
319
+ required: false
320
+ - in: query
321
+ name: limit
322
+ type: integer
323
+ format: int32
324
+ default: 10
325
+ required: false
326
+ - in: query
327
+ name: title
328
+ type: string
329
+ required: false
330
+ - in: query
331
+ name: description
332
+ type: string
333
+ required: false
334
+ - in: query
335
+ name: tag
336
+ type: string
337
+ required: false
338
+ - in: query
339
+ name: fromAt
340
+ type: string
341
+ format: date-time
342
+ required: false
343
+ - in: query
344
+ name: toAt
345
+ type: string
346
+ format: date-time
347
+ required: false
328
348
  responses:
329
- "200":
349
+ '200':
330
350
  description: Search rules
331
351
  schema:
332
352
  type: array
333
353
  items:
334
354
  "$ref": "#/definitions/Mihari_Entities_RulesWithPagination"
335
- "404":
355
+ '404':
336
356
  description: Not found
337
357
  schema:
338
358
  "$ref": "#/definitions/Mihari_Entities_Message"
339
359
  tags:
340
- - rules
360
+ - rules
341
361
  "/api/rules/{id}/run":
342
362
  get:
343
363
  summary: Run a rule
344
364
  description: Run a rule
345
365
  produces:
346
- - application/json
366
+ - application/json
347
367
  parameters:
348
- - in: path
349
- name: id
350
- type: string
351
- required: true
368
+ - in: path
369
+ name: id
370
+ type: string
371
+ required: true
352
372
  responses:
353
- "200":
373
+ '200':
354
374
  description: Run a rule
355
375
  schema:
356
376
  "$ref": "#/definitions/Mihari_Entities_Message"
357
377
  tags:
358
- - rules
378
+ - rules
359
379
  "/api/rules/ids":
360
380
  get:
361
381
  summary: Get rule IDs
362
382
  description: Get Rule IDs
363
383
  produces:
364
- - application/json
384
+ - application/json
365
385
  responses:
366
- "200":
386
+ '200':
367
387
  description: Get Rule IDs
368
388
  schema:
369
389
  type: array
370
390
  items:
371
391
  "$ref": "#/definitions/Mihari_Entities_RuleIDs"
372
392
  tags:
373
- - rules
393
+ - rules
374
394
  "/api/tags/{name}":
375
395
  delete:
376
396
  summary: Delete a tag
377
397
  description: Delete a tag
378
398
  produces:
379
- - application/json
399
+ - application/json
380
400
  parameters:
381
- - in: path
382
- name: name
383
- type: string
384
- required: true
401
+ - in: path
402
+ name: name
403
+ type: string
404
+ required: true
385
405
  responses:
386
- "200":
406
+ '200':
387
407
  description: Delete a tag
388
408
  schema:
389
409
  "$ref": "#/definitions/Mihari_Entities_Message"
390
- "404":
410
+ '404':
391
411
  description: Not found
392
412
  schema:
393
413
  "$ref": "#/definitions/Mihari_Entities_Message"
394
414
  tags:
395
- - tags
415
+ - tags
396
416
  "/api/tags":
397
417
  get:
398
418
  summary: Get tags
399
419
  description: Get tags
400
420
  produces:
401
- - application/json
421
+ - application/json
402
422
  responses:
403
- "200":
423
+ '200':
404
424
  description: Get tags
405
425
  schema:
406
426
  type: array
407
427
  items:
408
428
  "$ref": "#/definitions/Mihari_Entities_Tags"
409
429
  tags:
410
- - tags
430
+ - tags
411
431
  definitions:
412
- Mihari_Entities_Message:
432
+ postApiAlerts:
413
433
  type: object
414
434
  properties:
415
- message:
435
+ ruleId:
416
436
  type: string
417
- required:
418
- - message
419
- description: Mihari_Entities_Message model
420
- Mihari_Entities_AlertsWithPagination:
421
- type: object
422
- properties:
423
- alerts:
437
+ artifacts:
424
438
  type: array
425
439
  items:
426
- "$ref": "#/definitions/Mihari_Entities_Alert"
427
- total:
428
- type: integer
429
- format: int32
430
- currentPage:
431
- type: integer
432
- format: int32
433
- pageSize:
434
- type: integer
435
- format: int32
440
+ type: string
436
441
  required:
437
- - alerts
438
- - total
439
- - currentPage
440
- - pageSize
441
- description: Mihari_Entities_AlertsWithPagination model
442
+ - ruleId
443
+ - artifacts
444
+ description: Create an alert
442
445
  Mihari_Entities_Alert:
443
446
  type: object
444
447
  properties:
@@ -459,10 +462,11 @@ definitions:
459
462
  items:
460
463
  "$ref": "#/definitions/Mihari_Entities_Tag"
461
464
  required:
462
- - id
463
- - ruleId
464
- - createdAt
465
- - tags
465
+ - id
466
+ - ruleId
467
+ - createdAt
468
+ - tags
469
+ description: Mihari_Entities_Alert model
466
470
  Mihari_Entities_BaseArtifact:
467
471
  type: object
468
472
  properties:
@@ -480,17 +484,47 @@ definitions:
480
484
  items:
481
485
  type: string
482
486
  required:
483
- - id
484
- - data
485
- - dataType
486
- - source
487
+ - id
488
+ - data
489
+ - dataType
490
+ - source
487
491
  Mihari_Entities_Tag:
488
492
  type: object
489
493
  properties:
490
494
  name:
491
495
  type: string
492
496
  required:
493
- - name
497
+ - name
498
+ Mihari_Entities_Message:
499
+ type: object
500
+ properties:
501
+ message:
502
+ type: string
503
+ required:
504
+ - message
505
+ description: Mihari_Entities_Message model
506
+ Mihari_Entities_AlertsWithPagination:
507
+ type: object
508
+ properties:
509
+ alerts:
510
+ type: array
511
+ items:
512
+ "$ref": "#/definitions/Mihari_Entities_Alert"
513
+ total:
514
+ type: integer
515
+ format: int32
516
+ currentPage:
517
+ type: integer
518
+ format: int32
519
+ pageSize:
520
+ type: integer
521
+ format: int32
522
+ required:
523
+ - alerts
524
+ - total
525
+ - currentPage
526
+ - pageSize
527
+ description: Mihari_Entities_AlertsWithPagination model
494
528
  Mihari_Entities_Artifact:
495
529
  type: object
496
530
  properties:
@@ -532,10 +566,10 @@ definitions:
532
566
  items:
533
567
  "$ref": "#/definitions/Mihari_Entities_Port"
534
568
  required:
535
- - id
536
- - data
537
- - dataType
538
- - source
569
+ - id
570
+ - data
571
+ - dataType
572
+ - source
539
573
  description: Mihari_Entities_Artifact model
540
574
  Mihari_Entities_AutonomousSystem:
541
575
  type: object
@@ -544,7 +578,7 @@ definitions:
544
578
  type: integer
545
579
  format: int32
546
580
  required:
547
- - asn
581
+ - asn
548
582
  Mihari_Entities_Geolocation:
549
583
  type: object
550
584
  properties:
@@ -553,8 +587,8 @@ definitions:
553
587
  countryCode:
554
588
  type: string
555
589
  required:
556
- - country
557
- - countryCode
590
+ - country
591
+ - countryCode
558
592
  Mihari_Entities_WhoisRecord:
559
593
  type: object
560
594
  properties:
@@ -576,15 +610,15 @@ definitions:
576
610
  items:
577
611
  type: object
578
612
  required:
579
- - domain
580
- - contacts
613
+ - domain
614
+ - contacts
581
615
  Mihari_Entities_ReverseDnsName:
582
616
  type: object
583
617
  properties:
584
618
  name:
585
619
  type: string
586
620
  required:
587
- - name
621
+ - name
588
622
  Mihari_Entities_DnsRecord:
589
623
  type: object
590
624
  properties:
@@ -593,15 +627,15 @@ definitions:
593
627
  value:
594
628
  type: string
595
629
  required:
596
- - resource
597
- - value
630
+ - resource
631
+ - value
598
632
  Mihari_Entities_CPE:
599
633
  type: object
600
634
  properties:
601
635
  cpe:
602
636
  type: string
603
637
  required:
604
- - cpe
638
+ - cpe
605
639
  Mihari_Entities_Port:
606
640
  type: object
607
641
  properties:
@@ -609,7 +643,7 @@ definitions:
609
643
  type: integer
610
644
  format: int32
611
645
  required:
612
- - port
646
+ - port
613
647
  Mihari_Entities_Config:
614
648
  type: object
615
649
  properties:
@@ -624,10 +658,10 @@ definitions:
624
658
  isConfigured:
625
659
  type: boolean
626
660
  required:
627
- - name
628
- - type
629
- - values
630
- - isConfigured
661
+ - name
662
+ - type
663
+ - values
664
+ - isConfigured
631
665
  description: Mihari_Entities_Config model
632
666
  Mihari_Entities_IPAddress:
633
667
  type: object
@@ -644,9 +678,9 @@ definitions:
644
678
  type: integer
645
679
  format: int32
646
680
  required:
647
- - ip
648
- - countryCode
649
- - loc
681
+ - ip
682
+ - countryCode
683
+ - loc
650
684
  description: Mihari_Entities_IPAddress model
651
685
  putApiRules:
652
686
  type: object
@@ -656,8 +690,8 @@ definitions:
656
690
  yaml:
657
691
  type: string
658
692
  required:
659
- - id
660
- - yaml
693
+ - id
694
+ - yaml
661
695
  description: Update a rule
662
696
  Mihari_Entities_Rule:
663
697
  type: object
@@ -681,13 +715,13 @@ definitions:
681
715
  items:
682
716
  "$ref": "#/definitions/Mihari_Entities_Tag"
683
717
  required:
684
- - id
685
- - title
686
- - description
687
- - yaml
688
- - createdAt
689
- - updatedAt
690
- - tags
718
+ - id
719
+ - title
720
+ - description
721
+ - yaml
722
+ - createdAt
723
+ - updatedAt
724
+ - tags
691
725
  description: Mihari_Entities_Rule model
692
726
  postApiRules:
693
727
  type: object
@@ -695,7 +729,7 @@ definitions:
695
729
  yaml:
696
730
  type: string
697
731
  required:
698
- - yaml
732
+ - yaml
699
733
  description: Create a rule
700
734
  Mihari_Entities_RulesWithPagination:
701
735
  type: object
@@ -714,10 +748,10 @@ definitions:
714
748
  type: integer
715
749
  format: int32
716
750
  required:
717
- - rules
718
- - total
719
- - currentPage
720
- - pageSize
751
+ - rules
752
+ - total
753
+ - currentPage
754
+ - pageSize
721
755
  description: Mihari_Entities_RulesWithPagination model
722
756
  Mihari_Entities_RuleIDs:
723
757
  type: object
@@ -725,7 +759,7 @@ definitions:
725
759
  ruleIds:
726
760
  type: string
727
761
  required:
728
- - ruleIds
762
+ - ruleIds
729
763
  description: Mihari_Entities_RuleIDs model
730
764
  Mihari_Entities_Tags:
731
765
  type: object
@@ -733,5 +767,5 @@ definitions:
733
767
  tags:
734
768
  type: string
735
769
  required:
736
- - tags
770
+ - tags
737
771
  description: Mihari_Entities_Tags model