Anyone know how complete an experience am I supposed to be expecting
in response to setting up a test signing scenario, such as is
described in Kernel-Mode Code Signing (KMCS) Walkthrough (06JUL2006)
(http://www.microsoft.com/whdc/winlogo/drvsign/kmcs_walkthrough.mspx).
I’m creating software-only drivers as components of a NetClient-class
driver installed via INetCfg.
When manually registering an x64 driver as a service Windows will
start (i.e. not using an INF to install the driver; just create a
properly-formatted service entry), having the driver test-signed and
TESTSIGNING mode enabled via BCDEDIT appears to work as expected, and
Windows does not fail loading the driver due to signature verification
at boot time.
Now we’re finally starting to use the actual .INF-based install for
the driver, and in the test-signing scenario we still see the “Windows
can’t verify the publisher of this driver software” approval dialog
when we’re using INetCfg to request that our NetClient-class driver be
installed.
The only question is whether this prompt was, or was not, supposed to
still be seen when installing a driver via an .INF in the case where
TESTSIGNING mode is enabled.
Approving the dialog allows install to proceed, but that’s not unique
to TESTSIGNING mode. (Could already do that, even unsigned.)
TESTSIGNING mode clearly is letting the driver actually load in
kernel-mode, but what effect if any should have occurred during the
processing of the INF.
The KMCS walkthrough document was specific on what dialogs I expected
to see in a release-signed environment, but simply says things like
“click next in the next two pages” when describing the test-signed
experience, so I don’t know if what I’m seeing is unexpected or not.
Assume the KMCS walkthrough document was followed for setting up the
test-signing scenario; i.e. the self-generated test certificate has
been installed under Trusted Publisher, the certificate for Root
Agency that issued the self-generated certificate has been installed
under Trusted Root Certification Authorities, SIGNTOOL.EXE VERIFY /PA
confirms that the .INF and catalog have been properly signed and
verify successfully according to the Authenticode policy (on the same
machine that I subsequently attempt to install on), etc.
Alan Adams