Class: CMSScanner::Target::Scope

Inherits:
Object
  • Object
show all
Defined in:
lib/cms_scanner/target/scope.rb

Overview

Scope Implementation

Instance Method Summary collapse

Instance Method Details

#<<(element) ⇒ Object



59
60
61
62
63
64
65
# File 'lib/cms_scanner/target/scope.rb', line 59

def <<(element)
  if PublicSuffix.valid?(element)
    domains << PublicSuffix.parse(element)
  else
    invalid_domains << element
  end
end

#domainsArray<PublicSuffix::Domain ] The valid domains in scope

Returns Array<PublicSuffix::Domain ] The valid domains in scope.

Returns:



50
51
52
# File 'lib/cms_scanner/target/scope.rb', line 50

def domains
  @domains ||= []
end

#include?(host) ⇒ Boolean

Returns Wether or not the host is in the scope.

Returns:

  • (Boolean)

    Wether or not the host is in the scope



68
69
70
71
72
73
74
75
76
77
78
# File 'lib/cms_scanner/target/scope.rb', line 68

def include?(host)
  if PublicSuffix.valid?(host)
    domain = PublicSuffix.parse(host)

    domains.each { |d| return true if domain.match(d) }
  else
    invalid_domains.each { |d| return true if host == d }
  end

  false
end

#invalid_domainsArray<String>

Returns The invalid domains in scope (such as IP addresses etc).

Returns:

  • (Array<String>)

    The invalid domains in scope (such as IP addresses etc)



55
56
57
# File 'lib/cms_scanner/target/scope.rb', line 55

def invalid_domains
  @invalid_domains ||= []
end