mihari 3.10.0 → 4.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (176) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -1
  3. data/docker/Dockerfile +1 -1
  4. data/lib/mihari/analyzers/base.rb +7 -7
  5. data/lib/mihari/analyzers/binaryedge.rb +8 -5
  6. data/lib/mihari/analyzers/censys.rb +6 -3
  7. data/lib/mihari/analyzers/circl.rb +0 -3
  8. data/lib/mihari/analyzers/crtsh.rb +7 -5
  9. data/lib/mihari/analyzers/dnpedia.rb +4 -4
  10. data/lib/mihari/analyzers/dnstwister.rb +1 -4
  11. data/lib/mihari/analyzers/feed.rb +36 -0
  12. data/lib/mihari/analyzers/greynoise.rb +1 -3
  13. data/lib/mihari/analyzers/onyphe.rb +6 -3
  14. data/lib/mihari/analyzers/otx.rb +0 -3
  15. data/lib/mihari/analyzers/passivetotal.rb +8 -9
  16. data/lib/mihari/analyzers/pulsedive.rb +7 -5
  17. data/lib/mihari/analyzers/rule.rb +11 -5
  18. data/lib/mihari/analyzers/securitytrails.rb +10 -7
  19. data/lib/mihari/analyzers/shodan.rb +15 -8
  20. data/lib/mihari/analyzers/spyse.rb +10 -11
  21. data/lib/mihari/analyzers/urlscan.rb +39 -16
  22. data/lib/mihari/analyzers/virustotal.rb +8 -9
  23. data/lib/mihari/analyzers/virustotal_intelligence.rb +9 -5
  24. data/lib/mihari/analyzers/zoomeye.rb +12 -5
  25. data/lib/mihari/cli/base.rb +0 -5
  26. data/lib/mihari/cli/init.rb +0 -2
  27. data/lib/mihari/cli/main.rb +4 -6
  28. data/lib/mihari/cli/mixins/utils.rb +2 -18
  29. data/lib/mihari/commands/init.rb +0 -18
  30. data/lib/mihari/commands/search.rb +20 -15
  31. data/lib/mihari/commands/validator.rb +7 -19
  32. data/lib/mihari/commands/web.rb +0 -3
  33. data/lib/mihari/database.rb +71 -19
  34. data/lib/mihari/emitters/misp.rb +0 -1
  35. data/lib/mihari/emitters/slack.rb +3 -4
  36. data/lib/mihari/emitters/stdout.rb +0 -2
  37. data/lib/mihari/emitters/the_hive.rb +0 -1
  38. data/lib/mihari/emitters/webhook.rb +1 -5
  39. data/lib/mihari/enrichers/ipinfo.rb +2 -2
  40. data/lib/mihari/errors.rb +6 -0
  41. data/lib/mihari/feed/parser.rb +34 -0
  42. data/lib/mihari/feed/reader.rb +127 -0
  43. data/lib/mihari/mixins/autonomous_system.rb +2 -0
  44. data/lib/mihari/mixins/database.rb +14 -0
  45. data/lib/mihari/mixins/disallowed_data_value.rb +2 -3
  46. data/lib/mihari/mixins/rule.rb +36 -31
  47. data/lib/mihari/models/alert.rb +7 -8
  48. data/lib/mihari/models/artifact.rb +1 -7
  49. data/lib/mihari/models/autonomous_system.rb +0 -2
  50. data/lib/mihari/models/dns.rb +2 -5
  51. data/lib/mihari/models/geolocation.rb +0 -1
  52. data/lib/mihari/models/reverse_dns.rb +0 -3
  53. data/lib/mihari/models/rule.rb +73 -0
  54. data/lib/mihari/models/tag.rb +0 -2
  55. data/lib/mihari/models/tagging.rb +0 -2
  56. data/lib/mihari/models/whois.rb +0 -2
  57. data/lib/mihari/notifiers/exception_notifier.rb +0 -2
  58. data/lib/mihari/schemas/analyzer.rb +0 -5
  59. data/lib/mihari/schemas/macros.rb +0 -2
  60. data/lib/mihari/schemas/rule.rb +21 -7
  61. data/lib/mihari/status.rb +2 -2
  62. data/lib/mihari/structs/alert.rb +2 -3
  63. data/lib/mihari/structs/censys.rb +4 -3
  64. data/lib/mihari/structs/greynoise.rb +4 -3
  65. data/lib/mihari/structs/ipinfo.rb +1 -2
  66. data/lib/mihari/structs/onyphe.rb +6 -5
  67. data/lib/mihari/structs/rule.rb +121 -0
  68. data/lib/mihari/structs/shodan.rb +8 -7
  69. data/lib/mihari/structs/urlscan.rb +50 -0
  70. data/lib/mihari/structs/virustotal_intelligence.rb +4 -3
  71. data/lib/mihari/type_checker.rb +2 -6
  72. data/lib/mihari/types.rb +8 -1
  73. data/lib/mihari/version.rb +1 -1
  74. data/lib/mihari/web/api.rb +6 -0
  75. data/lib/mihari/web/app.rb +5 -7
  76. data/lib/mihari/web/endpoints/alerts.rb +7 -3
  77. data/lib/mihari/web/endpoints/artifacts.rb +6 -3
  78. data/lib/mihari/web/endpoints/command.rb +2 -1
  79. data/lib/mihari/web/endpoints/configs.rb +2 -1
  80. data/lib/mihari/web/endpoints/ip_addresses.rb +2 -1
  81. data/lib/mihari/web/endpoints/rules.rb +140 -0
  82. data/lib/mihari/web/endpoints/sources.rb +2 -1
  83. data/lib/mihari/web/endpoints/tags.rb +4 -2
  84. data/lib/mihari/web/entities/artifact.rb +4 -2
  85. data/lib/mihari/web/entities/rule.rb +35 -0
  86. data/lib/mihari/web/entities/whois.rb +1 -1
  87. data/lib/mihari/web/middleware/connection_adapter.rb +19 -0
  88. data/lib/mihari/web/public/index.html +1 -1
  89. data/lib/mihari/web/public/redoc-static.html +196 -184
  90. data/lib/mihari/web/public/static/js/app.49ab738a.js +21 -0
  91. data/lib/mihari/web/public/static/js/app.49ab738a.js.map +1 -0
  92. data/lib/mihari/web/public/static/js/app.5dc97aae.js +21 -0
  93. data/lib/mihari/web/public/static/js/app.5dc97aae.js.map +1 -0
  94. data/lib/mihari/web/public/static/js/app.f2b8890f.js +21 -0
  95. data/lib/mihari/web/public/static/js/app.f2b8890f.js.map +1 -0
  96. data/lib/mihari/web/public/static/js/app.fbc19869.js +21 -0
  97. data/lib/mihari/web/public/static/js/app.fbc19869.js.map +1 -0
  98. data/lib/mihari.rb +42 -34
  99. data/mihari.gemspec +21 -23
  100. data/sig/lib/mihari/analyzers/binaryedge.rbs +2 -3
  101. data/sig/lib/mihari/analyzers/censys.rbs +2 -3
  102. data/sig/lib/mihari/analyzers/circl.rbs +1 -3
  103. data/sig/lib/mihari/analyzers/crtsh.rbs +1 -3
  104. data/sig/lib/mihari/analyzers/dnpedia.rbs +1 -4
  105. data/sig/lib/mihari/analyzers/dnstwister.rbs +1 -3
  106. data/sig/lib/mihari/analyzers/feed.rbs +20 -0
  107. data/sig/lib/mihari/analyzers/onyphe.rbs +2 -3
  108. data/sig/lib/mihari/analyzers/otx.rbs +1 -3
  109. data/sig/lib/mihari/analyzers/passivetotal.rbs +3 -5
  110. data/sig/lib/mihari/analyzers/pulsedive.rbs +2 -4
  111. data/sig/lib/mihari/analyzers/securitytrails.rbs +3 -5
  112. data/sig/lib/mihari/analyzers/shodan.rbs +2 -3
  113. data/sig/lib/mihari/analyzers/spyse.rbs +4 -6
  114. data/sig/lib/mihari/analyzers/urlscan.rbs +6 -5
  115. data/sig/lib/mihari/analyzers/virustotal.rbs +4 -6
  116. data/sig/lib/mihari/analyzers/virustotal_intelligence.rbs +2 -3
  117. data/sig/lib/mihari/analyzers/zoomeye.rbs +4 -4
  118. data/sig/lib/mihari/commands/init.rbs +0 -2
  119. data/sig/lib/mihari/commands/validator.rbs +0 -2
  120. data/sig/lib/mihari/emitters/slack.rbs +0 -1
  121. data/sig/lib/mihari/feed/parser.rbs +11 -0
  122. data/sig/lib/mihari/feed/reader.rbs +56 -0
  123. data/sig/lib/mihari/mixins/disallowed_data_value.rbs +0 -2
  124. data/sig/lib/mihari/mixins/rule.rbs +5 -12
  125. data/sig/lib/mihari/models/alert.rbs +1 -1
  126. data/sig/lib/mihari/models/artifact.rbs +2 -0
  127. data/sig/lib/mihari/models/rule.rbs +14 -0
  128. data/sig/lib/mihari/structs/alert.rbs +1 -1
  129. data/sig/lib/mihari/structs/greynoise.rbs +3 -3
  130. data/sig/lib/mihari/structs/rule.rbs +56 -0
  131. data/sig/lib/mihari/structs/shodan.rbs +2 -2
  132. data/sig/lib/mihari/structs/urlscan.rbs +28 -0
  133. data/sig/lib/mihari/types.rbs +4 -0
  134. data/sig/lib/mihari.rbs +0 -2
  135. metadata +102 -147
  136. data/lib/mihari/cli/analyzer.rb +0 -52
  137. data/lib/mihari/commands/binaryedge.rb +0 -21
  138. data/lib/mihari/commands/censys.rb +0 -22
  139. data/lib/mihari/commands/circl.rb +0 -21
  140. data/lib/mihari/commands/crtsh.rb +0 -22
  141. data/lib/mihari/commands/dnpedia.rb +0 -21
  142. data/lib/mihari/commands/dnstwister.rb +0 -21
  143. data/lib/mihari/commands/greynoise.rb +0 -21
  144. data/lib/mihari/commands/json.rb +0 -42
  145. data/lib/mihari/commands/onyphe.rb +0 -21
  146. data/lib/mihari/commands/otx.rb +0 -21
  147. data/lib/mihari/commands/passivetotal.rb +0 -22
  148. data/lib/mihari/commands/pulsedive.rb +0 -21
  149. data/lib/mihari/commands/securitytrails.rb +0 -22
  150. data/lib/mihari/commands/shodan.rb +0 -21
  151. data/lib/mihari/commands/spyse.rb +0 -22
  152. data/lib/mihari/commands/urlscan.rb +0 -23
  153. data/lib/mihari/commands/virustotal.rb +0 -22
  154. data/lib/mihari/commands/virustotal_intelligence.rb +0 -22
  155. data/lib/mihari/commands/zoomeye.rb +0 -22
  156. data/lib/mihari/mixins/configuration.rb +0 -100
  157. data/lib/mihari/mixins/hash.rb +0 -20
  158. data/lib/mihari/schemas/configuration.rb +0 -44
  159. data/lib/mihari/web/public/grape.rb +0 -73
  160. data/sig/lib/mihari/cli/analyzer.rbs +0 -39
  161. data/sig/lib/mihari/commands/binaryedge.rbs +0 -7
  162. data/sig/lib/mihari/commands/censys.rbs +0 -7
  163. data/sig/lib/mihari/commands/circl.rbs +0 -7
  164. data/sig/lib/mihari/commands/crtsh.rbs +0 -7
  165. data/sig/lib/mihari/commands/dnpedia.rbs +0 -7
  166. data/sig/lib/mihari/commands/dnstwister.rbs +0 -7
  167. data/sig/lib/mihari/commands/onyphe.rbs +0 -7
  168. data/sig/lib/mihari/commands/otx.rbs +0 -7
  169. data/sig/lib/mihari/commands/passivetotal.rbs +0 -7
  170. data/sig/lib/mihari/commands/pulsedive.rbs +0 -7
  171. data/sig/lib/mihari/commands/securitytrails.rbs +0 -7
  172. data/sig/lib/mihari/commands/shodan.rbs +0 -7
  173. data/sig/lib/mihari/commands/spyse.rbs +0 -7
  174. data/sig/lib/mihari/commands/urlscan.rbs +0 -7
  175. data/sig/lib/mihari/commands/virustotal.rbs +0 -7
  176. data/sig/lib/mihari/commands/zoomeye.rbs +0 -7
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mihari
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.10.0
4
+ version: 4.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Manabu Niseki
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-10-26 00:00:00.000000000 Z
11
+ date: 2022-01-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '2.2'
19
+ version: '2.3'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '2.2'
26
+ version: '2.3'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: coveralls_reborn
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -44,14 +44,14 @@ dependencies:
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '1.3'
47
+ version: '1.4'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '1.3'
54
+ version: '1.4'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: mysql2
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -170,28 +170,28 @@ dependencies:
170
170
  requirements:
171
171
  - - "~>"
172
172
  - !ruby/object:Gem::Version
173
- version: '1.3'
173
+ version: '1.5'
174
174
  type: :development
175
175
  prerelease: false
176
176
  version_requirements: !ruby/object:Gem::Requirement
177
177
  requirements:
178
178
  - - "~>"
179
179
  - !ruby/object:Gem::Version
180
- version: '1.3'
180
+ version: '1.5'
181
181
  - !ruby/object:Gem::Dependency
182
182
  name: steep
183
183
  requirement: !ruby/object:Gem::Requirement
184
184
  requirements:
185
185
  - - "~>"
186
186
  - !ruby/object:Gem::Version
187
- version: '0.46'
187
+ version: '0.47'
188
188
  type: :development
189
189
  prerelease: false
190
190
  version_requirements: !ruby/object:Gem::Requirement
191
191
  requirements:
192
192
  - - "~>"
193
193
  - !ruby/object:Gem::Version
194
- version: '0.46'
194
+ version: '0.47'
195
195
  - !ruby/object:Gem::Dependency
196
196
  name: timecop
197
197
  requirement: !ruby/object:Gem::Requirement
@@ -238,30 +238,16 @@ dependencies:
238
238
  name: activerecord
239
239
  requirement: !ruby/object:Gem::Requirement
240
240
  requirements:
241
- - - "~>"
242
- - !ruby/object:Gem::Version
243
- version: '6.1'
244
- type: :runtime
245
- prerelease: false
246
- version_requirements: !ruby/object:Gem::Requirement
247
- requirements:
248
- - - "~>"
249
- - !ruby/object:Gem::Version
250
- version: '6.1'
251
- - !ruby/object:Gem::Dependency
252
- name: activerecord-filter
253
- requirement: !ruby/object:Gem::Requirement
254
- requirements:
255
- - - "~>"
241
+ - - '='
256
242
  - !ruby/object:Gem::Version
257
- version: '6.1'
243
+ version: 7.0.1
258
244
  type: :runtime
259
245
  prerelease: false
260
246
  version_requirements: !ruby/object:Gem::Requirement
261
247
  requirements:
262
- - - "~>"
248
+ - - '='
263
249
  - !ruby/object:Gem::Version
264
- version: '6.1'
250
+ version: 7.0.1
265
251
  - !ruby/object:Gem::Dependency
266
252
  name: addressable
267
253
  requirement: !ruby/object:Gem::Requirement
@@ -346,20 +332,6 @@ dependencies:
346
332
  - - "~>"
347
333
  - !ruby/object:Gem::Version
348
334
  version: '0.3'
349
- - !ruby/object:Gem::Dependency
350
- name: cymbal
351
- requirement: !ruby/object:Gem::Requirement
352
- requirements:
353
- - - "~>"
354
- - !ruby/object:Gem::Version
355
- version: '2.0'
356
- type: :runtime
357
- prerelease: false
358
- version_requirements: !ruby/object:Gem::Requirement
359
- requirements:
360
- - - "~>"
361
- - !ruby/object:Gem::Version
362
- version: '2.0'
363
335
  - !ruby/object:Gem::Dependency
364
336
  name: dnpedia
365
337
  requirement: !ruby/object:Gem::Requirement
@@ -406,86 +378,86 @@ dependencies:
406
378
  name: dry-configurable
407
379
  requirement: !ruby/object:Gem::Requirement
408
380
  requirements:
409
- - - "~>"
381
+ - - '='
410
382
  - !ruby/object:Gem::Version
411
- version: '0.13'
383
+ version: 0.14.0
412
384
  type: :runtime
413
385
  prerelease: false
414
386
  version_requirements: !ruby/object:Gem::Requirement
415
387
  requirements:
416
- - - "~>"
388
+ - - '='
417
389
  - !ruby/object:Gem::Version
418
- version: '0.13'
390
+ version: 0.14.0
419
391
  - !ruby/object:Gem::Dependency
420
392
  name: dry-container
421
393
  requirement: !ruby/object:Gem::Requirement
422
394
  requirements:
423
- - - "~>"
395
+ - - '='
424
396
  - !ruby/object:Gem::Version
425
- version: '0.9'
397
+ version: 0.9.0
426
398
  type: :runtime
427
399
  prerelease: false
428
400
  version_requirements: !ruby/object:Gem::Requirement
429
401
  requirements:
430
- - - "~>"
402
+ - - '='
431
403
  - !ruby/object:Gem::Version
432
- version: '0.9'
404
+ version: 0.9.0
433
405
  - !ruby/object:Gem::Dependency
434
406
  name: dry-files
435
407
  requirement: !ruby/object:Gem::Requirement
436
408
  requirements:
437
- - - "~>"
409
+ - - '='
438
410
  - !ruby/object:Gem::Version
439
- version: '0.1'
411
+ version: 0.1.0
440
412
  type: :runtime
441
413
  prerelease: false
442
414
  version_requirements: !ruby/object:Gem::Requirement
443
415
  requirements:
444
- - - "~>"
416
+ - - '='
445
417
  - !ruby/object:Gem::Version
446
- version: '0.1'
418
+ version: 0.1.0
447
419
  - !ruby/object:Gem::Dependency
448
420
  name: dry-initializer
449
421
  requirement: !ruby/object:Gem::Requirement
450
422
  requirements:
451
- - - "~>"
423
+ - - '='
452
424
  - !ruby/object:Gem::Version
453
- version: '3.0'
425
+ version: 3.1.1
454
426
  type: :runtime
455
427
  prerelease: false
456
428
  version_requirements: !ruby/object:Gem::Requirement
457
429
  requirements:
458
- - - "~>"
430
+ - - '='
459
431
  - !ruby/object:Gem::Version
460
- version: '3.0'
432
+ version: 3.1.1
461
433
  - !ruby/object:Gem::Dependency
462
434
  name: dry-struct
463
435
  requirement: !ruby/object:Gem::Requirement
464
436
  requirements:
465
- - - "~>"
437
+ - - '='
466
438
  - !ruby/object:Gem::Version
467
- version: '1.4'
439
+ version: 1.4.0
468
440
  type: :runtime
469
441
  prerelease: false
470
442
  version_requirements: !ruby/object:Gem::Requirement
471
443
  requirements:
472
- - - "~>"
444
+ - - '='
473
445
  - !ruby/object:Gem::Version
474
- version: '1.4'
446
+ version: 1.4.0
475
447
  - !ruby/object:Gem::Dependency
476
448
  name: dry-validation
477
449
  requirement: !ruby/object:Gem::Requirement
478
450
  requirements:
479
- - - "~>"
451
+ - - '='
480
452
  - !ruby/object:Gem::Version
481
- version: '1.7'
453
+ version: 1.7.0
482
454
  type: :runtime
483
455
  prerelease: false
484
456
  version_requirements: !ruby/object:Gem::Requirement
485
457
  requirements:
486
- - - "~>"
458
+ - - '='
487
459
  - !ruby/object:Gem::Version
488
- version: '1.7'
460
+ version: 1.7.0
489
461
  - !ruby/object:Gem::Dependency
490
462
  name: email_address
491
463
  requirement: !ruby/object:Gem::Requirement
@@ -504,58 +476,58 @@ dependencies:
504
476
  name: grape
505
477
  requirement: !ruby/object:Gem::Requirement
506
478
  requirements:
507
- - - "~>"
479
+ - - '='
508
480
  - !ruby/object:Gem::Version
509
- version: '1.6'
481
+ version: 1.6.2
510
482
  type: :runtime
511
483
  prerelease: false
512
484
  version_requirements: !ruby/object:Gem::Requirement
513
485
  requirements:
514
- - - "~>"
486
+ - - '='
515
487
  - !ruby/object:Gem::Version
516
- version: '1.6'
488
+ version: 1.6.2
517
489
  - !ruby/object:Gem::Dependency
518
490
  name: grape-entity
519
491
  requirement: !ruby/object:Gem::Requirement
520
492
  requirements:
521
- - - "~>"
493
+ - - '='
522
494
  - !ruby/object:Gem::Version
523
- version: '0.10'
495
+ version: 0.10.1
524
496
  type: :runtime
525
497
  prerelease: false
526
498
  version_requirements: !ruby/object:Gem::Requirement
527
499
  requirements:
528
- - - "~>"
500
+ - - '='
529
501
  - !ruby/object:Gem::Version
530
- version: '0.10'
502
+ version: 0.10.1
531
503
  - !ruby/object:Gem::Dependency
532
504
  name: grape-swagger
533
505
  requirement: !ruby/object:Gem::Requirement
534
506
  requirements:
535
- - - "~>"
507
+ - - '='
536
508
  - !ruby/object:Gem::Version
537
- version: '1.4'
509
+ version: 1.4.2
538
510
  type: :runtime
539
511
  prerelease: false
540
512
  version_requirements: !ruby/object:Gem::Requirement
541
513
  requirements:
542
- - - "~>"
514
+ - - '='
543
515
  - !ruby/object:Gem::Version
544
- version: '1.4'
516
+ version: 1.4.2
545
517
  - !ruby/object:Gem::Dependency
546
518
  name: grape-swagger-entity
547
519
  requirement: !ruby/object:Gem::Requirement
548
520
  requirements:
549
- - - "~>"
521
+ - - '='
550
522
  - !ruby/object:Gem::Version
551
- version: '0.5'
523
+ version: 0.5.1
552
524
  type: :runtime
553
525
  prerelease: false
554
526
  version_requirements: !ruby/object:Gem::Requirement
555
527
  requirements:
556
- - - "~>"
528
+ - - '='
557
529
  - !ruby/object:Gem::Version
558
- version: '0.5'
530
+ version: 0.5.1
559
531
  - !ruby/object:Gem::Dependency
560
532
  name: greynoise
561
533
  requirement: !ruby/object:Gem::Requirement
@@ -599,33 +571,33 @@ dependencies:
599
571
  - !ruby/object:Gem::Version
600
572
  version: '5.0'
601
573
  - !ruby/object:Gem::Dependency
602
- name: launchy
574
+ name: jr-cli
603
575
  requirement: !ruby/object:Gem::Requirement
604
576
  requirements:
605
577
  - - "~>"
606
578
  - !ruby/object:Gem::Version
607
- version: '2.5'
579
+ version: '0.5'
608
580
  type: :runtime
609
581
  prerelease: false
610
582
  version_requirements: !ruby/object:Gem::Requirement
611
583
  requirements:
612
584
  - - "~>"
613
585
  - !ruby/object:Gem::Version
614
- version: '2.5'
586
+ version: '0.5'
615
587
  - !ruby/object:Gem::Dependency
616
- name: mem
588
+ name: launchy
617
589
  requirement: !ruby/object:Gem::Requirement
618
590
  requirements:
619
591
  - - "~>"
620
592
  - !ruby/object:Gem::Version
621
- version: '0.1'
593
+ version: '2.5'
622
594
  type: :runtime
623
595
  prerelease: false
624
596
  version_requirements: !ruby/object:Gem::Requirement
625
597
  requirements:
626
598
  - - "~>"
627
599
  - !ruby/object:Gem::Version
628
- version: '0.1'
600
+ version: '2.5'
629
601
  - !ruby/object:Gem::Dependency
630
602
  name: memist
631
603
  requirement: !ruby/object:Gem::Requirement
@@ -798,44 +770,44 @@ dependencies:
798
770
  name: puma
799
771
  requirement: !ruby/object:Gem::Requirement
800
772
  requirements:
801
- - - "~>"
773
+ - - '='
802
774
  - !ruby/object:Gem::Version
803
- version: '5.5'
775
+ version: 5.5.2
804
776
  type: :runtime
805
777
  prerelease: false
806
778
  version_requirements: !ruby/object:Gem::Requirement
807
779
  requirements:
808
- - - "~>"
780
+ - - '='
809
781
  - !ruby/object:Gem::Version
810
- version: '5.5'
782
+ version: 5.5.2
811
783
  - !ruby/object:Gem::Dependency
812
784
  name: rack
813
785
  requirement: !ruby/object:Gem::Requirement
814
786
  requirements:
815
- - - "~>"
787
+ - - '='
816
788
  - !ruby/object:Gem::Version
817
- version: '2.2'
789
+ version: 2.2.3
818
790
  type: :runtime
819
791
  prerelease: false
820
792
  version_requirements: !ruby/object:Gem::Requirement
821
793
  requirements:
822
- - - "~>"
794
+ - - '='
823
795
  - !ruby/object:Gem::Version
824
- version: '2.2'
796
+ version: 2.2.3
825
797
  - !ruby/object:Gem::Dependency
826
798
  name: rack-contrib
827
799
  requirement: !ruby/object:Gem::Requirement
828
800
  requirements:
829
- - - "~>"
801
+ - - '='
830
802
  - !ruby/object:Gem::Version
831
- version: '2.3'
803
+ version: 2.3.0
832
804
  type: :runtime
833
805
  prerelease: false
834
806
  version_requirements: !ruby/object:Gem::Requirement
835
807
  requirements:
836
- - - "~>"
808
+ - - '='
837
809
  - !ruby/object:Gem::Version
838
- version: '2.3'
810
+ version: 2.3.0
839
811
  - !ruby/object:Gem::Dependency
840
812
  name: rack-cors
841
813
  requirement: !ruby/object:Gem::Requirement
@@ -938,16 +910,16 @@ dependencies:
938
910
  name: thor
939
911
  requirement: !ruby/object:Gem::Requirement
940
912
  requirements:
941
- - - "~>"
913
+ - - '='
942
914
  - !ruby/object:Gem::Version
943
- version: '1.1'
915
+ version: 1.1.0
944
916
  type: :runtime
945
917
  prerelease: false
946
918
  version_requirements: !ruby/object:Gem::Requirement
947
919
  requirements:
948
- - - "~>"
920
+ - - '='
949
921
  - !ruby/object:Gem::Version
950
- version: '1.1'
922
+ version: 1.1.0
951
923
  - !ruby/object:Gem::Dependency
952
924
  name: thread_safe
953
925
  requirement: !ruby/object:Gem::Requirement
@@ -968,14 +940,14 @@ dependencies:
968
940
  requirements:
969
941
  - - "~>"
970
942
  - !ruby/object:Gem::Version
971
- version: '0.7'
943
+ version: '0.8'
972
944
  type: :runtime
973
945
  prerelease: false
974
946
  version_requirements: !ruby/object:Gem::Requirement
975
947
  requirements:
976
948
  - - "~>"
977
949
  - !ruby/object:Gem::Version
978
- version: '0.7'
950
+ version: '0.8'
979
951
  - !ruby/object:Gem::Dependency
980
952
  name: uuidtools
981
953
  requirement: !ruby/object:Gem::Requirement
@@ -1092,6 +1064,7 @@ files:
1092
1064
  - lib/mihari/analyzers/crtsh.rb
1093
1065
  - lib/mihari/analyzers/dnpedia.rb
1094
1066
  - lib/mihari/analyzers/dnstwister.rb
1067
+ - lib/mihari/analyzers/feed.rb
1095
1068
  - lib/mihari/analyzers/greynoise.rb
1096
1069
  - lib/mihari/analyzers/onyphe.rb
1097
1070
  - lib/mihari/analyzers/otx.rb
@@ -1105,35 +1078,15 @@ files:
1105
1078
  - lib/mihari/analyzers/virustotal.rb
1106
1079
  - lib/mihari/analyzers/virustotal_intelligence.rb
1107
1080
  - lib/mihari/analyzers/zoomeye.rb
1108
- - lib/mihari/cli/analyzer.rb
1109
1081
  - lib/mihari/cli/base.rb
1110
1082
  - lib/mihari/cli/init.rb
1111
1083
  - lib/mihari/cli/main.rb
1112
1084
  - lib/mihari/cli/mixins/utils.rb
1113
1085
  - lib/mihari/cli/validator.rb
1114
- - lib/mihari/commands/binaryedge.rb
1115
- - lib/mihari/commands/censys.rb
1116
- - lib/mihari/commands/circl.rb
1117
- - lib/mihari/commands/crtsh.rb
1118
- - lib/mihari/commands/dnpedia.rb
1119
- - lib/mihari/commands/dnstwister.rb
1120
- - lib/mihari/commands/greynoise.rb
1121
1086
  - lib/mihari/commands/init.rb
1122
- - lib/mihari/commands/json.rb
1123
- - lib/mihari/commands/onyphe.rb
1124
- - lib/mihari/commands/otx.rb
1125
- - lib/mihari/commands/passivetotal.rb
1126
- - lib/mihari/commands/pulsedive.rb
1127
1087
  - lib/mihari/commands/search.rb
1128
- - lib/mihari/commands/securitytrails.rb
1129
- - lib/mihari/commands/shodan.rb
1130
- - lib/mihari/commands/spyse.rb
1131
- - lib/mihari/commands/urlscan.rb
1132
1088
  - lib/mihari/commands/validator.rb
1133
- - lib/mihari/commands/virustotal.rb
1134
- - lib/mihari/commands/virustotal_intelligence.rb
1135
1089
  - lib/mihari/commands/web.rb
1136
- - lib/mihari/commands/zoomeye.rb
1137
1090
  - lib/mihari/constants.rb
1138
1091
  - lib/mihari/database.rb
1139
1092
  - lib/mihari/emitters/base.rb
@@ -1146,11 +1099,12 @@ files:
1146
1099
  - lib/mihari/enrichers/base.rb
1147
1100
  - lib/mihari/enrichers/ipinfo.rb
1148
1101
  - lib/mihari/errors.rb
1102
+ - lib/mihari/feed/parser.rb
1103
+ - lib/mihari/feed/reader.rb
1149
1104
  - lib/mihari/mixins/autonomous_system.rb
1150
1105
  - lib/mihari/mixins/configurable.rb
1151
- - lib/mihari/mixins/configuration.rb
1106
+ - lib/mihari/mixins/database.rb
1152
1107
  - lib/mihari/mixins/disallowed_data_value.rb
1153
- - lib/mihari/mixins/hash.rb
1154
1108
  - lib/mihari/mixins/refang.rb
1155
1109
  - lib/mihari/mixins/retriable.rb
1156
1110
  - lib/mihari/mixins/rule.rb
@@ -1160,6 +1114,7 @@ files:
1160
1114
  - lib/mihari/models/dns.rb
1161
1115
  - lib/mihari/models/geolocation.rb
1162
1116
  - lib/mihari/models/reverse_dns.rb
1117
+ - lib/mihari/models/rule.rb
1163
1118
  - lib/mihari/models/tag.rb
1164
1119
  - lib/mihari/models/tagging.rb
1165
1120
  - lib/mihari/models/whois.rb
@@ -1167,7 +1122,6 @@ files:
1167
1122
  - lib/mihari/notifiers/exception_notifier.rb
1168
1123
  - lib/mihari/notifiers/slack.rb
1169
1124
  - lib/mihari/schemas/analyzer.rb
1170
- - lib/mihari/schemas/configuration.rb
1171
1125
  - lib/mihari/schemas/macros.rb
1172
1126
  - lib/mihari/schemas/rule.rb
1173
1127
  - lib/mihari/status.rb
@@ -1176,7 +1130,9 @@ files:
1176
1130
  - lib/mihari/structs/greynoise.rb
1177
1131
  - lib/mihari/structs/ipinfo.rb
1178
1132
  - lib/mihari/structs/onyphe.rb
1133
+ - lib/mihari/structs/rule.rb
1179
1134
  - lib/mihari/structs/shodan.rb
1135
+ - lib/mihari/structs/urlscan.rb
1180
1136
  - lib/mihari/structs/virustotal_intelligence.rb
1181
1137
  - lib/mihari/templates/rule.yml.erb
1182
1138
  - lib/mihari/type_checker.rb
@@ -1189,6 +1145,7 @@ files:
1189
1145
  - lib/mihari/web/endpoints/command.rb
1190
1146
  - lib/mihari/web/endpoints/configs.rb
1191
1147
  - lib/mihari/web/endpoints/ip_addresses.rb
1148
+ - lib/mihari/web/endpoints/rules.rb
1192
1149
  - lib/mihari/web/endpoints/sources.rb
1193
1150
  - lib/mihari/web/endpoints/tags.rb
1194
1151
  - lib/mihari/web/entities/alert.rb
@@ -1201,10 +1158,11 @@ files:
1201
1158
  - lib/mihari/web/entities/ip_address.rb
1202
1159
  - lib/mihari/web/entities/message.rb
1203
1160
  - lib/mihari/web/entities/reverse_dns.rb
1161
+ - lib/mihari/web/entities/rule.rb
1204
1162
  - lib/mihari/web/entities/source.rb
1205
1163
  - lib/mihari/web/entities/tag.rb
1206
1164
  - lib/mihari/web/entities/whois.rb
1207
- - lib/mihari/web/public/grape.rb
1165
+ - lib/mihari/web/middleware/connection_adapter.rb
1208
1166
  - lib/mihari/web/public/index.html
1209
1167
  - lib/mihari/web/public/redoc-static.html
1210
1168
  - lib/mihari/web/public/static/favicon.ico
@@ -1248,6 +1206,10 @@ files:
1248
1206
  - lib/mihari/web/public/static/js/app.365f1907.js.map
1249
1207
  - lib/mihari/web/public/static/js/app.378da3dc.js
1250
1208
  - lib/mihari/web/public/static/js/app.378da3dc.js.map
1209
+ - lib/mihari/web/public/static/js/app.49ab738a.js
1210
+ - lib/mihari/web/public/static/js/app.49ab738a.js.map
1211
+ - lib/mihari/web/public/static/js/app.5dc97aae.js
1212
+ - lib/mihari/web/public/static/js/app.5dc97aae.js.map
1251
1213
  - lib/mihari/web/public/static/js/app.6b636b62.js
1252
1214
  - lib/mihari/web/public/static/js/app.6b636b62.js.map
1253
1215
  - lib/mihari/web/public/static/js/app.8e3e5150.js
@@ -1260,6 +1222,10 @@ files:
1260
1222
  - lib/mihari/web/public/static/js/app.b5914c39.js.map
1261
1223
  - lib/mihari/web/public/static/js/app.cccddb2b.js
1262
1224
  - lib/mihari/web/public/static/js/app.cccddb2b.js.map
1225
+ - lib/mihari/web/public/static/js/app.f2b8890f.js
1226
+ - lib/mihari/web/public/static/js/app.f2b8890f.js.map
1227
+ - lib/mihari/web/public/static/js/app.fbc19869.js
1228
+ - lib/mihari/web/public/static/js/app.fbc19869.js.map
1263
1229
  - mihari.gemspec
1264
1230
  - renovate.json
1265
1231
  - sig/lib/mihari.rbs
@@ -1271,6 +1237,7 @@ files:
1271
1237
  - sig/lib/mihari/analyzers/crtsh.rbs
1272
1238
  - sig/lib/mihari/analyzers/dnpedia.rbs
1273
1239
  - sig/lib/mihari/analyzers/dnstwister.rbs
1240
+ - sig/lib/mihari/analyzers/feed.rbs
1274
1241
  - sig/lib/mihari/analyzers/onyphe.rbs
1275
1242
  - sig/lib/mihari/analyzers/otx.rbs
1276
1243
  - sig/lib/mihari/analyzers/passivetotal.rbs
@@ -1283,33 +1250,16 @@ files:
1283
1250
  - sig/lib/mihari/analyzers/virustotal.rbs
1284
1251
  - sig/lib/mihari/analyzers/virustotal_intelligence.rbs
1285
1252
  - sig/lib/mihari/analyzers/zoomeye.rbs
1286
- - sig/lib/mihari/cli/analyzer.rbs
1287
1253
  - sig/lib/mihari/cli/base.rbs
1288
1254
  - sig/lib/mihari/cli/init.rbs
1289
1255
  - sig/lib/mihari/cli/main.rbs
1290
1256
  - sig/lib/mihari/cli/mixins/utils.rbs
1291
1257
  - sig/lib/mihari/cli/validator.rbs
1292
- - sig/lib/mihari/commands/binaryedge.rbs
1293
- - sig/lib/mihari/commands/censys.rbs
1294
- - sig/lib/mihari/commands/circl.rbs
1295
- - sig/lib/mihari/commands/crtsh.rbs
1296
- - sig/lib/mihari/commands/dnpedia.rbs
1297
- - sig/lib/mihari/commands/dnstwister.rbs
1298
1258
  - sig/lib/mihari/commands/init.rbs
1299
1259
  - sig/lib/mihari/commands/json.rbs
1300
- - sig/lib/mihari/commands/onyphe.rbs
1301
- - sig/lib/mihari/commands/otx.rbs
1302
- - sig/lib/mihari/commands/passivetotal.rbs
1303
- - sig/lib/mihari/commands/pulsedive.rbs
1304
1260
  - sig/lib/mihari/commands/search.rbs
1305
- - sig/lib/mihari/commands/securitytrails.rbs
1306
- - sig/lib/mihari/commands/shodan.rbs
1307
- - sig/lib/mihari/commands/spyse.rbs
1308
- - sig/lib/mihari/commands/urlscan.rbs
1309
1261
  - sig/lib/mihari/commands/validator.rbs
1310
- - sig/lib/mihari/commands/virustotal.rbs
1311
1262
  - sig/lib/mihari/commands/web.rbs
1312
- - sig/lib/mihari/commands/zoomeye.rbs
1313
1263
  - sig/lib/mihari/constants.rbs
1314
1264
  - sig/lib/mihari/database.rbs
1315
1265
  - sig/lib/mihari/emitters/base.rbs
@@ -1322,6 +1272,8 @@ files:
1322
1272
  - sig/lib/mihari/enrichers/base.rbs
1323
1273
  - sig/lib/mihari/enrichers/ipinfo.rbs
1324
1274
  - sig/lib/mihari/errors.rbs
1275
+ - sig/lib/mihari/feed/parser.rbs
1276
+ - sig/lib/mihari/feed/reader.rbs
1325
1277
  - sig/lib/mihari/mixins/autonomous_system.rbs
1326
1278
  - sig/lib/mihari/mixins/configurable.rbs
1327
1279
  - sig/lib/mihari/mixins/configuration.rbs
@@ -1336,6 +1288,7 @@ files:
1336
1288
  - sig/lib/mihari/models/dns.rbs
1337
1289
  - sig/lib/mihari/models/geolocation.rbs
1338
1290
  - sig/lib/mihari/models/reverse_dns.rbs
1291
+ - sig/lib/mihari/models/rule.rbs
1339
1292
  - sig/lib/mihari/models/tag.rbs
1340
1293
  - sig/lib/mihari/models/tagging.rbs
1341
1294
  - sig/lib/mihari/models/whois.rbs
@@ -1348,7 +1301,9 @@ files:
1348
1301
  - sig/lib/mihari/structs/greynoise.rbs
1349
1302
  - sig/lib/mihari/structs/ipinfo.rbs
1350
1303
  - sig/lib/mihari/structs/onyphe.rbs
1304
+ - sig/lib/mihari/structs/rule.rbs
1351
1305
  - sig/lib/mihari/structs/shodan.rbs
1306
+ - sig/lib/mihari/structs/urlscan.rbs
1352
1307
  - sig/lib/mihari/structs/virustotal_intelligence.rbs
1353
1308
  - sig/lib/mihari/type_checker.rbs
1354
1309
  - sig/lib/mihari/types.rbs