Files

WpPlugins

Public Instance Methods

plugins_from_aggressive_detection(options) click to toggle source

Enumerate installed plugins.

return array of WpPlugin

# File lib/wpscan/modules/wp_plugins.rb, line 24
def plugins_from_aggressive_detection(options)
  options[:file]          = "#{DATA_DIR}/plugins.txt"
  options[:vulns_file]    = "#{DATA_DIR}/plugin_vulns.xml"
  options[:vulns_xpath]   = "//plugin[@name='#{@name}']/vulnerability"
  options[:vulns_xpath_2] = "//plugin"
  options[:type]          = "plugins"
  result                  = WpDetector.aggressive_detection(options)
  plugins = []
  result.each do |r|
    plugins << WpPlugin.new(
        :url            => r[:url],
        :path           => r[:path],
        :wp_content_dir => r[:wp_content_dir],
        :name           => r[:name]
    )
  end
  plugins.sort_by { |p| p.name }
end
plugins_from_passive_detection(wp_content_dir) click to toggle source

code.google.com/p/wpscan/issues/detail?id=42 plugins can be found in the source code :

<script src='http://example.com/wp-content/plugins/s2member/...' />
<link rel='stylesheet' href='http://example.com/wp-content/plugins/wp-minify/..' type='text/css' media='screen'/>
...

return array of WpPlugin

# File lib/wpscan/modules/wp_plugins.rb, line 49
def plugins_from_passive_detection(wp_content_dir)
  plugins = []
  temp = WpDetector.passive_detection(url(), "plugins", wp_content_dir)

  temp.each do |item|
    plugins << WpPlugin.new(
        :url            => item[:url],
        :name           => item[:name],
        :path           => item[:path],
        :wp_content_dir => wp_content_dir
    )
  end
  plugins.sort_by { |p| p.name }
end

[Validate]

Generated with the Darkfish Rdoc Generator 2.