Sha256: 447af527d07b1871ea641bdfa1cf220d3ca212d7f392cd5c4a8c7da98580e997

Contents?: true

Size: 1.33 KB

Versions: 45

Compression:

Stored size: 1.33 KB

Contents

# frozen_string_literal: true

module WPScan
  module Finders
    module DynamicFinder
      module WpItemVersion
        class BodyPattern < Finders::DynamicFinder::Version::BodyPattern
        end

        class Comment < Finders::DynamicFinder::Version::Comment
        end

        class ConfigParser < Finders::DynamicFinder::Version::ConfigParser
        end

        class HeaderPattern < Finders::DynamicFinder::Version::HeaderPattern
        end

        class JavascriptVar < Finders::DynamicFinder::Version::JavascriptVar
        end

        class QueryParameter < Finders::DynamicFinder::Version::QueryParameter
          # @return [ Regexp ]
          def path_pattern
            # TODO: consider the target.blog.themes_dir if the target is a Theme (maybe implement a WpItem#item_dir ?)
            @path_pattern ||= %r{
              #{Regexp.escape(target.blog.plugins_dir)}/
              #{Regexp.escape(target.slug)}/
              (?:#{self.class::FILES.join('|')})\z
            }ix
          end

          def xpath
            @xpath ||= self.class::XPATH ||
                       "//link[contains(@href,'#{target.slug}')]/@href" \
                       "|//script[contains(@src,'#{target.slug}')]/@src"
          end
        end

        class Xpath < Finders::DynamicFinder::Version::Xpath
        end
      end
    end
  end
end

Version data entries

45 entries across 45 versions & 1 rubygems

Version Path
wpscan-3.8.28 lib/wpscan/finders/dynamic_finder/wp_item_version.rb
wpscan-3.8.27 lib/wpscan/finders/dynamic_finder/wp_item_version.rb
wpscan-3.8.26 lib/wpscan/finders/dynamic_finder/wp_item_version.rb
wpscan-3.8.25 lib/wpscan/finders/dynamic_finder/wp_item_version.rb
wpscan-3.8.24 lib/wpscan/finders/dynamic_finder/wp_item_version.rb
wpscan-3.8.22 lib/wpscan/finders/dynamic_finder/wp_item_version.rb
wpscan-3.8.21 lib/wpscan/finders/dynamic_finder/wp_item_version.rb
wpscan-3.8.20 lib/wpscan/finders/dynamic_finder/wp_item_version.rb
wpscan-3.8.19 lib/wpscan/finders/dynamic_finder/wp_item_version.rb
wpscan-3.8.18 lib/wpscan/finders/dynamic_finder/wp_item_version.rb
wpscan-3.8.17 lib/wpscan/finders/dynamic_finder/wp_item_version.rb
wpscan-3.8.16 lib/wpscan/finders/dynamic_finder/wp_item_version.rb
wpscan-3.8.15 lib/wpscan/finders/dynamic_finder/wp_item_version.rb
wpscan-3.8.14 lib/wpscan/finders/dynamic_finder/wp_item_version.rb
wpscan-3.8.13 lib/wpscan/finders/dynamic_finder/wp_item_version.rb
wpscan-3.8.12 lib/wpscan/finders/dynamic_finder/wp_item_version.rb
wpscan-3.8.11 lib/wpscan/finders/dynamic_finder/wp_item_version.rb
wpscan-3.8.10 lib/wpscan/finders/dynamic_finder/wp_item_version.rb
wpscan-3.8.9 lib/wpscan/finders/dynamic_finder/wp_item_version.rb
wpscan-3.8.8 lib/wpscan/finders/dynamic_finder/wp_item_version.rb