<?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: partial NX emulation in Ubuntu</title>
	<atom:link href="http://www.outflux.net/blog/archives/2009/05/14/nx-emulation-in-ubuntu/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.outflux.net/blog/archives/2009/05/14/nx-emulation-in-ubuntu/</link>
	<description>code is freedom -- patching my itch</description>
	<lastBuildDate>Tue, 24 Jan 2012 19:58:01 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.5</generator>
	<item>
		<title>By: kees</title>
		<link>http://www.outflux.net/blog/archives/2009/05/14/nx-emulation-in-ubuntu/comment-page-1/#comment-749</link>
		<dc:creator>kees</dc:creator>
		<pubDate>Fri, 15 May 2009 21:53:22 +0000</pubDate>
		<guid isPermaLink="false">http://www.outflux.net/blog/?p=185#comment-749</guid>
		<description>brk only when the exec is PIE and doesn&#039;t get mapped at the top of the executable region limit.  I assume this is a bug in the vma randomization side of the patch.  I&#039;m gonna go switch to email...</description>
		<content:encoded><![CDATA[<p>brk only when the exec is PIE and doesn&#8217;t get mapped at the top of the executable region limit.  I assume this is a bug in the vma randomization side of the patch.  I&#8217;m gonna go switch to email&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: spender</title>
		<link>http://www.outflux.net/blog/archives/2009/05/14/nx-emulation-in-ubuntu/comment-page-1/#comment-748</link>
		<dc:creator>spender</dc:creator>
		<pubDate>Fri, 15 May 2009 21:39:18 +0000</pubDate>
		<guid isPermaLink="false">http://www.outflux.net/blog/?p=185#comment-748</guid>
		<description>brk too even?  That shouldn&#039;t happen.  Do you build your kernels with COMPAT_BRK=y?

-Brad</description>
		<content:encoded><![CDATA[<p>brk too even?  That shouldn&#8217;t happen.  Do you build your kernels with COMPAT_BRK=y?</p>
<p>-Brad</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: kees</title>
		<link>http://www.outflux.net/blog/archives/2009/05/14/nx-emulation-in-ubuntu/comment-page-1/#comment-747</link>
		<dc:creator>kees</dc:creator>
		<pubDate>Fri, 15 May 2009 21:23:46 +0000</pubDate>
		<guid isPermaLink="false">http://www.outflux.net/blog/?p=185#comment-747</guid>
		<description>BTW, yeah, I can totally reproduce NX-emu-dodging via library bss or via PIE program bss and brk regions.  That&#039;s unfortunate.  :(  Thanks for the heads-up!</description>
		<content:encoded><![CDATA[<p>BTW, yeah, I can totally reproduce NX-emu-dodging via library bss or via PIE program bss and brk regions.  That&#8217;s unfortunate.  :(  Thanks for the heads-up!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: spender</title>
		<link>http://www.outflux.net/blog/archives/2009/05/14/nx-emulation-in-ubuntu/comment-page-1/#comment-746</link>
		<dc:creator>spender</dc:creator>
		<pubDate>Fri, 15 May 2009 19:58:50 +0000</pubDate>
		<guid isPermaLink="false">http://www.outflux.net/blog/?p=185#comment-746</guid>
		<description>Also, to clarify: Solar Designer&#039;s non-executable stack via segmentation came first, then some other misc non-executable stack + heap via segmentation patches (RSX, KNoX), then PaX which was the first exact NX emulation via either segmentation or TLB tricks.  It&#039;s all documented on http://pax.grsecurity.net

-Brad</description>
		<content:encoded><![CDATA[<p>Also, to clarify: Solar Designer&#8217;s non-executable stack via segmentation came first, then some other misc non-executable stack + heap via segmentation patches (RSX, KNoX), then PaX which was the first exact NX emulation via either segmentation or TLB tricks.  It&#8217;s all documented on <a href="http://pax.grsecurity.net">http://pax.grsecurity.net</a></p>
<p>-Brad</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: kees</title>
		<link>http://www.outflux.net/blog/archives/2009/05/14/nx-emulation-in-ubuntu/comment-page-1/#comment-745</link>
		<dc:creator>kees</dc:creator>
		<pubDate>Fri, 15 May 2009 19:27:47 +0000</pubDate>
		<guid isPermaLink="false">http://www.outflux.net/blog/?p=185#comment-745</guid>
		<description>Thanks for the corrections and links!  Sure, I&#039;m not claiming it&#039;s perfect, I&#039;m just claiming the patch carried by RedHat is finally in Ubuntu now.  It&#039;s better than not having any NX, but like I ended the post with, I&#039;d prefer everyone just use 64bit.  :)</description>
		<content:encoded><![CDATA[<p>Thanks for the corrections and links!  Sure, I&#8217;m not claiming it&#8217;s perfect, I&#8217;m just claiming the patch carried by RedHat is finally in Ubuntu now.  It&#8217;s better than not having any NX, but like I ended the post with, I&#8217;d prefer everyone just use 64bit.  :)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: spender</title>
		<link>http://www.outflux.net/blog/archives/2009/05/14/nx-emulation-in-ubuntu/comment-page-1/#comment-744</link>
		<dc:creator>spender</dc:creator>
		<pubDate>Fri, 15 May 2009 18:26:57 +0000</pubDate>
		<guid isPermaLink="false">http://www.outflux.net/blog/?p=185#comment-744</guid>
		<description>Actually, it wasn&#039;t designed by the OpenBSD people; get your facts straight.  OpenBSD was *several years* late to the game: PaX was developed in 2000.

As for &quot;NX emulation&quot;, the provided example is highly misleading in the same way that RedHat has been misleading people for years regarding how accurately exec-shield emulates NX.
See:
http://magazine.redhat.com/2007/05/04/whats-new-in-selinux-for-red-hat-enterprise-linux-5/
http://lists.immunityinc.com/pipermail/dailydave/2007-May/004340.html

Say vulnerable-setuid-program has a vulnerability in bounds checking on a buffer in the .data or .bss sections of the main executable or any library loaded by the executable.  If that executable/library doesn&#039;t happen to be located highest in the address space (and its probability of not being located there is n - 1/ n, where n is the number of loaded executables/libraries in the process&#039; address-space) then the vulnerability is still perfectly exploitable as it would be without any NX.  If you get unlucky and it does happen to be mapped highest, just repeat the exploit until it succeeds.

But of course, details are unimportant.  What matters is claiming you have &quot;NX emulation.&quot;

-Brad</description>
		<content:encoded><![CDATA[<p>Actually, it wasn&#8217;t designed by the OpenBSD people; get your facts straight.  OpenBSD was *several years* late to the game: PaX was developed in 2000.</p>
<p>As for &#8220;NX emulation&#8221;, the provided example is highly misleading in the same way that RedHat has been misleading people for years regarding how accurately exec-shield emulates NX.<br />
See:<br />
<a href="http://magazine.redhat.com/2007/05/04/whats-new-in-selinux-for-red-hat-enterprise-linux-5/">http://magazine.redhat.com/2007/05/04/whats-new-in-selinux-for-red-hat-enterprise-linux-5/</a><br />
<a href="http://lists.immunityinc.com/pipermail/dailydave/2007-May/004340.html">http://lists.immunityinc.com/pipermail/dailydave/2007-May/004340.html</a></p>
<p>Say vulnerable-setuid-program has a vulnerability in bounds checking on a buffer in the .data or .bss sections of the main executable or any library loaded by the executable.  If that executable/library doesn&#8217;t happen to be located highest in the address space (and its probability of not being located there is n &#8211; 1/ n, where n is the number of loaded executables/libraries in the process&#8217; address-space) then the vulnerability is still perfectly exploitable as it would be without any NX.  If you get unlucky and it does happen to be mapped highest, just repeat the exploit until it succeeds.</p>
<p>But of course, details are unimportant.  What matters is claiming you have &#8220;NX emulation.&#8221;</p>
<p>-Brad</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: mirabilos</title>
		<link>http://www.outflux.net/blog/archives/2009/05/14/nx-emulation-in-ubuntu/comment-page-1/#comment-743</link>
		<dc:creator>mirabilos</dc:creator>
		<pubDate>Fri, 15 May 2009 10:38:39 +0000</pubDate>
		<guid isPermaLink="false">http://www.outflux.net/blog/?p=185#comment-743</guid>
		<description>Actually, it was designed by the OpenBSD people as part of the
W^X protection scheme’s adaption to the i386 (and IIRC macppc)
architectures.</description>
		<content:encoded><![CDATA[<p>Actually, it was designed by the OpenBSD people as part of the<br />
W^X protection scheme’s adaption to the i386 (and IIRC macppc)<br />
architectures.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: kees</title>
		<link>http://www.outflux.net/blog/archives/2009/05/14/nx-emulation-in-ubuntu/comment-page-1/#comment-742</link>
		<dc:creator>kees</dc:creator>
		<pubDate>Fri, 15 May 2009 05:10:37 +0000</pubDate>
		<guid isPermaLink="false">http://www.outflux.net/blog/?p=185#comment-742</guid>
		<description>That would be up to Debian -- the port I did is against a mostly stock upstream Linux kernel.  There&#039;s no reason it couldn&#039;t be carried, but that&#039;s up to the Debian kernel maintainers.</description>
		<content:encoded><![CDATA[<p>That would be up to Debian &#8212; the port I did is against a mostly stock upstream Linux kernel.  There&#8217;s no reason it couldn&#8217;t be carried, but that&#8217;s up to the Debian kernel maintainers.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: foo</title>
		<link>http://www.outflux.net/blog/archives/2009/05/14/nx-emulation-in-ubuntu/comment-page-1/#comment-741</link>
		<dc:creator>foo</dc:creator>
		<pubDate>Fri, 15 May 2009 04:35:09 +0000</pubDate>
		<guid isPermaLink="false">http://www.outflux.net/blog/?p=185#comment-741</guid>
		<description>So can you push these into Debian too?</description>
		<content:encoded><![CDATA[<p>So can you push these into Debian too?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: kees</title>
		<link>http://www.outflux.net/blog/archives/2009/05/14/nx-emulation-in-ubuntu/comment-page-1/#comment-740</link>
		<dc:creator>kees</dc:creator>
		<pubDate>Thu, 14 May 2009 17:47:22 +0000</pubDate>
		<guid isPermaLink="false">http://www.outflux.net/blog/?p=185#comment-740</guid>
		<description>Prior to Karmic, if you run 32bit kernels on 64bit machines, you do not get the NX protections.  You must be running in &quot;PAE&quot; mode (prior to Karmic only available in the -server 32bit kernel flavor).  PAE mode is automatic in 64bit kernels.

Note that even with PAE (or 64bit), you still need NX support in the CPU (some BIOSes turn it off).</description>
		<content:encoded><![CDATA[<p>Prior to Karmic, if you run 32bit kernels on 64bit machines, you do not get the NX protections.  You must be running in &#8220;PAE&#8221; mode (prior to Karmic only available in the -server 32bit kernel flavor).  PAE mode is automatic in 64bit kernels.</p>
<p>Note that even with PAE (or 64bit), you still need NX support in the CPU (some BIOSes turn it off).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: oliver</title>
		<link>http://www.outflux.net/blog/archives/2009/05/14/nx-emulation-in-ubuntu/comment-page-1/#comment-739</link>
		<dc:creator>oliver</dc:creator>
		<pubDate>Thu, 14 May 2009 17:33:22 +0000</pubDate>
		<guid isPermaLink="false">http://www.outflux.net/blog/?p=185#comment-739</guid>
		<description>For clarification: if I run 32bit Jaunty on a 64bit capable processor, is there any kind of NX protection (hardware or software) in use then? Or do I need to run a 64bit installation to get that?</description>
		<content:encoded><![CDATA[<p>For clarification: if I run 32bit Jaunty on a 64bit capable processor, is there any kind of NX protection (hardware or software) in use then? Or do I need to run a 64bit installation to get that?</p>
]]></content:encoded>
	</item>
</channel>
</rss>

