SketchUp Desktop is an intuitive tool focused on 3D conceptual design and in-depth modeling. Its iconic “Push/Pull” operation makes creating and modifying models exceptionally simple and efficient. It primarily serves professionals who need to quickly visualize spatial ideas, including architects, interior and landscape designers for design iteration, woodworkers and product designers for precise modeling, and meets the demands of film and gaming industries for rapid scene creation. Simultaneously, it is also highly popular among DIY enthusiasts and students, serving as an ideal bridge connecting initial inspiration with 3D results.
Vulnerability Description
A DLL Hijacking vulnerability exists in Trimble SketchUp desktop 2025. An attacker can create a malicious libcef.dll file and place it in a specific location (e.g., the SketchUp application’s installation directory or a system path). When the SketchUp application launches or the sketchup_webhelper.exe process starts and attempts to load libcef.dll, it may erroneously load the attacker-provided malicious libcef.dll instead of the legitimate one. Once the malicious DLL is loaded, the attacker can execute arbitrary code on the victim’s computer, thereby gaining full control over the victim’s system.
After downloading, locate the sketchup_webhelper.exe program in the software directory.
The program does not specify a full path when loading the libcef.dll DLL, causing Windows to search for the DLL according to a specific search order.
An attacker can place a malicious DLL file (e.g., libcef.dll) in a higher-priority location within the program’s search path and implement an export function with the same name, thereby hijacking the program’s execution flow.
For example:
When the program is executed, it will load this malicious DLL, and our demonstration pop-up window will be displayed.
Additionally, we can leverage this to deploy remote control tools such as Cobalt Strike.
{ switch (ul_reason_for_call) { case DLL_PROCESS_ATTACH: case DLL_THREAD_ATTACH: case DLL_THREAD_DETACH: case DLL_PROCESS_DETACH: break; } return TRUE; }
We only need to embed the malicious code within the following export function:
{ switch (ul_reason_for_call) { case DLL_PROCESS_ATTACH: case DLL_THREAD_ATTACH: case DLL_THREAD_DETACH: case DLL_PROCESS_DETACH: break; } return TRUE; }
Place this (the malicious DLL) in the same directory as sketchup_webhelper.exe and rename it to libcef.dll.
Upon execution (of sketchup_webhelper.exe), the C2 connection will be established.
Affected Versions
Version:Trimble SketchUp desktop 2025 (and potentially earlier versions if the vulnerability exists in shared components)
Impact Description:The core user base for SketchUp Desktop includes all professionals and enthusiasts who need to quickly visualize spatial and form ideas. If SketchUp is subjected to DLL hijacking, an attacker can leverage its legitimate process identity to steal core design files and business secrets. Furthermore, with the software’s elevated privileges, the attacker could manipulate the system, encrypt files for ransom, or corrupt project models. All of this would occur under the guise of the software functioning normally, leading to catastrophic consequences for designers in terms of intellectual property and economic loss.