lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Message-ID: <7f9b2304efceb110c45c6aabadfd5943@rkw.io>
Date: Mon, 17 Jul 2017 09:47:28 +0100
From: Mark Wadham <fd@....io>
To: fulldisclosure@...lists.org
Subject: [FD] CVE-2017-7642 Local root privesc in Hashicorp
 vagrant-vmware-fusion <= 4.0.20

I'm a big fan of Hashicorp but this is an awful bug to have in software 
of their
calibre.

POC: 
https://m4.rkw.io/blog/cve20177642-local-root-privesc-in-hashicorp-vagrantvmwarefusion--4020.html

Their vagrant plugin for vmware fusion uses a product called Ruby 
Encoder to
protect their proprietary ruby code.  It does this by turning the ruby 
code into
bytecode and executing it directly.

Unfortunately the execution chain necessary for this to work is not 
safe.  After
installing the plugin, the first time you "vagrant up" any vagrant file 
using
vmware fusion it will create some files in
~/.vagrant.d/gems/2.2.5/gems/vagrant-vmware-fusion-4.0.18/bin:

vagrant_vmware_desktop_sudo_helper
vagrant_vmware_desktop_sudo_helper_wrapper_darwin_386
vagrant_vmware_desktop_sudo_helper_wrapper_darwin_amd64
vagrant_vmware_desktop_sudo_helper_wrapper_linux_386
vagrant_vmware_desktop_sudo_helper_wrapper_linux_amd64

The first one is an encoded ruby script, the others are "sudo helper" 
binaries
for the different platforms supported by the plugin.  Of these sudo 
helpers,
the one that corresponds to your platform will be made suid root when 
vagrant up
is run.

Unfortunately the helper calls the ruby script with system("ruby <script 
path>")
- i.e. it doesn't verify the path to the ruby script and it doesn't 
scrub the
PATH variable either.  We can easily exploit this to get root.

Hashicorp were quick to respond and kindly paid me a small bounty for my 
trouble.

The issue was acknowledged by Hashicorp on 08/04/17 and fixed on 
14/07/17.

_______________________________________________
Sent through the Full Disclosure mailing list
https://nmap.org/mailman/listinfo/fulldisclosure
Web Archives & RSS: http://seclists.org/fulldisclosure/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ