Why is signing drivers such a mess?

Why… you ask us on the list, of course. WE can tell “smart” versus “stupid”!

Peter
OSR

explain to me why user level “drivers” need to be signed.

if i buy a printer i want it to print, not ask me or not tell me why
it is screwing up.

if i use said printer and it had malware in user land it’s not gonna kill me.

brucee

On Tue, Jan 5, 2010 at 12:31 PM, wrote:
>


>
> Why… you ask us on the list, of course. ?WE can tell “smart” versus “stupid”!
>
> Peter
> OSR
>
>
> —
> NTDEV is sponsored by OSR
>
> For our schedule of WDF, WDM, debugging and other seminars visit:
> http://www.osr.com/seminars
>
> To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer
>

Bruce Ellis wrote:

explain to me why user level “drivers” need to be signed.

if i buy a printer i want it to print, not ask me or not tell me why
it is screwing up.

if i use said printer and it had malware in user land it’s not gonna kill me.

Are you sure? It is driving a piece of hardware. If that user-mode
driver happens to cause the printer to overheat and catch fire, it’s no
different than a kernel-mode driver that causes your DVD to eject with
enough speed to cut you. In both cases, you are going to want to start
taking names to give to your lawyer. THAT’S what a signature provides.

I’m telling you, it’s for liability, not reliability.


Tim Roberts, xxxxx@probo.com
Providenza & Boekelheide, Inc.

One reason is that the driver is injected into every process that prints. It can also run on your server or in the spooler process which can have higher privs than the printing process

d

-----Original Message-----
From: Bruce Ellis
Sent: Monday, January 04, 2010 5:52 PM
To: Windows System Software Devs Interest List
Subject: Re: [ntdev] Why is signing drivers such a mess?

explain to me why user level “drivers” need to be signed.

if i buy a printer i want it to print, not ask me or not tell me why
it is screwing up.

if i use said printer and it had malware in user land it’s not gonna kill me.

brucee

On Tue, Jan 5, 2010 at 12:31 PM, wrote:
>


>
> Why… you ask us on the list, of course. WE can tell “smart” versus “stupid”!
>
> Peter
> OSR
>
>
> —
> NTDEV is sponsored by OSR
>
> For our schedule of WDF, WDM, debugging and other seminars visit:
> http://www.osr.com/seminars
>
> To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer
>


NTDEV is sponsored by OSR

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer

Actually, kernel mode printer drivers have been deprecated for on the order of nearly ~10 years now, since win2k. Support for them was completely dropped with Vista.

  • S

-----Original Message-----
From: Bruce Ellis
Sent: Monday, January 04, 2010 16:22
To: Windows System Software Devs Interest List
Subject: Re: [ntdev] Why is signing drivers such a mess?

So how did HP get all this shit signed?

And why does windows insist that simple “drivers” like printer
interfaces must be in the kernel.

That’s not even old school, it’s brain-dead.

Only apple competes for silliness.

Printer drivers should be user procs - correct me if I’m wrong.

brucee

On Tue, Jan 5, 2010 at 10:52 AM, Doron Holan wrote:
> It aint their driver people that spam you with all of that shovelware
>
> d
>
>
>
> -----Original Message-----
> From: Tim Roberts
> Sent: Monday, January 04, 2010 3:11 PM
> To: Windows System Software Devs Interest List
> Subject: Re: [ntdev] Why is signing drivers such a mess?
>
>
> Bruce Ellis wrote:
>> Paying big bucks to someone who only cares about the money does not
>> ensure quality or liability. Try this for a laugh - try and connect
>> more than one model of HP printer to any PC. The drivers fight over
>> “who is the real messiah” and you end up with a different mess every
>> time you boot.
>
> HP has become one of the worst. Their hardware is good, but their
> driver people should be hung at dawn. When I install a printer, ALL I
> WANT is a driver that turns GDI calls into dots on paper. I don’t want
> 600 megabytes of download, 39 DLLs, 22 full-time processes, 18 injected
> hooks, 15 desktop icons, 13 unrelated utilities, 9 RSS subscriptions, 7
> IE toolbars, a cheerful audio-driven help system and a partridge in a
> pear tree. I did not buy my computer for the sole purpose of talking to
> that printer.
>
> It drives me nuts. That’s why I bought an Epson last time. They aren’t
> nearly as bad.
>
> –
> Tim Roberts, xxxxx@probo.com
> Providenza & Boekelheide, Inc.
>
>
> —
> NTDEV is sponsored by OSR
>
> For our schedule of WDF, WDM, debugging and other seminars visit:
> http://www.osr.com/seminars
>
> To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer
>
>
> —
> NTDEV is sponsored by OSR
>
> For our schedule of WDF, WDM, debugging and other seminars visit:
> http://www.osr.com/seminars
>
> To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer
>


NTDEV is sponsored by OSR

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer

> But in 10 minutes I can probably determine if the obvious intent of the driver is to insert malware.

That’s all I would want to do.

WEll, it may well happen that you will be unable to establish it not just in 10 minutes but in your entire life…

The problem is that a driver that is used for malicious purposes may be totally “legitimate” in itself. Consider a driver that collects data upon the requests from the UM code with the precise criteria for data collection being specified by the UM code at the run time(for example, NDIS IM that receives IOCTLs to its standalone DO and informs that UM code of incoming/outgoing packets of interest). In such case code author may present a driver that is meant to be used for malicious purposes as a part of packet filter/monitoring utility/etc, i.e of absolutely legitimate product.

Anton Bassov

what a stupid answer. my printers don’t catch on fire. i’ve designed many.

if they put the wrong dots on the page then … it’s rooted.

may not be signed by a money for nothing company.

please tell me why signed drivers are so fickle.

any more questions?

brucee

On 1/5/10, Tim Roberts wrote:
> Bruce Ellis wrote:
> > explain to me why user level “drivers” need to be signed.
> >
> > if i buy a printer i want it to print, not ask me or not tell me why
> > it is screwing up.
> >
> > if i use said printer and it had malware in user land it’s not gonna kill me.
> >
>
> Are you sure? It is driving a piece of hardware. If that user-mode
> driver happens to cause the printer to overheat and catch fire, it’s no
> different than a kernel-mode driver that causes your DVD to eject with
> enough speed to cut you. In both cases, you are going to want to start
> taking names to give to your lawyer. THAT’S what a signature provides.
>
> I’m telling you, it’s for liability, not reliability.
>
> –
> Tim Roberts, xxxxx@probo.com
> Providenza & Boekelheide, Inc.
>
>
> —
> NTDEV is sponsored by OSR
>
> For our schedule of WDF, WDM, debugging and other seminars visit:
> http://www.osr.com/seminars
>
> To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer
>

Cert revocation could be particularly evil. Imagine a collection of drivers developed off a certificate, pretty standard stuff. Now should that cert be revoked for one reason or another later on *and* one of these signed drivers is in the boot stack, then as I understand it every system in the world using any of these drivers is toast. No safe mode. No last good config. Every system will never boot up again even though the driver may have had nothing to do with the revocation. This is worse than most viruses and it could go in the millions of units. Other types of PnP drivers being revoked would cause their corresponding stacks to be destroyed so if a revoked driver was a mouse/keyboard filter, users have a dead system yet again. Hence, revoking a cert punishes the user and not the publisher who may or may not have been at fault. And good luck on litigation proving the publisher did something wrong, more likely a class action lawsuit will arise against the company that revoked the cert by the millions of innocent users who just want their system to work again. Curious, have any certificates ever been revoked up till now and if so, why?

On Tue, 05 Jan 2010 08:01:33 +0100, wrote:
> Curious, have any certificates ever been revoked up till now and if so,
> why?

As far as I know, only Atsiv’s:
http://www.linchpinlabs.com/resources/atsiv/usage-design.html

- Cay

I’m still waiting for a printer to burst into flames, or at least a
comment from the expert. I have a fire extinguisher at hand but … an
easy way to get things to software wise crash and burn is to sign with
a valid X509 that is say a 4K key.

Last time I tried to use such a cert on windows everything froze or crashed.

brucee

On 1/5/10, Cay Bremer wrote:
> On Tue, 05 Jan 2010 08:01:33 +0100, wrote:
> > Curious, have any certificates ever been revoked up till now and if so,
> > why?
> >
>
> As far as I know, only Atsiv’s:
> http://www.linchpinlabs.com/resources/atsiv/usage-design.html
>
>
> - Cay
>
>
> —
> NTDEV is sponsored by OSR
>
> For our schedule of WDF, WDM, debugging and other seminars
> visit:http://www.osr.com/seminars
>
> To unsubscribe, visit the List Server section of OSR Online at
> http://www.osronline.com/page.cfm?name=ListServer
>

“Joseph M. Newcomer” wrote in message
news:xxxxx@ntdev…
> At least for the hobbyist, are there alternatives to the $400/year
> VeriSign
> ID? I’d pay $50/year (the cost of some alternative certificate
> authorities)
> but for the 0.1 drivers per year I write these days, I cannot justify the
> high costs of the VeriSign certificate.


Then, you just happen to have a relatively expensive hobby
( think other hobbyists that do pay for their pets, golf outfit, cars, boats
etc ).
–pa

> driver people should be hung at dawn. When I install a printer, ALL I

WANT is a driver that turns GDI calls into dots on paper. I don’t want
600 megabytes of download, 39 DLLs, 22 full-time processes, 18 injected
hooks, 15 desktop icons, 13 unrelated utilities, 9 RSS subscriptions, 7
IE toolbars, a cheerful audio-driven help system and a partridge in a
pear tree. I did not buy my computer for the sole purpose of talking to
that printer.

If this is expensive model HP printer with full PCL support - then installing a print server with FreeBSD/CUPS/Samba with generic “hppcl” driver should work.

On a Windows PC, just set up “Apple LaserMaster” (or any other pscript5-based driver) to print to this Samba server. CUPS will do the rest.

Cheaper HP WinPrinters are very bad with CUPS - they require installation of “hpoj” package which is very painful.


Maxim S. Shatskih
Windows DDK MVP
xxxxx@storagecraft.com
http://www.storagecraft.com

Bruce Ellis wrote:

I’m still waiting for a printer to burst into flames, or at least a
comment from the expert.

You’ve had comments from the experts. Since you have chosen to
intentionally misunderstand those comments, I’ve decided it is no longer
worth the trouble to continue the conversation.


Tim Roberts, xxxxx@probo.com
Providenza & Boekelheide, Inc.

> please tell me why signed drivers are so fickle.

Printers are not the worst.

In early 2000ies, signed (WHQL) versions of nVidia Detonator were often worse then unsigned.

The reason as I think is that, if they fix some bugs in the driver, they often forget to re-sign, so the stable bugfixed releases are unsigned.

This seems to defeat the whole idea of WHQL.


Maxim S. Shatskih
Windows DDK MVP
xxxxx@storagecraft.com
http://www.storagecraft.com

Actually dude, what a stupid question.

Fickleness has nothing to do with signed drivers. The fact that a driver is
signed implies nothing about that particular driver loading on a particular
machine with only god knows what mix of hardware and software, and yes I
have seen drivers that run fine on thousands of machines NOT work, or simply
load, simply because a piece of crap, signed or unsigned, just happens to be
first in the load order. That signature simply says “He/She/it had something
to do with this driver and wanted his/her/its name associated with it.”

HP ain’t perfect, and I’ve plenty of problems with HP support for drivers
for Vista, Win 7, and a 3 year old printer which HP supports suggested
solution was to buy a newer model. However … even as I speak I have an HP
Officejet G55xi and an HP 7400 BOTH connected to a 2008 Server, and both of
them work fine, depending upon which one I select for printing.

The personal opinion of
Gary G. Little

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Bruce Ellis
Sent: Tuesday, January 05, 2010 12:06 AM
To: Windows System Software Devs Interest List
Subject: Re: [ntdev] Why is signing drivers such a mess?

what a stupid answer. my printers don’t catch on fire. i’ve designed many.

if they put the wrong dots on the page then … it’s rooted.

may not be signed by a money for nothing company.

please tell me why signed drivers are so fickle.

any more questions?

brucee

On 1/5/10, Tim Roberts wrote:
> Bruce Ellis wrote:
> > explain to me why user level “drivers” need to be signed.
> >
> > if i buy a printer i want it to print, not ask me or not tell me why
> > it is screwing up.
> >
> > if i use said printer and it had malware in user land it’s not gonna
kill me.
> >
>
> Are you sure? It is driving a piece of hardware. If that user-mode
> driver happens to cause the printer to overheat and catch fire, it’s no
> different than a kernel-mode driver that causes your DVD to eject with
> enough speed to cut you. In both cases, you are going to want to start
> taking names to give to your lawyer. THAT’S what a signature provides.
>
> I’m telling you, it’s for liability, not reliability.
>
> –
> Tim Roberts, xxxxx@probo.com
> Providenza & Boekelheide, Inc.
>
>
> —
> NTDEV is sponsored by OSR
>
> For our schedule of WDF, WDM, debugging and other seminars visit:
> http://www.osr.com/seminars
>
> To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer
>


NTDEV is sponsored by OSR

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer

Information from ESET Smart Security, version of virus signature
database 4745 (20100105)


The message was checked by ESET Smart Security.

http://www.eset.com

Information from ESET Smart Security, version of virus signature
database 4746 (20100105)


The message was checked by ESET Smart Security.

http://www.eset.com

Uh … PA … $50 a year is a relativley inexpensive hobby. My pets cost me
$100s every time I take them to the vet, my membership in the Barbershop
Harmony Society runs hundreds plus I have to pay for uniforms and travel to
and from performances, and please tell me … when did you EVER see an
annual green fee of $50 … assuming you found your clubs lying alongside
the road?

Gary G. Little
H (952) 223-1349
C (952) 454-4629
xxxxx@comcast.net

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Pavel A.
Sent: Tuesday, January 05, 2010 6:45 AM
To: Windows System Software Devs Interest List
Subject: Re:[ntdev] Why is signing drivers such a mess?

“Joseph M. Newcomer” wrote in message
news:xxxxx@ntdev…
> At least for the hobbyist, are there alternatives to the $400/year
> VeriSign
> ID? I’d pay $50/year (the cost of some alternative certificate
> authorities)
> but for the 0.1 drivers per year I write these days, I cannot justify the
> high costs of the VeriSign certificate.


Then, you just happen to have a relatively expensive hobby
( think other hobbyists that do pay for their pets, golf outfit, cars, boats

etc ).
–pa


NTDEV is sponsored by OSR

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer

Information from ESET Smart Security, version of virus signature
database 4745 (20100105)


The message was checked by ESET Smart Security.

http://www.eset.com

Information from ESET Smart Security, version of virus signature
database 4746 (20100105)


The message was checked by ESET Smart Security.

http://www.eset.com

No… This is quite often the case: You can download the latest stable driver or the latest (x year old) WHQL’ed version). The latest stable driver is almost ALWAYS better.

We’re wandering very far afield now, but whether a driver has “better quality” or not really does not now and never has had anything whatsoever to do with WHQL.

The main purpose of WHQL is to ensure devices and their associated drivers implement the right types of functionality and features and in the more-or-less right ways to work and play well with Windows. Want to implement a device of type X? You need to support features a, b, and c… and support D0, D1 and D3. And, when they test your driver to ensure that you support these features, and do some other largely random reliability testing, you better not crash.

But… this is an entirely different form of “signing” than what we’ve been talking about so far on this thread.

Peter
OSR

So the only consensus in this thread is that driver signing is a botch?

Nobody has explained yet the point/benefit of signing a printer
driver. Dots are dots. Wrong dots are wrong dots. And I’m still
waiting for a printer to burst into flames.

brucee

On 1/6/10, xxxxx@osr.com wrote:
>


>
> No… This is quite often the case: You can download the latest stable driver or the latest (x year old) WHQL’ed version). The latest stable driver is almost ALWAYS better.
>
> We’re wandering very far afield now, but whether a driver has “better quality” or not really does not now and never has had anything whatsoever to do with WHQL.
>
> The main purpose of WHQL is to ensure devices and their associated drivers implement the right types of functionality and features and in the more-or-less right ways to work and play well with Windows. Want to implement a device of type X? You need to support features a, b, and c… and support D0, D1 and D3. And, when they test your driver to ensure that you support these features, and do some other largely random reliability testing, you better not crash.
>
> But… this is an entirely different form of “signing” than what we’ve been talking about so far on this thread.
>
> Peter
> OSR
>
> —
> NTDEV is sponsored by OSR
>
> For our schedule of WDF, WDM, debugging and other seminars visit:
> http://www.osr.com/seminars
>
> To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer
>

I would say that it appears that no one has yet told you what you wanted to hear. It has been explained several times, by several different people, in a way that I agree with, not that that makes it either wrong or right.

To be fair, you’ve also mentioned several times that you’re waiting for the printer to burst in to flames, so maybe you just like to repeat yourself and expect the same from others.

Either way, do be sure to let us know if it happens.

mm

Bruce Ellis wrote:

So the only consensus in this thread is that driver signing is a botch?

That is false.

Nobody has explained yet the point/benefit of signing a printer
driver.

That is also false.

Dots are dots. Wrong dots are wrong dots. And I’m still
waiting for a printer to burst into flames.

Perhaps your home is not one of them, but there places where people do
not WANT their printer to burst into flames. Such places might not
allow a piece of hardware of any kind to be installed on their computer
without a verifiable chain of liability, so they have names to to give
their lawyers when it DOES burst into flames. Or, in a more likely
scenario, when the printer driver uses 100% CPU for 9 hours and prevents
the payroll from being printed on time.

I’m not saying you have to like it or approve of it, but that’s the
reasoning.


Tim Roberts, xxxxx@probo.com
Providenza & Boekelheide, Inc.