<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>winJade &#187; UAC</title>
	<atom:link href="http://winjade.net/tag/uac/feed/" rel="self" type="application/rss+xml" />
	<link>http://winjade.net</link>
	<description>Just another WordPress weblog</description>
	<lastBuildDate>Sun, 27 Jun 2010 23:47:44 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>What not to do with UX design</title>
		<link>http://winjade.net/2009/08/what-not-to-do-with-ux-design/</link>
		<comments>http://winjade.net/2009/08/what-not-to-do-with-ux-design/#comments</comments>
		<pubDate>Tue, 25 Aug 2009 16:01:58 +0000</pubDate>
		<dc:creator>Bryant Zadegan</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Tips/Tricks/Hacks]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[annoying]]></category>
		<category><![CDATA[dev fail]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[not awesome]]></category>
		<category><![CDATA[rude]]></category>
		<category><![CDATA[Sun Microsystems]]></category>
		<category><![CDATA[UAC]]></category>

		<guid isPermaLink="false">http://www.aeroxp.org/2009/08/what-not-to-do-with-ux-design/</guid>
		<description><![CDATA[Once upon a time, a Microsoft employee said that UAC was designed to annoy people, thus encouraging people (and systems administrators) to bug application developers and get those developers to fix their use of resources in Windows. Well, it seems that one company actually went backwards, making its application more annoying than it used to [...]]]></description>
			<content:encoded><![CDATA[<p><img style="border-bottom: 0px; border-left: 0px; margin: 10px auto; display: block; float: none; border-top: 0px; border-right: 0px" title="Java Automatic Update consent prompt" border="0" alt="Java Automatic Update consent prompt" src="http://winjade.net/wp-content/uploads/2009/08/javastupid.png" width="500" height="238" />Once upon a time, a Microsoft employee said that UAC was designed to annoy people, thus encouraging people (and systems administrators) to bug application developers and get those developers to fix their use of resources in Windows. Well, it seems that one company actually went <em>backwards</em>, making its application more annoying than it used to be.</p>
<p>Of course, I’m talking about Java.</p>
<p>I figured I would turn Java into an example of what <em>not</em> to do when designing something for Windows before uninstalling it. Since Sun Microsystems clearly has no idea how to develop for Windows Vista, I’m going to direct them to <a href="http://msdn.microsoft.com/en-us/library/aa905330.aspx" target="_blank">this wonderful page</a>.</p>
<p>I highlighted the single switch present in the command which indicates the problem: “-auto”. <strong>UAC prompts should never be automatically launched without informing the user prior to launching one.</strong> It’s very plain and very simple, and when developers start writing applications which throw consent prompts without any obvious reason as to why, they’re clearly doing something wrong.</p>
<p>Worse yet, Java Automatic Update decides to tell me <em>after I click Cancel</em> that it wants to update.</p>
<p><img style="border-bottom: 0px; border-left: 0px; display: block; float: none; margin-left: auto; border-top: 0px; margin-right: auto; border-right: 0px" title="Java Update bubble" border="0" alt="Java Update bubble" src="http://winjade.net/wp-content/uploads/2009/08/javastupid2.png" width="296" height="268" /> </p>
<p>This bubble should be thrown first, <em>followed by</em> launching the consent prompt should the user decide to update. Doing it the other way around is <em>mindblowingly stupid. </em>It’s not exactly an easy thing to screw up, either, so I’m chalking this one up either to developers not knowing what they’re doing or developers testing UAC out for the heck of it to see how many people obey random UAC prompts.</p>
<p>If you’re seeing this, I <strong>highly</strong> encourage you to click Cancel. Better yet, go ahead and uninstall Java. That’s what I did.</p>
<p>Now if you’ll excuse me, I’ll be going off to celebrate my birthday away from random UAC prompts.</p>
]]></content:encoded>
			<wfw:commentRss>http://winjade.net/2009/08/what-not-to-do-with-ux-design/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Microsoft lists UAC hack as malware</title>
		<link>http://winjade.net/2009/07/microsoft-lists-uac-hack-as-malware/</link>
		<comments>http://winjade.net/2009/07/microsoft-lists-uac-hack-as-malware/#comments</comments>
		<pubDate>Thu, 30 Jul 2009 19:30:21 +0000</pubDate>
		<dc:creator>Maurice</dc:creator>
				<category><![CDATA[!Important]]></category>
		<category><![CDATA[AeroXP]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Tips/Tricks/Hacks]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[lol wut]]></category>
		<category><![CDATA[stupid]]></category>
		<category><![CDATA[The left arm doesn't quite know what the right arm is doing]]></category>
		<category><![CDATA[UAC]]></category>
		<category><![CDATA[What went wrong?]]></category>
		<category><![CDATA[Windows 7]]></category>

		<guid isPermaLink="false">http://www.aeroxp.org/?p=1107</guid>
		<description><![CDATA[As those involved in the Windows 7 community may know, Microsoft has failed to fix a crucial flaw in the User Account Control feature of the operating system which allows a specific whitelist of applications to inject code that can allow any application to silently elevate. The code was released about a month ago as [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://winjade.net/wp-content/uploads/2009/07/mseuac.png"><img class="alignright size-medium wp-image-1111" src="http://www.aeroxp.org/wp-content/uploads/2009/07/mseuac_thumb-300x168.png" alt="" width="300" height="168" /></a>As those involved in the <a href="http://www.aeroxp.org/tag/windows-7">Windows 7</a> community may know, Microsoft has failed to fix a <a href="http://www.aeroxp.org/2009/06/uac-in-7-exponential-silent-attack-vector-multiplier-redux/">crucial flaw</a> in the User Account Control feature of the operating system which allows a specific whitelist of applications to inject code that can allow any application to silently elevate. The code was released about a month ago as a <a href="http://www.pretentiousname.com/misc/win7_uac_whitelist2.html">proof-of-concept by Leo Davidson</a> showcasing the flaw elevating a command prompt window using the whitelisted explorer.exe process.</p>
<p>The company stands by UAC in its final form, but they&#8217;re taking it a step further by blocking the program that causes the exploit using their own security software.</p>
<p>Today, I just happened to download the zip file that causes the exploit when Microsoft Security Essentials greeted me with a nice dialog telling me that what I just downloaded is malware, specifically <em>HackTool.Win32/Welevate.A</em> and <em>HackTool.Win64/Welevate.A</em> (depending on architecture). While I&#8217;d agree that this <em>can </em>be considered a form of malware, it&#8217;s just a very bad way of dealing with the situation. However, Leo noted that Windows Defender in Vista did <em>not</em> detect this exploit, and Bryant confirmed that the same is true for Windows 7 (where the trick would actually work), so this seems to be exclusive to Microsoft Security Essentials.</p>
<p>It&#8217;s not clear what method the signatures take to detect it, but I promptly recompiled the source code under the Visual C++ 10.0 toolkit using VS 2010 Beta and the application ran undetected. Not a very good solution if it actually hash checks for the specific applications.</p>
<p>Leo, and I (or Bryant) will update our respective pages accordingly as we discover more. Bryant is seeking official word from Microsoft on what&#8217;s going on. Meanwhile, you can see the VirusTotal report <a href="http://www.virustotal.com/analisis/626a289478b51c3f60bf7f8543646caab42a565bcba2e441889c9336c575c410-1247209025" target="_blank">here</a> and grab the exploit <a href="http://www.pretentiousname.com/misc/Win7ElevateV2.zip">here</a>.</p>
<p><strong>Update (~Bryant): </strong>let&#8217;s take a look at what&#8217;s going on here from a different approach. Microsoft says that the vulnerability here is not actually a vulnerability and is, in fact, by design. However, they&#8217;ve also classified Leo&#8217;s proof-of-concept as malware. Logically speaking, if a process whose sole purpose is to exploit a perceived vulnerability is marked as malware, then it&#8217;s reasonable to assume that the perceived vulnerability is indeed a significant problem. Basically, Microsoft contradicted themselves by listing the proof-of-concept as malware.</p>
<p><strong>Update 2 (~Bryant): </strong> A friend of mine proposed one particular argument as a potential explanation to this issue, whereby this is a bug within Microsoft Security Essentials. The reasons I don&#8217;t believe this to be the case are:</p>
<ul>
<li>This exploit was specifically named as <code>HackTool:Win32/Welevate.A</code> (A quick googling shows only three links; one is to the aforementioned virustotal link, the second and third to a Microsoft <a href="http://www.microsoft.com/security/portal/Threat/Encyclopedia/Entry.aspx?Name=HackTool%3AWin32%2FWelevate.A&#038;ThreatID=-2147341101" target="_blank">encyclopedia entry</a>.</li>
<li>This particular label only applies to this specific proof-of-concept</li>
<li>A reasonable vulnerability assessment (&#8221;Medium&#8221;) was applied to this particular proof-of-concept, which makes sense given that this security vulnerability in UAC is only really an issue if either a user runs a malicious application or if some other internet-facing application were to be compromised. I covered the latter in an older post of mine where I explain how this flaw essentially <a href="http://www.aeroxp.org/2009/02/the-real-issue-with-win7-uac/" target="_blank">raises the vectors of attack</a> many-fold.</li>
</ul>
<p><em>Leo and <a href="http://twitter.com/conhopper">Bryant</a> contributed to this post.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://winjade.net/2009/07/microsoft-lists-uac-hack-as-malware/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>UAC in 7: Silent Attack Vector Multiplier (redux)</title>
		<link>http://winjade.net/2009/06/uac-in-7-exponential-silent-attack-vector-multiplier-redux/</link>
		<comments>http://winjade.net/2009/06/uac-in-7-exponential-silent-attack-vector-multiplier-redux/#comments</comments>
		<pubDate>Fri, 12 Jun 2009 16:13:50 +0000</pubDate>
		<dc:creator>Bryant Zadegan</dc:creator>
				<category><![CDATA[!Important]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[denial]]></category>
		<category><![CDATA[justfixitplease]]></category>
		<category><![CDATA[redux]]></category>
		<category><![CDATA[Russinovich]]></category>
		<category><![CDATA[security feature]]></category>
		<category><![CDATA[UAC]]></category>

		<guid isPermaLink="false">http://www.aeroxp.org/2009/06/uac-in-7-exponential-silent-attack-vector-multiplier-redux/</guid>
		<description><![CDATA[

Update: added a link to the original exploit
I really, really hate having to interrupt a good series bashing Apple, but this has to be said.
Long has resumed his crusade on fixing UAC, and normally, I would tell him to give it up for the sake of saving his own time. However, even though Mark Russinovich [...]]]></description>
			<content:encoded><![CDATA[<p><img style="border-right-width: 0px; margin: 0px 0px 20px 20px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="badUAC" border="0" alt="badUAC" align="right" src="http://winjade.net/wp-content/uploads/2009/02/baduac.png" width="189" height="229" /></p>
</p>
<p><strong>Update:</strong> added a link to the original exploit</p>
<p>I really, really hate having to interrupt a good series bashing Apple, but this has to be said.</p>
<p>Long has resumed his <a href="http://www.istartedsomething.com/20090613/windows-7-uac-code-injection-vulnerability-video-demonstration-source-code-released/" target="_blank">crusade on fixing UAC</a>, and normally, I would tell him to give it up for the sake of saving his own time. However, even though Mark Russinovich might not see UAC as a security boundary, the original UAC team <a href="http://blogs.msdn.com/uac/" target="_blank">sure as hell did</a>, which makes me want Long to see this all the way through. (check the sidebar on the left)</p>
<blockquote></blockquote>
<blockquote><p><em><b>“User Account Control (UAC)</b> is a core security feature in the next release of Windows Vista and Windows Server code name Longhorn.” –UAC Blog</em></p>
</blockquote>
<p><strike>Guys, just fix it. I don’t see why things have to be made so hard; the UAC team clearly calls it a security feature, so do them a favor, don’t make them feel like they’ve wasted their time, and fix the problem.</strike> Thanks, Long, for telling me that this can’t actually be fixed as it’s a design issue, so here’s a better solution: give the user the ability to chose which UAC setting he/she wants upon first run. Here are three good options:</p>
<ol>
<li>Always On</li>
<li>Notify when programs try to change settings (give a warning with this option about the potential risk of compromise)</li>
<li>Always Off (give a bigger warning with this option)</li>
</ol>
<p>You’ll notice that I didn’t actually suggest the option which gets rid of the secure desktop: I personally believe that that particular option offers absolutely no benefit over having UAC off altogether.</p>
<p>I figured it had to be said. </p>
<p>(If you want to take this for a test run yourself, check <a href="http://www.pretentiousname.com/misc/win7_uac_whitelist2.html" target="_blank">Leo Davidson’s site</a> for the original source code and binaries for the proof of concept exploit)</p>
<p><em>Mark &amp; friends, I love you guys dearly, but I’ll be taking the original team’s word on this one. If you guys try editing it out, keep in mind the Internet Archive <a href="http://web.archive.org/web/20071226212236rn_1/blogs.msdn.com/uac/" target="_blank">has a copy</a> of the original statement.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://winjade.net/2009/06/uac-in-7-exponential-silent-attack-vector-multiplier-redux/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>UAC in 7: Exponential Silent Attack Vector Multiplier</title>
		<link>http://winjade.net/2009/02/the-real-issue-with-win7-uac/</link>
		<comments>http://winjade.net/2009/02/the-real-issue-with-win7-uac/#comments</comments>
		<pubDate>Wed, 04 Feb 2009 19:51:25 +0000</pubDate>
		<dc:creator>Bryant Zadegan</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Tips/Tricks/Hacks]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[critical]]></category>
		<category><![CDATA[exploit]]></category>
		<category><![CDATA[PROTIP]]></category>
		<category><![CDATA[ridiculous]]></category>
		<category><![CDATA[stupid]]></category>
		<category><![CDATA[UAC]]></category>
		<category><![CDATA[Windows 7]]></category>

		<guid isPermaLink="false">http://www.aeroxp.org/2009/02/the-real-issue-with-win7-uac/</guid>
		<description><![CDATA[
(Update: official statement appended to the end of the post)
I’m going to open this post by kindly asking you, the user, to go into the Windows 7 Action Center (Control Panel, System and Security, Action Center), clicking “Change User Account Control settings” and setting it to the maximum setting (“Always notify me when…”).
The reason for [...]]]></description>
			<content:encoded><![CDATA[<p><img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; margin: 0px 0px 20px 20px; display: inline; border-right-width: 0px" title="badUAC" src="http://winjade.net/wp-content/uploads/2009/02/baduac.png" border="0" alt="badUAC" width="189" height="229" align="right" /></p>
<p><em>(<strong>Update:</strong> official statement appended to the end of the post)</em></p>
<p>I’m going to open this post by kindly asking you, the user, to go into the Windows 7 Action Center (Control Panel, System and Security, Action Center), clicking “Change User Account Control settings” and setting it to the maximum setting (“Always notify me when…”).</p>
<p>The reason for why I’m asking you to do this shouldn’t be a surprise. You may have seen the UAC posts by <a href="http://www.withinwindows.com/2009/01/30/malware-can-turn-off-uac-in-windows-7-by-design-says-microsoft/" target="_blank">Rafael Rivera</a> and <a href="http://www.istartedsomething.com/20090131/microsoft-dismisses-windows-7-uac-security-flaw-insists-by-design/" target="_blank">Long Zheng</a> (I’m giving more of the credit to Rafael since he actually brewed the proof of concept code). People saw their posts and immediately assumed that this issue is only relevant for users who download malware. Thus, you hear lots of users saying out loud with no apparent fear of embarrassment:</p>
<blockquote><p>“La di da, so long as I’m not stupid with what I download, I should be fine!”</p></blockquote>
<p>Right. Well, Microsoft basically recommends for users to install an antivirus because they don’t actually consider User Account Control to be a security feature. Anyone who knows the purpose of privilege management knows that any system which actively manages privileges is a security feature.</p>
<p>With this in mind, let’s take a look at why the UAC security flaw actually <em>is</em> a security flaw.</p>
<p><strong>Update 2:</strong> Steven and Jon posted a second post about UAC today specifically addressing this flaw. Catch their response below the break.</p>
<p><span id="more-798"></span></p>
<p>The goal of security engineers is to minimize the number of attack vectors. That way, the likelihood of a path of attack opening up is slim. This also allows for security engineers to kill the attack vector until a patch is released for the vulnerable application or component.</p>
<p>So, before actually continuing this post, lets quickly answer this question: What’s a <em>silent</em> attack vector? Basically, if there exists a path for malicious code to quietly hijack a computer (to hijack a computer without the user’s knowledge), it’s a silent vector of attack.</p>
<p>In Windows Vista, attacking a user-mode app isn’t going to completely fry your system. At the most, that one user account might be roasted, and this is easily fixed by logging into the default Administrator account and creating a new account from there. Any attacks which try to slam kernel-mode resources trigger an immediate UAC prompt as a last minute defense, which a user can simply deny, thus blocking the attack.</p>
<p>Mind you, if a malicious bit is determined, it can keep spamming you with UAC prompts if you click No, and you’ll have a hard time bailing out of them to resume your work, but even then, it’s only isolated to one account so long as you keep denying it. Just kill the power to the computer, reboot into the default Administrator account and create a new account for yourself.</p>
<p>Now that we’ve discussed why UAC is actually useful in Windows Vista, here’s the problem with Windows 7’s default UAC setting:</p>
<p>If a security hole is found in <strong>any</strong> user-mode application, that application can be infected and used to silently attack the system through keystrokes used to disable UAC when the user is away from the computer. This is, of course, why I call this security flaw an Exponential Silent Attack Vector Multiplier.</p>
<p>No matter what the application is, since keystrokes can be faked on explorer due to its “medium integrity” level of trust, <strong>any</strong> attack vector available through <strong>any</strong> application, process, what have you, can now be used to deliver a malicious payload which can completely take over the entire computer as opposed to just one user account.</p>
<p>It’s not just about what a user clicks anymore. All of a sudden, Windows 7 is now at risk from drive-by downloads in any browser, buffer overflow bugs in any application, or any other way of seamlessly delivering and executing a simple script to emulate keystrokes. Quite literally, the number of attack vectors increases with the number of applications installed.</p>
<ul>
<li>Got a .psd file which takes advantage of a flaw in Photoshop? There goes Windows.</li>
<li>Got an .odf file which takes advantage of a flaw in WordPad? (Yes, WordPad, since it can also open ODF files) There goes Windows.</li>
<li>Got an IM client which renders jpegs improperly and someone’s display icon contains an exploit? There goes Windows.</li>
<li>Got a browser which is susceptible to drive-by downloads? There goes Windows.</li>
<li>Got an mp3 which exploits a hole in Windows Media Player? How about a stream with malicious content which exploits a hole in QuickTime? What about a malicious podcast feed which can bust through the Zune Software or iTunes? <strong>There goes Windows.</strong></li>
</ul>
<p>The list of examples isn’t limited to the list above. Prior to this new “non-invasive” UAC, the number of silent attack vectors was limited to any flaws in elevated Windows components. Thanks to this flaw in UAC, the number of attack vectors is now effectively limited only to the number of vulnerabilities in applications available for Windows. (read: way more than in Windows alone)</p>
<p>What’s the important thing to learn from this? <em>If it can be executed and has a exploitable hole, thanks to this flaw in UAC, it can serve as a vector of attack.</em></p>
<p>This flaw is so ridiculously and utterly <strong>bad</strong> that it brings us right back to the times that people used XP with an unprotected administrative account. This essentially negates any benefit that UAC gives to the user.</p>
<p>Solution for the end user? Well, like I stated when I opened this post, max out UAC on Windows 7 <em>the immediate second you finish installing it</em> and do not connect Windows 7 to the internet until you do. Yes, you should be that paranoid; this flaw needs to be resolved immediately. If this really is by design, Microsoft screwed up.</p>
<p>I can’t wait to hear the explanation for this one. I love Windows 7, but when a team closes a report on a critical <em>demonstrated </em>security bug as “by design,” I don’t know what to think.</p>
<p><strong>Update: </strong>For now, an official Microsoft spokesperson gave the following <em>exact</em> statement regarding the issue: “We&#8217;re investigating and continue to thank everyone who provides feedback on the Windows 7 beta.”<br />
Look out for an update to this issue… hopefully soon. I know Charles Torre of Channel 9 fame had a UAC interview planned, but I don’t know where that went.</p>
<p><strong>Update 2:</strong></p>
<blockquote><p>With this feedback and a lot more we are going to deliver <strong>two changes to the Release Candidate</strong> that we’ll all see. First, the <strong>UAC control panel will run in a <em>high integrity </em>process</strong>, which requires elevation. That was already in the works before this discussion and doing this prevents all the mechanics around SendKeys and the like from working. Second, <strong>changing the level of the UAC will also prompt for confirmation</strong>.</p></blockquote>
<p>Source: <a href="http://blogs.msdn.com/e7/archive/2009/02/05/uac-feedback-and-follow-up.aspx">E7</a></p>
]]></content:encoded>
			<wfw:commentRss>http://winjade.net/2009/02/the-real-issue-with-win7-uac/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
	</channel>
</rss>
