Wacom_Tablet.exe, Remove.exe, WTabletServicePro.exe, ...).WacomDesktopCenter.exe, which runs and performs its operations with the privileges of the current user.%ProgramFiles%\Tablet\Wacom\Wacom_Tablet.exe is triggered and runs under the context of SYSTEM.update.xml file from a Wacom server (http://link.wacom.com/wdc/update.xml) and, if the file get downloaded properly, Wacom_Tablet.exe saves it, without impersonating the current user, into the %windir%\Temp\wactemp folder.wactemp folder isn't created during the Wacom Driver installation therefore, the first time a Wacom device will be plugged in, and Wacom_Tablet.exe will be able to download the update.xml file from the Wacom server, the wactemp folder will be created (and it will no longer be deleted because it will be used to store the updated versions of the update.xml file) and the downloaded update.xml file will be saved in it.wactemp folder and the update.xml file in the following image, obtained by analyzing with Process Monitor the first Wacom device plugging event.
%windir%\Temp\wactemp NTFS volume mount point before that happens?%windir%\Temp folder...Wacom_Tablet.exe creates the wactemp folder only once because it will no longer be deleted after the first creation.
Wacom_Tablet.exe saves the downloaded update.xml file into the wactemp folder, if an older version of the update.xml is already present, it will be overwritten by the new one.
%windir%\Temp\wactemp mount point isn't created before Wacom_Tablet.exe creates the %windir%\Temp\wactemp folder, it will no longer be possible to create it, because the regular user cannot delete the folders\files stored in the %windir%\Temp folder.
update.xml file download process fails for some reason, the wactemp folder and the update.xml file will not be created.
Wacom_Tablet.exe tries to repeat the update.xml file download and save procedure even during the Wacom device unplugging event.
update.xml file is necessary to understand if an update of the Wacom Driver (or some of its components related to the Wacom device used by the user) is available, and if the update is supported by the current version of the operating system.update.xml is no longer available on the Wacom server and you want to analyze it, I saved a copy here (downloaded on 2022-08-27).
Wacom_Tablet.exe repeats the update.xml file download and save procedure every time a Wacom device is plugged\unplugged to the PC because it wants to check if there are updates for that particular device and, the data of a Wacom device, is collected at the time of its plugging\unplugging.%windir%\Temp\wactemp NTFS volume mount point to \RPC Control before Wacom_Tablet.exe creates the %windir%\Temp\wactemp folder.\RPC Control\update.xml to a file we want to write\overwrite (in my POC I used %windir%\win.ini).Wacom_Tablet.exe will be triggered, download the update.xml file from the Wacom server (if the PC is connected to the Internet), create the wactemp folder (if it hasn't already been created) and save the downloaded update.xml file in it.%windir%\Temp\wactemp mount point, when Wacom_Tablet.exe will try to save the update.xml file into %windir%\Temp\wactemp, it will consider our mount point as a valid wactemp folder and try to write the downloaded update.xml file in it.%windir%\Temp\wactemp is a mount point to \RPC Control, Wacom_Tablet.exe will be redirected (reparsed) and will try to write \RPC Control\update.xml.\RPC Control\update.xml is a symbolic link to our target file (eg %windir%\win.ini), Wacom_Tablet.exe will be redirected again, and will write\overwrite the target file (and it will succeed because it's running under the context of SYSTEM) with the content of the downloaded update.xml.Wacom_Tablet.exe will create it and write the content of the downloaded update.xml in it, otherwise it will overwrite the contents of the already existing file with the content of the downloaded update.xml.Wacom_Tablet.exe reparsed to the target file after creating the wactemp mountpoint and plugging, for the first time, a Wacom device.
%windir%\win.ini).
%windir%\Temp\wactemp mount point to \RPC Control.
\RPC Control\update.xml symbolic link to %windir%\win.ini.
Wacom_Tablet.exe is triggered (and runs under the context of SYSTEM).
Wacom_Tablet.exe will download the update.xml file from a Wacom server and try to save it into the %windir%\Temp\wactemp folder.
%windir%\Temp\wactemp is a mount point to \RPC Control, Wacom_Tablet.exe will be redirected and will try to write \RPC Control\update.xml.
\RPC Control\update.xml is a symbolic link to %windir%\win.ini, Wacom_Tablet.exe will be redirected again, and will overwrite %windir%\win.ini with the content of the downloaded update.xml.
CreateMountPoint.exe "C:\Windows\Temp\wactemp" "\RPC Control" with CreateMountPoint.exe "%windir%\Temp\wactemp" "\RPC Control".CreateMountPoint.exe and CreateSymlink.exe are programs developed by James Forshaw and are downloadable from his symboliclink-testing-tools repository, respectively here and here.
Wacom_Tablet.exe is Wacom Intuos Small Graphic Tablet, but any Wacom device should be fine.
%windir%\Temp\wactemp mount point before Wacom_Tablet.exe creates the %windir%\Temp\wactemp folder (otherwise we'll not be able to create the mount point).
Wacom_Tablet.exe will not be able to download the update.xml file).
Wacom_Tablet.exe).
Wacom_Tablet.exe has never been triggered and, consequently, the %windir%\Temp\wactemp folder has not been created yet.
%windir%\Temp\wactemp mount point before the system administrator installs the Wacom Driver.Wacom_Tablet.exe without plugging or unplugging a Wacom device?Wacom_Tablet.exe, forcing it to download the update.xml file, but I didn't find anything interesting.Wacom_Tablet.exe without plugging or unplugging a Wacom device, is to simulate (through a software) the Wacom USB device plugging (or unplugging) event.Wacom_Tablet.exe.VID = 0x056A and PID = 0x0376 (taken from the string USB\VID_056A&PID_0376 (read this file to figure out how to get that string))) and tried to reproduce the captured packets back.Wacom_Tablet.exe without connecting any real device but, at the moment, I don't have the time to understand where the catch is.%windir%\system32\cng.sys file (or folder)) to prevent Windows from booting and bring up the famous BSoD.
%windir%\system32\cng.sys when we're asked which file we want to overwrite.%windir%\system32\cng.sys doesn't exist in standard Windows installations, it will be created and, the next time Windows starts, the BSoD will be displayed (and the auto-repair Windows procedure won't be able to fix the problem).
cng.sys?cng.sys file doesn't exist in the %windir%\system32 folder, because it's installed into %windir%\system32\drivers folder, and only TrustedInstaller has full access on it.cng.sys is a very important Windows kernel driver, the operating system loads it from %windir%\system32\drivers at startup but, if another cng.sys file (or folder) exists in the %windir%\system32 folder, Windows loads it as well!%windir%\system32\cng.sys is a fake file (or a folder), the operating system crashes during its loading, bringing up the BSoD.cng.sys file first in the %windir%\system32 folder and then in the %windir%\system32\drivers (or it follows another order but, at some point, it tries to load the %windir%\system32\cng.sys file anyway).cng.sys only from the right folder. Can it be because in previous versions of Windows it was located in %windir%\system32, and then it was moved to %windir%\system32\drivers but the developers forgot to update its folders search order?cng.sys?%windir%\Temp\wactemp folder directly during the Wacom Driver installation process, so that the user can't create a mount point in its place.Wacom_Tablet.exe to impersonate the user while creating the %windir%\Temp\wactemp\update.xml file.Wacom_Tablet.exe will be redirected, it will only be able to write\overwrite files that the user can already write\overwrite on his own.
wactemp folder under %ProgramFiles%\Tablet\Wacom\ (where the user doesn't have write access).
%windir%\Temp\wactemp isn't a symbolic link before creating the update.xml file in it.