Signed and RequireAdministrator manifested executable being run from temp folder?
Posted
by Ian Boyd
on Stack Overflow
See other posts from Stack Overflow
or by Ian Boyd
Published on 2010-05-13T13:48:25Z
Indexed on
2010/05/13
13:54 UTC
Read the original article
Hit count: 275
i manifested my executable as require administrator:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<!-- Disable Windows Vista UAC compatability heuristics -->
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
<security>
<requestedPrivileges>
<requestedExecutionLevel level="requireAdministrator"/>
</requestedPrivileges>
</security>
</trustInfo>
</assembly>
And then i digitally signed it.
But then when i run the executable i noticed something odd: the name of the executable on the Consent dialog changed from PingWarning.exe
to pinxxxx.tmp
; as though a temp copy was made, and that is being run:
i dug out Process Montior, to see if anyone is creating a *.tmp file when i launch my executable, and there is:
The Application Information service inside this particular svchost
container is intentionally copying my executable to the Windows temp folder, and asking for user "Consent" from there; giving an invalid filename.
Once consent has been granted, the executable is run from its original location: link text
The file is not copied to the temp folder if i do not digitally sign it:
So my problem is the invalid filename appearing on the consent dialog when i digitally sign my executable which has been manifested as requireAdministrator
.
What do?
© Stack Overflow or respective owner