<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: UAC, UAC, go away, come again some other day</title>
	<atom:link href="http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/</link>
	<description>Not your usual Microsoft enthusiast blog.</description>
	<lastBuildDate>Fri, 20 Nov 2009 20:11:07 -0600</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: vanti</title>
		<link>http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/comment-page-2/#comment-4528</link>
		<dc:creator>vanti</dc:creator>
		<pubDate>Wed, 31 Dec 1969 18:00:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/#comment-4528</guid>
		<description>OK so initially and internaly in development it is considered a &quot;bug-users nagscreen&quot; to make software developers actually learn how to program their applications properly as Mark Russinovich says. But on the sales guys it is marketed as a security feature.

Know what. The part of teaching developers to code properly actually worked pretty good. Now the second part. Get the users (especially the stubborn powerusers of olde) to learn not to run with administrator accounts but use limited accounts and typing in the admin password when needed. JUST LIKE INTENDED! This is also btw how it works in linux and OS X.

If you use std accounts then the UAC really does work as a security shield.</description>
		<content:encoded><![CDATA[<p>OK so initially and internaly in development it is considered a &#8220;bug-users nagscreen&#8221; to make software developers actually learn how to program their applications properly as Mark Russinovich says. But on the sales guys it is marketed as a security feature.</p>
<p>Know what. The part of teaching developers to code properly actually worked pretty good. Now the second part. Get the users (especially the stubborn powerusers of olde) to learn not to run with administrator accounts but use limited accounts and typing in the admin password when needed. JUST LIKE INTENDED! This is also btw how it works in linux and OS X.</p>
<p>If you use std accounts then the UAC really does work as a security shield.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Boomerz</title>
		<link>http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/comment-page-2/#comment-4335</link>
		<dc:creator>Boomerz</dc:creator>
		<pubDate>Wed, 31 Dec 1969 18:00:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/#comment-4335</guid>
		<description>I think people are forgetting that many people share the same computer.  For families that share the same computer, UAC is awesome.   A family member may inadvertently download something malicious or mess around with the computer settings which could break the device.  I just wanted to bring another perspective rather than the single person with the single computer who does not feels the need for UAC since he or she does not share the or let others borrow it.</description>
		<content:encoded><![CDATA[<p>I think people are forgetting that many people share the same computer.  For families that share the same computer, UAC is awesome.   A family member may inadvertently download something malicious or mess around with the computer settings which could break the device.  I just wanted to bring another perspective rather than the single person with the single computer who does not feels the need for UAC since he or she does not share the or let others borrow it.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Windows 7 UAC security thoughts &#171; BurgerMinds</title>
		<link>http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/comment-page-1/#comment-4097</link>
		<dc:creator>Windows 7 UAC security thoughts &#171; BurgerMinds</dc:creator>
		<pubDate>Wed, 31 Dec 1969 18:00:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/#comment-4097</guid>
		<description>[...] what I can tell from here, here, here and here, Microsoft wants [...]</description>
		<content:encoded><![CDATA[<p>[...] what I can tell from here, here, here and here, Microsoft wants [...]</p>
<span class="comment-sorter-trackback">&nbsp;</span>]]></content:encoded>
	</item>
	<item>
		<title>By: Diego Fernandez</title>
		<link>http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/comment-page-1/#comment-4087</link>
		<dc:creator>Diego Fernandez</dc:creator>
		<pubDate>Wed, 31 Dec 1969 18:00:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/#comment-4087</guid>
		<description>Hi, interesting discussion.
I&#039;m not a Windows expert so maybe my question is too naive: why Windows doesn&#039;t use standard user accounts in similar way to Linux, MacOSX or other unixes?

For example in Ubuntu you always run with a standard user (in fact you can&#039;t login with a root user), the only way to run admin commands is to use &quot;sudo&quot;, which from the user point of view is similar to a UAC prompt asking for a password. (the same happens in MacOSX).

As a user the main difference is that in Vista UAC prompts feels random and annoying, for example if you run a program called &quot;install&quot; you get a UAC prompt!! Even if the program is not doing anything that requires privileges.

To me the main problem of standard user accounts in Windows is that most of the programs are not  designed to be installed in isolation from the rest of the system. 
For example if you are a web developer you could install Java and a application server in your home directory and use it without problem, but if you want to develop in .Net you need to install libraries that affects the whole system, so you need admin privs for the installation (the same problem happens to near every MS application: each installation is like a complete OS update)

I think that the root cause of the &quot;std vs admin account&quot; problem is the same of the unnecessary reboots required by some installation programs: lack of good modularity.</description>
		<content:encoded><![CDATA[<p>Hi, interesting discussion.<br />
I&#8217;m not a Windows expert so maybe my question is too naive: why Windows doesn&#8217;t use standard user accounts in similar way to Linux, MacOSX or other unixes?</p>
<p>For example in Ubuntu you always run with a standard user (in fact you can&#8217;t login with a root user), the only way to run admin commands is to use &#8220;sudo&#8221;, which from the user point of view is similar to a UAC prompt asking for a password. (the same happens in MacOSX).</p>
<p>As a user the main difference is that in Vista UAC prompts feels random and annoying, for example if you run a program called &#8220;install&#8221; you get a UAC prompt!! Even if the program is not doing anything that requires privileges.</p>
<p>To me the main problem of standard user accounts in Windows is that most of the programs are not  designed to be installed in isolation from the rest of the system.<br />
For example if you are a web developer you could install Java and a application server in your home directory and use it without problem, but if you want to develop in .Net you need to install libraries that affects the whole system, so you need admin privs for the installation (the same problem happens to near every MS application: each installation is like a complete OS update)</p>
<p>I think that the root cause of the &#8220;std vs admin account&#8221; problem is the same of the unnecessary reboots required by some installation programs: lack of good modularity.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: MadHopsMan</title>
		<link>http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/comment-page-1/#comment-4083</link>
		<dc:creator>MadHopsMan</dc:creator>
		<pubDate>Wed, 31 Dec 1969 18:00:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/#comment-4083</guid>
		<description>HAHAHA! That gave me good chuckle. Your way with words is quite elegant, I must say :)</description>
		<content:encoded><![CDATA[<p>HAHAHA! That gave me good chuckle. Your way with words is quite elegant, I must say :)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Leo Davidson</title>
		<link>http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/comment-page-1/#comment-4036</link>
		<dc:creator>Leo Davidson</dc:creator>
		<pubDate>Wed, 31 Dec 1969 18:00:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/#comment-4036</guid>
		<description>Doh, the chars I used for quoting meant parts of the post were interpreted as HTML. Reposting it here.


Also something I forgot to say:

I think the &quot;sensationalist&quot; response is because people thought UAC, and the irritation it caused, existed *at least in part* to improve their security today. The current strong reactions are because MS don&#039;t seem to care about this particular problem with UAC. Imagine how strong the reactions will be if people realise that MS don&#039;t care about *any* issues with UAC? MS claim that&#039;s been their message all along, but it hasn&#039;t been. The overriding message with Vista was that UAC was a security feature but not an air-tight security boundary. Now it seems its the message is that UAC exists only to annoy users to make them pester programmers. If MS clarify that message, as they say they want to, then I think we&#039;ll see more &quot;sensationalist&quot; responses, not less.


Here&#039;s the original reply without the HTML characters:

(Sent via email as well.)


[ I run all of my computers as a Standard User every day. ]

I run standard user on my HTPC and that&#039;s fine, too. I could probably do the same on my laptop. On my development desktop I think it be too much to type a password every time I run Process Monitor, RegEdit, etc. (Plus the hassle of tools like RegEdit which don&#039;t let you elevate from within them if launched as standard user.) Those aren&#039;t things typical users would be doing, though.

For the average user I think the problem was them extrapolating from the annoyance of &quot;the first two weeks&quot; setting up the machine. All those control panels, installers, etc., plus the prompts-about-prompts in Explorer if they had to touch Program Files for some reason. The secure desktop was also annoying for some. (Sometimes it takes several seconds to switch to and from the secure desktop for some reason. Dimming the entire screen annoys people with large/multiple monitors.)

I&#039;ve always told people that if they feel they must switch off the prompts then they should try turning them on again in a couple of weeks as they probabaly won&#039;t bother them anymore. That was based on the assumption that the prompts had some value to the users who see them, though.

Whether people&#039;s irritation was sensible or not, it did exist, however.

1) MS knew it and the auto-elevation changes in Windows 7 are to make those people happy. They are the default mode so I&#039;m assuming it&#039;s what MS think most people want.

2) MS also know that standard user accounts are basically unchanged from Vista, with the prompts as frequent and more annoying than the limited-Admin mode people were complaining about.

Combine those two and MS cannot expect most people to move to standard user accounts at this time. Rather than encourage it MS have actually made sticking with an admin account *more* tempting with Windows 7. It&#039;s a step backwards.

Something had to be done but I&#039;m not convinced this was the right thing.


[ In enterprises without proper infrastructure to manage software deployment and policy configuration, yes, I could see this configuration being unrealistic. ]

I consider UAC elevation/prompts largely irrelevant to enterprises. They were (or should have been) already using standard user accounts, are unlikely to use OTS elevation (perhaps some tiny companies will take advantage of it, though) and they were already selecting/demanding/verifying tools which worked without admin rights and large software companies were already producing such software.

I&#039;ve always seen UAC as something for home users, not enterprises, except that it encourages more amateur software to be written in a way which works with enterprise setups (something which enterprises still need to test as UAC doesn&#039;t *guarantee* that apps don&#039;t require admin; it just makes it easier for developers to notice the problem).

(As before, I&#039;m not talking about protected-mode IE etc. here. That&#039;s obviously good for enterprises and everyone else.)


[ I&#039;m not sure exactly what security guarantee would be broken and what corresponding security boundary would be in jeopardy when the administrator password is known. ]

As soon as you have a non-elevated process talking to an elevated object, you&#039;ve created a hole in the security boundary, even with standard user. A peer of the unelevated process could hijack it and take over its object. This is difficult to do but possible. Similarly, having any elevated UI objects on the same desktop as unelevated ones has breached the security boundary, even with standard user and even with the (incomplete) protection of UI isolation, etc.

All of which is fine. Elevation is a compromise between security and convenience.

However, Microsoft&#039;s arguments for dismissing the code-injection issue revolve around the fact that there isn&#039;t a security boundary with limited-Admin accounts. Well there isn&#039;t one with standard user accounts, either, if elevation is used at all. So either MS need to openly say &quot;we don&#039;t care about any holes in UAC, even for standard user,&quot; or they need to come up with a better explanation for why they don&#039;t care about holes for limited-admin accounts.

&quot;It&#039;s not a security boundary&quot; isn&#039;t a good enough reason to ignore one mode when neither mode is a security boundary.


[ If an entity has the administrator password they can log onto the computer and do anything an administrator can do. Your system may be in an insecure state but no security boundary has been explicitly broken. ]

Microsoft, at times, seem to be claiming that there&#039;s no difference between these two situations (both about the default setups on each OS):

- On Vista, unelevated code can gain admin by displaying a spoofed UAC prompt and tricking the user into accepting it.

- On Windows 7, Unelevated code can gain admin silently and immediately.

The argument of equivalence requires that all users will blindly consent to every UAC dialog they see. By this argument the distinction between the user and the code they run is lost. Essentially, if the user knows the password then the code has the password, too. I disagree, but it&#039;s not my argument. If we believe this argument then surely, like the security boundary argument, it means that standard user accounts are no more secure than admin accounts.


Why are the people advocating those two arguments also advocating standard user accounts? Standard user accounts fail both of their arguments as well.


[ And if you look at UAC as a long term strategic initiative to enable home users to run as Standard User accounts that never elevate then I think that we have provided home users some benefit although it may not immediately be realized. ]

That initiative seems to have stalled. Windows 7 made very little progress towards &quot;standard user for everyone.&quot; In fact, it&#039;s made admin accounts more tempting while the standard user experience has stood still. This is why I find it irritating when MS say people should use standard user if they actually want security: They know standard user is still too irritating for too many, that it cannot be the default as a result, and rather than improve things they&#039;ve moved backwards. In addition, their arguments for ignoring holes in limited-admin apply to standard user.


[ The engineers at MSFT fixed a lot scenarios that caused prompts in Windows, including the one that jon points out for folder creation and renaming (which was fixed in Vista SP1) ]

Jon&#039;s folder creation case is the only one I&#039;m aware of that was actually improved. I don&#039;t use Explorer much but from using it briefly on Vista SP2 and Windows 7 (in standard user or always prompt modes), it&#039;s abundantly clear that Explorer is still full of cases where a single action triggers multiple prompts. The first prompt usually exists just to tell you you&#039;re about to see a second prompt. (Either because someone took the dubious UX guideline that &quot;you must show a UAC shield before showing a UAC prompt&quot; too literally, or because they felt the need to display additional information that couldn&#039;t be displayed in the actual UAC, due to the poor design of the prompts/elevation process.) Add to this the additional &quot;Are you sure?&quot; prompts, which are not optional, and you sometimes have to click three times for one action. It&#039;s ridiculous and extremely irritating.

(It&#039;s also silly that Explorer still shows the prompts-about-prompts in the default Win7 UAC mode, without displaying the UAC prompts themselves. MS got rid of the prompts that provided some security and left in the ones which code can suppress and which only tell you what you already know with no guarantee that it&#039;s actually what the admin object has been passed.)

On top of that, there is no way for standard user or &quot;always prompt&quot; users to enter an OS X-style (or Directory Opus-style) timed &quot;admin mode&quot; (without switching users, changing system-wide UAC settings, or killing the entire shell and re-launching it elevated) where they can perform several admin actions in a row without triggering multiple prompts.

An &quot;admin mode&quot; is obviously a security hole while it is active -- for the same reasons elevation in general is a security hole -- but it seems hard to argue against such a mode when the default for Windows 7&#039;s Explorer is, effectively, &quot;admin mode&quot; 24/7 even when the user isn&#039;t present.


[ Certain file management scenarios are an exception, including folder creation in protected areas of the file system, and these are handled by COM objects... ]

Jon&#039;s already written a file manager which uses UAC/COM elevation. It does a better job than Microsoft&#039;s Explorer code (even if you ignore the folder-creation improvements in Vista SP1). Two comparison videos here, both made in 2007:

http://www.pretentiousname.com/misc/win7_uac_whitelist2.html#comparison


[ ... that are automatically elevated. If you want to implement your software with a similar UX, it’s possible and I’d be happy to walk through certain design scenarios with you to achieve this user experience. ]

AFAIK it&#039;s not possible to create a file manager (or task manager or registry editor or...) with the same UX as Windows 7&#039;s built-in tools without resorting to hacks or the effort of writing services*. Is that not the case? If there&#039;s another way it&#039;d be great to know it.

If nobody cares that it&#039;s possible to bypass the prompts, even via methods such as code-injection that don&#039;t require admin or installation at any prior point, wouldn&#039;t it be better to give users the ability to explicitly white-list third-party apps and/or COM objects? If whitelisting makes sense at all then it should be user-configurable.

(*Writing a service is easy. Writing a good service is hard. Writing one which exposes admin APIs in a secure way and properly validates all requests is even harder. Still preferable to using a code-injection hack that could stop working at any time, but I&#039;m not sure it&#039;s the answer. If we&#039;re going to dismiss the idea of preventing code getting admin then I&#039;d rather we just did that, and gave users a whitelist, instead of putting up with badly-written services that run 24/7 and expose admin APIs to any process that knows their protocol. There are exceptions, of course. It&#039;s worth doing when something is a non-admin tool and needs an admin-side components to do something. e.g. The Steam game distribution/DRM system must be able to work for people who don&#039;t know the admin password and it has an admin service which starts and stops with the game-launching client. I&#039;m not convinced there&#039;s a good reason for Steam to require admin rights in the first place -- I suspect it&#039;s for DRM systems and not for anything that benefits the user -- but it is an example where a whitelist woudldn&#039;t solve the problem and a service does.)


[ I would refer you to the &quot;Initial Infection&quot; section. No UAC prompt was required for infection, which is what I meant when I said, &quot;why does malware need administrator privileges anyway?&quot; Sorry for the confusion. Your example does illustrate the sophistication of malware developers, which was my original intent. ]

I agree that admin rights were not required for the initial infection and that the flaws allowing that infection (and people not installing updates) are/were more important by far.

There is a steady stream of those flaws, though, so it is unrealistic to say, &quot;let&#039;s ignore damage limitation and focus only on infection prevention.&quot; That&#039;s especially true when companies like Adobe think that weeks/months is a rapid response time for in-the-wild exploits.

You seemed to be laughing at people for talking about admin rights and malware in the same sentence, but being able to get admin rights made Conficker a bigger problem because it broke/blocked tools/updates which would have removed it after the infection.</description>
		<content:encoded><![CDATA[<p>Doh, the chars I used for quoting meant parts of the post were interpreted as HTML. Reposting it here.</p>
<p>Also something I forgot to say:</p>
<p>I think the &#8220;sensationalist&#8221; response is because people thought UAC, and the irritation it caused, existed *at least in part* to improve their security today. The current strong reactions are because MS don&#8217;t seem to care about this particular problem with UAC. Imagine how strong the reactions will be if people realise that MS don&#8217;t care about *any* issues with UAC? MS claim that&#8217;s been their message all along, but it hasn&#8217;t been. The overriding message with Vista was that UAC was a security feature but not an air-tight security boundary. Now it seems its the message is that UAC exists only to annoy users to make them pester programmers. If MS clarify that message, as they say they want to, then I think we&#8217;ll see more &#8220;sensationalist&#8221; responses, not less.</p>
<p>Here&#8217;s the original reply without the HTML characters:</p>
<p>(Sent via email as well.)</p>
<p>[ I run all of my computers as a Standard User every day. ]</p>
<p>I run standard user on my HTPC and that&#8217;s fine, too. I could probably do the same on my laptop. On my development desktop I think it be too much to type a password every time I run Process Monitor, RegEdit, etc. (Plus the hassle of tools like RegEdit which don&#8217;t let you elevate from within them if launched as standard user.) Those aren&#8217;t things typical users would be doing, though.</p>
<p>For the average user I think the problem was them extrapolating from the annoyance of &#8220;the first two weeks&#8221; setting up the machine. All those control panels, installers, etc., plus the prompts-about-prompts in Explorer if they had to touch Program Files for some reason. The secure desktop was also annoying for some. (Sometimes it takes several seconds to switch to and from the secure desktop for some reason. Dimming the entire screen annoys people with large/multiple monitors.)</p>
<p>I&#8217;ve always told people that if they feel they must switch off the prompts then they should try turning them on again in a couple of weeks as they probabaly won&#8217;t bother them anymore. That was based on the assumption that the prompts had some value to the users who see them, though.</p>
<p>Whether people&#8217;s irritation was sensible or not, it did exist, however.</p>
<p>1) MS knew it and the auto-elevation changes in Windows 7 are to make those people happy. They are the default mode so I&#8217;m assuming it&#8217;s what MS think most people want.</p>
<p>2) MS also know that standard user accounts are basically unchanged from Vista, with the prompts as frequent and more annoying than the limited-Admin mode people were complaining about.</p>
<p>Combine those two and MS cannot expect most people to move to standard user accounts at this time. Rather than encourage it MS have actually made sticking with an admin account *more* tempting with Windows 7. It&#8217;s a step backwards.</p>
<p>Something had to be done but I&#8217;m not convinced this was the right thing.</p>
<p>[ In enterprises without proper infrastructure to manage software deployment and policy configuration, yes, I could see this configuration being unrealistic. ]</p>
<p>I consider UAC elevation/prompts largely irrelevant to enterprises. They were (or should have been) already using standard user accounts, are unlikely to use OTS elevation (perhaps some tiny companies will take advantage of it, though) and they were already selecting/demanding/verifying tools which worked without admin rights and large software companies were already producing such software.</p>
<p>I&#8217;ve always seen UAC as something for home users, not enterprises, except that it encourages more amateur software to be written in a way which works with enterprise setups (something which enterprises still need to test as UAC doesn&#8217;t *guarantee* that apps don&#8217;t require admin; it just makes it easier for developers to notice the problem).</p>
<p>(As before, I&#8217;m not talking about protected-mode IE etc. here. That&#8217;s obviously good for enterprises and everyone else.)</p>
<p>[ I'm not sure exactly what security guarantee would be broken and what corresponding security boundary would be in jeopardy when the administrator password is known. ]</p>
<p>As soon as you have a non-elevated process talking to an elevated object, you&#8217;ve created a hole in the security boundary, even with standard user. A peer of the unelevated process could hijack it and take over its object. This is difficult to do but possible. Similarly, having any elevated UI objects on the same desktop as unelevated ones has breached the security boundary, even with standard user and even with the (incomplete) protection of UI isolation, etc.</p>
<p>All of which is fine. Elevation is a compromise between security and convenience.</p>
<p>However, Microsoft&#8217;s arguments for dismissing the code-injection issue revolve around the fact that there isn&#8217;t a security boundary with limited-Admin accounts. Well there isn&#8217;t one with standard user accounts, either, if elevation is used at all. So either MS need to openly say &#8220;we don&#8217;t care about any holes in UAC, even for standard user,&#8221; or they need to come up with a better explanation for why they don&#8217;t care about holes for limited-admin accounts.</p>
<p>&#8220;It&#8217;s not a security boundary&#8221; isn&#8217;t a good enough reason to ignore one mode when neither mode is a security boundary.</p>
<p>[ If an entity has the administrator password they can log onto the computer and do anything an administrator can do. Your system may be in an insecure state but no security boundary has been explicitly broken. ]</p>
<p>Microsoft, at times, seem to be claiming that there&#8217;s no difference between these two situations (both about the default setups on each OS):</p>
<p>- On Vista, unelevated code can gain admin by displaying a spoofed UAC prompt and tricking the user into accepting it.</p>
<p>- On Windows 7, Unelevated code can gain admin silently and immediately.</p>
<p>The argument of equivalence requires that all users will blindly consent to every UAC dialog they see. By this argument the distinction between the user and the code they run is lost. Essentially, if the user knows the password then the code has the password, too. I disagree, but it&#8217;s not my argument. If we believe this argument then surely, like the security boundary argument, it means that standard user accounts are no more secure than admin accounts.</p>
<p>Why are the people advocating those two arguments also advocating standard user accounts? Standard user accounts fail both of their arguments as well.</p>
<p>[ And if you look at UAC as a long term strategic initiative to enable home users to run as Standard User accounts that never elevate then I think that we have provided home users some benefit although it may not immediately be realized. ]</p>
<p>That initiative seems to have stalled. Windows 7 made very little progress towards &#8220;standard user for everyone.&#8221; In fact, it&#8217;s made admin accounts more tempting while the standard user experience has stood still. This is why I find it irritating when MS say people should use standard user if they actually want security: They know standard user is still too irritating for too many, that it cannot be the default as a result, and rather than improve things they&#8217;ve moved backwards. In addition, their arguments for ignoring holes in limited-admin apply to standard user.</p>
<p>[ The engineers at MSFT fixed a lot scenarios that caused prompts in Windows, including the one that jon points out for folder creation and renaming (which was fixed in Vista SP1) ]</p>
<p>Jon&#8217;s folder creation case is the only one I&#8217;m aware of that was actually improved. I don&#8217;t use Explorer much but from using it briefly on Vista SP2 and Windows 7 (in standard user or always prompt modes), it&#8217;s abundantly clear that Explorer is still full of cases where a single action triggers multiple prompts. The first prompt usually exists just to tell you you&#8217;re about to see a second prompt. (Either because someone took the dubious UX guideline that &#8220;you must show a UAC shield before showing a UAC prompt&#8221; too literally, or because they felt the need to display additional information that couldn&#8217;t be displayed in the actual UAC, due to the poor design of the prompts/elevation process.) Add to this the additional &#8220;Are you sure?&#8221; prompts, which are not optional, and you sometimes have to click three times for one action. It&#8217;s ridiculous and extremely irritating.</p>
<p>(It&#8217;s also silly that Explorer still shows the prompts-about-prompts in the default Win7 UAC mode, without displaying the UAC prompts themselves. MS got rid of the prompts that provided some security and left in the ones which code can suppress and which only tell you what you already know with no guarantee that it&#8217;s actually what the admin object has been passed.)</p>
<p>On top of that, there is no way for standard user or &#8220;always prompt&#8221; users to enter an OS X-style (or Directory Opus-style) timed &#8220;admin mode&#8221; (without switching users, changing system-wide UAC settings, or killing the entire shell and re-launching it elevated) where they can perform several admin actions in a row without triggering multiple prompts.</p>
<p>An &#8220;admin mode&#8221; is obviously a security hole while it is active &#8212; for the same reasons elevation in general is a security hole &#8212; but it seems hard to argue against such a mode when the default for Windows 7&#8217;s Explorer is, effectively, &#8220;admin mode&#8221; 24/7 even when the user isn&#8217;t present.</p>
<p>[ Certain file management scenarios are an exception, including folder creation in protected areas of the file system, and these are handled by COM objects... ]</p>
<p>Jon&#8217;s already written a file manager which uses UAC/COM elevation. It does a better job than Microsoft&#8217;s Explorer code (even if you ignore the folder-creation improvements in Vista SP1). Two comparison videos here, both made in 2007:</p>
<p><a href="http://www.pretentiousname.com/misc/win7_uac_whitelist2.html#comparison" rel="nofollow">http://www.pretentiousname.com/misc/win7_uac_whitelist2.html#comparison</a></p>
<p>[ ... that are automatically elevated. If you want to implement your software with a similar UX, it’s possible and I’d be happy to walk through certain design scenarios with you to achieve this user experience. ]</p>
<p>AFAIK it&#8217;s not possible to create a file manager (or task manager or registry editor or&#8230;) with the same UX as Windows 7&#8217;s built-in tools without resorting to hacks or the effort of writing services*. Is that not the case? If there&#8217;s another way it&#8217;d be great to know it.</p>
<p>If nobody cares that it&#8217;s possible to bypass the prompts, even via methods such as code-injection that don&#8217;t require admin or installation at any prior point, wouldn&#8217;t it be better to give users the ability to explicitly white-list third-party apps and/or COM objects? If whitelisting makes sense at all then it should be user-configurable.</p>
<p>(*Writing a service is easy. Writing a good service is hard. Writing one which exposes admin APIs in a secure way and properly validates all requests is even harder. Still preferable to using a code-injection hack that could stop working at any time, but I&#8217;m not sure it&#8217;s the answer. If we&#8217;re going to dismiss the idea of preventing code getting admin then I&#8217;d rather we just did that, and gave users a whitelist, instead of putting up with badly-written services that run 24/7 and expose admin APIs to any process that knows their protocol. There are exceptions, of course. It&#8217;s worth doing when something is a non-admin tool and needs an admin-side components to do something. e.g. The Steam game distribution/DRM system must be able to work for people who don&#8217;t know the admin password and it has an admin service which starts and stops with the game-launching client. I&#8217;m not convinced there&#8217;s a good reason for Steam to require admin rights in the first place &#8212; I suspect it&#8217;s for DRM systems and not for anything that benefits the user &#8212; but it is an example where a whitelist woudldn&#8217;t solve the problem and a service does.)</p>
<p>[ I would refer you to the "Initial Infection" section. No UAC prompt was required for infection, which is what I meant when I said, "why does malware need administrator privileges anyway?" Sorry for the confusion. Your example does illustrate the sophistication of malware developers, which was my original intent. ]</p>
<p>I agree that admin rights were not required for the initial infection and that the flaws allowing that infection (and people not installing updates) are/were more important by far.</p>
<p>There is a steady stream of those flaws, though, so it is unrealistic to say, &#8220;let&#8217;s ignore damage limitation and focus only on infection prevention.&#8221; That&#8217;s especially true when companies like Adobe think that weeks/months is a rapid response time for in-the-wild exploits.</p>
<p>You seemed to be laughing at people for talking about admin rights and malware in the same sentence, but being able to get admin rights made Conficker a bigger problem because it broke/blocked tools/updates which would have removed it after the infection.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Leo Davidson</title>
		<link>http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/comment-page-1/#comment-4035</link>
		<dc:creator>Leo Davidson</dc:creator>
		<pubDate>Wed, 31 Dec 1969 18:00:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/#comment-4035</guid>
		<description>(Sent via email as well.)


&lt;&lt;I&gt;&gt;

I run standard user on my HTPC and that&#039;s fine, too. I could probably do the same on my laptop. On my development desktop I think it be too much to type a password every time I run Process Monitor, RegEdit, etc. (Plus the hassle of tools like RegEdit which don&#039;t let you elevate from within them if launched as standard user.) Those aren&#039;t things typical users would be doing, though.

For the average user I think the problem was them extrapolating from the annoyance of &quot;the first two weeks&quot; setting up the machine. All those control panels, installers, etc., plus the prompts-about-prompts in Explorer if they had to touch Program Files for some reason. The secure desktop was also annoying for some. (Sometimes it takes several seconds to switch to and from the secure desktop for some reason. Dimming the entire screen annoys people with large/multiple monitors.)

I&#039;ve always told people that if they feel they must switch off the prompts then they should try turning them on again in a couple of weeks as they probabaly won&#039;t bother them anymore. That was based on the assumption that the prompts had some value to the users who see them, though.

Whether people&#039;s irritation was sensible or not, it did exist, however.

1) MS knew it and the auto-elevation changes in Windows 7 are to make those people happy. They are the default mode so I&#039;m assuming it&#039;s what MS think most people want.

2) MS also know that standard user accounts are basically unchanged from Vista, with the prompts as frequent and more annoying than the limited-Admin mode people were complaining about.

Combine those two and MS cannot expect most people to move to standard user accounts at this time. Rather than encourage it MS have actually made sticking with an admin account *more* tempting with Windows 7. It&#039;s a step backwards.

Something had to be done but I&#039;m not convinced this was the right thing.


&lt;&gt;

I consider UAC elevation/prompts largely irrelevant to enterprises. They were (or should have been) already using standard user accounts, are unlikely to use OTS elevation (perhaps some tiny companies will take advantage of it, though) and they were already selecting/demanding/verifying tools which worked without admin rights and large software companies were already producing such software.

I&#039;ve always seen UAC as something for home users, not enterprises, except that it encourages more amateur software to be written in a way which works with enterprise setups (something which enterprises still need to test as UAC doesn&#039;t *guarantee* that apps don&#039;t require admin; it just makes it easier for developers to notice the problem).

(As before, I&#039;m not talking about protected-mode IE etc. here. That&#039;s obviously good for enterprises and everyone else.)


&lt;&lt;I&gt;&gt;

As soon as you have a non-elevated process talking to an elevated object, you&#039;ve created a hole in the security boundary, even with standard user. A peer of the unelevated process could hijack it and take over its object. This is difficult to do but possible. Similarly, having any elevated UI objects on the same desktop as unelevated ones has breached the security boundary, even with standard user and even with the (incomplete) protection of UI isolation, etc.

All of which is fine. Elevation is a compromise between security and convenience.

However, Microsoft&#039;s arguments for dismissing the code-injection issue revolve around the fact that there isn&#039;t a security boundary with limited-Admin accounts. Well there isn&#039;t one with standard user accounts, either, if elevation is used at all. So either MS need to openly say &quot;we don&#039;t care about any holes in UAC, even for standard user,&quot; or they need to come up with a better explanation for why they don&#039;t care about holes for limited-admin accounts.

&quot;It&#039;s not a security boundary&quot; isn&#039;t a good enough reason to ignore one mode when neither mode is a security boundary.


&lt;&gt;

Microsoft, at times, seem to be claiming that there&#039;s no difference between these two situations (both about the default setups on each OS):

- On Vista, unelevated code can gain admin by displaying a spoofed UAC prompt and tricking the user into accepting it.

- On Windows 7, Unelevated code can gain admin silently and immediately.

The argument of equivalence requires that all users will blindly consent to every UAC dialog they see. By this argument the distinction between the user and the code they run is lost. Essentially, if the user knows the password then the code has the password, too. I disagree, but it&#039;s not my argument. If we believe this argument then surely, like the security boundary argument, it means that standard user accounts are no more secure than admin accounts.


Why are the people advocating those two arguments also advocating standard user accounts? Standard user accounts fail both of their arguments as well.


&lt;&gt;

That initiative seems to have stalled. Windows 7 made very little progress towards &quot;standard user for everyone.&quot; In fact, it&#039;s made admin accounts more tempting while the standard user experience has stood still. This is why I find it irritating when MS say people should use standard user if they actually want security: They know standard user is still too irritating for too many, that it cannot be the default as a result, and rather than improve things they&#039;ve moved backwards. In addition, their arguments for ignoring holes in limited-admin apply to standard user.


&lt;&gt;

Jon&#039;s folder creation case is the only one I&#039;m aware of that was actually improved. I don&#039;t use Explorer much but from using it briefly on Vista SP2 and Windows 7 (in standard user or always prompt modes), it&#039;s abundantly clear that Explorer is still full of cases where a single action triggers multiple prompts. The first prompt usually exists just to tell you you&#039;re about to see a second prompt. (Either because someone took the dubious UX guideline that &quot;you must show a UAC shield before showing a UAC prompt&quot; too literally, or because they felt the need to display additional information that couldn&#039;t be displayed in the actual UAC, due to the poor design of the prompts/elevation process.) Add to this the additional &quot;Are you sure?&quot; prompts, which are not optional, and you sometimes have to click three times for one action. It&#039;s ridiculous and extremely irritating.

(It&#039;s also silly that Explorer still shows the prompts-about-prompts in the default Win7 UAC mode, without displaying the UAC prompts themselves. MS got rid of the prompts that provided some security and left in the ones which code can suppress and which only tell you what you already know with no guarantee that it&#039;s actually what the admin object has been passed.)

On top of that, there is no way for standard user or &quot;always prompt&quot; users to enter an OS X-style (or Directory Opus-style) timed &quot;admin mode&quot; (without switching users, changing system-wide UAC settings, or killing the entire shell and re-launching it elevated) where they can perform several admin actions in a row without triggering multiple prompts.

An &quot;admin mode&quot; is obviously a security hole while it is active -- for the same reasons elevation in general is a security hole -- but it seems hard to argue against such a mode when the default for Windows 7&#039;s Explorer is, effectively, &quot;admin mode&quot; 24/7 even when the user isn&#039;t present.


&lt;&gt;

Jon&#039;s already written a file manager which uses UAC/COM elevation. It does a better job than Microsoft&#039;s Explorer code (even if you ignore the folder-creation improvements in Vista SP1). Two comparison videos here, both made in 2007:

http://www.pretentiousname.com/misc/win7_uac_whitelist2.html#comparison


&lt;&gt;

AFAIK it&#039;s not possible to create a file manager (or task manager or registry editor or...) with the same UX as Windows 7&#039;s built-in tools without resorting to hacks or the effort of writing services*. Is that not the case? If there&#039;s another way it&#039;d be great to know it.

If nobody cares that it&#039;s possible to bypass the prompts, even via methods such as code-injection that don&#039;t require admin or installation at any prior point, wouldn&#039;t it be better to give users the ability to explicitly white-list third-party apps and/or COM objects? If whitelisting makes sense at all then it should be user-configurable.

(*Writing a service is easy. Writing a good service is hard. Writing one which exposes admin APIs in a secure way and properly validates all requests is even harder. Still preferable to using a code-injection hack that could stop working at any time, but I&#039;m not sure it&#039;s the answer. If we&#039;re going to dismiss the idea of preventing code getting admin then I&#039;d rather we just did that, and gave users a whitelist, instead of putting up with badly-written services that run 24/7 and expose admin APIs to any process that knows their protocol. There are exceptions, of course. It&#039;s worth doing when something is a non-admin tool and needs an admin-side components to do something. e.g. The Steam game distribution/DRM system must be able to work for people who don&#039;t know the admin password and it has an admin service which starts and stops with the game-launching client. I&#039;m not convinced there&#039;s a good reason for Steam to require admin rights in the first place -- I suspect it&#039;s for DRM systems and not for anything that benefits the user -- but it is an example where a whitelist woudldn&#039;t solve the problem and a service does.)


&lt;&lt;I&gt;&gt;

I agree that admin rights were not required for the initial infection and that the flaws allowing that infection (and people not installing updates) are/were more important by far.

There is a steady stream of those flaws, though, so it is unrealistic to say, &quot;let&#039;s ignore damage limitation and focus only on infection prevention.&quot; That&#039;s especially true when companies like Adobe think that weeks/months is a rapid response time for in-the-wild exploits.

You seemed to be laughing at people for talking about admin rights and malware in the same sentence, but being able to get admin rights made Conficker a bigger problem because it broke/blocked tools/updates which would have removed it after the infection.</description>
		<content:encoded><![CDATA[<p>(Sent via email as well.)</p>
<p>&lt;<i>&gt;</p>
<p>I run standard user on my HTPC and that&#8217;s fine, too. I could probably do the same on my laptop. On my development desktop I think it be too much to type a password every time I run Process Monitor, RegEdit, etc. (Plus the hassle of tools like RegEdit which don&#8217;t let you elevate from within them if launched as standard user.) Those aren&#8217;t things typical users would be doing, though.</p>
<p>For the average user I think the problem was them extrapolating from the annoyance of &#8220;the first two weeks&#8221; setting up the machine. All those control panels, installers, etc., plus the prompts-about-prompts in Explorer if they had to touch Program Files for some reason. The secure desktop was also annoying for some. (Sometimes it takes several seconds to switch to and from the secure desktop for some reason. Dimming the entire screen annoys people with large/multiple monitors.)</p>
<p>I&#8217;ve always told people that if they feel they must switch off the prompts then they should try turning them on again in a couple of weeks as they probabaly won&#8217;t bother them anymore. That was based on the assumption that the prompts had some value to the users who see them, though.</p>
<p>Whether people&#8217;s irritation was sensible or not, it did exist, however.</p>
<p>1) MS knew it and the auto-elevation changes in Windows 7 are to make those people happy. They are the default mode so I&#8217;m assuming it&#8217;s what MS think most people want.</p>
<p>2) MS also know that standard user accounts are basically unchanged from Vista, with the prompts as frequent and more annoying than the limited-Admin mode people were complaining about.</p>
<p>Combine those two and MS cannot expect most people to move to standard user accounts at this time. Rather than encourage it MS have actually made sticking with an admin account *more* tempting with Windows 7. It&#8217;s a step backwards.</p>
<p>Something had to be done but I&#8217;m not convinced this was the right thing.</p>
<p>&lt;&gt;</p>
<p>I consider UAC elevation/prompts largely irrelevant to enterprises. They were (or should have been) already using standard user accounts, are unlikely to use OTS elevation (perhaps some tiny companies will take advantage of it, though) and they were already selecting/demanding/verifying tools which worked without admin rights and large software companies were already producing such software.</p>
<p>I&#8217;ve always seen UAC as something for home users, not enterprises, except that it encourages more amateur software to be written in a way which works with enterprise setups (something which enterprises still need to test as UAC doesn&#8217;t *guarantee* that apps don&#8217;t require admin; it just makes it easier for developers to notice the problem).</p>
<p>(As before, I&#8217;m not talking about protected-mode IE etc. here. That&#8217;s obviously good for enterprises and everyone else.)</p>
<p>&lt;</i><i>&gt;</p>
<p>As soon as you have a non-elevated process talking to an elevated object, you&#8217;ve created a hole in the security boundary, even with standard user. A peer of the unelevated process could hijack it and take over its object. This is difficult to do but possible. Similarly, having any elevated UI objects on the same desktop as unelevated ones has breached the security boundary, even with standard user and even with the (incomplete) protection of UI isolation, etc.</p>
<p>All of which is fine. Elevation is a compromise between security and convenience.</p>
<p>However, Microsoft&#8217;s arguments for dismissing the code-injection issue revolve around the fact that there isn&#8217;t a security boundary with limited-Admin accounts. Well there isn&#8217;t one with standard user accounts, either, if elevation is used at all. So either MS need to openly say &#8220;we don&#8217;t care about any holes in UAC, even for standard user,&#8221; or they need to come up with a better explanation for why they don&#8217;t care about holes for limited-admin accounts.</p>
<p>&#8220;It&#8217;s not a security boundary&#8221; isn&#8217;t a good enough reason to ignore one mode when neither mode is a security boundary.</p>
<p>&lt;&gt;</p>
<p>Microsoft, at times, seem to be claiming that there&#8217;s no difference between these two situations (both about the default setups on each OS):</p>
<p>- On Vista, unelevated code can gain admin by displaying a spoofed UAC prompt and tricking the user into accepting it.</p>
<p>- On Windows 7, Unelevated code can gain admin silently and immediately.</p>
<p>The argument of equivalence requires that all users will blindly consent to every UAC dialog they see. By this argument the distinction between the user and the code they run is lost. Essentially, if the user knows the password then the code has the password, too. I disagree, but it&#8217;s not my argument. If we believe this argument then surely, like the security boundary argument, it means that standard user accounts are no more secure than admin accounts.</p>
<p>Why are the people advocating those two arguments also advocating standard user accounts? Standard user accounts fail both of their arguments as well.</p>
<p>&lt;&gt;</p>
<p>That initiative seems to have stalled. Windows 7 made very little progress towards &#8220;standard user for everyone.&#8221; In fact, it&#8217;s made admin accounts more tempting while the standard user experience has stood still. This is why I find it irritating when MS say people should use standard user if they actually want security: They know standard user is still too irritating for too many, that it cannot be the default as a result, and rather than improve things they&#8217;ve moved backwards. In addition, their arguments for ignoring holes in limited-admin apply to standard user.</p>
<p>&lt;&gt;</p>
<p>Jon&#8217;s folder creation case is the only one I&#8217;m aware of that was actually improved. I don&#8217;t use Explorer much but from using it briefly on Vista SP2 and Windows 7 (in standard user or always prompt modes), it&#8217;s abundantly clear that Explorer is still full of cases where a single action triggers multiple prompts. The first prompt usually exists just to tell you you&#8217;re about to see a second prompt. (Either because someone took the dubious UX guideline that &#8220;you must show a UAC shield before showing a UAC prompt&#8221; too literally, or because they felt the need to display additional information that couldn&#8217;t be displayed in the actual UAC, due to the poor design of the prompts/elevation process.) Add to this the additional &#8220;Are you sure?&#8221; prompts, which are not optional, and you sometimes have to click three times for one action. It&#8217;s ridiculous and extremely irritating.</p>
<p>(It&#8217;s also silly that Explorer still shows the prompts-about-prompts in the default Win7 UAC mode, without displaying the UAC prompts themselves. MS got rid of the prompts that provided some security and left in the ones which code can suppress and which only tell you what you already know with no guarantee that it&#8217;s actually what the admin object has been passed.)</p>
<p>On top of that, there is no way for standard user or &#8220;always prompt&#8221; users to enter an OS X-style (or Directory Opus-style) timed &#8220;admin mode&#8221; (without switching users, changing system-wide UAC settings, or killing the entire shell and re-launching it elevated) where they can perform several admin actions in a row without triggering multiple prompts.</p>
<p>An &#8220;admin mode&#8221; is obviously a security hole while it is active &#8212; for the same reasons elevation in general is a security hole &#8212; but it seems hard to argue against such a mode when the default for Windows 7&#8217;s Explorer is, effectively, &#8220;admin mode&#8221; 24/7 even when the user isn&#8217;t present.</p>
<p>&lt;&gt;</p>
<p>Jon&#8217;s already written a file manager which uses UAC/COM elevation. It does a better job than Microsoft&#8217;s Explorer code (even if you ignore the folder-creation improvements in Vista SP1). Two comparison videos here, both made in 2007:</p>
<p><a href="http://www.pretentiousname.com/misc/win7_uac_whitelist2.html#comparison" rel="nofollow">http://www.pretentiousname.com/misc/win7_uac_whitelist2.html#comparison</a></p>
<p>&lt;&gt;</p>
<p>AFAIK it&#8217;s not possible to create a file manager (or task manager or registry editor or&#8230;) with the same UX as Windows 7&#8217;s built-in tools without resorting to hacks or the effort of writing services*. Is that not the case? If there&#8217;s another way it&#8217;d be great to know it.</p>
<p>If nobody cares that it&#8217;s possible to bypass the prompts, even via methods such as code-injection that don&#8217;t require admin or installation at any prior point, wouldn&#8217;t it be better to give users the ability to explicitly white-list third-party apps and/or COM objects? If whitelisting makes sense at all then it should be user-configurable.</p>
<p>(*Writing a service is easy. Writing a good service is hard. Writing one which exposes admin APIs in a secure way and properly validates all requests is even harder. Still preferable to using a code-injection hack that could stop working at any time, but I&#8217;m not sure it&#8217;s the answer. If we&#8217;re going to dismiss the idea of preventing code getting admin then I&#8217;d rather we just did that, and gave users a whitelist, instead of putting up with badly-written services that run 24/7 and expose admin APIs to any process that knows their protocol. There are exceptions, of course. It&#8217;s worth doing when something is a non-admin tool and needs an admin-side components to do something. e.g. The Steam game distribution/DRM system must be able to work for people who don&#8217;t know the admin password and it has an admin service which starts and stops with the game-launching client. I&#8217;m not convinced there&#8217;s a good reason for Steam to require admin rights in the first place &#8212; I suspect it&#8217;s for DRM systems and not for anything that benefits the user &#8212; but it is an example where a whitelist woudldn&#8217;t solve the problem and a service does.)</p>
<p>&lt;</i><i>&gt;</p>
<p>I agree that admin rights were not required for the initial infection and that the flaws allowing that infection (and people not installing updates) are/were more important by far.</p>
<p>There is a steady stream of those flaws, though, so it is unrealistic to say, &#8220;let&#8217;s ignore damage limitation and focus only on infection prevention.&#8221; That&#8217;s especially true when companies like Adobe think that weeks/months is a rapid response time for in-the-wild exploits.</p>
<p>You seemed to be laughing at people for talking about admin rights and malware in the same sentence, but being able to get admin rights made Conficker a bigger problem because it broke/blocked tools/updates which would have removed it after the infection.</i></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Chris Corio</title>
		<link>http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/comment-page-1/#comment-4025</link>
		<dc:creator>Chris Corio</dc:creator>
		<pubDate>Wed, 31 Dec 1969 18:00:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/#comment-4025</guid>
		<description>Thanks to everyone for your responses.  I will try to address the comments/questions individually.  This will be lengthy. :)
  
I’m not a huge fan of blog posts overall because they tend to get very fragmented and the actual flow of ideas can be very difficult to follow…  Everyone should have my email address and you’re all welcome to email me with any questions…you can post my responses in email if you’d like.  From here on out, I’ll probably be slow to watch the comments on this blog post… 

Also, forgive me for being particularly exacting in my language in certain spots but it’s very important that we use specific terminology carefully. I’m not going to delve deeply into the security boundary language right now because I expect to collaborate on a TechNet magazine article that describes them thoroughly. Very briefly, a “security boundary” exists when certain “security guarantees” have been articulated that define the boundary.

I will also openly state that none of my comments represent Microsoft’s views…they are my own.


From Leo’s comment, he writes:
“But most of the dismissals of the UAC issues in Win7 (and Vista for that matter) have revolved around the split-token Admin account not being a security boundary (true) and implied that if people want a security boundary they must switch to Standard User (false, and unrealistic as the password prompts are so annoying and the level of prompting the same as it was in Vista).
The other dismissals have said there’s no difference between spoofing prompts and code that can immediately/silently elevate itself, because users are dumb and accept every prompt shown to them. Again, even if true, that applies equally to Standard User.
If we believe the dismissals are valid then don’t we have to conclude:
* If you know the administrator password then there is no security boundary for any type of account.
* If you know password then you might as well run everything as Administrator with UAC prompts switched off, like on Windows XP.
* UAC[1] has done nothing to improve the security of the millions of self-administrator home users.
([1] Ignoring protected-mode IE, which is obviously a good thing. UAC covers many features and it’s easy to accidentally make statements about all of them when you don’t mean to.)
If not then which part of Microsoft’s logic/statements am I’m missing or misunderstanding? And what are they actually saying (other than “please ignore these issues”)?”

Specifically addressing your parenthetical comment: “(false, and unrealistic as the password prompts are so annoying and the level of prompting the same as it was in Vista)”  I run all of my computers as a Standard User every day.  I am rarely prompted.  I went so far as to write a piece of software that catalogs all of the UAC prompts that I see just so that I could be sure.  I’m happy to share this software with anyone that would like to test this out.  In enterprises without proper infrastructure to manage software deployment and policy configuration, yes, I could see this configuration being unrealistic.

I’m not sure exactly what security guarantee would be broken and what corresponding security boundary would be in jeopardy when the administrator password is known. (Notice I am using the terms formally) If an entity has the administrator password they can log onto the computer and do anything an administrator can do. Your system may be in an insecure state but no security boundary has been explicitly broken.  

As for the rest of Leo’s comments, I look at where we are today as an incremental step. I will venture to say (without providing formal references) that my system runs more reliably with UAC enabled.  And if you look at UAC as a long term strategic initiative to enable home users to run as Standard User accounts that never elevate then I think that we have provided home users some benefit although it may not immediately be realized. (I hint at this in the beginnings of my UAC article on MSDN – link below.)  If you combine standard user accounts with something like App Locker, you’re getting even closer to a very secure desktop user experience.  Once again, I’ll issue a caveat by saying that I have no notion of whether this is Microsoft’s current thinking.  

AndyC - 
I agree that the automatic elevation policy is disheartening though I think that its implementation is fair and I don’t think there’s much change in incentives for 3rd parties to “auto-elevate” a piece of software.  The implementation is designed to avoid this and an ISV could always write a service or use a Windows Task to auto-elevate in Windows Vista.

While this feature was implemented after I left MSFT, I’ll try to speculate around the motivation for the feature:  I think the negative backlash around the Vista UX, largely impacted by UAC, was particularly heartfelt by the newly appointed Windows executive management chain and this problem was to be solved!  Like I said, I can completely understand the focus on UX and so the pendulum swung.  I will say two things:
1.	I have my suspicions that MSFT was thrown a curveball.  What I mean by that is that the loudest critics were the pundits that primarily install and configure their systems all day and would thus see a lot of prompts. If anyone knows me well, they know I’m particularly curious about people’s impression of technology and I’m apt to ask anyone at length about their experience on Windows.  I always ask “lay-home-users” whether prompts are an issue and I generally find that they don’t see many prompts.
2.	I think the internal mandate for change was slightly disconnected from reality.  The engineers at MSFT fixed a lot scenarios that caused prompts in Windows, including the one that jon points out for folder creation and renaming (which was fixed in Vista SP1), and the industry would have been 3 years into fixing their prompts by the time at Windows 7 ships. I think that the prompt problem would have naturally solved itself but I’ve always tended to have a bit of a laissez faire attitude toward the prompting problem… 

But, alas, this problem was to be solved!!  And thus you see the automatic elevation for specific Windows applications.  Please be aware that you cannot arbitrarily elevate all in-box Windows binaries – the feature was focused on scenarios where the system was being configured.  In the end, I believe this feature will continue to incentivize 3rd parties to develop for Standard User accounts.   

Jon, you wrote: 
“And that therein is the crux of the matter. Microsoft wrote the OS, so their apps (and by this, largely, we mean Explorer) doesn’t need to prompt, whereas other software does.”

Most applications shouldn’t need to prompt at all - Windows applications or otherwise – but for legacy reasons many should and do during installation.  Explorer.exe definitely doesn’t need to prompt because it always runs with the Standard User token.  Certain file management scenarios are an exception, including folder creation in protected areas of the file system, and these are handled by COM objects that are automatically elevated.  If you want to implement your software with a similar UX, it’s possible and I’d be happy to walk through certain design scenarios with you to achieve this user experience.

Lastly, I will point you at this link and say, I had the pleasure of working for David and he is awesome, I agree with everything in this article. http://news.cnet.com/Microsoft-Vista-feature-designed-to-annoy-users/2100-1016_3-6237191.html

Leo, referencing my original post, you wote:
“why does malware need administrator privileges anyway?”
http://en.wikipedia.org/wiki/Conficker#Operation — Self-Defence column

I would refer you to the “Initial Infection” section.  No UAC prompt was required for infection, which is what I meant when I said, “why does malware need administrator privileges anyway?” Sorry for the confusion.  Your example does illustrate the sophistication of malware developers, which was my original intent.

Phew…I think that addresses most of the comments.  Ultimately, computer security, like any other security field, is a very intense and challenging problem where two opposing sides fight to protect and compromise resources and always will.  I view technology changes within this context. If you want a look at a similar discussion put in the context of physical lock technology, here’s an awesome article from Wired magazine: http://www.wired.com/techbiz/people/magazine/17-06/ff_keymaster?currentPage=all

Send me emails for further comment.

Cheers,
Chris</description>
		<content:encoded><![CDATA[<p>Thanks to everyone for your responses.  I will try to address the comments/questions individually.  This will be lengthy. :)</p>
<p>I’m not a huge fan of blog posts overall because they tend to get very fragmented and the actual flow of ideas can be very difficult to follow…  Everyone should have my email address and you’re all welcome to email me with any questions…you can post my responses in email if you’d like.  From here on out, I’ll probably be slow to watch the comments on this blog post… </p>
<p>Also, forgive me for being particularly exacting in my language in certain spots but it’s very important that we use specific terminology carefully. I’m not going to delve deeply into the security boundary language right now because I expect to collaborate on a TechNet magazine article that describes them thoroughly. Very briefly, a “security boundary” exists when certain “security guarantees” have been articulated that define the boundary.</p>
<p>I will also openly state that none of my comments represent Microsoft’s views…they are my own.</p>
<p>From Leo’s comment, he writes:<br />
“But most of the dismissals of the UAC issues in Win7 (and Vista for that matter) have revolved around the split-token Admin account not being a security boundary (true) and implied that if people want a security boundary they must switch to Standard User (false, and unrealistic as the password prompts are so annoying and the level of prompting the same as it was in Vista).<br />
The other dismissals have said there’s no difference between spoofing prompts and code that can immediately/silently elevate itself, because users are dumb and accept every prompt shown to them. Again, even if true, that applies equally to Standard User.<br />
If we believe the dismissals are valid then don’t we have to conclude:<br />
* If you know the administrator password then there is no security boundary for any type of account.<br />
* If you know password then you might as well run everything as Administrator with UAC prompts switched off, like on Windows XP.<br />
* UAC[1] has done nothing to improve the security of the millions of self-administrator home users.<br />
([1] Ignoring protected-mode IE, which is obviously a good thing. UAC covers many features and it’s easy to accidentally make statements about all of them when you don’t mean to.)<br />
If not then which part of Microsoft’s logic/statements am I’m missing or misunderstanding? And what are they actually saying (other than “please ignore these issues”)?”</p>
<p>Specifically addressing your parenthetical comment: “(false, and unrealistic as the password prompts are so annoying and the level of prompting the same as it was in Vista)”  I run all of my computers as a Standard User every day.  I am rarely prompted.  I went so far as to write a piece of software that catalogs all of the UAC prompts that I see just so that I could be sure.  I’m happy to share this software with anyone that would like to test this out.  In enterprises without proper infrastructure to manage software deployment and policy configuration, yes, I could see this configuration being unrealistic.</p>
<p>I’m not sure exactly what security guarantee would be broken and what corresponding security boundary would be in jeopardy when the administrator password is known. (Notice I am using the terms formally) If an entity has the administrator password they can log onto the computer and do anything an administrator can do. Your system may be in an insecure state but no security boundary has been explicitly broken.  </p>
<p>As for the rest of Leo’s comments, I look at where we are today as an incremental step. I will venture to say (without providing formal references) that my system runs more reliably with UAC enabled.  And if you look at UAC as a long term strategic initiative to enable home users to run as Standard User accounts that never elevate then I think that we have provided home users some benefit although it may not immediately be realized. (I hint at this in the beginnings of my UAC article on MSDN – link below.)  If you combine standard user accounts with something like App Locker, you’re getting even closer to a very secure desktop user experience.  Once again, I’ll issue a caveat by saying that I have no notion of whether this is Microsoft’s current thinking.  </p>
<p>AndyC &#8211;<br />
I agree that the automatic elevation policy is disheartening though I think that its implementation is fair and I don’t think there’s much change in incentives for 3rd parties to “auto-elevate” a piece of software.  The implementation is designed to avoid this and an ISV could always write a service or use a Windows Task to auto-elevate in Windows Vista.</p>
<p>While this feature was implemented after I left MSFT, I’ll try to speculate around the motivation for the feature:  I think the negative backlash around the Vista UX, largely impacted by UAC, was particularly heartfelt by the newly appointed Windows executive management chain and this problem was to be solved!  Like I said, I can completely understand the focus on UX and so the pendulum swung.  I will say two things:<br />
1.	I have my suspicions that MSFT was thrown a curveball.  What I mean by that is that the loudest critics were the pundits that primarily install and configure their systems all day and would thus see a lot of prompts. If anyone knows me well, they know I’m particularly curious about people’s impression of technology and I’m apt to ask anyone at length about their experience on Windows.  I always ask “lay-home-users” whether prompts are an issue and I generally find that they don’t see many prompts.<br />
2.	I think the internal mandate for change was slightly disconnected from reality.  The engineers at MSFT fixed a lot scenarios that caused prompts in Windows, including the one that jon points out for folder creation and renaming (which was fixed in Vista SP1), and the industry would have been 3 years into fixing their prompts by the time at Windows 7 ships. I think that the prompt problem would have naturally solved itself but I’ve always tended to have a bit of a laissez faire attitude toward the prompting problem… </p>
<p>But, alas, this problem was to be solved!!  And thus you see the automatic elevation for specific Windows applications.  Please be aware that you cannot arbitrarily elevate all in-box Windows binaries – the feature was focused on scenarios where the system was being configured.  In the end, I believe this feature will continue to incentivize 3rd parties to develop for Standard User accounts.   </p>
<p>Jon, you wrote:<br />
“And that therein is the crux of the matter. Microsoft wrote the OS, so their apps (and by this, largely, we mean Explorer) doesn’t need to prompt, whereas other software does.”</p>
<p>Most applications shouldn’t need to prompt at all &#8211; Windows applications or otherwise – but for legacy reasons many should and do during installation.  Explorer.exe definitely doesn’t need to prompt because it always runs with the Standard User token.  Certain file management scenarios are an exception, including folder creation in protected areas of the file system, and these are handled by COM objects that are automatically elevated.  If you want to implement your software with a similar UX, it’s possible and I’d be happy to walk through certain design scenarios with you to achieve this user experience.</p>
<p>Lastly, I will point you at this link and say, I had the pleasure of working for David and he is awesome, I agree with everything in this article. <a href="http://news.cnet.com/Microsoft-Vista-feature-designed-to-annoy-users/2100-1016_3-6237191.html" rel="nofollow">http://news.cnet.com/Microsoft-Vista-feature-designed-to-annoy-users/2100-1016_3-6237191.html</a></p>
<p>Leo, referencing my original post, you wote:<br />
“why does malware need administrator privileges anyway?”<br />
<a href="http://en.wikipedia.org/wiki/Conficker#Operation" rel="nofollow">http://en.wikipedia.org/wiki/Conficker#Operation</a> — Self-Defence column</p>
<p>I would refer you to the “Initial Infection” section.  No UAC prompt was required for infection, which is what I meant when I said, “why does malware need administrator privileges anyway?” Sorry for the confusion.  Your example does illustrate the sophistication of malware developers, which was my original intent.</p>
<p>Phew…I think that addresses most of the comments.  Ultimately, computer security, like any other security field, is a very intense and challenging problem where two opposing sides fight to protect and compromise resources and always will.  I view technology changes within this context. If you want a look at a similar discussion put in the context of physical lock technology, here’s an awesome article from Wired magazine: <a href="http://www.wired.com/techbiz/people/magazine/17-06/ff_keymaster?currentPage=all" rel="nofollow">http://www.wired.com/techbiz/people/magazine/17-06/ff_keymaster?currentPage=all</a></p>
<p>Send me emails for further comment.</p>
<p>Cheers,<br />
Chris</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Leo Davidson</title>
		<link>http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/comment-page-1/#comment-4020</link>
		<dc:creator>Leo Davidson</dc:creator>
		<pubDate>Wed, 31 Dec 1969 18:00:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/#comment-4020</guid>
		<description>“why does malware need administrator privileges anyway?”

http://en.wikipedia.org/wiki/Conficker#Operation -- Self-Defence column</description>
		<content:encoded><![CDATA[<p>“why does malware need administrator privileges anyway?”</p>
<p><a href="http://en.wikipedia.org/wiki/Conficker#Operation" rel="nofollow">http://en.wikipedia.org/wiki/Conficker#Operation</a> &#8212; Self-Defence column</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: jon</title>
		<link>http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/comment-page-1/#comment-3993</link>
		<dc:creator>jon</dc:creator>
		<pubDate>Wed, 31 Dec 1969 18:00:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/#comment-3993</guid>
		<description>“This ISV wrote software that unnecessarily requires Administrator privileges!”

And that therein is the crux of the matter. Microsoft wrote the OS, so their apps (and by this, largely, we mean Explorer) doesn&#039;t need to prompt, whereas other software does.

Fine, I can accept that (although it is anti-competitive, if you write file managers for a living. But leaving that aside...)

Given that this vulnerability allows any software to bypass the prompts almost as easily as Microsoft can, what, prey-tell, is actually the point of them?

The user isn&#039;t interested in whether the ISV wrote software that unnecessarily requires Administrator privilege or not. The user is interested in getting something done. The software they&#039;re using presumably (if we give it the same benefit of the doubt that Microsoft give their own apps) NEEDS administrator privilege for a reason. All the user sees is a prompt which annoys them and interrupts their workflow. It&#039;s clearly not for security (as you have admitted, and as can easily be shown since it can now - not in Vista, but in Windows 7 - be trivially bypassed), and any &quot;lesson&quot; that the prompts bring is one for the developer themselves, not their customers.

UAC was a good idea that was imperfectly implemented. Most of the criticism of unnecessary prompting was because of Microsoft&#039;s own stupidity - I mean, come on - FOUR individual prompts just to create a folder and rename it in Program Files? Instead of fixing this, you have now turned the tables and decided to give yourselves a free pass, and penalize any ISVs who tried to play by your rules and do the right thing. The users will continue to be annoyed, but by third-party software instead of by Microsoft&#039;s.

Well done all round.</description>
		<content:encoded><![CDATA[<p>“This ISV wrote software that unnecessarily requires Administrator privileges!”</p>
<p>And that therein is the crux of the matter. Microsoft wrote the OS, so their apps (and by this, largely, we mean Explorer) doesn&#8217;t need to prompt, whereas other software does.</p>
<p>Fine, I can accept that (although it is anti-competitive, if you write file managers for a living. But leaving that aside&#8230;)</p>
<p>Given that this vulnerability allows any software to bypass the prompts almost as easily as Microsoft can, what, prey-tell, is actually the point of them?</p>
<p>The user isn&#8217;t interested in whether the ISV wrote software that unnecessarily requires Administrator privilege or not. The user is interested in getting something done. The software they&#8217;re using presumably (if we give it the same benefit of the doubt that Microsoft give their own apps) NEEDS administrator privilege for a reason. All the user sees is a prompt which annoys them and interrupts their workflow. It&#8217;s clearly not for security (as you have admitted, and as can easily be shown since it can now &#8211; not in Vista, but in Windows 7 &#8211; be trivially bypassed), and any &#8220;lesson&#8221; that the prompts bring is one for the developer themselves, not their customers.</p>
<p>UAC was a good idea that was imperfectly implemented. Most of the criticism of unnecessary prompting was because of Microsoft&#8217;s own stupidity &#8211; I mean, come on &#8211; FOUR individual prompts just to create a folder and rename it in Program Files? Instead of fixing this, you have now turned the tables and decided to give yourselves a free pass, and penalize any ISVs who tried to play by your rules and do the right thing. The users will continue to be annoyed, but by third-party software instead of by Microsoft&#8217;s.</p>
<p>Well done all round.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: AndyC</title>
		<link>http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/comment-page-1/#comment-3992</link>
		<dc:creator>AndyC</dc:creator>
		<pubDate>Wed, 31 Dec 1969 18:00:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/#comment-3992</guid>
		<description>Chris, great to see your input. As a Systems Administrator on a Vista network I&#039;m well aware of what UAC is and isn&#039;t as regards a security effort and, as you mention above, already block Over-The-Shoulder elevations and insist IT guys use Fast User Switching to perform Administrative tasks should they ever need to on an workstation.

Which leads me to this comment &quot; I’ve seen an incredible interest from IT professionals in running their systems as Standard Users. This is a giant success and UAC was integral in achieving it. Those machines will run smoother and more reliably.&quot; Absolutey, I couldn&#039;t agree more, and that&#039;s why I am so gutted to see the desicion to allow silent elevations be the default in Windows 7. All that good work that went into Windows Vista on UAC at reducing the amount of IT time wasted getting applications to run in a Standard User environment is going to fall away as developers take the easy option of hacking their apps to auto-elevate rather than fix the properly, history has shown that devs will generally take the easy option rather than the right one.

The silent UAC elevation issue really isn&#039;t about malware, it&#039;s about keeping that separation going. Please, for once, won&#039;t somebody think of the admins....</description>
		<content:encoded><![CDATA[<p>Chris, great to see your input. As a Systems Administrator on a Vista network I&#8217;m well aware of what UAC is and isn&#8217;t as regards a security effort and, as you mention above, already block Over-The-Shoulder elevations and insist IT guys use Fast User Switching to perform Administrative tasks should they ever need to on an workstation.</p>
<p>Which leads me to this comment &#8221; I’ve seen an incredible interest from IT professionals in running their systems as Standard Users. This is a giant success and UAC was integral in achieving it. Those machines will run smoother and more reliably.&#8221; Absolutey, I couldn&#8217;t agree more, and that&#8217;s why I am so gutted to see the desicion to allow silent elevations be the default in Windows 7. All that good work that went into Windows Vista on UAC at reducing the amount of IT time wasted getting applications to run in a Standard User environment is going to fall away as developers take the easy option of hacking their apps to auto-elevate rather than fix the properly, history has shown that devs will generally take the easy option rather than the right one.</p>
<p>The silent UAC elevation issue really isn&#8217;t about malware, it&#8217;s about keeping that separation going. Please, for once, won&#8217;t somebody think of the admins&#8230;.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Leo Davidson</title>
		<link>http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/comment-page-1/#comment-3991</link>
		<dc:creator>Leo Davidson</dc:creator>
		<pubDate>Wed, 31 Dec 1969 18:00:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/#comment-3991</guid>
		<description>It&#039;s great to see some solid info from someone involved with UAC, Chris. Thank you!

&quot;The good news is that I believe everyone at MSFT recognizes that UAC elevations (particularly for PA accounts, but also for Standard User accounts) is not a security boundary. If you want the highest level of security…never elevate a standard user account in an interactive session – this is achievable in an enterprise.&quot;

Thank you for including Standard User in that.

Essentially, no matter which type of account you start from, if you elevate *at all* (or share anything at all, e.g. download something from the web as Standard User, then switch to Admin to view or install it), there is no security boundary.

But most of the dismissals of the UAC issues in Win7 (and Vista for that matter) have revolved around the split-token Admin account not being a security boundary (true) and implied that if people want a security boundary they must switch to Standard User (false, and unrealistic as the password prompts are so annoying and the level of prompting the same as it was in Vista).

The other dismissals have said there&#039;s no difference between spoofing prompts and code that can immediately/silently elevate itself, because users are dumb and accept every prompt shown to them. Again, even if true, that applies equally to Standard User.

If we believe the dismissals are valid then don&#039;t we have to conclude:

* If you know the administrator password then there is no security boundary for any type of account.

* If you know password then you might as well run everything as Administrator with UAC prompts switched off, like on Windows XP.

* UAC[1] has done nothing to improve the security of the millions of self-administrator home users.

([1] Ignoring protected-mode IE, which is obviously a good thing. UAC covers many features and it&#039;s easy to accidentally make statements about all of them when you don&#039;t mean to.)


If not then which part of Microsoft&#039;s logic/statements am I&#039;m missing or misunderstanding? And what are they actually saying (other than &quot;please ignore these issues&quot;)?


Note: I disagree with the conclusion! I think the dismissals it is derived from miss several key points. To me the dismissals say &quot;it wasn&#039;t perfect before and it is still not perfect, therefore it has not become worse,&quot; which is a ridiculous statement. Much of the rest of this post is playing devil&#039;s advocate by pretending the dismissals and the conclusion are valid.


Regardless of the conclusion, I think it&#039;s a very good thing that UAC helps developers write software that works on locked-down corporate builds, and also helps corporations select software which they know will work.

However, if that is the only purpose of UAC (ignoring protected-mode IE again), then why are the UAC prompts on by default for home users?


1) UAC does assist developers notice when their code depends on administrator rights by accident.

Programmers typically run under admin accounts -- they often need to modify HKLM or run tools like Process Monitor -- so it&#039;s easy for them to write code that only works as admin without noticing unless they test everything under another account. UAC helps programmers spot these mistakes by making such code fail unless the programmer modifies it (or the whole exe) to explicitly request admin rights. Good.

What developers do to fix the problem is up to them. UAC doesn&#039;t stop developers from doing dumb things; nothing can or will. Chances are any programmer too dumb/lazy to minimize the use of admin rights will just set their entire exe to require elevation, making it trivial to detect what they&#039;ve done and ignore their software if it&#039;s important. They&#039;ll sell fewer copies because of their stupid choices. Good!


2) UAC does assist corporate IT in evaluating whether or not software will work on a locked-down build.

Corporate IT purchasers can examine exe manifests to see which programs require elevation just to run. They can switch to Always Prompt (or, better, just run as a standard user) while evaluating software to see which exes use COM elevation gratuitously.


Neither of those things requires UAC prompts to be on by default for the millions of usual self-administrator home users, though. So why are they on? It seems like security theatre to me, now that we&#039;re being told the prompts are not for security.

Are we really pissing off lots of self-admin users with the default settings just to add an extra incentive for ISVs to do the right thing? Surely if some shoddy developer decides he cannot be bothered supporting Standard User properly then that&#039;s his dumb choice and, so long as it&#039;s easy to tell that&#039;s what he&#039;s done, who cares? The benefit of UAC is helping developers realise their mistakes, not coercing them to fix them. Some developers will always do dumb things. That&#039;s life. Help the good ones do the right thing, educate people about why it&#039;s important, and forget the idiots who ignore it.

We were told it was important to force all software -- even the badly written stuff only used by home users -- to work as Standard User so that one day everbody would move to that account type and be more secure without having to sacrifice any of their -- potentially crappy -- software. But what&#039;s the point of that goal if we&#039;re now being told that, if you join up the dots, Standard User is no more secure than Administrator was if you know the admin password?


&quot;why does malware need administrator privileges anyway?&quot;

Isn&#039;t that like asking why we have Standard User accounts? :)

Malware doesn&#039;t *need* administrator privileges but it can do more damage -- or hide itself better as a rootkit -- if it gets them.</description>
		<content:encoded><![CDATA[<p>It&#8217;s great to see some solid info from someone involved with UAC, Chris. Thank you!</p>
<p>&#8220;The good news is that I believe everyone at MSFT recognizes that UAC elevations (particularly for PA accounts, but also for Standard User accounts) is not a security boundary. If you want the highest level of security…never elevate a standard user account in an interactive session – this is achievable in an enterprise.&#8221;</p>
<p>Thank you for including Standard User in that.</p>
<p>Essentially, no matter which type of account you start from, if you elevate *at all* (or share anything at all, e.g. download something from the web as Standard User, then switch to Admin to view or install it), there is no security boundary.</p>
<p>But most of the dismissals of the UAC issues in Win7 (and Vista for that matter) have revolved around the split-token Admin account not being a security boundary (true) and implied that if people want a security boundary they must switch to Standard User (false, and unrealistic as the password prompts are so annoying and the level of prompting the same as it was in Vista).</p>
<p>The other dismissals have said there&#8217;s no difference between spoofing prompts and code that can immediately/silently elevate itself, because users are dumb and accept every prompt shown to them. Again, even if true, that applies equally to Standard User.</p>
<p>If we believe the dismissals are valid then don&#8217;t we have to conclude:</p>
<p>* If you know the administrator password then there is no security boundary for any type of account.</p>
<p>* If you know password then you might as well run everything as Administrator with UAC prompts switched off, like on Windows XP.</p>
<p>* UAC[1] has done nothing to improve the security of the millions of self-administrator home users.</p>
<p>([1] Ignoring protected-mode IE, which is obviously a good thing. UAC covers many features and it&#8217;s easy to accidentally make statements about all of them when you don&#8217;t mean to.)</p>
<p>If not then which part of Microsoft&#8217;s logic/statements am I&#8217;m missing or misunderstanding? And what are they actually saying (other than &#8220;please ignore these issues&#8221;)?</p>
<p>Note: I disagree with the conclusion! I think the dismissals it is derived from miss several key points. To me the dismissals say &#8220;it wasn&#8217;t perfect before and it is still not perfect, therefore it has not become worse,&#8221; which is a ridiculous statement. Much of the rest of this post is playing devil&#8217;s advocate by pretending the dismissals and the conclusion are valid.</p>
<p>Regardless of the conclusion, I think it&#8217;s a very good thing that UAC helps developers write software that works on locked-down corporate builds, and also helps corporations select software which they know will work.</p>
<p>However, if that is the only purpose of UAC (ignoring protected-mode IE again), then why are the UAC prompts on by default for home users?</p>
<p>1) UAC does assist developers notice when their code depends on administrator rights by accident.</p>
<p>Programmers typically run under admin accounts &#8212; they often need to modify HKLM or run tools like Process Monitor &#8212; so it&#8217;s easy for them to write code that only works as admin without noticing unless they test everything under another account. UAC helps programmers spot these mistakes by making such code fail unless the programmer modifies it (or the whole exe) to explicitly request admin rights. Good.</p>
<p>What developers do to fix the problem is up to them. UAC doesn&#8217;t stop developers from doing dumb things; nothing can or will. Chances are any programmer too dumb/lazy to minimize the use of admin rights will just set their entire exe to require elevation, making it trivial to detect what they&#8217;ve done and ignore their software if it&#8217;s important. They&#8217;ll sell fewer copies because of their stupid choices. Good!</p>
<p>2) UAC does assist corporate IT in evaluating whether or not software will work on a locked-down build.</p>
<p>Corporate IT purchasers can examine exe manifests to see which programs require elevation just to run. They can switch to Always Prompt (or, better, just run as a standard user) while evaluating software to see which exes use COM elevation gratuitously.</p>
<p>Neither of those things requires UAC prompts to be on by default for the millions of usual self-administrator home users, though. So why are they on? It seems like security theatre to me, now that we&#8217;re being told the prompts are not for security.</p>
<p>Are we really pissing off lots of self-admin users with the default settings just to add an extra incentive for ISVs to do the right thing? Surely if some shoddy developer decides he cannot be bothered supporting Standard User properly then that&#8217;s his dumb choice and, so long as it&#8217;s easy to tell that&#8217;s what he&#8217;s done, who cares? The benefit of UAC is helping developers realise their mistakes, not coercing them to fix them. Some developers will always do dumb things. That&#8217;s life. Help the good ones do the right thing, educate people about why it&#8217;s important, and forget the idiots who ignore it.</p>
<p>We were told it was important to force all software &#8212; even the badly written stuff only used by home users &#8212; to work as Standard User so that one day everbody would move to that account type and be more secure without having to sacrifice any of their &#8212; potentially crappy &#8212; software. But what&#8217;s the point of that goal if we&#8217;re now being told that, if you join up the dots, Standard User is no more secure than Administrator was if you know the admin password?</p>
<p>&#8220;why does malware need administrator privileges anyway?&#8221;</p>
<p>Isn&#8217;t that like asking why we have Standard User accounts? :)</p>
<p>Malware doesn&#8217;t *need* administrator privileges but it can do more damage &#8212; or hide itself better as a rootkit &#8212; if it gets them.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Chris Corio</title>
		<link>http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/comment-page-1/#comment-3987</link>
		<dc:creator>Chris Corio</dc:creator>
		<pubDate>Wed, 31 Dec 1969 18:00:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/#comment-3987</guid>
		<description>I was part of the team that designed UAC.  I&#039;ll give you a little insight into the history of UAC and address some of the comments made on this blog post.  Here we go...

As with any major initiative, especially one involving a multi-year effort involving 10s of engineers and affecting every application on the face of the earth, you don&#039;t always end up with the exact technology you envisioned when you started.  Hell, in the case of UAC we even changed the name of the feature several times - I bet no one remembers that it was called Flexible Account Control Technologies at one point.  :)

If my memory serves me, when we started the UAC project, we firmly believed it would be a security feature.  We wanted to protect users on the Windows system from malware.  We also had the goal of incentivizing the use of Standard User accounts, which is something MSFT has been trying to do for several releases of Windows.

From my perspective, the design was brilliant and I take no credit for the creation of the split token.  That concept was extremely powerful though because it modeled the default token to be that of a Standard User.  In Vista, there was no compromise when it came to prompting and I remember answering the question &quot;is there a white list for applications?&quot; in every UAC talk I ever gave.  Have no false pretense, that prompt isn&#039;t security theatre - it is a giant stop sign that says: &quot;This ISV wrote software that unnecessarily requires Administrator privileges!&quot;  This is exactly why you see the prompts today on Windows 7 targetted at 3rd parties.  

As for the security messaging around UAC.  The point where our messaging switched from security to reliability was when the product team engaged the support of our Secure Windows Initiative (SWI) team to PenTest UAC.  They clearly demonstrated because of the shared state, HKCU, user profile, etc., between the &quot;little Abby&quot; and &quot;big Abby&quot; tokens (as we referred to them) that UAC elevations could never be a security feature - this was also right around when MarkRuss came to MSFT.  He was also instrumental in demonstrating the flaws in our messaging!  

I&#039;ll admit that the product team was taken aback by this change in messaging and it took some of us longer than others to adjust to the new messaging.  The good news is that I believe everyone at MSFT recognizes that UAC elevations (particularly for PA accounts, but also for Standard User accounts) is not a security boundary.  If you want the highest level of security...never elevate a standard user account in an interactive session - this is achievable in an enterprise.  

I have personally corrected several of the old documents with that messaging and I&#039;m happy to fix any others if you send me an email with the link: chris@chriscorio.com.  I didn&#039;t see any in the top 10 in the list that accompanies this blog post (most of which are not written by offical MSFT employees) aside from the Windows help, which demonstrates the vintage of the messaging: http://windowshelp.microsoft.com/Windows/en-US/help/0eeb9ddd-ddaa-4cc5-a092-9908305665471033.mspx

Now, where are we today?  I&#039;ve seen an incredible interest from IT professionals in running their systems as Standard Users.  This is a giant success and UAC was integral in achieving it.  Those machines will run smoother and more reliably.  As pointed out on the thread, the default account created in the Windows Out-of-Box Experience is still an Administrator.  This is disappointing for me but MSFT has prioritized the UX for Windows right now and I think it is a necessary focus.  Hopefully we will see this change in the future.

If anyone would like to have a public debate about UAC at any time - please don&#039;t hesitate to let me know.  Just send over a list of questions and I&#039;m happy to answer them.  I will be blunt in saying that I regard the dramatic posts around this elevation vulnerability as simply being a laughable distraction.  

One thing that should never be forgotten: Malware writers are very sophisticated.  They surely have far more interesting exploits than this fairly rudimentary workaround.  And, for all you security researchers out there, this debate makes me chuckle...why does malware need administrator privileges anyway?   

For now, I&#039;m focusing on moving the broader industry to Standard User accounts, one desktop and one more fixed application at a time.

Chris</description>
		<content:encoded><![CDATA[<p>I was part of the team that designed UAC.  I&#8217;ll give you a little insight into the history of UAC and address some of the comments made on this blog post.  Here we go&#8230;</p>
<p>As with any major initiative, especially one involving a multi-year effort involving 10s of engineers and affecting every application on the face of the earth, you don&#8217;t always end up with the exact technology you envisioned when you started.  Hell, in the case of UAC we even changed the name of the feature several times &#8211; I bet no one remembers that it was called Flexible Account Control Technologies at one point.  :)</p>
<p>If my memory serves me, when we started the UAC project, we firmly believed it would be a security feature.  We wanted to protect users on the Windows system from malware.  We also had the goal of incentivizing the use of Standard User accounts, which is something MSFT has been trying to do for several releases of Windows.</p>
<p>From my perspective, the design was brilliant and I take no credit for the creation of the split token.  That concept was extremely powerful though because it modeled the default token to be that of a Standard User.  In Vista, there was no compromise when it came to prompting and I remember answering the question &#8220;is there a white list for applications?&#8221; in every UAC talk I ever gave.  Have no false pretense, that prompt isn&#8217;t security theatre &#8211; it is a giant stop sign that says: &#8220;This ISV wrote software that unnecessarily requires Administrator privileges!&#8221;  This is exactly why you see the prompts today on Windows 7 targetted at 3rd parties.  </p>
<p>As for the security messaging around UAC.  The point where our messaging switched from security to reliability was when the product team engaged the support of our Secure Windows Initiative (SWI) team to PenTest UAC.  They clearly demonstrated because of the shared state, HKCU, user profile, etc., between the &#8220;little Abby&#8221; and &#8220;big Abby&#8221; tokens (as we referred to them) that UAC elevations could never be a security feature &#8211; this was also right around when MarkRuss came to MSFT.  He was also instrumental in demonstrating the flaws in our messaging!  </p>
<p>I&#8217;ll admit that the product team was taken aback by this change in messaging and it took some of us longer than others to adjust to the new messaging.  The good news is that I believe everyone at MSFT recognizes that UAC elevations (particularly for PA accounts, but also for Standard User accounts) is not a security boundary.  If you want the highest level of security&#8230;never elevate a standard user account in an interactive session &#8211; this is achievable in an enterprise.  </p>
<p>I have personally corrected several of the old documents with that messaging and I&#8217;m happy to fix any others if you send me an email with the link: <a href="mailto:chris@chriscorio.com">chris@chriscorio.com</a>.  I didn&#8217;t see any in the top 10 in the list that accompanies this blog post (most of which are not written by offical MSFT employees) aside from the Windows help, which demonstrates the vintage of the messaging: <a href="http://windowshelp.microsoft.com/Windows/en-US/help/0eeb9ddd-ddaa-4cc5-a092-9908305665471033.mspx" rel="nofollow">http://windowshelp.microsoft.com/Windows/en-US/help/0eeb9ddd-ddaa-4cc5-a092-9908305665471033.mspx</a></p>
<p>Now, where are we today?  I&#8217;ve seen an incredible interest from IT professionals in running their systems as Standard Users.  This is a giant success and UAC was integral in achieving it.  Those machines will run smoother and more reliably.  As pointed out on the thread, the default account created in the Windows Out-of-Box Experience is still an Administrator.  This is disappointing for me but MSFT has prioritized the UX for Windows right now and I think it is a necessary focus.  Hopefully we will see this change in the future.</p>
<p>If anyone would like to have a public debate about UAC at any time &#8211; please don&#8217;t hesitate to let me know.  Just send over a list of questions and I&#8217;m happy to answer them.  I will be blunt in saying that I regard the dramatic posts around this elevation vulnerability as simply being a laughable distraction.  </p>
<p>One thing that should never be forgotten: Malware writers are very sophisticated.  They surely have far more interesting exploits than this fairly rudimentary workaround.  And, for all you security researchers out there, this debate makes me chuckle&#8230;why does malware need administrator privileges anyway?   </p>
<p>For now, I&#8217;m focusing on moving the broader industry to Standard User accounts, one desktop and one more fixed application at a time.</p>
<p>Chris</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Leo Davidson</title>
		<link>http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/comment-page-1/#comment-3956</link>
		<dc:creator>Leo Davidson</dc:creator>
		<pubDate>Wed, 31 Dec 1969 18:00:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/#comment-3956</guid>
		<description>@Nathan:

The current defaults make no sense as they make the prompts trivial to bypass and yet still show the prompts (despite them being next to worthless) for some actions. They are the worst of both worlds.

i.e. Either the mode should be &quot;always prompt&quot; or it should be &quot;silently elevate.&quot;

If you think the prompts are worthless, even in &quot;always prompt&quot; mode, then feel free to argue the case for &quot;silently elevate.&quot; I don&#039;t think you can argue for the current defaults, though, as they still impose some prompts* which are orders of magnitude more useless than those you get at the &quot;always prompt&quot; level. (* Quite unfairly on 3rd party software, too, when most of the prompt-spamming nightmare is Microsoft&#039;s own apps&#039; fault.)

Running as standard user is about as likely to happen as people switching to Linux, until it&#039;s made less annoying. (People would not put up with the prompts in Vista so they sure as hell will not put up with the even worse prompts with standard user. The prompt-spamming nightmare still exists for standard users -- because MS haven&#039;t improved the way their apps use UAC, they just gave themselves a UAC backdoor when in limited-admin mode -- and is more annoying as you have to type a password for every prompt.)

Also, prompt-spoofing can be done even with standard user accounts. Nothing is 100% secure. That doesn&#039;t mean we shouldn&#039;t ask for the right balance of security and convenience and complain when Microsoft not only get that balance wrong but serve up a design which is clearly based on marketing and security theatre rather than sound design or logic. (i.e. They&#039;ve made the prompts trivial to bypass by default, but still show the odd prompt for 3rd party software just to give naive users the illusion that there&#039;s some kind of security.)</description>
		<content:encoded><![CDATA[<p>@Nathan:</p>
<p>The current defaults make no sense as they make the prompts trivial to bypass and yet still show the prompts (despite them being next to worthless) for some actions. They are the worst of both worlds.</p>
<p>i.e. Either the mode should be &#8220;always prompt&#8221; or it should be &#8220;silently elevate.&#8221;</p>
<p>If you think the prompts are worthless, even in &#8220;always prompt&#8221; mode, then feel free to argue the case for &#8220;silently elevate.&#8221; I don&#8217;t think you can argue for the current defaults, though, as they still impose some prompts* which are orders of magnitude more useless than those you get at the &#8220;always prompt&#8221; level. (* Quite unfairly on 3rd party software, too, when most of the prompt-spamming nightmare is Microsoft&#8217;s own apps&#8217; fault.)</p>
<p>Running as standard user is about as likely to happen as people switching to Linux, until it&#8217;s made less annoying. (People would not put up with the prompts in Vista so they sure as hell will not put up with the even worse prompts with standard user. The prompt-spamming nightmare still exists for standard users &#8212; because MS haven&#8217;t improved the way their apps use UAC, they just gave themselves a UAC backdoor when in limited-admin mode &#8212; and is more annoying as you have to type a password for every prompt.)</p>
<p>Also, prompt-spoofing can be done even with standard user accounts. Nothing is 100% secure. That doesn&#8217;t mean we shouldn&#8217;t ask for the right balance of security and convenience and complain when Microsoft not only get that balance wrong but serve up a design which is clearly based on marketing and security theatre rather than sound design or logic. (i.e. They&#8217;ve made the prompts trivial to bypass by default, but still show the odd prompt for 3rd party software just to give naive users the illusion that there&#8217;s some kind of security.)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Nathan</title>
		<link>http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/comment-page-1/#comment-3953</link>
		<dc:creator>Nathan</dc:creator>
		<pubDate>Wed, 31 Dec 1969 18:00:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/#comment-3953</guid>
		<description>you guys cant have it both ways here

1.run as admin with the slider all the way up and get a bunch of click through security prompts (kind of worthless)
2. run as an admin with default settings (still have to trust an outside app, but then you get less prompts - risky, but still safer than no uac)
3.  run as standard user and actually be safe

you cant ask for auto elevation and then demand that it is 100% secure.</description>
		<content:encoded><![CDATA[<p>you guys cant have it both ways here</p>
<p>1.run as admin with the slider all the way up and get a bunch of click through security prompts (kind of worthless)<br />
2. run as an admin with default settings (still have to trust an outside app, but then you get less prompts &#8211; risky, but still safer than no uac)<br />
3.  run as standard user and actually be safe</p>
<p>you cant ask for auto elevation and then demand that it is 100% secure.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: CDan</title>
		<link>http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/comment-page-1/#comment-3895</link>
		<dc:creator>CDan</dc:creator>
		<pubDate>Wed, 31 Dec 1969 18:00:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/#comment-3895</guid>
		<description>Actually I like UAC... gives me a feeling of &#039;nuthnz happenin behind my back..(that I don&#039;t wan to happen) &#039;</description>
		<content:encoded><![CDATA[<p>Actually I like UAC&#8230; gives me a feeling of &#8216;nuthnz happenin behind my back..(that I don&#8217;t wan to happen) &#8216;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Leo Davidson</title>
		<link>http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/comment-page-1/#comment-3894</link>
		<dc:creator>Leo Davidson</dc:creator>
		<pubDate>Wed, 31 Dec 1969 18:00:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/#comment-3894</guid>
		<description>(Oops, URLs got mangled in my clipboard. Correct ones here.)

The source code is now online in HTML format as well. Start here:

http://www.pretentiousname.com/misc/W7E_Source/Win7Elevate_Inject.cpp.html

I also converted the step-by-step guide in the readme into HTML:

http://www.pretentiousname.com/misc/W7E_Source/win7_uac_poc_details.html

Now you don’t have to download the source zip or have Visual Studio to see how simple it all is.</description>
		<content:encoded><![CDATA[<p>(Oops, URLs got mangled in my clipboard. Correct ones here.)</p>
<p>The source code is now online in HTML format as well. Start here:</p>
<p><a href="http://www.pretentiousname.com/misc/W7E_Source/Win7Elevate_Inject.cpp.html" rel="nofollow">http://www.pretentiousname.com/misc/W7E_Source/Win7Elevate_Inject.cpp.html</a></p>
<p>I also converted the step-by-step guide in the readme into HTML:</p>
<p><a href="http://www.pretentiousname.com/misc/W7E_Source/win7_uac_poc_details.html" rel="nofollow">http://www.pretentiousname.com/misc/W7E_Source/win7_uac_poc_details.html</a></p>
<p>Now you don’t have to download the source zip or have Visual Studio to see how simple it all is.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Leo Davidson</title>
		<link>http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/comment-page-1/#comment-3893</link>
		<dc:creator>Leo Davidson</dc:creator>
		<pubDate>Wed, 31 Dec 1969 18:00:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/#comment-3893</guid>
		<description>The source code is now online in HTML format as well. Start here:

http://www.pretentiousname.com/misc/W7E_Source/Win7Elevate_Inject.cpp. html

I also converted the step-by-step guide in the readme into HTML:

http://www.pretentiousname.com/misc/W7E_Source/win7_uac_poc_details.ht ml

Now you don’t have to download the source zip or have Visual Studio to see how simple it all is.</description>
		<content:encoded><![CDATA[<p>The source code is now online in HTML format as well. Start here:</p>
<p><a href="http://www.pretentiousname.com/misc/W7E_Source/Win7Elevate_Inject.cpp" rel="nofollow">http://www.pretentiousname.com/misc/W7E_Source/Win7Elevate_Inject.cpp</a>. html</p>
<p>I also converted the step-by-step guide in the readme into HTML:</p>
<p><a href="http://www.pretentiousname.com/misc/W7E_Source/win7_uac_poc_details.ht" rel="nofollow">http://www.pretentiousname.com/misc/W7E_Source/win7_uac_poc_details.ht</a> ml</p>
<p>Now you don’t have to download the source zip or have Visual Studio to see how simple it all is.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: KsbjA</title>
		<link>http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/comment-page-1/#comment-3892</link>
		<dc:creator>KsbjA</dc:creator>
		<pubDate>Wed, 31 Dec 1969 18:00:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/#comment-3892</guid>
		<description>The right question is not, whether UAC was designed to protect something. It was, undoubtedly. The only question is, if it actually does that.</description>
		<content:encoded><![CDATA[<p>The right question is not, whether UAC was designed to protect something. It was, undoubtedly. The only question is, if it actually does that.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: el_bot</title>
		<link>http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/comment-page-1/#comment-3889</link>
		<dc:creator>el_bot</dc:creator>
		<pubDate>Wed, 31 Dec 1969 18:00:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/#comment-3889</guid>
		<description>Don&#039;t forget that malwares isn&#039;t the only threat. There are shell codes, remote exploits, etc (take a trip by milw0rm if you disagree). Open a document PDF with a shellcode embedded under XP and you will notice the difference...
Anyway, in the world Windows, the main threat is the user: every thing that try educates it ,a priori, is fine.</description>
		<content:encoded><![CDATA[<p>Don&#8217;t forget that malwares isn&#8217;t the only threat. There are shell codes, remote exploits, etc (take a trip by milw0rm if you disagree). Open a document PDF with a shellcode embedded under XP and you will notice the difference&#8230;<br />
Anyway, in the world Windows, the main threat is the user: every thing that try educates it ,a priori, is fine.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Leo Davidson</title>
		<link>http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/comment-page-1/#comment-3886</link>
		<dc:creator>Leo Davidson</dc:creator>
		<pubDate>Wed, 31 Dec 1969 18:00:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/#comment-3886</guid>
		<description>&quot;Helpful, but, Leo, where’s your video to go with it?&quot;

My videos are here: http://www.pretentiousname.com/misc/win7_uac_whitelist2.html#videos

&quot;Still, I wouldn’t mind a guided video walkthrough of Leo’s code by the master himself.&quot;

Ah, if you want a video going over the code then there isn&#039;t one, but check out the readme file that comes with the code for a point-by-point description of what it does.

Everything that the code does uses standard techniques which are well-documented on the web. (e.g. Look up articles in MSDN, CodeProject, etc. on &quot;code injection&quot;.) So there&#039;s nothing really novel going on, except what&#039;s described in the readme.

If you look at the source code, the interesting stuff is in the *_Inject.cpp file, and a little in the Utils file. Most of the other code is boring GUI stuff that will only bog you down.</description>
		<content:encoded><![CDATA[<p>&#8220;Helpful, but, Leo, where’s your video to go with it?&#8221;</p>
<p>My videos are here: <a href="http://www.pretentiousname.com/misc/win7_uac_whitelist2.html#videos" rel="nofollow">http://www.pretentiousname.com/misc/win7_uac_whitelist2.html#videos</a></p>
<p>&#8220;Still, I wouldn’t mind a guided video walkthrough of Leo’s code by the master himself.&#8221;</p>
<p>Ah, if you want a video going over the code then there isn&#8217;t one, but check out the readme file that comes with the code for a point-by-point description of what it does.</p>
<p>Everything that the code does uses standard techniques which are well-documented on the web. (e.g. Look up articles in MSDN, CodeProject, etc. on &#8220;code injection&#8221;.) So there&#8217;s nothing really novel going on, except what&#8217;s described in the readme.</p>
<p>If you look at the source code, the interesting stuff is in the *_Inject.cpp file, and a little in the Utils file. Most of the other code is boring GUI stuff that will only bog you down.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Good Job, Leo Davidson &#38; Long Zheng</title>
		<link>http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/comment-page-1/#comment-3885</link>
		<dc:creator>Good Job, Leo Davidson &#38; Long Zheng</dc:creator>
		<pubDate>Wed, 31 Dec 1969 18:00:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/#comment-3885</guid>
		<description>I saw Long&#039;s video:  Very well done to explain the overall idea.

I read Leo&#039;s source-code comments.  Helpful, but, Leo, where&#039;s your video to go with it?

I&#039;m a programmer (VB, etc.), but I have never used C++, as it gives me a headache.  Still, I wouldn&#039;t mind a guided video walkthrough of Leo&#039;s code by the master himself.

GOOD JOB, GUYS!</description>
		<content:encoded><![CDATA[<p>I saw Long&#8217;s video:  Very well done to explain the overall idea.</p>
<p>I read Leo&#8217;s source-code comments.  Helpful, but, Leo, where&#8217;s your video to go with it?</p>
<p>I&#8217;m a programmer (VB, etc.), but I have never used C++, as it gives me a headache.  Still, I wouldn&#8217;t mind a guided video walkthrough of Leo&#8217;s code by the master himself.</p>
<p>GOOD JOB, GUYS!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Leo Davidson</title>
		<link>http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/comment-page-1/#comment-3880</link>
		<dc:creator>Leo Davidson</dc:creator>
		<pubDate>Wed, 31 Dec 1969 18:00:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/#comment-3880</guid>
		<description>@Myself: &quot;I’ve decided not to release the demo app for now&quot;

I had a change of heart, after recent discussions with people on all sides of the issue. Source and exes are on my website now. Long has also put up a new article with a video demonstrating it running on the RC build.</description>
		<content:encoded><![CDATA[<p>@Myself: &#8220;I’ve decided not to release the demo app for now&#8221;</p>
<p>I had a change of heart, after recent discussions with people on all sides of the issue. Source and exes are on my website now. Long has also put up a new article with a video demonstrating it running on the RC build.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Leo Davidson</title>
		<link>http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/comment-page-1/#comment-3876</link>
		<dc:creator>Leo Davidson</dc:creator>
		<pubDate>Wed, 31 Dec 1969 18:00:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/#comment-3876</guid>
		<description>...besides which I was comparing Vista/Win7 standard user prompts to Vista admin prompts. They are more painful; how can you deny that? You have to type a password instead of click a button.

Sure, they are less painful than switching users on XP was, but that&#039;s besides the point. I&#039;m not arguing for UAC to be ditched entirely.</description>
		<content:encoded><![CDATA[<p>&#8230;besides which I was comparing Vista/Win7 standard user prompts to Vista admin prompts. They are more painful; how can you deny that? You have to type a password instead of click a button.</p>
<p>Sure, they are less painful than switching users on XP was, but that&#8217;s besides the point. I&#8217;m not arguing for UAC to be ditched entirely.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Leo Davidson</title>
		<link>http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/comment-page-1/#comment-3875</link>
		<dc:creator>Leo Davidson</dc:creator>
		<pubDate>Wed, 31 Dec 1969 18:00:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.withinwindows.com/2009/06/10/uac-uac-go-away-come-again-some-other-day/#comment-3875</guid>
		<description>@Eldarien: If you were willing to put up with standard user on XP then good for you. Please realise, though, that if everyone else was like you then Microsoft would not have had to change UAC in Windows 7 at all because UAC in Vista would&#039;ve been perceived as absolutely wonderful by everyone.

It wasn&#039;t.</description>
		<content:encoded><![CDATA[<p>@Eldarien: If you were willing to put up with standard user on XP then good for you. Please realise, though, that if everyone else was like you then Microsoft would not have had to change UAC in Windows 7 at all because UAC in Vista would&#8217;ve been perceived as absolutely wonderful by everyone.</p>
<p>It wasn&#8217;t.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
