This module attempts to gain root privileges by exploiting a Python code injection vulnerability in blueman versions prior to 2.0.3. The `org.blueman.Mechanism.EnableNetwork` D-Bus interface exposes the `set_dhcp_handler` function which uses user input in a call to `eval`, without sanitization, resulting in arbitrary code execution as root. This module has been tested successfully with blueman version 1.23 on Debian 8 Jessie (x64).
Linux
x86, x64, armle, aarch64, ppc, mipsle, mipsbe
To display the available options, load the module within the Metasploit console and run the commands 'show options' or 'show advanced':
msf > use exploit/linux/local/blueman_set_dhcp_handler_dbus_priv_esc
msf exploit(blueman_set_dhcp_handler_dbus_priv_esc) > show targets
...targets...
msf exploit(blueman_set_dhcp_handler_dbus_priv_esc) > set TARGET < target-id >
msf exploit(blueman_set_dhcp_handler_dbus_priv_esc) > show options
...show and set options...
msf exploit(blueman_set_dhcp_handler_dbus_priv_esc) > exploit
Time is precious, so I don’t want to do something manually that I can automate. Leveraging the Metasploit Framework when automating any task keeps us from having to re-create the wheel as we can use the existing libraries and focus our efforts where it matters.
– Jim O’Gorman | President, Offensive Security