Module: Yawast

Defined in:
lib/util.rb,
lib/yawast.rb,
lib/version.rb,
lib/shared/uri.rb,
lib/scanner/ssl.rb,
lib/shared/http.rb,
lib/commands/cms.rb,
lib/commands/dns.rb,
lib/commands/ssl.rb,
lib/scanner/core.rb,
lib/commands/head.rb,
lib/commands/scan.rb,
lib/shared/output.rb,
lib/commands/utils.rb,
lib/scanner/generic.rb,
lib/scanner/ssl_labs.rb,
lib/scanner/vuln_scan.rb,
lib/scanner/plugins/dns/caa.rb,
lib/scanner/plugins/ssl/ssl.rb,
lib/scanner/plugins/dns/generic.rb,
lib/scanner/plugins/servers/iis.rb,
lib/scanner/plugins/ssl/sweet32.rb,
lib/scanner/plugins/http/generic.rb,
lib/scanner/plugins/servers/nginx.rb,
lib/scanner/plugins/spider/spider.rb,
lib/scanner/plugins/servers/apache.rb,
lib/scanner/plugins/servers/python.rb,
lib/scanner/plugins/ssl/ssl_labs/info.rb,
lib/scanner/plugins/http/file_presence.rb,
lib/scanner/plugins/ssl/ssl_labs/analyze.rb,
lib/scanner/plugins/http/directory_search.rb,
lib/scanner/plugins/applications/cms/generic.rb,
lib/scanner/plugins/applications/cms/wordpress.rb,
lib/scanner/plugins/applications/framework/php.rb,
lib/scanner/plugins/applications/framework/rails.rb,
lib/scanner/plugins/applications/generic/password_reset.rb

Defined Under Namespace

Modules: Commands, Scanner, Shared Classes: Utilities

Constant Summary collapse

DESCRIPTION =
'The YAWAST Antecedent Web Application Security Toolkit'
HTTP_UA =
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_3) AppleWebKit/537.36 (KHTML, like Gecko) YAWAST/#{VERSION} Chrome/61.0.3163.100 Safari/537.36"
VERSION =
'0.7.2'

Class Method Summary collapse

Class Method Details

.headerObject



32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
# File 'lib/yawast.rb', line 32

def self.header
  # prevent multiple runs
  return if @header

  puts '__   _____  _    _  ___   _____ _____ '
  puts '\ \ / / _ \| |  | |/ _ \ /  ___|_   _|'
  puts ' \ V / /_\ \ |  | / /_\ \\\ `--.  | |  '
  puts '  \ /|  _  | |/\| |  _  | `--. \ | |  '
  puts '  | || | | \  /\  / | | |/\__/ / | |  '
  puts '  \_/\_| |_/\/  \/\_| |_/\____/  \_/  '
  puts ''
  puts "YAWAST v#{VERSION} - #{DESCRIPTION}"
  puts ' Copyright (c) 2013-2019 Adam Caudill <[email protected]>'
  puts ' Support & Documentation: https://github.com/adamcaudill/yawast'
  puts " Ruby #{RUBY_VERSION}-p#{RUBY_PATCHLEVEL}; #{OpenSSL::OPENSSL_VERSION} (#{RUBY_PLATFORM})"
  puts " Started at #{Time.now.strftime('%Y-%m-%d %H:%M:%S %Z')}"

  begin
    version = Yawast::Shared::Http.get_json(URI('https://rubygems.org/api/v1/versions/yawast/latest.json'))['version']

    if version != VERSION
      puts " Latest Version: YAWAST v#{version} is the officially supported version, please update.".blue
    end
  rescue
    # we don't care, this is a best effort check
  end

  puts ''
  @header = true
end

.optionsObject



63
64
65
# File 'lib/yawast.rb', line 63

def self.options
  @options
end

.options=(opts) ⇒ Object



67
68
69
# File 'lib/yawast.rb', line 67

def self.options=(opts)
  @options = opts
end