mihari 4.7.1 → 4.7.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (46) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/test.yml +1 -0
  3. data/lib/mihari/analyzers/rule.rb +0 -1
  4. data/lib/mihari/commands/init.rb +25 -2
  5. data/lib/mihari/commands/search.rb +2 -7
  6. data/lib/mihari/commands/validator.rb +10 -5
  7. data/lib/mihari/errors.rb +2 -0
  8. data/lib/mihari/models/alert.rb +6 -1
  9. data/lib/mihari/models/geolocation.rb +2 -4
  10. data/lib/mihari/models/port.rb +1 -1
  11. data/lib/mihari/models/rule.rb +7 -2
  12. data/lib/mihari/schemas/rule.rb +5 -0
  13. data/lib/mihari/structs/filters.rb +71 -0
  14. data/lib/mihari/structs/ipinfo.rb +4 -4
  15. data/lib/mihari/structs/rule.rb +188 -144
  16. data/lib/mihari/version.rb +1 -1
  17. data/lib/mihari/web/endpoints/alerts.rb +1 -1
  18. data/lib/mihari/web/endpoints/rules.rb +13 -4
  19. data/lib/mihari/web/public/index.html +1 -1
  20. data/lib/mihari/web/public/redoc-static.html +796 -763
  21. data/lib/mihari/web/public/static/css/chunk-vendors.5013d549.css +7 -0
  22. data/lib/mihari/web/public/static/js/app.524d9ed2.js +2 -0
  23. data/lib/mihari/web/public/static/js/app.524d9ed2.js.map +1 -0
  24. data/lib/mihari/web/public/static/js/{chunk-vendors.dde2116c.js → chunk-vendors.64580a1f.js} +7 -7
  25. data/lib/mihari/web/public/static/js/chunk-vendors.64580a1f.js.map +1 -0
  26. data/lib/mihari.rb +1 -2
  27. data/mihari.gemspec +16 -16
  28. data/sig/lib/mihari/cli/base.rbs +0 -2
  29. data/sig/lib/mihari/models/alert.rbs +3 -3
  30. data/sig/lib/mihari/models/rule.rbs +2 -2
  31. data/sig/lib/mihari/structs/filters.rbs +40 -0
  32. data/sig/lib/mihari/structs/ipinfo.rbs +2 -2
  33. data/sig/lib/mihari/structs/rule.rbs +36 -43
  34. metadata +41 -47
  35. data/lib/mihari/mixins/rule.rb +0 -84
  36. data/lib/mihari/structs/alert.rb +0 -44
  37. data/lib/mihari/web/public/static/css/chunk-vendors.06251949.css +0 -7
  38. data/lib/mihari/web/public/static/js/app-legacy.9d5c9c3d.js +0 -2
  39. data/lib/mihari/web/public/static/js/app-legacy.9d5c9c3d.js.map +0 -1
  40. data/lib/mihari/web/public/static/js/app.823b5af7.js +0 -2
  41. data/lib/mihari/web/public/static/js/app.823b5af7.js.map +0 -1
  42. data/lib/mihari/web/public/static/js/chunk-vendors-legacy.b110c129.js +0 -25
  43. data/lib/mihari/web/public/static/js/chunk-vendors-legacy.b110c129.js.map +0 -1
  44. data/lib/mihari/web/public/static/js/chunk-vendors.dde2116c.js.map +0 -1
  45. data/sig/lib/mihari/mixins/rule.rbs +0 -36
  46. data/sig/lib/mihari/structs/alert.rbs +0 -27
data/lib/mihari.rb CHANGED
@@ -59,7 +59,6 @@ require "mihari/mixins/disallowed_data_value"
59
59
  require "mihari/mixins/error_notification"
60
60
  require "mihari/mixins/refang"
61
61
  require "mihari/mixins/retriable"
62
- require "mihari/mixins/rule"
63
62
 
64
63
  def truthy?(value)
65
64
  return true if value == "true"
@@ -171,8 +170,8 @@ require "mihari/constants"
171
170
  require "mihari/types"
172
171
 
173
172
  # Structs
174
- require "mihari/structs/alert"
175
173
  require "mihari/structs/censys"
174
+ require "mihari/structs/filters"
176
175
  require "mihari/structs/google_public_dns"
177
176
  require "mihari/structs/greynoise"
178
177
  require "mihari/structs/ipinfo"
data/mihari.gemspec CHANGED
@@ -29,23 +29,23 @@ Gem::Specification.new do |spec|
29
29
 
30
30
  spec.add_development_dependency "bundler", "~> 2.3"
31
31
  spec.add_development_dependency "coveralls_reborn", "~> 0.24"
32
- spec.add_development_dependency "fakefs", "~> 1.5"
32
+ spec.add_development_dependency "fakefs", "~> 1.8"
33
33
  spec.add_development_dependency "mysql2", "~> 0.5"
34
34
  spec.add_development_dependency "overcommit", "~> 0.59"
35
- spec.add_development_dependency "pg", "~> 1.3"
36
- spec.add_development_dependency "rack-test", "~> 1.1"
35
+ spec.add_development_dependency "pg", "~> 1.4"
36
+ spec.add_development_dependency "rack-test", "~> 2.0"
37
37
  spec.add_development_dependency "rake", "~> 13.0"
38
38
  spec.add_development_dependency "rb-fsevent", "~> 0.11"
39
39
  spec.add_development_dependency "rerun", "~> 0.13"
40
40
  spec.add_development_dependency "rspec", "~> 3.11"
41
41
  spec.add_development_dependency "simplecov-lcov", "~> 0.8.0"
42
- spec.add_development_dependency "standard", "~> 1.12"
43
- spec.add_development_dependency "steep", "~> 1.0"
42
+ spec.add_development_dependency "standard", "~> 1.14"
43
+ spec.add_development_dependency "steep", "~> 1.1"
44
44
  spec.add_development_dependency "timecop", "~> 0.9"
45
45
  spec.add_development_dependency "vcr", "~> 6.1"
46
46
  spec.add_development_dependency "webmock", "~> 3.14"
47
47
 
48
- spec.add_dependency "activerecord", "7.0.3"
48
+ spec.add_dependency "activerecord", "7.0.3.1"
49
49
  spec.add_dependency "addressable", "2.8.0"
50
50
  spec.add_dependency "awrence", "2.0.1"
51
51
  spec.add_dependency "binaryedge", "0.1.0"
@@ -53,23 +53,23 @@ Gem::Specification.new do |spec|
53
53
  spec.add_dependency "crtsh-rb", "0.3.1"
54
54
  spec.add_dependency "dnpedia", "0.1.0"
55
55
  spec.add_dependency "dnstwister", "0.1.0"
56
- spec.add_dependency "dotenv", "2.7.6"
56
+ spec.add_dependency "dotenv", "2.8.1"
57
57
  spec.add_dependency "dry-configurable", "0.15.0"
58
- spec.add_dependency "dry-container", "0.9.0"
59
- spec.add_dependency "dry-files", "0.1.0"
58
+ spec.add_dependency "dry-container", "0.10.1"
59
+ spec.add_dependency "dry-files", "0.2.0"
60
60
  spec.add_dependency "dry-initializer", "3.1.1"
61
- spec.add_dependency "dry-schema", "1.9.2"
61
+ spec.add_dependency "dry-schema", "1.9.3"
62
62
  spec.add_dependency "dry-struct", "1.4.0"
63
63
  spec.add_dependency "dry-validation", "1.8.1"
64
- spec.add_dependency "email_address", "0.2.3"
64
+ spec.add_dependency "email_address", "0.2.4"
65
65
  spec.add_dependency "grape", "1.6.2"
66
- spec.add_dependency "grape-entity", "0.10.1"
67
- spec.add_dependency "grape-swagger", "1.4.2"
66
+ spec.add_dependency "grape-entity", "0.10.2"
67
+ spec.add_dependency "grape-swagger", "1.5.0"
68
68
  spec.add_dependency "grape-swagger-entity", "0.5.1"
69
69
  spec.add_dependency "greynoise", "0.1.1"
70
70
  spec.add_dependency "hachi", "2.0.0"
71
71
  spec.add_dependency "insensitive_hash", "0.3.3"
72
- spec.add_dependency "jr-cli", "0.5.1"
72
+ spec.add_dependency "jr-cli", "0.6.0"
73
73
  spec.add_dependency "launchy", "2.5.0"
74
74
  spec.add_dependency "memist", "2.0.2"
75
75
  spec.add_dependency "misp", "0.1.4"
@@ -83,12 +83,12 @@ Gem::Specification.new do |spec|
83
83
  spec.add_dependency "public_suffix", "4.0.7"
84
84
  spec.add_dependency "pulsedive", "0.1.5"
85
85
  spec.add_dependency "puma", "5.6.4"
86
- spec.add_dependency "rack", "2.2.3.1"
86
+ spec.add_dependency "rack", "2.2.4"
87
87
  spec.add_dependency "rack-contrib", "2.3.0"
88
88
  spec.add_dependency "rack-cors", "1.1.1"
89
89
  spec.add_dependency "securitytrails", "1.0.0"
90
90
  spec.add_dependency "semantic_logger", "4.11.0"
91
- spec.add_dependency "sentry-ruby", "5.3.1"
91
+ spec.add_dependency "sentry-ruby", "5.4.1"
92
92
  spec.add_dependency "shodanx", "0.2.1"
93
93
  spec.add_dependency "slack-notifier", "2.4.0"
94
94
  spec.add_dependency "spysex", "0.2.0"
@@ -3,8 +3,6 @@ module Mihari
3
3
  class Base
4
4
  include Mihari::Mixins::Hash
5
5
 
6
- include Mihari::CLI::Mixins::Utils
7
-
8
6
  def self.exit_on_failure?: () -> ::TrueClass
9
7
  end
10
8
  end
@@ -7,12 +7,12 @@ module Mihari
7
7
  attr_accessor artifacts(): Array[Mihari::Artifact]
8
8
  attr_accessor Tags(): Array[Mihari::Tag]
9
9
 
10
- def self.search: (Mihari::Structs::Alert::SearchFilterWithPagination filter) -> Array[Mihari::Alert]
10
+ def self.search: (Mihari::Structs::Filters::Alert::SearchFilterWithPagination filter) -> Array[Mihari::Alert]
11
11
 
12
- def self.count: (Mihari::Structs::Alert::SearchFilter filter) -> Integer
12
+ def self.count: (Mihari::Structs::Filters::Alert::SearchFilter filter) -> Integer
13
13
 
14
14
  private
15
15
 
16
- def self.build_relation: (Mihari::Structs::Alert::SearchFilter filter) -> Mihari::Alert
16
+ def self.build_relation: (Mihari::Structs::Filters::Alert::SearchFilter filter) -> Mihari::Alert
17
17
  end
18
18
  end
@@ -10,8 +10,8 @@ module Mihari
10
10
 
11
11
  def to_h: () -> Hash
12
12
 
13
- def self.search: (Mihari::Structs::Rule::SearchFilterWithPagination filter) -> Array[Mihari::Rule]
13
+ def self.search: (Mihari::Structs::Filters::Rule::SearchFilterWithPagination filter) -> Array[Mihari::Rule]
14
14
 
15
- def self.count: (Mihari::Structs::Rule::SearchFilter filter) -> Integer
15
+ def self.count: (Mihari::Structs::Filters::Rule::SearchFilter filter) -> Integer
16
16
  end
17
17
  end
@@ -0,0 +1,40 @@
1
+ module Mihari
2
+ module Structs
3
+ module Filters
4
+ module Alert
5
+ class SearchFilter < Dry::Struct
6
+ attr_reader artifact_data: String?
7
+ attr_reader description: String?
8
+ attr_reader source: String?
9
+ attr_reader tag_name: String?
10
+ attr_reader title: String?
11
+ attr_reader from_at: DateTime?
12
+ attr_reader to_at: DateTime?
13
+ attr_reader asn: Integer?
14
+ attr_reader dns_record: String?
15
+ attr_reader reverse_dns_name: String?
16
+
17
+ def valid_artifact_filters?: () -> bool
18
+ end
19
+
20
+ class SearchFilterWithPagination < SearchFilter
21
+ def without_pagination: () -> Mihari::Structs::Filters::Alert::SearchFilter
22
+ end
23
+ end
24
+
25
+ module Rule
26
+ class SearchFilter < Dry::Struct
27
+ attr_reader page: Integer?
28
+ attr_reader tag: String?
29
+ attr_reader source: String?
30
+ attr_reader from_at: DateTime?
31
+ attr_reader to_at: DateTime?
32
+ end
33
+
34
+ class SearchFilterWithPagination < SearchFilter
35
+ def without_pagination: () -> Mihari::Structs::Filters::Rule::SearchFilter
36
+ end
37
+ end
38
+ end
39
+ end
40
+ end
@@ -4,8 +4,8 @@ module Mihari
4
4
  class Response
5
5
  attr_reader ip: String
6
6
  attr_reader hostname: String?
7
- attr_reader loc: String
8
- attr_reader country_code: String
7
+ attr_reader loc: String?
8
+ attr_reader country_code: String?
9
9
  attr_reader asn: Integer?
10
10
 
11
11
  def self.from_dynamic!: (Hash[(String | Symbol), untyped] d) -> Mihari::Structs::IPInfo::Response
@@ -1,64 +1,57 @@
1
1
  module Mihari
2
2
  module Structs
3
- module Rule
4
- class SearchFilter < Dry::Struct
5
- end
3
+ class Rule
4
+ attr_reader data: Hash
6
5
 
7
- class SearchFilterWithPagination < SearchFilter
8
- def without_pagination: () -> SearchFilter
9
- end
6
+ attr_reader yaml: String
10
7
 
11
- class Rule
12
- attr_reader data: Hash
8
+ attr_reader errors: Array[untypes]?
13
9
 
14
- attr_reader yaml: String
10
+ def initialize: (Hash data) -> void
15
11
 
16
- attr_reader errors: Array[untypes]?
12
+ #
13
+ # @return [Boolean]
14
+ #
15
+ def errors?: () -> (bool)
17
16
 
18
- def initialize: (Hash data) -> void
17
+ #
18
+ # @return [Array[String]]
19
+ #
20
+ def error_messages: () -> (Array[String])
19
21
 
20
- #
21
- # @return [Boolean]
22
- #
23
- def errors?: () -> (bool)
22
+ def validate: () -> void
24
23
 
25
- #
26
- # @return [Array[String]]
27
- #
28
- def error_messages: () -> (Array[String])
24
+ def validate!: () -> void
29
25
 
30
- def validate: () -> void
26
+ def []: (untyped key) -> untyped
31
27
 
32
- def validate!: () -> void
28
+ #
29
+ # @return [String]
30
+ #
31
+ def id: () -> String
33
32
 
34
- def []: (untyped key) -> untyped
33
+ #
34
+ # @return [String]
35
+ #
36
+ def title: () -> String
35
37
 
36
- #
37
- # @return [String]
38
- #
39
- def id: () -> String
38
+ #
39
+ # @return [String]
40
+ #
41
+ def description: () -> String
40
42
 
41
- #
42
- # @return [String]
43
- #
44
- def title: () -> String
43
+ #
44
+ # @return [Mihari::Rule]
45
+ #
46
+ def to_model: () -> Mihari::Rule
45
47
 
46
- #
47
- # @return [String]
48
- #
49
- def description: () -> String
48
+ def to_analyzer: () -> Mihari::Analyzers::Rule
50
49
 
51
- #
52
- # @return [Mihari::Rule]
53
- #
54
- def to_model: () -> Mihari::Rule
50
+ def self.from_model: (Mihari::Rule model) -> Mihari::Structs::Rule
55
51
 
56
- def to_analyzer: () -> Mihari::Analyzers::Rule
52
+ def self.from_yaml: (String yaml) -> Mihari::Structs::Rule
57
53
 
58
- def self.from_model: (Mihari::Rule model) -> Mihari::Structs::Rule::Rule
59
-
60
- def self.from_yaml: (String yaml) -> Mihari::Structs::Rule::Rule
61
- end
54
+ def self.from_path_or_id: (String path_or_id) -> Mihari::Structs::Rule
62
55
  end
63
56
  end
64
57
  end
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: 4.7.1
4
+ version: 4.7.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Manabu Niseki
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-06-18 00:00:00.000000000 Z
11
+ date: 2022-07-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -44,14 +44,14 @@ dependencies:
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '1.5'
47
+ version: '1.8'
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.5'
54
+ version: '1.8'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: mysql2
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -86,28 +86,28 @@ dependencies:
86
86
  requirements:
87
87
  - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: '1.3'
89
+ version: '1.4'
90
90
  type: :development
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: '1.3'
96
+ version: '1.4'
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: rack-test
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
101
  - - "~>"
102
102
  - !ruby/object:Gem::Version
103
- version: '1.1'
103
+ version: '2.0'
104
104
  type: :development
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
108
  - - "~>"
109
109
  - !ruby/object:Gem::Version
110
- version: '1.1'
110
+ version: '2.0'
111
111
  - !ruby/object:Gem::Dependency
112
112
  name: rake
113
113
  requirement: !ruby/object:Gem::Requirement
@@ -184,28 +184,28 @@ dependencies:
184
184
  requirements:
185
185
  - - "~>"
186
186
  - !ruby/object:Gem::Version
187
- version: '1.12'
187
+ version: '1.14'
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: '1.12'
194
+ version: '1.14'
195
195
  - !ruby/object:Gem::Dependency
196
196
  name: steep
197
197
  requirement: !ruby/object:Gem::Requirement
198
198
  requirements:
199
199
  - - "~>"
200
200
  - !ruby/object:Gem::Version
201
- version: '1.0'
201
+ version: '1.1'
202
202
  type: :development
203
203
  prerelease: false
204
204
  version_requirements: !ruby/object:Gem::Requirement
205
205
  requirements:
206
206
  - - "~>"
207
207
  - !ruby/object:Gem::Version
208
- version: '1.0'
208
+ version: '1.1'
209
209
  - !ruby/object:Gem::Dependency
210
210
  name: timecop
211
211
  requirement: !ruby/object:Gem::Requirement
@@ -254,14 +254,14 @@ dependencies:
254
254
  requirements:
255
255
  - - '='
256
256
  - !ruby/object:Gem::Version
257
- version: 7.0.3
257
+ version: 7.0.3.1
258
258
  type: :runtime
259
259
  prerelease: false
260
260
  version_requirements: !ruby/object:Gem::Requirement
261
261
  requirements:
262
262
  - - '='
263
263
  - !ruby/object:Gem::Version
264
- version: 7.0.3
264
+ version: 7.0.3.1
265
265
  - !ruby/object:Gem::Dependency
266
266
  name: addressable
267
267
  requirement: !ruby/object:Gem::Requirement
@@ -366,14 +366,14 @@ dependencies:
366
366
  requirements:
367
367
  - - '='
368
368
  - !ruby/object:Gem::Version
369
- version: 2.7.6
369
+ version: 2.8.1
370
370
  type: :runtime
371
371
  prerelease: false
372
372
  version_requirements: !ruby/object:Gem::Requirement
373
373
  requirements:
374
374
  - - '='
375
375
  - !ruby/object:Gem::Version
376
- version: 2.7.6
376
+ version: 2.8.1
377
377
  - !ruby/object:Gem::Dependency
378
378
  name: dry-configurable
379
379
  requirement: !ruby/object:Gem::Requirement
@@ -394,28 +394,28 @@ dependencies:
394
394
  requirements:
395
395
  - - '='
396
396
  - !ruby/object:Gem::Version
397
- version: 0.9.0
397
+ version: 0.10.1
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: 0.9.0
404
+ version: 0.10.1
405
405
  - !ruby/object:Gem::Dependency
406
406
  name: dry-files
407
407
  requirement: !ruby/object:Gem::Requirement
408
408
  requirements:
409
409
  - - '='
410
410
  - !ruby/object:Gem::Version
411
- version: 0.1.0
411
+ version: 0.2.0
412
412
  type: :runtime
413
413
  prerelease: false
414
414
  version_requirements: !ruby/object:Gem::Requirement
415
415
  requirements:
416
416
  - - '='
417
417
  - !ruby/object:Gem::Version
418
- version: 0.1.0
418
+ version: 0.2.0
419
419
  - !ruby/object:Gem::Dependency
420
420
  name: dry-initializer
421
421
  requirement: !ruby/object:Gem::Requirement
@@ -436,14 +436,14 @@ dependencies:
436
436
  requirements:
437
437
  - - '='
438
438
  - !ruby/object:Gem::Version
439
- version: 1.9.2
439
+ version: 1.9.3
440
440
  type: :runtime
441
441
  prerelease: false
442
442
  version_requirements: !ruby/object:Gem::Requirement
443
443
  requirements:
444
444
  - - '='
445
445
  - !ruby/object:Gem::Version
446
- version: 1.9.2
446
+ version: 1.9.3
447
447
  - !ruby/object:Gem::Dependency
448
448
  name: dry-struct
449
449
  requirement: !ruby/object:Gem::Requirement
@@ -478,14 +478,14 @@ dependencies:
478
478
  requirements:
479
479
  - - '='
480
480
  - !ruby/object:Gem::Version
481
- version: 0.2.3
481
+ version: 0.2.4
482
482
  type: :runtime
483
483
  prerelease: false
484
484
  version_requirements: !ruby/object:Gem::Requirement
485
485
  requirements:
486
486
  - - '='
487
487
  - !ruby/object:Gem::Version
488
- version: 0.2.3
488
+ version: 0.2.4
489
489
  - !ruby/object:Gem::Dependency
490
490
  name: grape
491
491
  requirement: !ruby/object:Gem::Requirement
@@ -506,28 +506,28 @@ dependencies:
506
506
  requirements:
507
507
  - - '='
508
508
  - !ruby/object:Gem::Version
509
- version: 0.10.1
509
+ version: 0.10.2
510
510
  type: :runtime
511
511
  prerelease: false
512
512
  version_requirements: !ruby/object:Gem::Requirement
513
513
  requirements:
514
514
  - - '='
515
515
  - !ruby/object:Gem::Version
516
- version: 0.10.1
516
+ version: 0.10.2
517
517
  - !ruby/object:Gem::Dependency
518
518
  name: grape-swagger
519
519
  requirement: !ruby/object:Gem::Requirement
520
520
  requirements:
521
521
  - - '='
522
522
  - !ruby/object:Gem::Version
523
- version: 1.4.2
523
+ version: 1.5.0
524
524
  type: :runtime
525
525
  prerelease: false
526
526
  version_requirements: !ruby/object:Gem::Requirement
527
527
  requirements:
528
528
  - - '='
529
529
  - !ruby/object:Gem::Version
530
- version: 1.4.2
530
+ version: 1.5.0
531
531
  - !ruby/object:Gem::Dependency
532
532
  name: grape-swagger-entity
533
533
  requirement: !ruby/object:Gem::Requirement
@@ -590,14 +590,14 @@ dependencies:
590
590
  requirements:
591
591
  - - '='
592
592
  - !ruby/object:Gem::Version
593
- version: 0.5.1
593
+ version: 0.6.0
594
594
  type: :runtime
595
595
  prerelease: false
596
596
  version_requirements: !ruby/object:Gem::Requirement
597
597
  requirements:
598
598
  - - '='
599
599
  - !ruby/object:Gem::Version
600
- version: 0.5.1
600
+ version: 0.6.0
601
601
  - !ruby/object:Gem::Dependency
602
602
  name: launchy
603
603
  requirement: !ruby/object:Gem::Requirement
@@ -786,14 +786,14 @@ dependencies:
786
786
  requirements:
787
787
  - - '='
788
788
  - !ruby/object:Gem::Version
789
- version: 2.2.3.1
789
+ version: 2.2.4
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.2.3.1
796
+ version: 2.2.4
797
797
  - !ruby/object:Gem::Dependency
798
798
  name: rack-contrib
799
799
  requirement: !ruby/object:Gem::Requirement
@@ -856,14 +856,14 @@ dependencies:
856
856
  requirements:
857
857
  - - '='
858
858
  - !ruby/object:Gem::Version
859
- version: 5.3.1
859
+ version: 5.4.1
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.3.1
866
+ version: 5.4.1
867
867
  - !ruby/object:Gem::Dependency
868
868
  name: shodanx
869
869
  requirement: !ruby/object:Gem::Requirement
@@ -1127,7 +1127,6 @@ files:
1127
1127
  - lib/mihari/mixins/error_notification.rb
1128
1128
  - lib/mihari/mixins/refang.rb
1129
1129
  - lib/mihari/mixins/retriable.rb
1130
- - lib/mihari/mixins/rule.rb
1131
1130
  - lib/mihari/models/alert.rb
1132
1131
  - lib/mihari/models/artifact.rb
1133
1132
  - lib/mihari/models/autonomous_system.rb
@@ -1146,8 +1145,8 @@ files:
1146
1145
  - lib/mihari/schemas/macros.rb
1147
1146
  - lib/mihari/schemas/rule.rb
1148
1147
  - lib/mihari/status.rb
1149
- - lib/mihari/structs/alert.rb
1150
1148
  - lib/mihari/structs/censys.rb
1149
+ - lib/mihari/structs/filters.rb
1151
1150
  - lib/mihari/structs/google_public_dns.rb
1152
1151
  - lib/mihari/structs/greynoise.rb
1153
1152
  - lib/mihari/structs/ipinfo.rb
@@ -1174,7 +1173,7 @@ files:
1174
1173
  - lib/mihari/web/public/index.html
1175
1174
  - lib/mihari/web/public/redoc-static.html
1176
1175
  - lib/mihari/web/public/static/css/app.2a5d3d21.css
1177
- - lib/mihari/web/public/static/css/chunk-vendors.06251949.css
1176
+ - lib/mihari/web/public/static/css/chunk-vendors.5013d549.css
1178
1177
  - lib/mihari/web/public/static/favicon.ico
1179
1178
  - lib/mihari/web/public/static/fonts/fa-brands-400.7fa789ab.ttf
1180
1179
  - lib/mihari/web/public/static/fonts/fa-brands-400.859fc388.woff2
@@ -1183,14 +1182,10 @@ files:
1183
1182
  - lib/mihari/web/public/static/fonts/fa-solid-900.3a463ec3.ttf
1184
1183
  - lib/mihari/web/public/static/fonts/fa-solid-900.40ddefd7.woff2
1185
1184
  - lib/mihari/web/public/static/fonts/fa-v4compatibility.924588dc.ttf
1186
- - lib/mihari/web/public/static/js/app-legacy.9d5c9c3d.js
1187
- - lib/mihari/web/public/static/js/app-legacy.9d5c9c3d.js.map
1188
- - lib/mihari/web/public/static/js/app.823b5af7.js
1189
- - lib/mihari/web/public/static/js/app.823b5af7.js.map
1190
- - lib/mihari/web/public/static/js/chunk-vendors-legacy.b110c129.js
1191
- - lib/mihari/web/public/static/js/chunk-vendors-legacy.b110c129.js.map
1192
- - lib/mihari/web/public/static/js/chunk-vendors.dde2116c.js
1193
- - lib/mihari/web/public/static/js/chunk-vendors.dde2116c.js.map
1185
+ - lib/mihari/web/public/static/js/app.524d9ed2.js
1186
+ - lib/mihari/web/public/static/js/app.524d9ed2.js.map
1187
+ - lib/mihari/web/public/static/js/chunk-vendors.64580a1f.js
1188
+ - lib/mihari/web/public/static/js/chunk-vendors.64580a1f.js.map
1194
1189
  - mihari.gemspec
1195
1190
  - renovate.json
1196
1191
  - sig/lib/mihari.rbs
@@ -1248,7 +1243,6 @@ files:
1248
1243
  - sig/lib/mihari/mixins/hash.rbs
1249
1244
  - sig/lib/mihari/mixins/refang.rbs
1250
1245
  - sig/lib/mihari/mixins/retriable.rbs
1251
- - sig/lib/mihari/mixins/rule.rbs
1252
1246
  - sig/lib/mihari/models/alert.rbs
1253
1247
  - sig/lib/mihari/models/artifact.rbs
1254
1248
  - sig/lib/mihari/models/autonomous_system.rbs
@@ -1262,8 +1256,8 @@ files:
1262
1256
  - sig/lib/mihari/models/tagging.rbs
1263
1257
  - sig/lib/mihari/models/whois.rbs
1264
1258
  - sig/lib/mihari/status.rbs
1265
- - sig/lib/mihari/structs/alert.rbs
1266
1259
  - sig/lib/mihari/structs/censys.rbs
1260
+ - sig/lib/mihari/structs/filters.rbs
1267
1261
  - sig/lib/mihari/structs/google_public_dns.rbs
1268
1262
  - sig/lib/mihari/structs/greynoise.rbs
1269
1263
  - sig/lib/mihari/structs/ipinfo.rbs