Class: Mihari::Emitters::Attachment
- Inherits:
-
Object
- Object
- Mihari::Emitters::Attachment
- Includes:
- Mem
- Defined in:
- lib/mihari/emitters/slack.rb
Instance Attribute Summary collapse
-
#data ⇒ Object
readonly
Returns the value of attribute data.
-
#data_type ⇒ Object
readonly
Returns the value of attribute data_type.
Instance Method Summary collapse
- #actions ⇒ Object
- #censys_link ⇒ Object
-
#initialize(data:, data_type:) ⇒ Attachment
constructor
A new instance of Attachment.
- #shodan_link ⇒ Object
- #to_a ⇒ Array
- #urlscan_link ⇒ Object
- #vt_link ⇒ Object
Constructor Details
#initialize(data:, data_type:) ⇒ Attachment
Returns a new instance of Attachment.
16 17 18 19 |
# File 'lib/mihari/emitters/slack.rb', line 16 def initialize(data:, data_type:) @data = data @data_type = data_type end |
Instance Attribute Details
#data ⇒ Object (readonly)
Returns the value of attribute data.
14 15 16 |
# File 'lib/mihari/emitters/slack.rb', line 14 def data @data end |
#data_type ⇒ Object (readonly)
Returns the value of attribute data_type.
14 15 16 |
# File 'lib/mihari/emitters/slack.rb', line 14 def data_type @data_type end |
Instance Method Details
#actions ⇒ Object
21 22 23 |
# File 'lib/mihari/emitters/slack.rb', line 21 def actions [vt_link, urlscan_link, censys_link, shodan_link].compact end |
#censys_link ⇒ Object
37 38 39 40 41 |
# File 'lib/mihari/emitters/slack.rb', line 37 def censys_link return nil unless _censys_link { type: "button", text: "Censys", url: _censys_link } end |
#shodan_link ⇒ Object
43 44 45 46 47 |
# File 'lib/mihari/emitters/slack.rb', line 43 def shodan_link return nil unless _shodan_link { type: "button", text: "Shodan", url: _shodan_link } end |
#to_a ⇒ Array
50 51 52 53 54 55 56 57 58 |
# File 'lib/mihari/emitters/slack.rb', line 50 def to_a [ { text: defanged_data, fallback: "VT & urlscan.io links", actions: actions } ] end |
#urlscan_link ⇒ Object
31 32 33 34 35 |
# File 'lib/mihari/emitters/slack.rb', line 31 def urlscan_link return nil unless _urlscan_link { type: "button", text: "urlscan.io", url: _urlscan_link } end |
#vt_link ⇒ Object
25 26 27 28 29 |
# File 'lib/mihari/emitters/slack.rb', line 25 def vt_link return nil unless _vt_link { type: "button", text: "VirusTotal", url: _vt_link } end |