Path: blob/master/app/finders/wp_version/rdf_generator.rb
485 views
# frozen_string_literal: true12module WPScan3module Finders4module WpVersion5# RDF Generator Version Finder6class RDFGenerator < CMSScanner::Finders::Finder7include Finder::WpVersion::SmartURLChecker89def process_urls(urls, _opts = {})10found = Findings.new1112urls.each do |url|13res = Browser.get_and_follow_location(url)1415res.html.xpath('//generatoragent').each do |node|16next unless node['rdf:resource'] =~ %r{\Ahttps?://wordpress\.(?:[a-z.]+)/\?v=(.*)\z}i1718found << create_version(19Regexp.last_match[1],20found_by: found_by,21entries: ["#{res.effective_url}, #{node.to_s.strip}"]22)23end24end2526found27end2829def passive_urls_xpath30'//a[contains(@href, "/rdf")]/@href'31end3233def aggressive_urls(_opts = {})34[target.url('feed/rdf/')]35end36end37end38end39end404142