Sha256: 75b6371a7b03c37d5f1a6e6b16722b788cca65ff2b5c755ce8bcbf0c682cf0aa

Contents?: true

Size: 1.34 KB

Versions: 19

Compression:

Stored size: 1.34 KB

Contents

require 'cms_scanner/finders/finder/smart_url_checker/findings'

module CMSScanner
  module Finders
    class Finder
      # Smart URL Checker
      module SmartURLChecker
        # @param [ Array<String> ] urls
        # @param [ Hash ] opts
        #
        # @return []
        def process_urls(_urls, _opts = {})
          fail NotImplementedError
        end

        # @param [ Hash ] opts
        #
        # @return [ Array<Finding> ]
        def passive(opts = {})
          process_urls(passive_urls(opts), opts)
        end

        # @param [ Hash ] opts
        #
        # @return [ Array<String> ]
        def passive_urls(_opts = {})
          target.in_scope_urls(NS::Browser.get_and_follow_location(target.url), passive_urls_xpath)
        end

        # @return [ String ]
        def passive_urls_xpath
          fail NotImplementedError
        end

        # @param [ Hash ] opts
        #
        # @return [ Array<Finding> ]
        def aggressive(opts = {})
          # To avoid scanning the same twice
          urls = aggressive_urls(opts)
          urls -= passive_urls(opts) if opts[:mode] == :mixed

          process_urls(urls, opts)
        end

        # @param [ Hash ] opts
        #
        # @return [ Array<String> ]
        def aggressive_urls(_opts = {})
          fail NotImplementedError
        end
      end
    end
  end
end

Version data entries

19 entries across 19 versions & 1 rubygems

Version Path
cms_scanner-0.0.30 lib/cms_scanner/finders/finder/smart_url_checker.rb
cms_scanner-0.0.29 lib/cms_scanner/finders/finder/smart_url_checker.rb
cms_scanner-0.0.28 lib/cms_scanner/finders/finder/smart_url_checker.rb
cms_scanner-0.0.27 lib/cms_scanner/finders/finder/smart_url_checker.rb
cms_scanner-0.0.26 lib/cms_scanner/finders/finder/smart_url_checker.rb
cms_scanner-0.0.25 lib/cms_scanner/finders/finder/smart_url_checker.rb
cms_scanner-0.0.24 lib/cms_scanner/finders/finder/smart_url_checker.rb
cms_scanner-0.0.23 lib/cms_scanner/finders/finder/smart_url_checker.rb
cms_scanner-0.0.22 lib/cms_scanner/finders/finder/smart_url_checker.rb
cms_scanner-0.0.21 lib/cms_scanner/finders/finder/smart_url_checker.rb
cms_scanner-0.0.20 lib/cms_scanner/finders/finder/smart_url_checker.rb
cms_scanner-0.0.19 lib/cms_scanner/finders/finder/smart_url_checker.rb
cms_scanner-0.0.18 lib/cms_scanner/finders/finder/smart_url_checker.rb
cms_scanner-0.0.17 lib/cms_scanner/finders/finder/smart_url_checker.rb
cms_scanner-0.0.16 lib/cms_scanner/finders/finder/smart_url_checker.rb
cms_scanner-0.0.15 lib/cms_scanner/finders/finder/smart_url_checker.rb
cms_scanner-0.0.14 lib/cms_scanner/finders/finder/smart_url_checker.rb
cms_scanner-0.0.13 lib/cms_scanner/finders/finder/smart_url_checker.rb
cms_scanner-0.0.12 lib/cms_scanner/finders/finder/smart_url_checker.rb