Lucene search
K

VMware ThinApp DLL Hijacking

🗓️ 16 Jul 2021 00:00:00Reported by houjingyiType 
packetstorm
 packetstorm
🔗 packetstormsecurity.com👁 273 Views

VMware ThinApp DLL Hijacking Vulnerability Disclosur

Related
Code
ReporterTitlePublishedViews
Family
CNNVD
VMware Thinapp 代码问题漏洞
13 Jul 202100:00
cnnvd
CVE
CVE-2021-22000
13 Jul 202118:01
cve
Cvelist
CVE-2021-22000
13 Jul 202118:01
cvelist
EUVD
EUVD-2021-9170
3 Oct 202520:07
euvd
NVD
CVE-2021-22000
13 Jul 202119:15
nvd
Prion
Design/Logic Flaw
13 Jul 202119:15
prion
RedhatCVE
CVE-2021-22000
9 Jan 202611:21
redhatcve
VMware
VMware ThinApp update addresses a DLL hijacking vulnerability (CVE-2021-22000)
13 Jul 202100:00
vmware
`A few months ago I disclosed IBM(R) Db2(R) Windows client DLL  
Hijacking Vulnerability(0day) I found:  
  
  
https://seclists.org/fulldisclosure/2021/Feb/73  
  
In that post I mentioned the vulnerability did not get fully patched.  
  
After I told IBM on hackerone that I disclosed it, hackerone asked me  
to delete the post, IBM apologized and fully patched the  
vulnerability.  
  
  
But this is not the point today. I found a similar problem in  
VMware-ThinApp-Enterprise-5.2.9-17340778.exe.  
  
After install the software create C:\DummyTLS and rename a dll you  
want to load to dummyTLS.dll and put it to C:\DummyTLS\dummyTLS.dll.  
  
Run "C:\Program Files (x86)\VMware\VMware ThinApp\Setup Capture.exe"  
and C:\DummyTLS\dummyTLS.dll will be loaded.  
(other exe like log_monitor.exe/snapshot.exe vulnerable too).  
  
  
This is also because they use code like:  
  
  
LoadLibraryExW(L"\\DummyTLS\\dummyTLS.dll", 0, 0);  
  
In short, Windows will treat relative path in LoadLibrary(and many  
other functions) as the path rooted relative to the current disk  
designator.  
  
Let us look into code in ntdll.dll. The logic here is:  
KernelBase!LoadLibraryExW->ntdll!LdrpLoadDll->ntdll!LdrpPreprocessDllName.  
In LdrpPreprocessDllName after calling  
RtlDetermineDosPathNameType_Ustr it will return 4(RtlPathTypeRooted).  
  
And after calling LdrpGetFullPath we get "C:\DummyTLS\dummyTLS.dll"!  
  
You should not call LoadLibrary with the relative path. In fact, using  
relative path is dangerous in many cases.  
  
  
This was fixed in 2021-07-13 as CVE-2021-22000 and the advisory is  
here : https://www.vmware.com/security/advisories/VMSA-2021-0015.html.  
  
  
For these vulnerabilities I will post a summary at https://houjingyi233.com.  
  
  
`

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