mihari 7.3.2 → 7.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (131) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +8 -0
  3. data/.rubocop.yml +0 -2
  4. data/.shadowenv.d/.gitignore +2 -0
  5. data/.shadowenv.d/000_unset_all.lisp +39 -0
  6. data/README.md +0 -8
  7. data/lib/mihari/analyzers/base.rb +2 -2
  8. data/lib/mihari/analyzers/binaryedge.rb +5 -5
  9. data/lib/mihari/analyzers/censys.rb +6 -6
  10. data/lib/mihari/analyzers/circl.rb +2 -2
  11. data/lib/mihari/analyzers/crtsh.rb +3 -3
  12. data/lib/mihari/analyzers/dnstwister.rb +2 -2
  13. data/lib/mihari/analyzers/feed.rb +12 -18
  14. data/lib/mihari/analyzers/fofa.rb +6 -6
  15. data/lib/mihari/analyzers/greynoise.rb +5 -5
  16. data/lib/mihari/analyzers/hunterhow.rb +4 -4
  17. data/lib/mihari/analyzers/onyphe.rb +5 -5
  18. data/lib/mihari/analyzers/otx.rb +2 -2
  19. data/lib/mihari/analyzers/passivetotal.rb +3 -3
  20. data/lib/mihari/analyzers/pulsedive.rb +3 -3
  21. data/lib/mihari/analyzers/securitytrails.rb +4 -4
  22. data/lib/mihari/analyzers/shodan.rb +5 -5
  23. data/lib/mihari/analyzers/urlscan.rb +5 -5
  24. data/lib/mihari/analyzers/virustotal.rb +4 -4
  25. data/lib/mihari/analyzers/virustotal_intelligence.rb +5 -5
  26. data/lib/mihari/analyzers/zoomeye.rb +5 -5
  27. data/lib/mihari/cli/application.rb +1 -1
  28. data/lib/mihari/clients/base.rb +7 -6
  29. data/lib/mihari/clients/binaryedge.rb +6 -6
  30. data/lib/mihari/clients/censys.rb +4 -4
  31. data/lib/mihari/clients/circl.rb +2 -2
  32. data/lib/mihari/clients/crtsh.rb +2 -2
  33. data/lib/mihari/clients/dnstwister.rb +1 -1
  34. data/lib/mihari/clients/fofa.rb +4 -4
  35. data/lib/mihari/clients/google_public_dns.rb +2 -2
  36. data/lib/mihari/clients/greynoise.rb +4 -4
  37. data/lib/mihari/clients/hunterhow.rb +10 -10
  38. data/lib/mihari/clients/misp.rb +1 -1
  39. data/lib/mihari/clients/mmdb.rb +1 -1
  40. data/lib/mihari/clients/onyphe.rb +4 -4
  41. data/lib/mihari/clients/otx.rb +1 -1
  42. data/lib/mihari/clients/passivetotal.rb +5 -5
  43. data/lib/mihari/clients/publsedive.rb +3 -3
  44. data/lib/mihari/clients/securitytrails.rb +6 -6
  45. data/lib/mihari/clients/shodan.rb +6 -6
  46. data/lib/mihari/clients/shodan_internet_db.rb +1 -1
  47. data/lib/mihari/clients/the_hive.rb +2 -2
  48. data/lib/mihari/clients/urlscan.rb +4 -4
  49. data/lib/mihari/clients/virustotal.rb +4 -4
  50. data/lib/mihari/clients/whois.rb +118 -0
  51. data/lib/mihari/clients/yeti.rb +38 -0
  52. data/lib/mihari/clients/zoomeye.rb +12 -12
  53. data/lib/mihari/commands/alert.rb +1 -1
  54. data/lib/mihari/commands/artifact.rb +1 -1
  55. data/lib/mihari/commands/rule.rb +1 -1
  56. data/lib/mihari/commands/tag.rb +1 -1
  57. data/lib/mihari/concerns/autonomous_system_normalizable.rb +1 -4
  58. data/lib/mihari/concerns/configurable.rb +1 -1
  59. data/lib/mihari/concerns/database_connectable.rb +2 -2
  60. data/lib/mihari/concerns/retriable.rb +1 -1
  61. data/lib/mihari/config.rb +14 -2
  62. data/lib/mihari/constants.rb +2 -2
  63. data/lib/mihari/data_type.rb +1 -3
  64. data/lib/mihari/emitters/base.rb +2 -2
  65. data/lib/mihari/emitters/database.rb +1 -1
  66. data/lib/mihari/emitters/misp.rb +12 -4
  67. data/lib/mihari/emitters/slack.rb +9 -9
  68. data/lib/mihari/emitters/the_hive.rb +9 -4
  69. data/lib/mihari/emitters/webhook.rb +4 -4
  70. data/lib/mihari/emitters/yeti.rb +107 -0
  71. data/lib/mihari/enrichers/base.rb +1 -1
  72. data/lib/mihari/enrichers/google_public_dns.rb +1 -1
  73. data/lib/mihari/enrichers/mmdb.rb +1 -1
  74. data/lib/mihari/enrichers/shodan.rb +3 -3
  75. data/lib/mihari/enrichers/whois.rb +6 -91
  76. data/lib/mihari/entities/alert.rb +6 -6
  77. data/lib/mihari/entities/artifact.rb +17 -17
  78. data/lib/mihari/entities/autonomous_system.rb +1 -1
  79. data/lib/mihari/entities/config.rb +8 -4
  80. data/lib/mihari/entities/cpe.rb +2 -2
  81. data/lib/mihari/entities/dns.rb +3 -3
  82. data/lib/mihari/entities/geolocation.rb +3 -3
  83. data/lib/mihari/entities/ip_address.rb +3 -3
  84. data/lib/mihari/entities/messages.rb +3 -3
  85. data/lib/mihari/entities/pagination.rb +3 -3
  86. data/lib/mihari/entities/port.rb +2 -2
  87. data/lib/mihari/entities/reverse_dns.rb +2 -2
  88. data/lib/mihari/entities/rule.rb +8 -8
  89. data/lib/mihari/entities/tag.rb +3 -3
  90. data/lib/mihari/entities/vulnerability.rb +2 -2
  91. data/lib/mihari/entities/whois.rb +7 -7
  92. data/lib/mihari/errors.rb +1 -1
  93. data/lib/mihari/models/artifact.rb +2 -2
  94. data/lib/mihari/models/port.rb +1 -1
  95. data/lib/mihari/models/tag.rb +3 -0
  96. data/lib/mihari/rule.rb +10 -14
  97. data/lib/mihari/schemas/emitter.rb +9 -0
  98. data/lib/mihari/services/feed.rb +3 -3
  99. data/lib/mihari/services/getters.rb +1 -1
  100. data/lib/mihari/services/proxies.rb +1 -1
  101. data/lib/mihari/services/renderer.rb +2 -0
  102. data/lib/mihari/services/searchers.rb +1 -1
  103. data/lib/mihari/sidekiq/application.rb +2 -2
  104. data/lib/mihari/structs/censys.rb +4 -4
  105. data/lib/mihari/structs/google_public_dns.rb +3 -3
  106. data/lib/mihari/structs/greynoise.rb +2 -2
  107. data/lib/mihari/structs/onyphe.rb +3 -3
  108. data/lib/mihari/structs/shodan.rb +10 -10
  109. data/lib/mihari/structs/urlscan.rb +1 -1
  110. data/lib/mihari/structs/virustotal_intelligence.rb +2 -2
  111. data/lib/mihari/version.rb +1 -1
  112. data/lib/mihari/web/api.rb +1 -1
  113. data/lib/mihari/web/application.rb +1 -1
  114. data/lib/mihari/web/endpoints/alerts.rb +12 -12
  115. data/lib/mihari/web/endpoints/artifacts.rb +11 -11
  116. data/lib/mihari/web/endpoints/configs.rb +7 -2
  117. data/lib/mihari/web/endpoints/ip_addresses.rb +5 -5
  118. data/lib/mihari/web/endpoints/rules.rb +26 -26
  119. data/lib/mihari/web/endpoints/tags.rb +4 -4
  120. data/lib/mihari/web/public/assets/{index-ReF8ffd-.css → index-80oZkhZG.css} +1 -1
  121. data/lib/mihari/web/public/assets/index-BNLbw8nG.js +1783 -0
  122. data/lib/mihari/web/public/index.html +2 -2
  123. data/lib/mihari/web/public/redoc-static.html +2 -2
  124. data/lib/mihari.rb +4 -1
  125. data/mihari.gemspec +19 -19
  126. data/renovate.json +1 -3
  127. data/requirements.txt +1 -1
  128. metadata +48 -44
  129. data/.standard.yml +0 -4
  130. data/lib/mihari/web/public/assets/index-lRP933ks.js +0 -1787
  131. /data/lib/mihari/web/public/assets/{mode-yaml-BC4MIiYj.js → mode-yaml-ELgwiJiP.js} +0 -0
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: 7.3.2
4
+ version: 7.5.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: 2024-01-26 00:00:00.000000000 Z
11
+ date: 2024-03-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: better_errors
@@ -58,14 +58,14 @@ dependencies:
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '3.39'
61
+ version: '3.40'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: '3.39'
68
+ version: '3.40'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: coveralls_reborn
71
71
  requirement: !ruby/object:Gem::Requirement
@@ -226,14 +226,14 @@ dependencies:
226
226
  requirements:
227
227
  - - "~>"
228
228
  - !ruby/object:Gem::Version
229
- version: '3.12'
229
+ version: '3.13'
230
230
  type: :development
231
231
  prerelease: false
232
232
  version_requirements: !ruby/object:Gem::Requirement
233
233
  requirements:
234
234
  - - "~>"
235
235
  - !ruby/object:Gem::Version
236
- version: '3.12'
236
+ version: '3.13'
237
237
  - !ruby/object:Gem::Dependency
238
238
  name: rspec-parameterized
239
239
  requirement: !ruby/object:Gem::Requirement
@@ -282,14 +282,14 @@ dependencies:
282
282
  requirements:
283
283
  - - "~>"
284
284
  - !ruby/object:Gem::Version
285
- version: '2.26'
285
+ version: '2.27'
286
286
  type: :development
287
287
  prerelease: false
288
288
  version_requirements: !ruby/object:Gem::Requirement
289
289
  requirements:
290
290
  - - "~>"
291
291
  - !ruby/object:Gem::Version
292
- version: '2.26'
292
+ version: '2.27'
293
293
  - !ruby/object:Gem::Dependency
294
294
  name: rubocop-yard
295
295
  requirement: !ruby/object:Gem::Requirement
@@ -324,14 +324,14 @@ dependencies:
324
324
  requirements:
325
325
  - - "~>"
326
326
  - !ruby/object:Gem::Version
327
- version: '1.33'
327
+ version: '1.35'
328
328
  type: :development
329
329
  prerelease: false
330
330
  version_requirements: !ruby/object:Gem::Requirement
331
331
  requirements:
332
332
  - - "~>"
333
333
  - !ruby/object:Gem::Version
334
- version: '1.33'
334
+ version: '1.35'
335
335
  - !ruby/object:Gem::Dependency
336
336
  name: test-prof
337
337
  requirement: !ruby/object:Gem::Requirement
@@ -380,28 +380,28 @@ dependencies:
380
380
  requirements:
381
381
  - - "~>"
382
382
  - !ruby/object:Gem::Version
383
- version: '3.19'
383
+ version: '3.23'
384
384
  type: :development
385
385
  prerelease: false
386
386
  version_requirements: !ruby/object:Gem::Requirement
387
387
  requirements:
388
388
  - - "~>"
389
389
  - !ruby/object:Gem::Version
390
- version: '3.19'
390
+ version: '3.23'
391
391
  - !ruby/object:Gem::Dependency
392
392
  name: activerecord
393
393
  requirement: !ruby/object:Gem::Requirement
394
394
  requirements:
395
395
  - - '='
396
396
  - !ruby/object:Gem::Version
397
- version: 7.1.3
397
+ version: 7.1.3.2
398
398
  type: :runtime
399
399
  prerelease: false
400
400
  version_requirements: !ruby/object:Gem::Requirement
401
401
  requirements:
402
402
  - - '='
403
403
  - !ruby/object:Gem::Version
404
- version: 7.1.3
404
+ version: 7.1.3.2
405
405
  - !ruby/object:Gem::Dependency
406
406
  name: addressable
407
407
  requirement: !ruby/object:Gem::Requirement
@@ -422,14 +422,14 @@ dependencies:
422
422
  requirements:
423
423
  - - '='
424
424
  - !ruby/object:Gem::Version
425
- version: 2.6.2
425
+ version: 2.6.3
426
426
  type: :runtime
427
427
  prerelease: false
428
428
  version_requirements: !ruby/object:Gem::Requirement
429
429
  requirements:
430
430
  - - '='
431
431
  - !ruby/object:Gem::Version
432
- version: 2.6.2
432
+ version: 2.6.3
433
433
  - !ruby/object:Gem::Dependency
434
434
  name: awrence
435
435
  requirement: !ruby/object:Gem::Requirement
@@ -464,14 +464,14 @@ dependencies:
464
464
  requirements:
465
465
  - - '='
466
466
  - !ruby/object:Gem::Version
467
- version: 2.8.1
467
+ version: 3.1.0
468
468
  type: :runtime
469
469
  prerelease: false
470
470
  version_requirements: !ruby/object:Gem::Requirement
471
471
  requirements:
472
472
  - - '='
473
473
  - !ruby/object:Gem::Version
474
- version: 2.8.1
474
+ version: 3.1.0
475
475
  - !ruby/object:Gem::Dependency
476
476
  name: dry-container
477
477
  requirement: !ruby/object:Gem::Requirement
@@ -604,42 +604,42 @@ dependencies:
604
604
  requirements:
605
605
  - - '='
606
606
  - !ruby/object:Gem::Version
607
- version: 2.0.1
607
+ version: 2.0.2
608
608
  type: :runtime
609
609
  prerelease: false
610
610
  version_requirements: !ruby/object:Gem::Requirement
611
611
  requirements:
612
612
  - - '='
613
613
  - !ruby/object:Gem::Version
614
- version: 2.0.1
614
+ version: 2.0.2
615
615
  - !ruby/object:Gem::Dependency
616
616
  name: grape-swagger-entity
617
617
  requirement: !ruby/object:Gem::Requirement
618
618
  requirements:
619
619
  - - '='
620
620
  - !ruby/object:Gem::Version
621
- version: 0.5.2
621
+ version: 0.5.3
622
622
  type: :runtime
623
623
  prerelease: false
624
624
  version_requirements: !ruby/object:Gem::Requirement
625
625
  requirements:
626
626
  - - '='
627
627
  - !ruby/object:Gem::Version
628
- version: 0.5.2
628
+ version: 0.5.3
629
629
  - !ruby/object:Gem::Dependency
630
630
  name: http
631
631
  requirement: !ruby/object:Gem::Requirement
632
632
  requirements:
633
633
  - - '='
634
634
  - !ruby/object:Gem::Version
635
- version: 5.1.1
635
+ version: 5.2.0
636
636
  type: :runtime
637
637
  prerelease: false
638
638
  version_requirements: !ruby/object:Gem::Requirement
639
639
  requirements:
640
640
  - - '='
641
641
  - !ruby/object:Gem::Version
642
- version: 5.1.1
642
+ version: 5.2.0
643
643
  - !ruby/object:Gem::Dependency
644
644
  name: jbuilder
645
645
  requirement: !ruby/object:Gem::Requirement
@@ -674,14 +674,14 @@ dependencies:
674
674
  requirements:
675
675
  - - '='
676
676
  - !ruby/object:Gem::Version
677
- version: 2.5.2
677
+ version: 3.0.0
678
678
  type: :runtime
679
679
  prerelease: false
680
680
  version_requirements: !ruby/object:Gem::Requirement
681
681
  requirements:
682
682
  - - '='
683
683
  - !ruby/object:Gem::Version
684
- version: 2.5.2
684
+ version: 3.0.0
685
685
  - !ruby/object:Gem::Dependency
686
686
  name: memo_wise
687
687
  requirement: !ruby/object:Gem::Requirement
@@ -772,28 +772,28 @@ dependencies:
772
772
  requirements:
773
773
  - - '='
774
774
  - !ruby/object:Gem::Version
775
- version: 3.0.8
775
+ version: 3.0.10
776
776
  type: :runtime
777
777
  prerelease: false
778
778
  version_requirements: !ruby/object:Gem::Requirement
779
779
  requirements:
780
780
  - - '='
781
781
  - !ruby/object:Gem::Version
782
- version: 3.0.8
782
+ version: 3.0.10
783
783
  - !ruby/object:Gem::Dependency
784
784
  name: rack-cors
785
785
  requirement: !ruby/object:Gem::Requirement
786
786
  requirements:
787
787
  - - '='
788
788
  - !ruby/object:Gem::Version
789
- version: 2.0.1
789
+ version: 2.0.2
790
790
  type: :runtime
791
791
  prerelease: false
792
792
  version_requirements: !ruby/object:Gem::Requirement
793
793
  requirements:
794
794
  - - '='
795
795
  - !ruby/object:Gem::Version
796
- version: 2.0.1
796
+ version: 2.0.2
797
797
  - !ruby/object:Gem::Dependency
798
798
  name: rack-session
799
799
  requirement: !ruby/object:Gem::Requirement
@@ -828,14 +828,14 @@ dependencies:
828
828
  requirements:
829
829
  - - '='
830
830
  - !ruby/object:Gem::Version
831
- version: 1.2.3
831
+ version: 1.3.0
832
832
  type: :runtime
833
833
  prerelease: false
834
834
  version_requirements: !ruby/object:Gem::Requirement
835
835
  requirements:
836
836
  - - '='
837
837
  - !ruby/object:Gem::Version
838
- version: 1.2.3
838
+ version: 1.3.0
839
839
  - !ruby/object:Gem::Dependency
840
840
  name: semantic_logger
841
841
  requirement: !ruby/object:Gem::Requirement
@@ -856,42 +856,42 @@ dependencies:
856
856
  requirements:
857
857
  - - "~>"
858
858
  - !ruby/object:Gem::Version
859
- version: '5.16'
859
+ version: '5.17'
860
860
  type: :runtime
861
861
  prerelease: false
862
862
  version_requirements: !ruby/object:Gem::Requirement
863
863
  requirements:
864
864
  - - "~>"
865
865
  - !ruby/object:Gem::Version
866
- version: '5.16'
866
+ version: '5.17'
867
867
  - !ruby/object:Gem::Dependency
868
868
  name: sentry-sidekiq
869
869
  requirement: !ruby/object:Gem::Requirement
870
870
  requirements:
871
871
  - - "~>"
872
872
  - !ruby/object:Gem::Version
873
- version: '5.16'
873
+ version: '5.17'
874
874
  type: :runtime
875
875
  prerelease: false
876
876
  version_requirements: !ruby/object:Gem::Requirement
877
877
  requirements:
878
878
  - - "~>"
879
879
  - !ruby/object:Gem::Version
880
- version: '5.16'
880
+ version: '5.17'
881
881
  - !ruby/object:Gem::Dependency
882
882
  name: sidekiq
883
883
  requirement: !ruby/object:Gem::Requirement
884
884
  requirements:
885
885
  - - '='
886
886
  - !ruby/object:Gem::Version
887
- version: 7.2.1
887
+ version: 7.2.2
888
888
  type: :runtime
889
889
  prerelease: false
890
890
  version_requirements: !ruby/object:Gem::Requirement
891
891
  requirements:
892
892
  - - '='
893
893
  - !ruby/object:Gem::Version
894
- version: 7.2.1
894
+ version: 7.2.2
895
895
  - !ruby/object:Gem::Dependency
896
896
  name: slack-notifier
897
897
  requirement: !ruby/object:Gem::Requirement
@@ -926,14 +926,14 @@ dependencies:
926
926
  requirements:
927
927
  - - '='
928
928
  - !ruby/object:Gem::Version
929
- version: 1.3.0
929
+ version: 1.3.1
930
930
  type: :runtime
931
931
  prerelease: false
932
932
  version_requirements: !ruby/object:Gem::Requirement
933
933
  requirements:
934
934
  - - '='
935
935
  - !ruby/object:Gem::Version
936
- version: 1.3.0
936
+ version: 1.3.1
937
937
  - !ruby/object:Gem::Dependency
938
938
  name: thor-hollaback
939
939
  requirement: !ruby/object:Gem::Requirement
@@ -1029,7 +1029,8 @@ files:
1029
1029
  - ".gitignore"
1030
1030
  - ".rspec"
1031
1031
  - ".rubocop.yml"
1032
- - ".standard.yml"
1032
+ - ".shadowenv.d/.gitignore"
1033
+ - ".shadowenv.d/000_unset_all.lisp"
1033
1034
  - Dockerfile
1034
1035
  - Gemfile
1035
1036
  - LICENSE
@@ -1094,6 +1095,8 @@ files:
1094
1095
  - lib/mihari/clients/the_hive.rb
1095
1096
  - lib/mihari/clients/urlscan.rb
1096
1097
  - lib/mihari/clients/virustotal.rb
1098
+ - lib/mihari/clients/whois.rb
1099
+ - lib/mihari/clients/yeti.rb
1097
1100
  - lib/mihari/clients/zoomeye.rb
1098
1101
  - lib/mihari/commands/alert.rb
1099
1102
  - lib/mihari/commands/artifact.rb
@@ -1123,6 +1126,7 @@ files:
1123
1126
  - lib/mihari/emitters/slack.rb
1124
1127
  - lib/mihari/emitters/the_hive.rb
1125
1128
  - lib/mihari/emitters/webhook.rb
1129
+ - lib/mihari/emitters/yeti.rb
1126
1130
  - lib/mihari/enrichers/base.rb
1127
1131
  - lib/mihari/enrichers/google_public_dns.rb
1128
1132
  - lib/mihari/enrichers/mmdb.rb
@@ -1207,9 +1211,9 @@ files:
1207
1211
  - lib/mihari/web/endpoints/tags.rb
1208
1212
  - lib/mihari/web/middleware/capture_exceptions.rb
1209
1213
  - lib/mihari/web/middleware/connection.rb
1210
- - lib/mihari/web/public/assets/index-ReF8ffd-.css
1211
- - lib/mihari/web/public/assets/index-lRP933ks.js
1212
- - lib/mihari/web/public/assets/mode-yaml-BC4MIiYj.js
1214
+ - lib/mihari/web/public/assets/index-80oZkhZG.css
1215
+ - lib/mihari/web/public/assets/index-BNLbw8nG.js
1216
+ - lib/mihari/web/public/assets/mode-yaml-ELgwiJiP.js
1213
1217
  - lib/mihari/web/public/favicon.ico
1214
1218
  - lib/mihari/web/public/index.html
1215
1219
  - lib/mihari/web/public/redoc-static.html
data/.standard.yml DELETED
@@ -1,4 +0,0 @@
1
- ignore:
2
- - "**/*":
3
- - Layout/SpaceInsideHashLiteralBraces
4
- - Style/RescueStandardError