Path: blob/master/app/finders/wp_version/atom_generator.rb
485 views
# frozen_string_literal: true12module WPScan3module Finders4module WpVersion5# Atom Generator Version Finder6class AtomGenerator < 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.css('generator').each do |node|16next unless node.text.to_s.strip.casecmp('wordpress').zero?1718found << create_version(19node['version'],20found_by: found_by,21entries: ["#{res.effective_url}, #{node.to_s.strip}"]22)23end24end2526found27end2829def passive_urls_xpath30'//link[@rel="alternate" and @type="application/atom+xml"]/@href'31end3233def aggressive_urls(_opts = {})34%w[feed/atom/ ?feed=atom].reduce([]) do |a, uri|35a << target.url(uri)36end37end38end39end40end41end424344