Commit 07ce178a authored by Kostiantyn Kostiuk's avatar Kostiantyn Kostiuk
Browse files

qga/win32: Use rundll for VSS installation

The custom action uses cmd.exe to run VSS Service installation
and removal which causes an interactive command shell to spawn.
This shell can be used to execute any commands as a SYSTEM user.
Even if call qemu-ga.exe directly the interactive command shell
will be spawned as qemu-ga.exe is a console application and used
by users from the console as well as a service.

As VSS Service runs from DLL which contains the installer and
uninstaller code, it can be run directly by rundll32.exe without
any interactive command shell.

Add specific entry points for rundll which is just a wrapper
for COMRegister/COMUnregister functions with proper arguments.

resolves: https://bugzilla.redhat.com/show_bug.cgi?id=2167423


fixes: CVE-2023-0664 (part 2 of 2)

Signed-off-by: default avatarKonstantin Kostiuk <kkostiuk@redhat.com>
Reviewed-by: default avatarYan Vugenfirer <yvugenfi@redhat.com>
Reported-by: default avatarBrian Wiltse <brian.wiltse@live.com>
parent 88288c2a
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment