mihari 4.2.0 → 4.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (41) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/test.yml +25 -3
  3. data/lib/mihari/analyzers/rule.rb +49 -6
  4. data/lib/mihari/constants.rb +2 -0
  5. data/lib/mihari/emitters/base.rb +3 -0
  6. data/lib/mihari/emitters/http.rb +127 -0
  7. data/lib/mihari/emitters/webhook.rb +7 -16
  8. data/lib/mihari/entities/rule.rb +5 -0
  9. data/lib/mihari/feed/reader.rb +6 -4
  10. data/lib/mihari/http.rb +19 -14
  11. data/lib/mihari/schemas/rule.rb +30 -4
  12. data/lib/mihari/structs/rule.rb +1 -0
  13. data/lib/mihari/types.rb +11 -3
  14. data/lib/mihari/version.rb +1 -1
  15. data/lib/mihari/web/public/index.html +1 -1
  16. data/lib/mihari/web/public/redoc-static.html +57 -51
  17. data/lib/mihari/web/public/static/css/app.0de4b715.css +1 -0
  18. data/lib/mihari/web/public/static/css/chunk-vendors.c57bb3fd.css +7 -0
  19. data/lib/mihari/web/public/static/fonts/fa-brands-400.edf40f86.woff2 +0 -0
  20. data/lib/mihari/web/public/static/fonts/fa-brands-400.f7223235.ttf +0 -0
  21. data/lib/mihari/web/public/static/fonts/fa-regular-400.3665ebc7.woff2 +0 -0
  22. data/lib/mihari/web/public/static/fonts/fa-regular-400.a7fde52b.ttf +0 -0
  23. data/lib/mihari/web/public/static/fonts/fa-solid-900.0d2abd43.woff2 +0 -0
  24. data/lib/mihari/web/public/static/fonts/fa-solid-900.5b03221c.ttf +0 -0
  25. data/lib/mihari/web/public/static/fonts/fa-v4compatibility.42932bea.ttf +0 -0
  26. data/lib/mihari/web/public/static/js/app-legacy.e451304b.js +2 -0
  27. data/lib/mihari/web/public/static/js/app-legacy.e451304b.js.map +1 -0
  28. data/lib/mihari/web/public/static/js/app.e74e91d7.js +2 -0
  29. data/lib/mihari/web/public/static/js/app.e74e91d7.js.map +1 -0
  30. data/lib/mihari/web/public/static/js/chunk-vendors-legacy.41357cdf.js +25 -0
  31. data/lib/mihari/web/public/static/js/chunk-vendors-legacy.41357cdf.js.map +1 -0
  32. data/lib/mihari/web/public/static/js/chunk-vendors.c5525f1e.js +31 -0
  33. data/lib/mihari/web/public/static/js/chunk-vendors.c5525f1e.js.map +1 -0
  34. data/lib/mihari.rb +11 -9
  35. data/mihari.gemspec +10 -5
  36. data/sig/lib/mihari/constants.rbs +2 -0
  37. data/sig/lib/mihari/emitters/http.rbs +35 -0
  38. data/sig/lib/mihari/http.rbs +2 -3
  39. data/sig/lib/mihari/structs/rule.rbs +1 -3
  40. data/sig/lib/mihari/types.rbs +2 -0
  41. metadata +76 -14
data/lib/mihari.rb CHANGED
@@ -14,6 +14,7 @@ require "active_support"
14
14
  require "active_support/core_ext/hash"
15
15
  require "active_support/core_ext/integer/time"
16
16
  require "active_support/core_ext/numeric/time"
17
+ require "active_support/core_ext/object/deep_dup"
17
18
 
18
19
  require "active_record"
19
20
 
@@ -181,6 +182,16 @@ require "mihari/models/tag"
181
182
  require "mihari/models/tagging"
182
183
  require "mihari/models/whois"
183
184
 
185
+ # Emitters
186
+ require "mihari/emitters/base"
187
+
188
+ require "mihari/emitters/database"
189
+ require "mihari/emitters/http"
190
+ require "mihari/emitters/misp"
191
+ require "mihari/emitters/slack"
192
+ require "mihari/emitters/the_hive"
193
+ require "mihari/emitters/webhook"
194
+
184
195
  # Analyzers
185
196
  require "mihari/analyzers/base"
186
197
 
@@ -205,16 +216,7 @@ require "mihari/analyzers/virustotal"
205
216
  require "mihari/analyzers/zoomeye"
206
217
  require "mihari/analyzers/rule"
207
218
 
208
- # Emitters
209
- require "mihari/emitters/base"
210
- require "mihari/emitters/database"
211
- require "mihari/emitters/misp"
212
- require "mihari/emitters/slack"
213
- require "mihari/emitters/the_hive"
214
- require "mihari/emitters/webhook"
215
-
216
219
  # Entities
217
-
218
220
  require "mihari/entities/message"
219
221
 
220
222
  require "mihari/entities/autonomous_system"
data/mihari.gemspec CHANGED
@@ -16,6 +16,8 @@ Gem::Specification.new do |spec|
16
16
 
17
17
  spec.required_ruby_version = ">= 2.7"
18
18
 
19
+ spec.metadata["rubygems_mfa_required"] = "true"
20
+
19
21
  # Specify which files should be added to the gem when it is released.
20
22
  # The `git ls-files -z` loads the files in the RubyGem that have been added into git.
21
23
  spec.files = Dir.chdir(File.expand_path(__dir__)) do
@@ -26,7 +28,7 @@ Gem::Specification.new do |spec|
26
28
  spec.require_paths = ["lib"]
27
29
 
28
30
  spec.add_development_dependency "bundler", "~> 2.3"
29
- spec.add_development_dependency "coveralls_reborn", "~> 0.23"
31
+ spec.add_development_dependency "coveralls_reborn", "~> 0.24"
30
32
  spec.add_development_dependency "fakefs", "~> 1.4"
31
33
  spec.add_development_dependency "mysql2", "~> 0.5"
32
34
  spec.add_development_dependency "overcommit", "~> 0.58"
@@ -36,13 +38,14 @@ Gem::Specification.new do |spec|
36
38
  spec.add_development_dependency "rb-fsevent", "~> 0.11"
37
39
  spec.add_development_dependency "rerun", "~> 0.13"
38
40
  spec.add_development_dependency "rspec", "~> 3.11"
39
- spec.add_development_dependency "standard", "~> 1.7"
40
- spec.add_development_dependency "steep", "~> 0.47"
41
+ spec.add_development_dependency "simplecov-lcov", "~> 0.8.0"
42
+ spec.add_development_dependency "standard", "~> 1.8"
43
+ spec.add_development_dependency "steep", "~> 0.49"
41
44
  spec.add_development_dependency "timecop", "~> 0.9"
42
- spec.add_development_dependency "vcr", "~> 6.0"
45
+ spec.add_development_dependency "vcr", "~> 6.1"
43
46
  spec.add_development_dependency "webmock", "~> 3.14"
44
47
 
45
- spec.add_dependency "activerecord", "7.0.2.2"
48
+ spec.add_dependency "activerecord", "7.0.2.3"
46
49
  spec.add_dependency "addressable", "~> 2.8"
47
50
  spec.add_dependency "awrence", "~> 2.0"
48
51
  spec.add_dependency "binaryedge", "~> 0.1"
@@ -55,6 +58,7 @@ Gem::Specification.new do |spec|
55
58
  spec.add_dependency "dry-container", "0.9.0"
56
59
  spec.add_dependency "dry-files", "0.1.0"
57
60
  spec.add_dependency "dry-initializer", "3.1.1"
61
+ spec.add_dependency "dry-schema", "1.9.1"
58
62
  spec.add_dependency "dry-struct", "1.4.0"
59
63
  spec.add_dependency "dry-validation", "1.8.0"
60
64
  spec.add_dependency "email_address", "~> 0.2"
@@ -64,6 +68,7 @@ Gem::Specification.new do |spec|
64
68
  spec.add_dependency "grape-swagger-entity", "0.5.1"
65
69
  spec.add_dependency "greynoise", "~> 0.1"
66
70
  spec.add_dependency "hachi", "~> 1.0"
71
+ spec.add_dependency "insensitive_hash", "~> 0.3"
67
72
  spec.add_dependency "jr-cli", "~> 0.5"
68
73
  spec.add_dependency "launchy", "~> 2.5"
69
74
  spec.add_dependency "memist", "~> 2.0"
@@ -1,3 +1,5 @@
1
1
  module Mihari
2
2
  ALLOWED_DATA_TYPES: Array[String]
3
+
4
+ DEFAULT_EMITTERS: Array[Hash]
3
5
  end
@@ -0,0 +1,35 @@
1
+ module Mihari
2
+ module Emitters
3
+ class PayloadTemplate < ERB
4
+ def self.template: () -> ::String
5
+
6
+ def initialize: (title: untyped title, description: untyped description, artifacts: untyped artifacts, source: untyped source, tags: untyped tags, ?options: ::Hash[untyped, untyped] options) -> void
7
+
8
+ def result: () -> untyped
9
+ end
10
+
11
+ class HTTP < Base
12
+ # @return [Addressable::URI, nil]
13
+ attr_reader uri: Addressable::URI?
14
+
15
+ # @return [Hash]
16
+ attr_reader http_request_headers: Hash
17
+
18
+ # @return [String]
19
+ attr_reader http_request_method: String
20
+
21
+ # @return [String, nil]
22
+ attr_reader template: String?
23
+
24
+ def initialize: (*untyped args, **untyped kwargs) -> void
25
+
26
+ def emit: (title: String title, artifacts: Array[Mihari::Artifact] artifacts, ?tags: Array[String] tags, **untyped _options) -> void
27
+
28
+ def valid?: () -> bool
29
+
30
+ private
31
+
32
+ def payload_as_string: (title: String title, description: String description, artifacts: Array[Mihari::Artifact] artifacts, source: String source, tags: Array[String] tags) -> String
33
+ end
34
+ end
35
+ end
@@ -5,14 +5,11 @@ module Mihari
5
5
 
6
6
  attr_reader headers: Hash[(String | Symbol), untyped]
7
7
 
8
- attr_reader payload_type: String?
9
-
10
8
  attr_reader payload: Hash[(String | Symbol), untyped]
11
9
 
12
10
  def initialize: (
13
11
  String uri,
14
12
  ?headers: Hash[(String | Symbol), untyped] headers,
15
- ?payload_type: String? payload_type,
16
13
  ?payload: Hash[(String | Symbol), untyped] payload
17
14
  ) -> void
18
15
 
@@ -46,6 +43,8 @@ module Mihari
46
43
 
47
44
  private
48
45
 
46
+ def content_type: () -> String
47
+
49
48
  #
50
49
  # Get options for HTTP request
51
50
  #
@@ -53,9 +53,7 @@ module Mihari
53
53
 
54
54
  def to_analyzer: () -> Mihari::Analyzers::Rule
55
55
 
56
- class << self
57
- def from_model: (Mihari::Rule model) -> Mihari::Structs::Rule::Rule
58
- end
56
+ def self.from_model: (Mihari::Rule model) -> Mihari::Structs::Rule::Rule
59
57
  end
60
58
  end
61
59
  end
@@ -17,5 +17,7 @@ module Mihari
17
17
  FeedHttpRequestMethods: Array[String]
18
18
 
19
19
  FeedHttpRequestPayloadTypes: Array[String]
20
+
21
+ EmitterTypes: Array[String]
20
22
  end
21
23
  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.2.0
4
+ version: 4.3.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: 2022-03-06 00:00:00.000000000 Z
11
+ date: 2022-03-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -30,14 +30,14 @@ dependencies:
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '0.23'
33
+ version: '0.24'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '0.23'
40
+ version: '0.24'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: fakefs
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -164,34 +164,48 @@ dependencies:
164
164
  - - "~>"
165
165
  - !ruby/object:Gem::Version
166
166
  version: '3.11'
167
+ - !ruby/object:Gem::Dependency
168
+ name: simplecov-lcov
169
+ requirement: !ruby/object:Gem::Requirement
170
+ requirements:
171
+ - - "~>"
172
+ - !ruby/object:Gem::Version
173
+ version: 0.8.0
174
+ type: :development
175
+ prerelease: false
176
+ version_requirements: !ruby/object:Gem::Requirement
177
+ requirements:
178
+ - - "~>"
179
+ - !ruby/object:Gem::Version
180
+ version: 0.8.0
167
181
  - !ruby/object:Gem::Dependency
168
182
  name: standard
169
183
  requirement: !ruby/object:Gem::Requirement
170
184
  requirements:
171
185
  - - "~>"
172
186
  - !ruby/object:Gem::Version
173
- version: '1.7'
187
+ version: '1.8'
174
188
  type: :development
175
189
  prerelease: false
176
190
  version_requirements: !ruby/object:Gem::Requirement
177
191
  requirements:
178
192
  - - "~>"
179
193
  - !ruby/object:Gem::Version
180
- version: '1.7'
194
+ version: '1.8'
181
195
  - !ruby/object:Gem::Dependency
182
196
  name: steep
183
197
  requirement: !ruby/object:Gem::Requirement
184
198
  requirements:
185
199
  - - "~>"
186
200
  - !ruby/object:Gem::Version
187
- version: '0.47'
201
+ version: '0.49'
188
202
  type: :development
189
203
  prerelease: false
190
204
  version_requirements: !ruby/object:Gem::Requirement
191
205
  requirements:
192
206
  - - "~>"
193
207
  - !ruby/object:Gem::Version
194
- version: '0.47'
208
+ version: '0.49'
195
209
  - !ruby/object:Gem::Dependency
196
210
  name: timecop
197
211
  requirement: !ruby/object:Gem::Requirement
@@ -212,14 +226,14 @@ dependencies:
212
226
  requirements:
213
227
  - - "~>"
214
228
  - !ruby/object:Gem::Version
215
- version: '6.0'
229
+ version: '6.1'
216
230
  type: :development
217
231
  prerelease: false
218
232
  version_requirements: !ruby/object:Gem::Requirement
219
233
  requirements:
220
234
  - - "~>"
221
235
  - !ruby/object:Gem::Version
222
- version: '6.0'
236
+ version: '6.1'
223
237
  - !ruby/object:Gem::Dependency
224
238
  name: webmock
225
239
  requirement: !ruby/object:Gem::Requirement
@@ -240,14 +254,14 @@ dependencies:
240
254
  requirements:
241
255
  - - '='
242
256
  - !ruby/object:Gem::Version
243
- version: 7.0.2.2
257
+ version: 7.0.2.3
244
258
  type: :runtime
245
259
  prerelease: false
246
260
  version_requirements: !ruby/object:Gem::Requirement
247
261
  requirements:
248
262
  - - '='
249
263
  - !ruby/object:Gem::Version
250
- version: 7.0.2.2
264
+ version: 7.0.2.3
251
265
  - !ruby/object:Gem::Dependency
252
266
  name: addressable
253
267
  requirement: !ruby/object:Gem::Requirement
@@ -416,6 +430,20 @@ dependencies:
416
430
  - - '='
417
431
  - !ruby/object:Gem::Version
418
432
  version: 3.1.1
433
+ - !ruby/object:Gem::Dependency
434
+ name: dry-schema
435
+ requirement: !ruby/object:Gem::Requirement
436
+ requirements:
437
+ - - '='
438
+ - !ruby/object:Gem::Version
439
+ version: 1.9.1
440
+ type: :runtime
441
+ prerelease: false
442
+ version_requirements: !ruby/object:Gem::Requirement
443
+ requirements:
444
+ - - '='
445
+ - !ruby/object:Gem::Version
446
+ version: 1.9.1
419
447
  - !ruby/object:Gem::Dependency
420
448
  name: dry-struct
421
449
  requirement: !ruby/object:Gem::Requirement
@@ -542,6 +570,20 @@ dependencies:
542
570
  - - "~>"
543
571
  - !ruby/object:Gem::Version
544
572
  version: '1.0'
573
+ - !ruby/object:Gem::Dependency
574
+ name: insensitive_hash
575
+ requirement: !ruby/object:Gem::Requirement
576
+ requirements:
577
+ - - "~>"
578
+ - !ruby/object:Gem::Version
579
+ version: '0.3'
580
+ type: :runtime
581
+ prerelease: false
582
+ version_requirements: !ruby/object:Gem::Requirement
583
+ requirements:
584
+ - - "~>"
585
+ - !ruby/object:Gem::Version
586
+ version: '0.3'
545
587
  - !ruby/object:Gem::Dependency
546
588
  name: jr-cli
547
589
  requirement: !ruby/object:Gem::Requirement
@@ -1089,6 +1131,7 @@ files:
1089
1131
  - lib/mihari/database.rb
1090
1132
  - lib/mihari/emitters/base.rb
1091
1133
  - lib/mihari/emitters/database.rb
1134
+ - lib/mihari/emitters/http.rb
1092
1135
  - lib/mihari/emitters/misp.rb
1093
1136
  - lib/mihari/emitters/slack.rb
1094
1137
  - lib/mihari/emitters/the_hive.rb
@@ -1162,8 +1205,10 @@ files:
1162
1205
  - lib/mihari/web/middleware/error_notification_adapter.rb
1163
1206
  - lib/mihari/web/public/index.html
1164
1207
  - lib/mihari/web/public/redoc-static.html
1208
+ - lib/mihari/web/public/static/css/app.0de4b715.css
1165
1209
  - lib/mihari/web/public/static/css/app.43138058.css
1166
1210
  - lib/mihari/web/public/static/css/chunk-vendors.3ed9b08e.css
1211
+ - lib/mihari/web/public/static/css/chunk-vendors.c57bb3fd.css
1167
1212
  - lib/mihari/web/public/static/favicon.ico
1168
1213
  - lib/mihari/web/public/static/fonts/fa-brands-400.099a9556.woff
1169
1214
  - lib/mihari/web/public/static/fonts/fa-brands-400.1a575a41.woff
@@ -1174,19 +1219,25 @@ files:
1174
1219
  - lib/mihari/web/public/static/fonts/fa-brands-400.592643a8.eot
1175
1220
  - lib/mihari/web/public/static/fonts/fa-brands-400.5d5236fb.woff2
1176
1221
  - lib/mihari/web/public/static/fonts/fa-brands-400.ed311c7a.woff2
1222
+ - lib/mihari/web/public/static/fonts/fa-brands-400.edf40f86.woff2
1223
+ - lib/mihari/web/public/static/fonts/fa-brands-400.f7223235.ttf
1177
1224
  - lib/mihari/web/public/static/fonts/fa-brands-400.f7307680.woff2
1178
1225
  - lib/mihari/web/public/static/fonts/fa-regular-400.1f77739c.ttf
1226
+ - lib/mihari/web/public/static/fonts/fa-regular-400.3665ebc7.woff2
1179
1227
  - lib/mihari/web/public/static/fonts/fa-regular-400.64b3730e.woff2
1180
1228
  - lib/mihari/web/public/static/fonts/fa-regular-400.7124eb50.woff
1181
1229
  - lib/mihari/web/public/static/fonts/fa-regular-400.7630483d.eot
1182
1230
  - lib/mihari/web/public/static/fonts/fa-regular-400.766913e6.ttf
1183
1231
  - lib/mihari/web/public/static/fonts/fa-regular-400.95a8a8af.ttf
1232
+ - lib/mihari/web/public/static/fonts/fa-regular-400.a7fde52b.ttf
1184
1233
  - lib/mihari/web/public/static/fonts/fa-regular-400.b0e2db3b.eot
1185
1234
  - lib/mihari/web/public/static/fonts/fa-regular-400.b91d376b.woff2
1186
1235
  - lib/mihari/web/public/static/fonts/fa-regular-400.d1d7e3b4.woff
1187
1236
  - lib/mihari/web/public/static/fonts/fa-regular-400.f0f82301.woff2
1188
1237
  - lib/mihari/web/public/static/fonts/fa-solid-900.0c6bfc66.eot
1238
+ - lib/mihari/web/public/static/fonts/fa-solid-900.0d2abd43.woff2
1189
1239
  - lib/mihari/web/public/static/fonts/fa-solid-900.1042e8ca.eot
1240
+ - lib/mihari/web/public/static/fonts/fa-solid-900.5b03221c.ttf
1190
1241
  - lib/mihari/web/public/static/fonts/fa-solid-900.605ed792.ttf
1191
1242
  - lib/mihari/web/public/static/fonts/fa-solid-900.6115ad71.woff2
1192
1243
  - lib/mihari/web/public/static/fonts/fa-solid-900.9fe5a17c.woff
@@ -1195,6 +1246,7 @@ files:
1195
1246
  - lib/mihari/web/public/static/fonts/fa-solid-900.d824df7e.woff2
1196
1247
  - lib/mihari/web/public/static/fonts/fa-solid-900.e8a427e1.woff2
1197
1248
  - lib/mihari/web/public/static/fonts/fa-solid-900.f0203cfc.ttf
1249
+ - lib/mihari/web/public/static/fonts/fa-v4compatibility.42932bea.ttf
1198
1250
  - lib/mihari/web/public/static/fonts/fa-v4compatibility.e1023515.ttf
1199
1251
  - lib/mihari/web/public/static/img/fa-brands-400.1d5619cd.svg
1200
1252
  - lib/mihari/web/public/static/img/fa-brands-400.ba7ed552.svg
@@ -1204,6 +1256,8 @@ files:
1204
1256
  - lib/mihari/web/public/static/img/fa-solid-900.37bc7099.svg
1205
1257
  - lib/mihari/web/public/static/js/app-legacy.46b666f0.js
1206
1258
  - lib/mihari/web/public/static/js/app-legacy.46b666f0.js.map
1259
+ - lib/mihari/web/public/static/js/app-legacy.e451304b.js
1260
+ - lib/mihari/web/public/static/js/app-legacy.e451304b.js.map
1207
1261
  - lib/mihari/web/public/static/js/app.06d5cf1c.js
1208
1262
  - lib/mihari/web/public/static/js/app.06d5cf1c.js.map
1209
1263
  - lib/mihari/web/public/static/js/app.0a0cc502.js
@@ -1236,16 +1290,22 @@ files:
1236
1290
  - lib/mihari/web/public/static/js/app.cb1fa7be.js.map
1237
1291
  - lib/mihari/web/public/static/js/app.cccddb2b.js
1238
1292
  - lib/mihari/web/public/static/js/app.cccddb2b.js.map
1293
+ - lib/mihari/web/public/static/js/app.e74e91d7.js
1294
+ - lib/mihari/web/public/static/js/app.e74e91d7.js.map
1239
1295
  - lib/mihari/web/public/static/js/app.eb95cfc9.js
1240
1296
  - lib/mihari/web/public/static/js/app.eb95cfc9.js.map
1241
1297
  - lib/mihari/web/public/static/js/app.f2b8890f.js
1242
1298
  - lib/mihari/web/public/static/js/app.f2b8890f.js.map
1243
1299
  - lib/mihari/web/public/static/js/app.fbc19869.js
1244
1300
  - lib/mihari/web/public/static/js/app.fbc19869.js.map
1301
+ - lib/mihari/web/public/static/js/chunk-vendors-legacy.41357cdf.js
1302
+ - lib/mihari/web/public/static/js/chunk-vendors-legacy.41357cdf.js.map
1245
1303
  - lib/mihari/web/public/static/js/chunk-vendors-legacy.c99e452e.js
1246
1304
  - lib/mihari/web/public/static/js/chunk-vendors-legacy.c99e452e.js.map
1247
1305
  - lib/mihari/web/public/static/js/chunk-vendors.15e84e22.js
1248
1306
  - lib/mihari/web/public/static/js/chunk-vendors.15e84e22.js.map
1307
+ - lib/mihari/web/public/static/js/chunk-vendors.c5525f1e.js
1308
+ - lib/mihari/web/public/static/js/chunk-vendors.c5525f1e.js.map
1249
1309
  - mihari.gemspec
1250
1310
  - renovate.json
1251
1311
  - sig/lib/mihari.rbs
@@ -1282,6 +1342,7 @@ files:
1282
1342
  - sig/lib/mihari/database.rbs
1283
1343
  - sig/lib/mihari/emitters/base.rbs
1284
1344
  - sig/lib/mihari/emitters/database.rbs
1345
+ - sig/lib/mihari/emitters/http.rbs
1285
1346
  - sig/lib/mihari/emitters/misp.rbs
1286
1347
  - sig/lib/mihari/emitters/slack.rbs
1287
1348
  - sig/lib/mihari/emitters/stdout.rbs
@@ -1329,7 +1390,8 @@ files:
1329
1390
  homepage: https://github.com/ninoseki/mihari
1330
1391
  licenses:
1331
1392
  - MIT
1332
- metadata: {}
1393
+ metadata:
1394
+ rubygems_mfa_required: 'true'
1333
1395
  post_install_message:
1334
1396
  rdoc_options: []
1335
1397
  require_paths:
@@ -1345,7 +1407,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
1345
1407
  - !ruby/object:Gem::Version
1346
1408
  version: '0'
1347
1409
  requirements: []
1348
- rubygems_version: 3.2.22
1410
+ rubygems_version: 3.3.7
1349
1411
  signing_key:
1350
1412
  specification_version: 4
1351
1413
  summary: A framework for continuous OSINT based threat hunting