mihari 5.7.0 → 5.7.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (164) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +1 -1
  3. data/lib/mihari/actor.rb +10 -4
  4. data/lib/mihari/commands/alert.rb +6 -4
  5. data/lib/mihari/commands/search.rb +10 -29
  6. data/lib/mihari/enrichers/ipinfo.rb +1 -1
  7. data/lib/mihari/entities/tag.rb +1 -0
  8. data/lib/mihari/rule.rb +14 -0
  9. data/lib/mihari/service.rb +12 -2
  10. data/lib/mihari/services/alert_builder.rb +81 -8
  11. data/lib/mihari/services/alert_runner.rb +3 -10
  12. data/lib/mihari/services/rule_builder.rb +8 -10
  13. data/lib/mihari/services/rule_runner.rb +2 -25
  14. data/lib/mihari/structs/binaryedge.rb +9 -0
  15. data/lib/mihari/structs/censys.rb +0 -14
  16. data/lib/mihari/structs/fofa.rb +3 -0
  17. data/lib/mihari/structs/google_public_dns.rb +0 -4
  18. data/lib/mihari/structs/greynoise.rb +0 -6
  19. data/lib/mihari/structs/hunterhow.rb +0 -6
  20. data/lib/mihari/structs/ipinfo.rb +0 -2
  21. data/lib/mihari/structs/onyphe.rb +0 -4
  22. data/lib/mihari/structs/shodan.rb +0 -2
  23. data/lib/mihari/structs/urlscan.rb +0 -6
  24. data/lib/mihari/structs/virustotal_intelligence.rb +0 -8
  25. data/lib/mihari/version.rb +1 -1
  26. data/lib/mihari/web/app.rb +20 -17
  27. data/lib/mihari/web/endpoints/alerts.rb +75 -38
  28. data/lib/mihari/web/endpoints/artifacts.rb +60 -53
  29. data/lib/mihari/web/endpoints/ip_addresses.rb +19 -4
  30. data/lib/mihari/web/endpoints/rules.rb +132 -88
  31. data/lib/mihari/web/endpoints/tags.rb +15 -13
  32. data/lib/mihari/web/public/assets/{index-821134e2.js → index-07fafab5.js} +4 -3
  33. data/lib/mihari/web/public/index.html +1 -1
  34. data/lib/mihari.rb +0 -1
  35. data/mihari.gemspec +1 -1
  36. data/mkdocs.yml +1 -0
  37. metadata +3 -130
  38. data/docs/alternatives.md +0 -5
  39. data/docs/analyzers/binaryedge.md +0 -26
  40. data/docs/analyzers/censys.md +0 -31
  41. data/docs/analyzers/circl.md +0 -37
  42. data/docs/analyzers/crtsh.md +0 -26
  43. data/docs/analyzers/dnstwister.md +0 -25
  44. data/docs/analyzers/feed.md +0 -73
  45. data/docs/analyzers/fofa.md +0 -31
  46. data/docs/analyzers/greynoise.md +0 -26
  47. data/docs/analyzers/hunterhow.md +0 -33
  48. data/docs/analyzers/index.md +0 -104
  49. data/docs/analyzers/onyphe.md +0 -26
  50. data/docs/analyzers/otx.md +0 -28
  51. data/docs/analyzers/passivetotal.md +0 -52
  52. data/docs/analyzers/pulsedive.md +0 -28
  53. data/docs/analyzers/securitytrails.md +0 -41
  54. data/docs/analyzers/shodan.md +0 -26
  55. data/docs/analyzers/urlscan.md +0 -28
  56. data/docs/analyzers/virustotal.md +0 -43
  57. data/docs/analyzers/virustotal_intelligence.md +0 -33
  58. data/docs/analyzers/zoomeye.md +0 -38
  59. data/docs/configuration.md +0 -35
  60. data/docs/emitters/database.md +0 -22
  61. data/docs/emitters/hive.md +0 -26
  62. data/docs/emitters/index.md +0 -36
  63. data/docs/emitters/misp.md +0 -21
  64. data/docs/emitters/slack.md +0 -21
  65. data/docs/emitters/webhook.md +0 -63
  66. data/docs/enrichers/google_public_dns.md +0 -19
  67. data/docs/enrichers/index.md +0 -35
  68. data/docs/enrichers/ipinfo.md +0 -26
  69. data/docs/enrichers/shodan.md +0 -22
  70. data/docs/enrichers/whois.md +0 -17
  71. data/docs/github_actions.md +0 -43
  72. data/docs/index.md +0 -11
  73. data/docs/installation.md +0 -31
  74. data/docs/requirements.md +0 -13
  75. data/docs/rule.md +0 -168
  76. data/docs/tags.md +0 -3
  77. data/docs/usage.md +0 -103
  78. data/frontend/.eslintrc.cjs +0 -22
  79. data/frontend/.gitignore +0 -31
  80. data/frontend/.prettierrc.json +0 -8
  81. data/frontend/README.md +0 -3
  82. data/frontend/env.d.ts +0 -5
  83. data/frontend/index.html +0 -21
  84. data/frontend/package-lock.json +0 -7219
  85. data/frontend/package.json +0 -67
  86. data/frontend/public/favicon.ico +0 -0
  87. data/frontend/scripts/swagger_doc_to_yaml.rb +0 -23
  88. data/frontend/src/App.vue +0 -27
  89. data/frontend/src/ace-config.ts +0 -6
  90. data/frontend/src/api-helper.ts +0 -111
  91. data/frontend/src/api.ts +0 -105
  92. data/frontend/src/components/ErrorMessage.vue +0 -31
  93. data/frontend/src/components/Loading.vue +0 -15
  94. data/frontend/src/components/Navbar.vue +0 -42
  95. data/frontend/src/components/Pagination.vue +0 -119
  96. data/frontend/src/components/alert/Alert.vue +0 -87
  97. data/frontend/src/components/alert/Alerts.vue +0 -63
  98. data/frontend/src/components/alert/AlertsWithPagination.vue +0 -90
  99. data/frontend/src/components/alert/AlertsWrapper.vue +0 -128
  100. data/frontend/src/components/alert/Form.vue +0 -169
  101. data/frontend/src/components/artifact/AS.vue +0 -23
  102. data/frontend/src/components/artifact/Artifact.vue +0 -287
  103. data/frontend/src/components/artifact/ArtifactTag.vue +0 -64
  104. data/frontend/src/components/artifact/ArtifactTags.vue +0 -29
  105. data/frontend/src/components/artifact/ArtifactWrapper.vue +0 -57
  106. data/frontend/src/components/artifact/CPEs.vue +0 -23
  107. data/frontend/src/components/artifact/DnsRecords.vue +0 -32
  108. data/frontend/src/components/artifact/Ports.vue +0 -23
  109. data/frontend/src/components/artifact/ReverseDnsNames.vue +0 -23
  110. data/frontend/src/components/artifact/Tags.vue +0 -29
  111. data/frontend/src/components/artifact/WhoisRecord.vue +0 -44
  112. data/frontend/src/components/config/Configs.vue +0 -65
  113. data/frontend/src/components/config/ConfigsWrapper.vue +0 -32
  114. data/frontend/src/components/link/Link.vue +0 -32
  115. data/frontend/src/components/link/Links.vue +0 -42
  116. data/frontend/src/components/rule/EditRule.vue +0 -72
  117. data/frontend/src/components/rule/EditRuleWrapper.vue +0 -48
  118. data/frontend/src/components/rule/Form.vue +0 -158
  119. data/frontend/src/components/rule/InputForm.vue +0 -45
  120. data/frontend/src/components/rule/NewRule.vue +0 -57
  121. data/frontend/src/components/rule/Rule.vue +0 -100
  122. data/frontend/src/components/rule/RuleWrapper.vue +0 -53
  123. data/frontend/src/components/rule/Rules.vue +0 -84
  124. data/frontend/src/components/rule/RulesWrapper.vue +0 -121
  125. data/frontend/src/components/rule/YAML.vue +0 -37
  126. data/frontend/src/components/tag/Tag.vue +0 -65
  127. data/frontend/src/components/tag/Tags.vue +0 -37
  128. data/frontend/src/countries.ts +0 -350
  129. data/frontend/src/index.ts +0 -20
  130. data/frontend/src/links/anyrun.ts +0 -19
  131. data/frontend/src/links/base.ts +0 -14
  132. data/frontend/src/links/censys.ts +0 -20
  133. data/frontend/src/links/crtsh.ts +0 -20
  134. data/frontend/src/links/dnslytics.ts +0 -38
  135. data/frontend/src/links/greynoise.ts +0 -20
  136. data/frontend/src/links/index.ts +0 -40
  137. data/frontend/src/links/intezer.ts +0 -20
  138. data/frontend/src/links/otx.ts +0 -33
  139. data/frontend/src/links/securitytrails.ts +0 -38
  140. data/frontend/src/links/shodan.ts +0 -20
  141. data/frontend/src/links/urlscan.ts +0 -50
  142. data/frontend/src/links/virustotal.ts +0 -72
  143. data/frontend/src/main.ts +0 -41
  144. data/frontend/src/router/index.ts +0 -57
  145. data/frontend/src/rule.ts +0 -14
  146. data/frontend/src/shims-vue.d.ts +0 -6
  147. data/frontend/src/swagger.yaml +0 -771
  148. data/frontend/src/types.ts +0 -188
  149. data/frontend/src/utils.ts +0 -54
  150. data/frontend/src/views/Alerts.vue +0 -20
  151. data/frontend/src/views/Artifact.vue +0 -39
  152. data/frontend/src/views/Configs.vue +0 -20
  153. data/frontend/src/views/EditRule.vue +0 -39
  154. data/frontend/src/views/NewRule.vue +0 -26
  155. data/frontend/src/views/Rule.vue +0 -39
  156. data/frontend/src/views/Rules.vue +0 -20
  157. data/frontend/tests/utils.spec.ts +0 -9
  158. data/frontend/tsconfig.app.json +0 -21
  159. data/frontend/tsconfig.json +0 -14
  160. data/frontend/tsconfig.node.json +0 -13
  161. data/frontend/tsconfig.vitest.json +0 -12
  162. data/frontend/vite.config.ts +0 -24
  163. data/frontend/vitest.config.ts +0 -21
  164. data/lib/mihari/services/alert_proxy.rb +0 -97
@@ -1,771 +0,0 @@
1
- ---
2
- info:
3
- title: Mihari API
4
- version: 0.0.1
5
- swagger: "2.0"
6
- produces:
7
- - application/json
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
21
- paths:
22
- "/api/alerts":
23
- post:
24
- summary: Create an alert
25
- description: Create an alert
26
- produces:
27
- - application/json
28
- consumes:
29
- - application/json
30
- parameters:
31
- - name: postApiAlerts
32
- in: body
33
- required: true
34
- schema:
35
- "$ref": "#/definitions/postApiAlerts"
36
- responses:
37
- "201":
38
- description: Create an alert
39
- schema:
40
- "$ref": "#/definitions/Mihari_Entities_Alert"
41
- tags:
42
- - alerts
43
- get:
44
- summary: Search alerts
45
- description: Search alerts
46
- produces:
47
- - application/json
48
- parameters:
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
83
- responses:
84
- "200":
85
- description: Search alerts
86
- schema:
87
- type: array
88
- items:
89
- "$ref": "#/definitions/Mihari_Entities_AlertsWithPagination"
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":
114
- description: Not found
115
- schema:
116
- "$ref": "#/definitions/Mihari_Entities_Message"
117
- tags:
118
- - alerts
119
- "/api/artifacts/{id}":
120
- delete:
121
- summary: Delete an artifact
122
- description: Delete an artifact
123
- produces:
124
- - application/json
125
- parameters:
126
- - in: path
127
- name: id
128
- type: integer
129
- format: int32
130
- required: true
131
- responses:
132
- "200":
133
- description: Delete an artifact
134
- schema:
135
- "$ref": "#/definitions/Mihari_Entities_Message"
136
- "404":
137
- description: Not found
138
- schema:
139
- "$ref": "#/definitions/Mihari_Entities_Message"
140
- tags:
141
- - artifacts
142
- get:
143
- summary: Get an artifact
144
- description: Get an artifact
145
- produces:
146
- - application/json
147
- parameters:
148
- - in: path
149
- name: id
150
- type: integer
151
- format: int32
152
- required: true
153
- responses:
154
- "200":
155
- description: Get an artifact
156
- schema:
157
- "$ref": "#/definitions/Mihari_Entities_Artifact"
158
- "404":
159
- description: Not found
160
- schema:
161
- "$ref": "#/definitions/Mihari_Entities_Message"
162
- tags:
163
- - artifacts
164
- "/api/artifacts/{id}/enrich":
165
- get:
166
- summary: Enrich an artifact
167
- description: Enrich an artifact
168
- produces:
169
- - application/json
170
- parameters:
171
- - in: path
172
- name: id
173
- type: integer
174
- format: int32
175
- required: true
176
- responses:
177
- "200":
178
- description: Enrich an artifact
179
- schema:
180
- "$ref": "#/definitions/Mihari_Entities_Message"
181
- "404":
182
- description: Not found
183
- schema:
184
- "$ref": "#/definitions/Mihari_Entities_Message"
185
- tags:
186
- - artifacts
187
- "/api/configs":
188
- get:
189
- summary: Get configs
190
- description: Get configs
191
- produces:
192
- - application/json
193
- responses:
194
- "200":
195
- description: Get configs
196
- schema:
197
- type: array
198
- items:
199
- "$ref": "#/definitions/Mihari_Entities_Config"
200
- tags:
201
- - configs
202
- "/api/ip_addresses/{ip}":
203
- get:
204
- summary: Get an IP address
205
- description: Get an IP address
206
- produces:
207
- - application/json
208
- parameters:
209
- - in: path
210
- name: ip
211
- type: string
212
- required: true
213
- responses:
214
- "200":
215
- description: Get an IP address
216
- schema:
217
- "$ref": "#/definitions/Mihari_Entities_IPAddress"
218
- "404":
219
- description: Not found
220
- schema:
221
- "$ref": "#/definitions/Mihari_Entities_Message"
222
- tags:
223
- - ip_addresses
224
- "/api/rules/{id}":
225
- delete:
226
- summary: Delete a rule
227
- description: Delete a rule
228
- produces:
229
- - application/json
230
- parameters:
231
- - in: path
232
- name: id
233
- type: string
234
- required: true
235
- responses:
236
- "200":
237
- description: Delete a rule
238
- schema:
239
- "$ref": "#/definitions/Mihari_Entities_Message"
240
- "404":
241
- description: Not found
242
- schema:
243
- "$ref": "#/definitions/Mihari_Entities_Message"
244
- tags:
245
- - rules
246
- get:
247
- summary: Get a rule
248
- description: Get a rule
249
- produces:
250
- - application/json
251
- parameters:
252
- - in: path
253
- name: id
254
- type: string
255
- required: true
256
- responses:
257
- "200":
258
- description: Get a rule
259
- schema:
260
- "$ref": "#/definitions/Mihari_Entities_Rule"
261
- "404":
262
- description: Not found
263
- schema:
264
- "$ref": "#/definitions/Mihari_Entities_Message"
265
- tags:
266
- - rules
267
- "/api/rules":
268
- put:
269
- summary: Update a rule
270
- description: Update a rule
271
- produces:
272
- - application/json
273
- consumes:
274
- - application/json
275
- parameters:
276
- - name: putApiRules
277
- in: body
278
- required: true
279
- schema:
280
- "$ref": "#/definitions/putApiRules"
281
- responses:
282
- "200":
283
- description: Update a rule
284
- schema:
285
- "$ref": "#/definitions/Mihari_Entities_Rule"
286
- tags:
287
- - rules
288
- post:
289
- summary: Create a rule
290
- description: Create a rule
291
- produces:
292
- - application/json
293
- consumes:
294
- - application/json
295
- parameters:
296
- - name: postApiRules
297
- in: body
298
- required: true
299
- schema:
300
- "$ref": "#/definitions/postApiRules"
301
- responses:
302
- "201":
303
- description: Create a rule
304
- schema:
305
- "$ref": "#/definitions/Mihari_Entities_Rule"
306
- tags:
307
- - rules
308
- get:
309
- summary: Search rules
310
- description: Search rules
311
- produces:
312
- - application/json
313
- parameters:
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
348
- responses:
349
- "200":
350
- description: Search rules
351
- schema:
352
- type: array
353
- items:
354
- "$ref": "#/definitions/Mihari_Entities_RulesWithPagination"
355
- "404":
356
- description: Not found
357
- schema:
358
- "$ref": "#/definitions/Mihari_Entities_Message"
359
- tags:
360
- - rules
361
- "/api/rules/{id}/run":
362
- get:
363
- summary: Run a rule
364
- description: Run a rule
365
- produces:
366
- - application/json
367
- parameters:
368
- - in: path
369
- name: id
370
- type: string
371
- required: true
372
- responses:
373
- "200":
374
- description: Run a rule
375
- schema:
376
- "$ref": "#/definitions/Mihari_Entities_Message"
377
- tags:
378
- - rules
379
- "/api/rules/ids":
380
- get:
381
- summary: Get rule IDs
382
- description: Get Rule IDs
383
- produces:
384
- - application/json
385
- responses:
386
- "200":
387
- description: Get Rule IDs
388
- schema:
389
- type: array
390
- items:
391
- "$ref": "#/definitions/Mihari_Entities_RuleIDs"
392
- tags:
393
- - rules
394
- "/api/tags/{name}":
395
- delete:
396
- summary: Delete a tag
397
- description: Delete a tag
398
- produces:
399
- - application/json
400
- parameters:
401
- - in: path
402
- name: name
403
- type: string
404
- required: true
405
- responses:
406
- "200":
407
- description: Delete a tag
408
- schema:
409
- "$ref": "#/definitions/Mihari_Entities_Message"
410
- "404":
411
- description: Not found
412
- schema:
413
- "$ref": "#/definitions/Mihari_Entities_Message"
414
- tags:
415
- - tags
416
- "/api/tags":
417
- get:
418
- summary: Get tags
419
- description: Get tags
420
- produces:
421
- - application/json
422
- responses:
423
- "200":
424
- description: Get tags
425
- schema:
426
- type: array
427
- items:
428
- "$ref": "#/definitions/Mihari_Entities_Tags"
429
- tags:
430
- - tags
431
- definitions:
432
- postApiAlerts:
433
- type: object
434
- properties:
435
- ruleId:
436
- type: string
437
- artifacts:
438
- type: array
439
- items:
440
- type: string
441
- required:
442
- - ruleId
443
- - artifacts
444
- description: Create an alert
445
- Mihari_Entities_Alert:
446
- type: object
447
- properties:
448
- id:
449
- type: string
450
- description: String representation of the ID
451
- ruleId:
452
- type: string
453
- createdAt:
454
- type: string
455
- format: date-time
456
- artifacts:
457
- type: array
458
- items:
459
- "$ref": "#/definitions/Mihari_Entities_BaseArtifact"
460
- tags:
461
- type: array
462
- items:
463
- "$ref": "#/definitions/Mihari_Entities_Tag"
464
- required:
465
- - id
466
- - ruleId
467
- - createdAt
468
- - tags
469
- description: Mihari_Entities_Alert model
470
- Mihari_Entities_BaseArtifact:
471
- type: object
472
- properties:
473
- id:
474
- type: string
475
- description: String representation of the ID
476
- data:
477
- type: string
478
- dataType:
479
- type: string
480
- source:
481
- type: string
482
- tags:
483
- type: array
484
- items:
485
- type: string
486
- required:
487
- - id
488
- - data
489
- - dataType
490
- - source
491
- Mihari_Entities_Tag:
492
- type: object
493
- properties:
494
- name:
495
- type: string
496
- required:
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
528
- Mihari_Entities_Artifact:
529
- type: object
530
- properties:
531
- id:
532
- type: string
533
- description: String representation of the ID
534
- data:
535
- type: string
536
- dataType:
537
- type: string
538
- source:
539
- type: string
540
- tags:
541
- type: array
542
- items:
543
- type: string
544
- metadata:
545
- type: object
546
- autonomousSystem:
547
- "$ref": "#/definitions/Mihari_Entities_AutonomousSystem"
548
- geolocation:
549
- "$ref": "#/definitions/Mihari_Entities_Geolocation"
550
- whoisRecord:
551
- "$ref": "#/definitions/Mihari_Entities_WhoisRecord"
552
- reverseDnsNames:
553
- type: array
554
- items:
555
- "$ref": "#/definitions/Mihari_Entities_ReverseDnsName"
556
- dnsRecords:
557
- type: array
558
- items:
559
- "$ref": "#/definitions/Mihari_Entities_DnsRecord"
560
- cpes:
561
- type: array
562
- items:
563
- "$ref": "#/definitions/Mihari_Entities_CPE"
564
- ports:
565
- type: array
566
- items:
567
- "$ref": "#/definitions/Mihari_Entities_Port"
568
- required:
569
- - id
570
- - data
571
- - dataType
572
- - source
573
- description: Mihari_Entities_Artifact model
574
- Mihari_Entities_AutonomousSystem:
575
- type: object
576
- properties:
577
- asn:
578
- type: integer
579
- format: int32
580
- required:
581
- - asn
582
- Mihari_Entities_Geolocation:
583
- type: object
584
- properties:
585
- country:
586
- type: string
587
- countryCode:
588
- type: string
589
- required:
590
- - country
591
- - countryCode
592
- Mihari_Entities_WhoisRecord:
593
- type: object
594
- properties:
595
- domain:
596
- type: string
597
- createdOn:
598
- type: string
599
- format: date
600
- updatedOn:
601
- type: string
602
- format: date
603
- expiresOn:
604
- type: string
605
- format: date
606
- registrar:
607
- type: object
608
- contacts:
609
- type: array
610
- items:
611
- type: object
612
- required:
613
- - domain
614
- - contacts
615
- Mihari_Entities_ReverseDnsName:
616
- type: object
617
- properties:
618
- name:
619
- type: string
620
- required:
621
- - name
622
- Mihari_Entities_DnsRecord:
623
- type: object
624
- properties:
625
- resource:
626
- type: string
627
- value:
628
- type: string
629
- required:
630
- - resource
631
- - value
632
- Mihari_Entities_CPE:
633
- type: object
634
- properties:
635
- cpe:
636
- type: string
637
- required:
638
- - cpe
639
- Mihari_Entities_Port:
640
- type: object
641
- properties:
642
- port:
643
- type: integer
644
- format: int32
645
- required:
646
- - port
647
- Mihari_Entities_Config:
648
- type: object
649
- properties:
650
- name:
651
- type: string
652
- type:
653
- type: string
654
- values:
655
- type: array
656
- items:
657
- type: string
658
- isConfigured:
659
- type: boolean
660
- required:
661
- - name
662
- - type
663
- - values
664
- - isConfigured
665
- description: Mihari_Entities_Config model
666
- Mihari_Entities_IPAddress:
667
- type: object
668
- properties:
669
- ip:
670
- type: string
671
- countryCode:
672
- type: string
673
- hostname:
674
- type: string
675
- loc:
676
- type: string
677
- asn:
678
- type: integer
679
- format: int32
680
- required:
681
- - ip
682
- - countryCode
683
- - loc
684
- description: Mihari_Entities_IPAddress model
685
- putApiRules:
686
- type: object
687
- properties:
688
- id:
689
- type: string
690
- yaml:
691
- type: string
692
- required:
693
- - id
694
- - yaml
695
- description: Update a rule
696
- Mihari_Entities_Rule:
697
- type: object
698
- properties:
699
- id:
700
- type: string
701
- title:
702
- type: string
703
- description:
704
- type: string
705
- yaml:
706
- type: string
707
- createdAt:
708
- type: string
709
- format: date-time
710
- updatedAt:
711
- type: string
712
- format: date-time
713
- tags:
714
- type: array
715
- items:
716
- "$ref": "#/definitions/Mihari_Entities_Tag"
717
- required:
718
- - id
719
- - title
720
- - description
721
- - yaml
722
- - createdAt
723
- - updatedAt
724
- - tags
725
- description: Mihari_Entities_Rule model
726
- postApiRules:
727
- type: object
728
- properties:
729
- yaml:
730
- type: string
731
- required:
732
- - yaml
733
- description: Create a rule
734
- Mihari_Entities_RulesWithPagination:
735
- type: object
736
- properties:
737
- rules:
738
- type: array
739
- items:
740
- "$ref": "#/definitions/Mihari_Entities_Rule"
741
- total:
742
- type: integer
743
- format: int32
744
- currentPage:
745
- type: integer
746
- format: int32
747
- pageSize:
748
- type: integer
749
- format: int32
750
- required:
751
- - rules
752
- - total
753
- - currentPage
754
- - pageSize
755
- description: Mihari_Entities_RulesWithPagination model
756
- Mihari_Entities_RuleIDs:
757
- type: object
758
- properties:
759
- ruleIds:
760
- type: string
761
- required:
762
- - ruleIds
763
- description: Mihari_Entities_RuleIDs model
764
- Mihari_Entities_Tags:
765
- type: object
766
- properties:
767
- tags:
768
- type: string
769
- required:
770
- - tags
771
- description: Mihari_Entities_Tags model