Class: Mihari::Analyzers::CIRCL

Inherits:
Base
  • Object
show all
Includes:
Mixins::Refang
Defined in:
lib/mihari/analyzers/circl.rb

Constant Summary

Constants included from Mixins::Retriable

Mixins::Retriable::DEFAULT_ON

Instance Attribute Summary collapse

Attributes inherited from Base

#ignore_old_artifacts, #ignore_threshold

Instance Method Summary collapse

Methods included from Mixins::Refang

#refang

Methods inherited from Base

#description, inherited, #normalized_artifacts, #run, #run_emitter, #source, #tags, #title

Methods included from Mixins::Retriable

#retry_on_error

Methods included from Mixins::Database

#with_db_connection

Methods included from Mixins::Configurable

#configuration_values

Methods included from Mixins::AutonomousSystem

#normalize_asn

Constructor Details

#initialize(*args, **kwargs) ⇒ CIRCL

Returns a new instance of CIRCL.



21
22
23
24
25
26
27
28
29
# File 'lib/mihari/analyzers/circl.rb', line 21

def initialize(*args, **kwargs)
  super

  @query = refang(query)
  @type = TypeChecker.type(query)

  @username = kwargs[:username] || Mihari.config.circl_passive_username
  @password = kwargs[:password] || Mihari.config.circl_passive_password
end

Instance Attribute Details

#passwordString? (readonly)

Returns:

  • (String, nil)


19
20
21
# File 'lib/mihari/analyzers/circl.rb', line 19

def password
  @password
end

#typeString? (readonly)

Returns:

  • (String, nil)


13
14
15
# File 'lib/mihari/analyzers/circl.rb', line 13

def type
  @type
end

#usernameString? (readonly)

Returns:

  • (String, nil)


16
17
18
# File 'lib/mihari/analyzers/circl.rb', line 16

def username
  @username
end

Instance Method Details

#artifactsObject



31
32
33
# File 'lib/mihari/analyzers/circl.rb', line 31

def artifacts
  search || []
end

#configured?Boolean

Returns:

  • (Boolean)


35
36
37
# File 'lib/mihari/analyzers/circl.rb', line 35

def configured?
  configuration_keys.all? { |key| Mihari.config.send(key) } || (username? && password?)
end