mihari 5.5.0 → 5.6.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (102) hide show
  1. checksums.yaml +4 -4
  2. data/docs/analyzers/binaryedge.md +1 -1
  3. data/docs/analyzers/censys.md +1 -1
  4. data/docs/analyzers/circl.md +1 -1
  5. data/docs/analyzers/crtsh.md +1 -1
  6. data/docs/analyzers/dnstwister.md +1 -1
  7. data/docs/analyzers/greynoise.md +1 -1
  8. data/docs/analyzers/hunterhow.md +1 -1
  9. data/docs/analyzers/index.md +29 -15
  10. data/docs/analyzers/onyphe.md +1 -1
  11. data/docs/analyzers/otx.md +2 -2
  12. data/docs/analyzers/passivetotal.md +6 -2
  13. data/docs/analyzers/pulsedive.md +2 -2
  14. data/docs/analyzers/securitytrails.md +6 -2
  15. data/docs/analyzers/shodan.md +1 -1
  16. data/docs/analyzers/urlscan.md +3 -3
  17. data/docs/analyzers/virustotal.md +6 -2
  18. data/docs/analyzers/virustotal_intelligence.md +8 -4
  19. data/docs/analyzers/zoomeye.md +5 -0
  20. data/docs/emitters/hive.md +1 -1
  21. data/docs/emitters/slack.md +0 -5
  22. data/docs/enrichers/google_public_dns.md +1 -1
  23. data/docs/enrichers/ipinfo.md +2 -2
  24. data/docs/enrichers/shodan.md +4 -4
  25. data/docs/enrichers/whois.md +1 -1
  26. data/docs/rule.md +1 -4
  27. data/docs/usage.md +5 -2
  28. data/frontend/package-lock.json +3 -3
  29. data/frontend/src/components/ErrorMessage.vue +0 -1
  30. data/frontend/src/components/alert/Alerts.vue +0 -1
  31. data/frontend/src/components/alert/AlertsWithPagination.vue +0 -1
  32. data/frontend/src/components/alert/AlertsWrapper.vue +0 -6
  33. data/frontend/src/components/alert/Form.vue +1 -3
  34. data/frontend/src/components/artifact/Artifact.vue +0 -17
  35. data/frontend/src/components/artifact/ArtifactWrapper.vue +0 -2
  36. data/frontend/src/components/artifact/WhoisRecord.vue +0 -3
  37. data/frontend/src/components/config/ConfigsWrapper.vue +0 -2
  38. data/frontend/src/components/rule/EditRule.vue +0 -3
  39. data/frontend/src/components/rule/EditRuleWrapper.vue +0 -2
  40. data/frontend/src/components/rule/Form.vue +1 -3
  41. data/frontend/src/components/rule/NewRule.vue +0 -3
  42. data/frontend/src/components/rule/Rule.vue +1 -7
  43. data/frontend/src/components/rule/RuleWrapper.vue +0 -2
  44. data/frontend/src/components/rule/RulesWrapper.vue +0 -6
  45. data/frontend/src/swagger.yaml +254 -254
  46. data/lib/mihari/analyzers/base.rb +4 -41
  47. data/lib/mihari/analyzers/circl.rb +1 -1
  48. data/lib/mihari/analyzers/crtsh.rb +1 -1
  49. data/lib/mihari/analyzers/dnstwister.rb +1 -1
  50. data/lib/mihari/analyzers/otx.rb +1 -1
  51. data/lib/mihari/analyzers/passivetotal.rb +10 -1
  52. data/lib/mihari/analyzers/pulsedive.rb +2 -2
  53. data/lib/mihari/analyzers/rule.rb +24 -59
  54. data/lib/mihari/analyzers/securitytrails.rb +10 -1
  55. data/lib/mihari/analyzers/virustotal.rb +11 -2
  56. data/lib/mihari/analyzers/virustotal_intelligence.rb +16 -0
  57. data/lib/mihari/analyzers/zoomeye.rb +2 -2
  58. data/lib/mihari/base.rb +69 -0
  59. data/lib/mihari/cli/main.rb +36 -0
  60. data/lib/mihari/clients/base.rb +2 -2
  61. data/lib/mihari/clients/binaryedge.rb +3 -5
  62. data/lib/mihari/clients/censys.rb +3 -3
  63. data/lib/mihari/clients/circl.rb +5 -4
  64. data/lib/mihari/clients/crtsh.rb +3 -2
  65. data/lib/mihari/clients/dnstwister.rb +3 -2
  66. data/lib/mihari/clients/greynoise.rb +2 -2
  67. data/lib/mihari/clients/hunterhow.rb +2 -2
  68. data/lib/mihari/clients/misp.rb +1 -1
  69. data/lib/mihari/clients/onyphe.rb +2 -2
  70. data/lib/mihari/clients/otx.rb +4 -3
  71. data/lib/mihari/clients/passivetotal.rb +5 -4
  72. data/lib/mihari/clients/publsedive.rb +4 -3
  73. data/lib/mihari/clients/securitytrails.rb +5 -3
  74. data/lib/mihari/clients/shodan.rb +2 -2
  75. data/lib/mihari/clients/the_hive.rb +1 -1
  76. data/lib/mihari/clients/urlscan.rb +4 -4
  77. data/lib/mihari/clients/virustotal.rb +2 -2
  78. data/lib/mihari/clients/zoomeye.rb +2 -2
  79. data/lib/mihari/commands/alert.rb +6 -33
  80. data/lib/mihari/commands/rule.rb +7 -12
  81. data/lib/mihari/commands/search.rb +10 -38
  82. data/lib/mihari/constants.rb +3 -3
  83. data/lib/mihari/emitters/base.rb +3 -33
  84. data/lib/mihari/emitters/database.rb +1 -1
  85. data/lib/mihari/enrichers/base.rb +2 -33
  86. data/lib/mihari/enrichers/google_public_dns.rb +9 -0
  87. data/lib/mihari/schemas/analyzer.rb +24 -24
  88. data/lib/mihari/schemas/emitter.rb +6 -13
  89. data/lib/mihari/schemas/enricher.rb +4 -11
  90. data/lib/mihari/schemas/options.rb +27 -0
  91. data/lib/mihari/schemas/rule.rb +2 -2
  92. data/lib/mihari/services/alert_runner.rb +1 -1
  93. data/lib/mihari/services/rule_runner.rb +1 -11
  94. data/lib/mihari/types.rb +1 -14
  95. data/lib/mihari/version.rb +1 -1
  96. data/lib/mihari/web/public/assets/{index-33165282.css → index-56fc2187.css} +1 -1
  97. data/lib/mihari/web/public/assets/{index-b5d817a3.js → index-9cc489e6.js} +2 -2
  98. data/lib/mihari/web/public/index.html +2 -2
  99. data/lib/mihari.rb +67 -37
  100. data/mihari.gemspec +1 -0
  101. data/mkdocs.yml +0 -3
  102. metadata +20 -4
@@ -1,8 +1,6 @@
1
1
  <template>
2
2
  <Loading v-if="getRuleTask.isRunning"></Loading>
3
-
4
3
  <ErrorMessage v-if="getRuleTask.isError" :error="getRuleTask.last?.error"></ErrorMessage>
5
-
6
4
  <EditRule :rule="getRuleTask.last.value" v-if="getRuleTask.last?.value"></EditRule>
7
5
  </template>
8
6
 
@@ -29,7 +29,6 @@
29
29
  </div>
30
30
  </div>
31
31
  </div>
32
-
33
32
  <div class="columns">
34
33
  <div class="column">
35
34
  <div class="field is-horizontal">
@@ -54,7 +53,6 @@
54
53
  </div>
55
54
  <div class="column"></div>
56
55
  </div>
57
-
58
56
  <div class="columns">
59
57
  <div class="column">
60
58
  <div class="field is-horizontal">
@@ -88,7 +86,7 @@
88
86
  </template>
89
87
 
90
88
  <script lang="ts">
91
- import { defineComponent, type PropType, ref, toRef,watch } from "vue"
89
+ import { defineComponent, type PropType, ref, toRef, watch } from "vue"
92
90
  import { useRoute } from "vue-router"
93
91
 
94
92
  import type { RuleSearchParams } from "@/types"
@@ -1,9 +1,7 @@
1
1
  <template>
2
2
  <div class="column">
3
3
  <h2 class="is-size-2 mb-4">New rule</h2>
4
-
5
4
  <InputForm v-model:yaml="yaml" @update-yaml="updateYAML"></InputForm>
6
-
7
5
  <div class="field is-grouped is-grouped-centered">
8
6
  <p class="control">
9
7
  <a class="button is-primary" @click="create">
@@ -14,7 +12,6 @@
14
12
  </a>
15
13
  </p>
16
14
  </div>
17
-
18
15
  <div v-if="createRuleTask.last?.error">
19
16
  <hr />
20
17
  <ErrorMessage :error="createRuleTask.last?.error"></ErrorMessage>
@@ -4,15 +4,12 @@
4
4
  <Loading></Loading>
5
5
  <hr />
6
6
  </div>
7
-
8
7
  <div v-if="runRuleTask.last?.error">
9
8
  <ErrorMessage :error="runRuleTask.last.error"></ErrorMessage>
10
9
  <hr />
11
10
  </div>
12
-
13
11
  <h2 class="is-size-2 mb-4">Rule</h2>
14
-
15
- <p class="is-clearfix">
12
+ <p class="block is-clearfix">
16
13
  <span class="buttons is-pulled-right">
17
14
  <button class="button is-primary is-light is-small" @click="runRule">
18
15
  <span>Run</span>
@@ -37,12 +34,9 @@
37
34
  </button>
38
35
  </span>
39
36
  </p>
40
-
41
37
  <YAML :yaml="rule.yaml"></YAML>
42
38
  </div>
43
-
44
39
  <hr />
45
-
46
40
  <div class="column">
47
41
  <h2 class="is-size-2 mb-4">Related alerts</h2>
48
42
 
@@ -1,8 +1,6 @@
1
1
  <template>
2
2
  <Loading v-if="getRuleTask.isRunning"></Loading>
3
-
4
3
  <ErrorMessage v-if="getRuleTask.isError" :error="getRuleTask.last?.error"></ErrorMessage>
5
-
6
4
  <Rule :rule="getRuleTask.last.value" @refresh="refresh" v-if="getRuleTask.last?.value"></Rule>
7
5
  </template>
8
6
 
@@ -6,9 +6,7 @@
6
6
  :page="page"
7
7
  :tag="tag"
8
8
  ></FormComponent>
9
-
10
9
  <hr />
11
-
12
10
  <div class="column">
13
11
  <div class="field is-grouped is-grouped-centered">
14
12
  <p class="control">
@@ -22,14 +20,10 @@
22
20
  </div>
23
21
  </div>
24
22
  </div>
25
-
26
23
  <div v-if="getRulesTask.performCount > 0">
27
24
  <hr />
28
-
29
25
  <Loading v-if="getRulesTask.isRunning"></Loading>
30
-
31
26
  <ErrorMessage v-if="getRulesTask.isError" :error="getRulesTask.last?.error"></ErrorMessage>
32
-
33
27
  <Rules
34
28
  :rules="getRulesTask.last.value"
35
29
  v-if="getRulesTask.last?.value"