# frozen_string_literal: true module WPScan # References module (which should be included along with the CMSScanner::References) # to allow the use of the wpvulndb reference. module References extend ActiveSupport::Concern # See ActiveSupport::Concern module ClassMethods # @return [ Array ] def references_keys @references_keys ||= super << :wpvulndb end end def references_urls wpvulndb_urls + super end def wpvulndb_ids references[:wpvulndb] || [] end def wpvulndb_urls wpvulndb_ids.reduce([]) { |acc, elem| acc << wpvulndb_url(elem) } end def wpvulndb_url(id) "https://wpvulndb.com/vulnerabilities/#{id}" end end end