mihari 7.1.2 → 7.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. checksums.yaml +4 -4
  2. data/Dockerfile +1 -1
  3. data/Rakefile +15 -7
  4. data/build_frontend.sh +1 -1
  5. data/lefthook.yml +4 -1
  6. data/lib/mihari/actor.rb +21 -4
  7. data/lib/mihari/analyzers/base.rb +7 -18
  8. data/lib/mihari/analyzers/binaryedge.rb +0 -6
  9. data/lib/mihari/analyzers/censys.rb +0 -9
  10. data/lib/mihari/analyzers/circl.rb +0 -6
  11. data/lib/mihari/analyzers/fofa.rb +0 -6
  12. data/lib/mihari/analyzers/greynoise.rb +0 -6
  13. data/lib/mihari/analyzers/hunterhow.rb +0 -6
  14. data/lib/mihari/analyzers/onyphe.rb +0 -6
  15. data/lib/mihari/analyzers/otx.rb +0 -6
  16. data/lib/mihari/analyzers/passivetotal.rb +0 -4
  17. data/lib/mihari/analyzers/pulsedive.rb +0 -6
  18. data/lib/mihari/analyzers/securitytrails.rb +0 -4
  19. data/lib/mihari/analyzers/shodan.rb +0 -6
  20. data/lib/mihari/analyzers/urlscan.rb +0 -6
  21. data/lib/mihari/analyzers/virustotal.rb +0 -4
  22. data/lib/mihari/analyzers/virustotal_intelligence.rb +7 -6
  23. data/lib/mihari/analyzers/zoomeye.rb +0 -6
  24. data/lib/mihari/commands/web.rb +4 -4
  25. data/lib/mihari/concerns/falsepositive_normalizable.rb +30 -0
  26. data/lib/mihari/concerns/falsepositive_validatable.rb +1 -17
  27. data/lib/mihari/config.rb +1 -1
  28. data/lib/mihari/database.rb +18 -1
  29. data/lib/mihari/emitters/database.rb +0 -6
  30. data/lib/mihari/emitters/misp.rb +0 -6
  31. data/lib/mihari/emitters/slack.rb +5 -21
  32. data/lib/mihari/emitters/the_hive.rb +0 -6
  33. data/lib/mihari/enrichers/whois.rb +5 -7
  34. data/lib/mihari/entities/artifact.rb +6 -2
  35. data/lib/mihari/entities/autonomous_system.rb +1 -1
  36. data/lib/mihari/entities/cpe.rb +1 -1
  37. data/lib/mihari/entities/port.rb +1 -1
  38. data/lib/mihari/entities/vulnerability.rb +10 -0
  39. data/lib/mihari/errors.rb +16 -1
  40. data/lib/mihari/models/artifact.rb +65 -30
  41. data/lib/mihari/models/vulnerability.rb +12 -0
  42. data/lib/mihari/rule.rb +18 -24
  43. data/lib/mihari/schemas/rule.rb +7 -0
  44. data/lib/mihari/services/builders.rb +22 -3
  45. data/lib/mihari/services/enrichers.rb +2 -0
  46. data/lib/mihari/services/feed.rb +2 -5
  47. data/lib/mihari/services/proxies.rb +3 -3
  48. data/lib/mihari/structs/censys.rb +2 -2
  49. data/lib/mihari/structs/config.rb +3 -20
  50. data/lib/mihari/structs/greynoise.rb +1 -1
  51. data/lib/mihari/structs/onyphe.rb +1 -1
  52. data/lib/mihari/structs/shodan.rb +59 -21
  53. data/lib/mihari/version.rb +1 -1
  54. data/lib/mihari/web/endpoints/artifacts.rb +4 -2
  55. data/lib/mihari/web/endpoints/rules.rb +1 -1
  56. data/lib/mihari/web/public/assets/{index-Guw2aMpk.js → index-GWurHG1o.js} +60 -40
  57. data/lib/mihari/web/public/assets/{index-dVaNxqTC.css → index-ReF8ffd-.css} +1 -1
  58. data/lib/mihari/web/public/index.html +2 -2
  59. data/lib/mihari/web/public/redoc-static.html +385 -385
  60. data/lib/mihari.rb +3 -0
  61. metadata +11 -51
  62. data/test.json.jbuilder +0 -7
data/lib/mihari.rb CHANGED
@@ -55,6 +55,7 @@ require "mihari/concerns/autonomous_system_normalizable"
55
55
  require "mihari/concerns/configurable"
56
56
  require "mihari/concerns/database_connectable"
57
57
  require "mihari/concerns/error_unwrappable"
58
+ require "mihari/concerns/falsepositive_normalizable"
58
59
  require "mihari/concerns/falsepositive_validatable"
59
60
  require "mihari/concerns/refangable"
60
61
  require "mihari/concerns/retriable"
@@ -207,6 +208,7 @@ require "mihari/models/reverse_dns"
207
208
  require "mihari/models/rule"
208
209
  require "mihari/models/tag"
209
210
  require "mihari/models/tagging"
211
+ require "mihari/models/vulnerability"
210
212
  require "mihari/models/whois"
211
213
 
212
214
  # Emitters
@@ -323,6 +325,7 @@ require "mihari/entities/messages"
323
325
  require "mihari/entities/port"
324
326
  require "mihari/entities/reverse_dns"
325
327
  require "mihari/entities/tag"
328
+ require "mihari/entities/vulnerability"
326
329
  require "mihari/entities/whois"
327
330
 
328
331
  require "mihari/entities/artifact"
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.1.2
4
+ version: 7.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Manabu Niseki
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-01-10 00:00:00.000000000 Z
11
+ date: 2024-01-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: better_errors
@@ -388,48 +388,6 @@ dependencies:
388
388
  - - "~>"
389
389
  - !ruby/object:Gem::Version
390
390
  version: '3.19'
391
- - !ruby/object:Gem::Dependency
392
- name: lefthook
393
- requirement: !ruby/object:Gem::Requirement
394
- requirements:
395
- - - "~>"
396
- - !ruby/object:Gem::Version
397
- version: '1.5'
398
- type: :development
399
- prerelease: false
400
- version_requirements: !ruby/object:Gem::Requirement
401
- requirements:
402
- - - "~>"
403
- - !ruby/object:Gem::Version
404
- version: '1.5'
405
- - !ruby/object:Gem::Dependency
406
- name: ruby-lsp-rspec
407
- requirement: !ruby/object:Gem::Requirement
408
- requirements:
409
- - - "~>"
410
- - !ruby/object:Gem::Version
411
- version: '0.1'
412
- type: :development
413
- prerelease: false
414
- version_requirements: !ruby/object:Gem::Requirement
415
- requirements:
416
- - - "~>"
417
- - !ruby/object:Gem::Version
418
- version: '0.1'
419
- - !ruby/object:Gem::Dependency
420
- name: solargraph
421
- requirement: !ruby/object:Gem::Requirement
422
- requirements:
423
- - - "~>"
424
- - !ruby/object:Gem::Version
425
- version: '0.50'
426
- type: :development
427
- prerelease: false
428
- version_requirements: !ruby/object:Gem::Requirement
429
- requirements:
430
- - - "~>"
431
- - !ruby/object:Gem::Version
432
- version: '0.50'
433
391
  - !ruby/object:Gem::Dependency
434
392
  name: activerecord
435
393
  requirement: !ruby/object:Gem::Requirement
@@ -1060,7 +1018,7 @@ dependencies:
1060
1018
  - - '='
1061
1019
  - !ruby/object:Gem::Version
1062
1020
  version: 2.0.0
1063
- description:
1021
+ description:
1064
1022
  email:
1065
1023
  - manabu.niseki@gmail.com
1066
1024
  executables:
@@ -1151,6 +1109,7 @@ files:
1151
1109
  - lib/mihari/concerns/configurable.rb
1152
1110
  - lib/mihari/concerns/database_connectable.rb
1153
1111
  - lib/mihari/concerns/error_unwrappable.rb
1112
+ - lib/mihari/concerns/falsepositive_normalizable.rb
1154
1113
  - lib/mihari/concerns/falsepositive_validatable.rb
1155
1114
  - lib/mihari/concerns/refangable.rb
1156
1115
  - lib/mihari/concerns/retriable.rb
@@ -1183,6 +1142,7 @@ files:
1183
1142
  - lib/mihari/entities/reverse_dns.rb
1184
1143
  - lib/mihari/entities/rule.rb
1185
1144
  - lib/mihari/entities/tag.rb
1145
+ - lib/mihari/entities/vulnerability.rb
1186
1146
  - lib/mihari/entities/whois.rb
1187
1147
  - lib/mihari/errors.rb
1188
1148
  - lib/mihari/http.rb
@@ -1198,6 +1158,7 @@ files:
1198
1158
  - lib/mihari/models/rule.rb
1199
1159
  - lib/mihari/models/tag.rb
1200
1160
  - lib/mihari/models/tagging.rb
1161
+ - lib/mihari/models/vulnerability.rb
1201
1162
  - lib/mihari/models/whois.rb
1202
1163
  - lib/mihari/rule.rb
1203
1164
  - lib/mihari/schemas/alert.rb
@@ -1246,8 +1207,8 @@ files:
1246
1207
  - lib/mihari/web/endpoints/tags.rb
1247
1208
  - lib/mihari/web/middleware/capture_exceptions.rb
1248
1209
  - lib/mihari/web/middleware/connection.rb
1249
- - lib/mihari/web/public/assets/index-Guw2aMpk.js
1250
- - lib/mihari/web/public/assets/index-dVaNxqTC.css
1210
+ - lib/mihari/web/public/assets/index-GWurHG1o.js
1211
+ - lib/mihari/web/public/assets/index-ReF8ffd-.css
1251
1212
  - lib/mihari/web/public/assets/mode-yaml-BC4MIiYj.js
1252
1213
  - lib/mihari/web/public/favicon.ico
1253
1214
  - lib/mihari/web/public/index.html
@@ -1256,13 +1217,12 @@ files:
1256
1217
  - mkdocs.yml
1257
1218
  - renovate.json
1258
1219
  - requirements.txt
1259
- - test.json.jbuilder
1260
1220
  homepage: https://github.com/ninoseki/mihari
1261
1221
  licenses:
1262
1222
  - MIT
1263
1223
  metadata:
1264
1224
  rubygems_mfa_required: 'true'
1265
- post_install_message:
1225
+ post_install_message:
1266
1226
  rdoc_options: []
1267
1227
  require_paths:
1268
1228
  - lib
@@ -1278,7 +1238,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
1278
1238
  version: '0'
1279
1239
  requirements: []
1280
1240
  rubygems_version: 3.5.3
1281
- signing_key:
1241
+ signing_key:
1282
1242
  specification_version: 4
1283
1243
  summary: A query aggregator for OSINT based threat hunting
1284
1244
  test_files: []
data/test.json.jbuilder DELETED
@@ -1,7 +0,0 @@
1
- json.query "submit_ioc"
2
- json.threat_type "payload_delivery"
3
- json.ioc_type "domain"
4
- json.malware "foobar"
5
- json.confidence_level 100
6
- json.anonymous 0
7
- json.iocs artifacts.map(&:data)