<?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: XL Foods Crashes and Burns</title>
	<atom:link href="http://mrpogson.com/2012/09/30/xl-foods-crashes-and-burns/feed/" rel="self" type="application/rss+xml" />
	<link>http://mrpogson.com/2012/09/30/xl-foods-crashes-and-burns/</link>
	<description>One man. Closing, all the windows.</description>
	<lastBuildDate>Sat, 25 May 2013 17:49:02 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
	<item>
		<title>By: oiaohm</title>
		<link>http://mrpogson.com/2012/09/30/xl-foods-crashes-and-burns/#comment-99160</link>
		<dc:creator>oiaohm</dc:creator>
		<pubDate>Sat, 06 Oct 2012 16:13:55 +0000</pubDate>
		<guid isPermaLink="false">http://mrpogson.com/?p=14668#comment-99160</guid>
		<description><![CDATA[That Exploit Guy
--No, the ring model by design allows inner rings to access memory segments belonging to outer rings. Maybe you should consult this thing called a “textbook”?--
That is the x86 model of rings.  This is the problem.

Other archs took other paths.  PAE also allows that not to be always the case.

SPARC you need to look at the MPU the differences in design that give the SMEP and SMAP style protection is a little long for a blog post.]]></description>
		<content:encoded><![CDATA[<p>That Exploit Guy<br />
&#8211;No, the ring model by design allows inner rings to access memory segments belonging to outer rings. Maybe you should consult this thing called a “textbook”?&#8211;<br />
That is the x86 model of rings.  This is the problem.</p>
<p>Other archs took other paths.  PAE also allows that not to be always the case.</p>
<p>SPARC you need to look at the MPU the differences in design that give the SMEP and SMAP style protection is a little long for a blog post.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: That Exploit Guy</title>
		<link>http://mrpogson.com/2012/09/30/xl-foods-crashes-and-burns/#comment-99023</link>
		<dc:creator>That Exploit Guy</dc:creator>
		<pubDate>Fri, 05 Oct 2012 13:22:28 +0000</pubDate>
		<guid isPermaLink="false">http://mrpogson.com/?p=14668#comment-99023</guid>
		<description><![CDATA[@oiaohm

&lt;i&gt;&#039;SMEP bit make execute obey ring settings.&#039;&lt;/i&gt;

No, the ring model &lt;b&gt;by design&lt;/b&gt; allows inner rings to access memory segments belonging to outer rings. Maybe you should consult this thing called a &quot;textbook&quot;?

&lt;i&gt;Finding blocks RWX in ring 0 on SMAP intel systems get you no where attempting to write to it from ring 3. &#039;&lt;/i&gt;

Hmph... Did you read &lt;a href=&quot;http://vulnfactory.org/blog/2011/06/05/smep-what-is-it-and-how-to-beat-it-on-linux/&quot; rel=&quot;nofollow&quot;&gt;this&lt;/a&gt;, fail to comprehend it and decide instead to make up this bit of nonsense just to pretend you know something? This (garbled) sentence certainly points to this likely possibility.

Anyway, Set-AC and Clear-AC are instructions for manipulating the AC (alignment check) bit in the EFLAGS register, which is used to determine if SMAP is to be enforced or not in the yet-to-be-released Haswell processors (and for checking unaligned memory access in 486 and up). CLAC unsets the AC bit, which results the CPU &lt;b&gt;not&lt;/b&gt; raising a page fault when kernel mode code attempts to access memory belonging to the user space. The entire mechanism has simply nothing to do with memory belonging to the kernel space and is thus incapable of dealing with the scenario described in the &quot;RWX kernel page&quot; section.

&lt;i&gt;&#039;These features have existed in sparc chips over over 15 years the tech was new for Intel basically old common crud for everyone else including arm.&#039;&lt;/i&gt;

Interesting. As far as I am aware, SPARC does alignment check but not anything even remotely similar to SMEP or SMAP. Maybe you would like to substantiate that a bit?]]></description>
		<content:encoded><![CDATA[<p>@oiaohm</p>
<p><i>&#8216;SMEP bit make execute obey ring settings.&#8217;</i></p>
<p>No, the ring model <b>by design</b> allows inner rings to access memory segments belonging to outer rings. Maybe you should consult this thing called a &#8220;textbook&#8221;?</p>
<p><i>Finding blocks RWX in ring 0 on SMAP intel systems get you no where attempting to write to it from ring 3. &#8216;</i></p>
<p>Hmph&#8230; Did you read <a href="http://vulnfactory.org/blog/2011/06/05/smep-what-is-it-and-how-to-beat-it-on-linux/" rel="nofollow">this</a>, fail to comprehend it and decide instead to make up this bit of nonsense just to pretend you know something? This (garbled) sentence certainly points to this likely possibility.</p>
<p>Anyway, Set-AC and Clear-AC are instructions for manipulating the AC (alignment check) bit in the EFLAGS register, which is used to determine if SMAP is to be enforced or not in the yet-to-be-released Haswell processors (and for checking unaligned memory access in 486 and up). CLAC unsets the AC bit, which results the CPU <b>not</b> raising a page fault when kernel mode code attempts to access memory belonging to the user space. The entire mechanism has simply nothing to do with memory belonging to the kernel space and is thus incapable of dealing with the scenario described in the &#8220;RWX kernel page&#8221; section.</p>
<p><i>&#8216;These features have existed in sparc chips over over 15 years the tech was new for Intel basically old common crud for everyone else including arm.&#8217;</i></p>
<p>Interesting. As far as I am aware, SPARC does alignment check but not anything even remotely similar to SMEP or SMAP. Maybe you would like to substantiate that a bit?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: oiaohm</title>
		<link>http://mrpogson.com/2012/09/30/xl-foods-crashes-and-burns/#comment-98969</link>
		<dc:creator>oiaohm</dc:creator>
		<pubDate>Fri, 05 Oct 2012 06:55:47 +0000</pubDate>
		<guid isPermaLink="false">http://mrpogson.com/?p=14668#comment-98969</guid>
		<description><![CDATA[That Exploit Guy there is two features.

Linux 3.7 has this to go in.
SMEP and SMAP.  All the flaws the guy lists for getting around SMEP.  Are basically killed by SMAP.

SMEP bit make execute obey ring settings.

SMAP that prevents writing where you should not based on ring.  Yes one letter difference between the two things.  Finding blocks RWX in ring 0 on SMAP intel systems get you no where attempting to write to it from ring 3.  You need to be ring 0 to write to them.  Lot of common attacks against SMEP+NX is worthless against SMAP+SMEP+NX.  Copy from user-space function will have to be used unless you go by the module loader.  Big bad news under Linux copy from user-space function auto applies NX.

To change ring level access of a page you need the instructions CLAC/STAC only in ring 0.

The is the progressive problem.  Each time attacks find a weakness the hardware is now altering to prevent.

And the big reason why the security lady would have got in no trouble.  These features have existed in sparc chips over over 15 years the tech was new for Intel basically old common crud for everyone else including arm.  x86 is late to the security party.  Attackers have got use to taking on defective hardware.

That Exploit Guy attackers have had 15+ years to beat this style of protection.  Fully implemented we know the results.  Attack styles against kernel will be limited to return to object attacks.  Tech to prevent those already exists.  One problem x86 chips don&#039;t have that yet.]]></description>
		<content:encoded><![CDATA[<p>That Exploit Guy there is two features.</p>
<p>Linux 3.7 has this to go in.<br />
SMEP and SMAP.  All the flaws the guy lists for getting around SMEP.  Are basically killed by SMAP.</p>
<p>SMEP bit make execute obey ring settings.</p>
<p>SMAP that prevents writing where you should not based on ring.  Yes one letter difference between the two things.  Finding blocks RWX in ring 0 on SMAP intel systems get you no where attempting to write to it from ring 3.  You need to be ring 0 to write to them.  Lot of common attacks against SMEP+NX is worthless against SMAP+SMEP+NX.  Copy from user-space function will have to be used unless you go by the module loader.  Big bad news under Linux copy from user-space function auto applies NX.</p>
<p>To change ring level access of a page you need the instructions CLAC/STAC only in ring 0.</p>
<p>The is the progressive problem.  Each time attacks find a weakness the hardware is now altering to prevent.</p>
<p>And the big reason why the security lady would have got in no trouble.  These features have existed in sparc chips over over 15 years the tech was new for Intel basically old common crud for everyone else including arm.  x86 is late to the security party.  Attackers have got use to taking on defective hardware.</p>
<p>That Exploit Guy attackers have had 15+ years to beat this style of protection.  Fully implemented we know the results.  Attack styles against kernel will be limited to return to object attacks.  Tech to prevent those already exists.  One problem x86 chips don&#8217;t have that yet.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: That Exploit Guy</title>
		<link>http://mrpogson.com/2012/09/30/xl-foods-crashes-and-burns/#comment-98949</link>
		<dc:creator>That Exploit Guy</dc:creator>
		<pubDate>Fri, 05 Oct 2012 04:12:58 +0000</pubDate>
		<guid isPermaLink="false">http://mrpogson.com/?p=14668#comment-98949</guid>
		<description><![CDATA[@oiaohm

&lt;i&gt;&#039;Funny enough intel video cards recent generations have a hardware video memory manager.&#039;&lt;/i&gt;

Let me guess, you looked up something like &lt;a href=&quot;http://download.intel.com/support/graphics/intel845g/gmch.pdf&quot; rel=&quot;nofollow&quot;&gt;this&lt;/a&gt; and &lt;b&gt;decided&lt;/b&gt; it&#039;s somehow related to security. Well, &lt;b&gt;it isn&#039;t&lt;/b&gt;.

&lt;i&gt;&#039;You put your security information into that and a sideways attack is not possible using gpu code if the permissions have been assigned.&#039;&lt;/i&gt;

Look - you &lt;b&gt;invented&lt;/b&gt; this thing called a &quot;sideways&quot; attack (which I mistook for a &lt;b&gt;real&lt;/b&gt; form of attacks known as a &quot;side-channel&quot; attack, which takes form in such sophisticated methods as looking over someone&#039;s shoulders for the password and putting a fake card reader on an ATM), and then somehow the only way to defeat this obscure mechanism is to either use SELinux or employ hardware acceleration features that have naught to do with operating systems security. What you give me here is not a real argument - it&#039;s &lt;b&gt;science fiction&lt;/b&gt;, and, in all honesty, it&#039;s hardly an interesting read, either.

&lt;i&gt;&#039;Really get a copy of Windows 8 and check how it does things. Windows using the keys in the UEFI KEK for things other than booting. Yes there are more than 1 certificate store.&#039;&lt;/i&gt;

Apparently, you seem to have difficulty grasping the basics of digital signatures. You probably looked at Windows 8 certificate store and &lt;b&gt;decided&lt;/b&gt; it somehow has control over the signatures database or the key enrollment key database. Well, guess what - because UEFI isn&#039;t designed by oiaohm, &lt;a href=&quot;http://technet.microsoft.com/en-us/library/hh824987.aspx&quot; rel=&quot;nofollow&quot;&gt;it doesn&#039;t&lt;/a&gt;:

&quot;The OEM stores the signature database, revoked signatures database, and KEK signature databases on the firmware nonvolatile RAM (NV-RAM) at manufacturing time. These signature databases must be included to boot Windows by using Secure Boot.&quot;

In other words, you can&#039;t alter the KEK database without overwriting the NVRAM containing the UEFI firmware, and features for locking firmware from unauthorised updates have been around for about as long as NVRAM has been used for storing mainboard BIOS.

&lt;i&gt;&#039;Joanna Rutkowska only talks about intel chips. She does not have AMD. That is important. The feature has existed on AMD chips for years.&#039;&lt;/i&gt;

Sure, sure! Because a renowned security expert would certainly have not got lambasted by her peers for proposing an existing thing as a new idea at a technical conference, now would she?

&lt;i&gt;&#039;NX did not block ring to ring attacks. Also Linux was not setting NX on loaded modules.&#039;&lt;/i&gt;

That&#039;s because it was &lt;b&gt;never&lt;/b&gt; the purpose of NX to prevent kernel mode code from arbitrarily executing code belonging to user mode applications.

&lt;i&gt;&#039;SMEP fairly much shuts the door of being attacked.&#039;&lt;/i&gt;

No, it won&#039;t. Just as NX was unable to stop most buffer overflow exploits, SMEP will be demostrably defeated in one way or another on different operating systems in a short amount of time. Heck, there are people already working on how to defeat it on &lt;a href=&quot;http://vulnfactory.org/blog/2011/06/05/smep-what-is-it-and-how-to-beat-it-on-linux/&quot; rel=&quot;nofollow&quot;&gt;Linux&lt;/a&gt;.

&lt;i&gt;&#039;NX did see a class of attacks just die.&#039;&lt;/i&gt;

No, it merely made shellcode injection more difficult, but it certainly didn&#039;t make any &quot;class&quot; of attacks disappear or decrease in use.

&lt;i&gt;&#039;That Exploit Guy Selinux has a feature called system-call auditing.&#039;&lt;/i&gt;

Which works by looking at policies and credentials, which almost every exploit in circulation is designed to defeat first and foremost. Again, you are basing your argument on &lt;b&gt;fantasy&lt;/b&gt;, not reality.

&lt;i&gt;&#039;Seccomp filters on the other hand does include the possibility of heuristics.&#039;&lt;/i&gt;

No, a seccomp filter does pretty much the same thing as SELinux in regards to syscalls with the only difference that it doesn&#039;t give you the facility to define elaborate access policies.

On top of that, you are still mistaking tools for establishing bureaucratic &lt;b&gt;secrecy&lt;/b&gt; as measures against &lt;b&gt;malicious attacks&lt;/b&gt;. No, SELinux is not anti-virus software. It never was, and it never will be.

&lt;b&gt;&#039;Those credentials are per application not per user. So user running as admin on a harded Selinux gets you program and runs it and it does something more than what a normal user should it killed. You application did not have the required credentials.&#039;&lt;/b&gt;

And what difference is that supposed to make? A malicious attack is usually aimed at &lt;b&gt;defeating credentials&lt;/b&gt;. All that a policy of establishing credentials does is &lt;b&gt;squat&lt;/b&gt; to the attacker. Even Linux &lt;b&gt;without&lt;/b&gt; SELinux enforces an access policy of its own (i.e. root/non-root). So what?

What Red Hat does is essentially trying to promote a use of something that it is &lt;b&gt;not&lt;/b&gt; designed for, and you, having read their product brouchers, decide that you now suddenly have the knowledge of a security expert. No, you &lt;b&gt;don&#039;t&lt;/b&gt;, so stop fooling yourself.]]></description>
		<content:encoded><![CDATA[<p>@oiaohm</p>
<p><i>&#8216;Funny enough intel video cards recent generations have a hardware video memory manager.&#8217;</i></p>
<p>Let me guess, you looked up something like <a href="http://download.intel.com/support/graphics/intel845g/gmch.pdf" rel="nofollow">this</a> and <b>decided</b> it&#8217;s somehow related to security. Well, <b>it isn&#8217;t</b>.</p>
<p><i>&#8216;You put your security information into that and a sideways attack is not possible using gpu code if the permissions have been assigned.&#8217;</i></p>
<p>Look &#8211; you <b>invented</b> this thing called a &#8220;sideways&#8221; attack (which I mistook for a <b>real</b> form of attacks known as a &#8220;side-channel&#8221; attack, which takes form in such sophisticated methods as looking over someone&#8217;s shoulders for the password and putting a fake card reader on an ATM), and then somehow the only way to defeat this obscure mechanism is to either use SELinux or employ hardware acceleration features that have naught to do with operating systems security. What you give me here is not a real argument &#8211; it&#8217;s <b>science fiction</b>, and, in all honesty, it&#8217;s hardly an interesting read, either.</p>
<p><i>&#8216;Really get a copy of Windows 8 and check how it does things. Windows using the keys in the UEFI KEK for things other than booting. Yes there are more than 1 certificate store.&#8217;</i></p>
<p>Apparently, you seem to have difficulty grasping the basics of digital signatures. You probably looked at Windows 8 certificate store and <b>decided</b> it somehow has control over the signatures database or the key enrollment key database. Well, guess what &#8211; because UEFI isn&#8217;t designed by oiaohm, <a href="http://technet.microsoft.com/en-us/library/hh824987.aspx" rel="nofollow">it doesn&#8217;t</a>:</p>
<p>&#8220;The OEM stores the signature database, revoked signatures database, and KEK signature databases on the firmware nonvolatile RAM (NV-RAM) at manufacturing time. These signature databases must be included to boot Windows by using Secure Boot.&#8221;</p>
<p>In other words, you can&#8217;t alter the KEK database without overwriting the NVRAM containing the UEFI firmware, and features for locking firmware from unauthorised updates have been around for about as long as NVRAM has been used for storing mainboard BIOS.</p>
<p><i>&#8216;Joanna Rutkowska only talks about intel chips. She does not have AMD. That is important. The feature has existed on AMD chips for years.&#8217;</i></p>
<p>Sure, sure! Because a renowned security expert would certainly have not got lambasted by her peers for proposing an existing thing as a new idea at a technical conference, now would she?</p>
<p><i>&#8216;NX did not block ring to ring attacks. Also Linux was not setting NX on loaded modules.&#8217;</i></p>
<p>That&#8217;s because it was <b>never</b> the purpose of NX to prevent kernel mode code from arbitrarily executing code belonging to user mode applications.</p>
<p><i>&#8216;SMEP fairly much shuts the door of being attacked.&#8217;</i></p>
<p>No, it won&#8217;t. Just as NX was unable to stop most buffer overflow exploits, SMEP will be demostrably defeated in one way or another on different operating systems in a short amount of time. Heck, there are people already working on how to defeat it on <a href="http://vulnfactory.org/blog/2011/06/05/smep-what-is-it-and-how-to-beat-it-on-linux/" rel="nofollow">Linux</a>.</p>
<p><i>&#8216;NX did see a class of attacks just die.&#8217;</i></p>
<p>No, it merely made shellcode injection more difficult, but it certainly didn&#8217;t make any &#8220;class&#8221; of attacks disappear or decrease in use.</p>
<p><i>&#8216;That Exploit Guy Selinux has a feature called system-call auditing.&#8217;</i></p>
<p>Which works by looking at policies and credentials, which almost every exploit in circulation is designed to defeat first and foremost. Again, you are basing your argument on <b>fantasy</b>, not reality.</p>
<p><i>&#8216;Seccomp filters on the other hand does include the possibility of heuristics.&#8217;</i></p>
<p>No, a seccomp filter does pretty much the same thing as SELinux in regards to syscalls with the only difference that it doesn&#8217;t give you the facility to define elaborate access policies.</p>
<p>On top of that, you are still mistaking tools for establishing bureaucratic <b>secrecy</b> as measures against <b>malicious attacks</b>. No, SELinux is not anti-virus software. It never was, and it never will be.</p>
<p><b>&#8216;Those credentials are per application not per user. So user running as admin on a harded Selinux gets you program and runs it and it does something more than what a normal user should it killed. You application did not have the required credentials.&#8217;</b></p>
<p>And what difference is that supposed to make? A malicious attack is usually aimed at <b>defeating credentials</b>. All that a policy of establishing credentials does is <b>squat</b> to the attacker. Even Linux <b>without</b> SELinux enforces an access policy of its own (i.e. root/non-root). So what?</p>
<p>What Red Hat does is essentially trying to promote a use of something that it is <b>not</b> designed for, and you, having read their product brouchers, decide that you now suddenly have the knowledge of a security expert. No, you <b>don&#8217;t</b>, so stop fooling yourself.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: oiaohm</title>
		<link>http://mrpogson.com/2012/09/30/xl-foods-crashes-and-burns/#comment-98935</link>
		<dc:creator>oiaohm</dc:creator>
		<pubDate>Fri, 05 Oct 2012 01:02:30 +0000</pubDate>
		<guid isPermaLink="false">http://mrpogson.com/?p=14668#comment-98935</guid>
		<description><![CDATA[That Exploit Guy  SMEP in the current patch that has gone in.  If your driver in Linux is not compatible on hardware that is SMEP your driver will die.  Don&#039;t worry about security flaw flat kernel panic.

This is way different to when NX was implemented in the Linux kernel were you could go hey we will not bother implementing this.  Same effect exists on AMD and VIA hardware.  So most drivers in Linux do the pass from userspace to kernel space and back one particular way.  The odds are any SMEP issues with drivers is almost zero.  Because the feature has been implemented by AMD and VIA for ages.  Windows does not support the AMD or VIA or the Intel implementation.  Most likely be windows 9 before you see SMEP.]]></description>
		<content:encoded><![CDATA[<p>That Exploit Guy  SMEP in the current patch that has gone in.  If your driver in Linux is not compatible on hardware that is SMEP your driver will die.  Don&#8217;t worry about security flaw flat kernel panic.</p>
<p>This is way different to when NX was implemented in the Linux kernel were you could go hey we will not bother implementing this.  Same effect exists on AMD and VIA hardware.  So most drivers in Linux do the pass from userspace to kernel space and back one particular way.  The odds are any SMEP issues with drivers is almost zero.  Because the feature has been implemented by AMD and VIA for ages.  Windows does not support the AMD or VIA or the Intel implementation.  Most likely be windows 9 before you see SMEP.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: oiaohm</title>
		<link>http://mrpogson.com/2012/09/30/xl-foods-crashes-and-burns/#comment-98934</link>
		<dc:creator>oiaohm</dc:creator>
		<pubDate>Fri, 05 Oct 2012 00:55:40 +0000</pubDate>
		<guid isPermaLink="false">http://mrpogson.com/?p=14668#comment-98934</guid>
		<description><![CDATA[That Exploit Guy
--A “memory manager” is a portion of the video card driver that governs the use of video memory, i.e. it enforces segmentation. In other words, it’s a software thing.--
That is the security flaw.  In CPU memory management of video memory does not contain programs running in the GPU.

Funny enough intel video cards recent generations have a hardware video memory manager.  You put your security information into that and a sideways attack is not possible using gpu code if the permissions have been assigned.  You gpu code has a memory map of what memory in the gpu is allowed to access.  Missing hardware feature equals security hole.

--UEFI doesn’t share the same certificate store as that of the operating system itself. Check your facts.--  Really get a copy of Windows 8 and check how it does things.  Windows using the keys in the UEFI KEK for things other than booting.  Yes there are more than 1 certificate store.

Joanna Rutkowska only talks about intel chips.  She does not have AMD.  That is important.  The feature has existed on AMD chips for years.

Because the SMEP ability is not new AMD chips. 
&quot;There will always be ways to defeat such mechanisms, as in the case of SMEP and NX.&quot;
NX did not block ring to ring attacks.  Also Linux was not setting NX on loaded modules.

SMEP fairly much shuts the door of being attacked.

NX did see a class of attacks just die.  Most of the weakness around NX were areas where it had not been enabled.  SMEP on Linux is a different matter its coming out the box enabled everywhere it needs to be.

In fact NX bit before the loader was fixed saw more most attacks against the Linux kernel move to the loaded drivers where NX was not enabled.  Because many attacks just would not work.

The true fact of the matter this is no such thing as defeat theses hardware changes and keep on doing the same classes of attacks.

So ring 3 to ring 0 using attacks using executable code are basically dead in the future.  So getting into ring 0 and running what ever code you want will be data struct based privilege exploits or tricking user.

The problem is SMEP and NX come into one piece.  Linux markers everything bar kernel module at runtime coming from user-space as NX.  Executable code inserts into the Linux kernel have been depending on the fact that usermode executable bit and kernel mode executable bit are the same.

AMD processes the NX bit is different between rings automatically under Linux.  If memory was created in a different ring its automatically NX to other rings.  AMD implemented the NX bit slightly differently.  Result the chip is not exploitable the same way.


That Exploit Guy  Selinux has a feature called system-call auditing.  That dumps every arguement of a syscall.  Selinux also has the means to check ever argument.  Of course you don&#039;t most of the time because its a performance over head.  You are reading redhat documentation not implement is self.  Redhat talks about how SeLinux generally operates and then they go in production and use it a slightly different way.

That Exploit Guy
--It can check for “certain” arguments, and I am quoting from one of those Red Hat brouchers that you treat as if they were the word of God.--
I don&#039;t treat those at the word of God.  Because they do in fact lead you away from what Redhat really does.
--It doesn’t not discern by heuristics, but credentials.-- 
This is correct neither does first generation anti-virus.  Seccomp filters on the other hand does include the possibility of heuristics.

Linux is progressively hardening.

That Exploit Guy a lot of what I am talking about in Linux like cgroups has been off by default.  Its only recently changed to on by default in a lot of distributions.

Lot of the attack vectors are disappearing.  The attacks are mostly being achieved because the security is turned off.

That Exploit Guy history when it comes security does not mean it will keep on repeating.  Lot of attack methods are about to end forever.

That Exploit Guy a stock Linux kernel is no where near as predictable as you make out.

--As long as you have the right credentials, everything you do is legal to SELinux.--
Those credentials are per application not per user.   So user running as admin on a harded Selinux gets you program and runs it and it does something more than what a normal user should it killed.  You application did not have the required credentials.

Security permissions need to be per Application and per user not just per user.   Cgroups using systemd in userspace are align up for per application permissions on everything.  So the Linux DAC will have applications and user permissions that the mandroary access controls on Linux have provided for years.

This is a design flaw that makes attacking windows simpler.]]></description>
		<content:encoded><![CDATA[<p>That Exploit Guy<br />
&#8211;A “memory manager” is a portion of the video card driver that governs the use of video memory, i.e. it enforces segmentation. In other words, it’s a software thing.&#8211;<br />
That is the security flaw.  In CPU memory management of video memory does not contain programs running in the GPU.</p>
<p>Funny enough intel video cards recent generations have a hardware video memory manager.  You put your security information into that and a sideways attack is not possible using gpu code if the permissions have been assigned.  You gpu code has a memory map of what memory in the gpu is allowed to access.  Missing hardware feature equals security hole.</p>
<p>&#8211;UEFI doesn’t share the same certificate store as that of the operating system itself. Check your facts.&#8211;  Really get a copy of Windows 8 and check how it does things.  Windows using the keys in the UEFI KEK for things other than booting.  Yes there are more than 1 certificate store.</p>
<p>Joanna Rutkowska only talks about intel chips.  She does not have AMD.  That is important.  The feature has existed on AMD chips for years.</p>
<p>Because the SMEP ability is not new AMD chips.<br />
&#8220;There will always be ways to defeat such mechanisms, as in the case of SMEP and NX.&#8221;<br />
NX did not block ring to ring attacks.  Also Linux was not setting NX on loaded modules.</p>
<p>SMEP fairly much shuts the door of being attacked.</p>
<p>NX did see a class of attacks just die.  Most of the weakness around NX were areas where it had not been enabled.  SMEP on Linux is a different matter its coming out the box enabled everywhere it needs to be.</p>
<p>In fact NX bit before the loader was fixed saw more most attacks against the Linux kernel move to the loaded drivers where NX was not enabled.  Because many attacks just would not work.</p>
<p>The true fact of the matter this is no such thing as defeat theses hardware changes and keep on doing the same classes of attacks.</p>
<p>So ring 3 to ring 0 using attacks using executable code are basically dead in the future.  So getting into ring 0 and running what ever code you want will be data struct based privilege exploits or tricking user.</p>
<p>The problem is SMEP and NX come into one piece.  Linux markers everything bar kernel module at runtime coming from user-space as NX.  Executable code inserts into the Linux kernel have been depending on the fact that usermode executable bit and kernel mode executable bit are the same.</p>
<p>AMD processes the NX bit is different between rings automatically under Linux.  If memory was created in a different ring its automatically NX to other rings.  AMD implemented the NX bit slightly differently.  Result the chip is not exploitable the same way.</p>
<p>That Exploit Guy  Selinux has a feature called system-call auditing.  That dumps every arguement of a syscall.  Selinux also has the means to check ever argument.  Of course you don&#8217;t most of the time because its a performance over head.  You are reading redhat documentation not implement is self.  Redhat talks about how SeLinux generally operates and then they go in production and use it a slightly different way.</p>
<p>That Exploit Guy<br />
&#8211;It can check for “certain” arguments, and I am quoting from one of those Red Hat brouchers that you treat as if they were the word of God.&#8211;<br />
I don&#8217;t treat those at the word of God.  Because they do in fact lead you away from what Redhat really does.<br />
&#8211;It doesn’t not discern by heuristics, but credentials.&#8211;<br />
This is correct neither does first generation anti-virus.  Seccomp filters on the other hand does include the possibility of heuristics.</p>
<p>Linux is progressively hardening.</p>
<p>That Exploit Guy a lot of what I am talking about in Linux like cgroups has been off by default.  Its only recently changed to on by default in a lot of distributions.</p>
<p>Lot of the attack vectors are disappearing.  The attacks are mostly being achieved because the security is turned off.</p>
<p>That Exploit Guy history when it comes security does not mean it will keep on repeating.  Lot of attack methods are about to end forever.</p>
<p>That Exploit Guy a stock Linux kernel is no where near as predictable as you make out.</p>
<p>&#8211;As long as you have the right credentials, everything you do is legal to SELinux.&#8211;<br />
Those credentials are per application not per user.   So user running as admin on a harded Selinux gets you program and runs it and it does something more than what a normal user should it killed.  You application did not have the required credentials.</p>
<p>Security permissions need to be per Application and per user not just per user.   Cgroups using systemd in userspace are align up for per application permissions on everything.  So the Linux DAC will have applications and user permissions that the mandroary access controls on Linux have provided for years.</p>
<p>This is a design flaw that makes attacking windows simpler.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Robert Pogson</title>
		<link>http://mrpogson.com/2012/09/30/xl-foods-crashes-and-burns/#comment-98846</link>
		<dc:creator>Robert Pogson</dc:creator>
		<pubDate>Thu, 04 Oct 2012 05:44:53 +0000</pubDate>
		<guid isPermaLink="false">http://mrpogson.com/?p=14668#comment-98846</guid>
		<description><![CDATA[TEG&#039;s comment was held for moderation for having excessive adjectives...(joke)]]></description>
		<content:encoded><![CDATA[<p>TEG&#8217;s comment was held for moderation for having excessive adjectives&#8230;(joke)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: That Exploit Guy</title>
		<link>http://mrpogson.com/2012/09/30/xl-foods-crashes-and-burns/#comment-98842</link>
		<dc:creator>That Exploit Guy</dc:creator>
		<pubDate>Thu, 04 Oct 2012 05:12:26 +0000</pubDate>
		<guid isPermaLink="false">http://mrpogson.com/?p=14668#comment-98842</guid>
		<description><![CDATA[Nice. My comment gets eaten by the spam filter again.

@oiaohm

&lt;i&gt;&#039;That Exploit Guy reality is a scary one. AMD processors for the past 6 years have had a better memory manager for preventing security bugs.&#039;&lt;/i&gt;

Now it seems clear to me you don&#039;t even understand what I mean by &quot;memory manager&quot;.

A &quot;memory manager&quot; is a portion of the video card driver that governs the use of video memory, i.e. it enforces segmentation. In other words, it&#039;s a &lt;b&gt;software&lt;/b&gt; thing.

As I said, maybe you would like to read up on the subject before careening off into such irrelevant (and factually deficient) tangents?]]></description>
		<content:encoded><![CDATA[<p>Nice. My comment gets eaten by the spam filter again.</p>
<p>@oiaohm</p>
<p><i>&#8216;That Exploit Guy reality is a scary one. AMD processors for the past 6 years have had a better memory manager for preventing security bugs.&#8217;</i></p>
<p>Now it seems clear to me you don&#8217;t even understand what I mean by &#8220;memory manager&#8221;.</p>
<p>A &#8220;memory manager&#8221; is a portion of the video card driver that governs the use of video memory, i.e. it enforces segmentation. In other words, it&#8217;s a <b>software</b> thing.</p>
<p>As I said, maybe you would like to read up on the subject before careening off into such irrelevant (and factually deficient) tangents?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: That Exploit Guy</title>
		<link>http://mrpogson.com/2012/09/30/xl-foods-crashes-and-burns/#comment-98841</link>
		<dc:creator>That Exploit Guy</dc:creator>
		<pubDate>Thu, 04 Oct 2012 05:00:44 +0000</pubDate>
		<guid isPermaLink="false">http://mrpogson.com/?p=14668#comment-98841</guid>
		<description><![CDATA[@oiaohm

&lt;i&gt;&#039;The that is only one part of UEFI secure boot framework. Second is a store of keys.&#039;&lt;/i&gt;

UEFI doesn&#039;t share the same certificate store as that of the operating system itself. Check your facts.

&lt;i&gt;&#039;The kernel faults you are worried about will die out for Linux over the next few hardware generations.&#039;&lt;/i&gt;

Glad that you cited the grsec forums. Did Brad Spengler tell anything you about &quot;Chadder Bay&quot;?

&lt;i&gt;&#039;The kernel faults you are worried about will die out for Linux over the next few hardware generations.&#039;&lt;/i&gt;

No, SMAP will merely make exploiting vulnerability more complex. There will always be ways to defeat such mechanisms, as in the case of SMEP and NX. Also, why not ask &lt;a href=&quot;http://theinvisiblethings.blogspot.com.au/2011/06/from-slides-to-silicon-in-3-years.html&quot; rel=&quot;nofollow&quot;&gt;Joanna Rutkowska&lt;/a&gt; what she thinks about that (provided that she doesn&#039;t mind reading barely comprehensible gibberish)?

&lt;i&gt;&#039;Bugger for Windows users. Same problem its windows again as why windows don’t have PAE supporting 64G of ram on a 32 bit system because Microsoft was unable to get third parties to update drivers.&#039;&lt;/i&gt;

That&#039;s interesting. On one hand, you think targeting stock kernels require time-travelling ability. On the other hand, you think targeting device drivers not compiled with the additional features are easy to encounter.

There is simply no end to your wild imaginations, is it?

&lt;i&gt;&#039;With hardware assistance that is coming getting into kernel space is even harder.&#039;&lt;/i&gt;

I would rather see you copying and pasting someone else&#039;s blog entry and pretend it&#039;s yours than read through a moonspeak version of it translated by you.

You see what I am getting at here?

&lt;i&gt;&#039;In fact to idiot who don’t understand the LSM framework don’t notice that it is possible for the LSM if it wishes to notice. Because it can check the arguments of syscalls not just the name of the syscall used.&#039;&lt;/i&gt;

It can check for &quot;&lt;b&gt;certain&lt;/b&gt;&quot; arguments, and I am quoting from one of those Red Hat brouchers that you treat as if they were the word of God. Any argument not directly related to credentials are simply outside the scope of SELinux.

Again, check your facts.

&lt;i&gt;&#039;This is why Selinux is very much like an anti-virus.&#039;&lt;/i&gt;

Again, you have completely misunderstood the purpose of SELinux. SELinux follows policies, not patterns. It doesn&#039;t not discern by heuristics, but credentials. As long as you have the right credentials, everything you do is &lt;b&gt;legal&lt;/b&gt; to SELinux.

Stop trying to promote something you &lt;b&gt;don&#039;t&lt;/b&gt; understand.

&lt;i&gt;&#039;Do those directories have to be real. cgroups can fake both. Selinux accessing a device or a proc file/folder you should not be is termination.&#039;&lt;/i&gt;

Again, you are arguing against the possibility of something that has been achieved &lt;b&gt;many times&lt;/b&gt; before. Why not go and do a bit of research before mindlessly throwing empty words at me?

&lt;i&gt;&#039;That Exploit Guy there is a policy at play active use-able exploit code you do not hand around. Particularly when its cross platform.&#039;&lt;/i&gt;

Mind if I ask you whose policy it is and why you are bound by it?

I think I have got a good grasp already as to what you are and aren&#039;t, but I am nevertheless curious to see how deep a hole you are willing to dig yourself into.

&lt;i&gt;&#039;Like if you capture screen and find out what anti-virus you are facing off against. Now you can use exploits the anti-virus don’t know.&#039;

Hang on - what &lt;b&gt;exactly&lt;/b&gt; is your scenario again? Or am I suppose to fill in the blanks here somewhat?&lt;/i&gt;]]></description>
		<content:encoded><![CDATA[<p>@oiaohm</p>
<p><i>&#8216;The that is only one part of UEFI secure boot framework. Second is a store of keys.&#8217;</i></p>
<p>UEFI doesn&#8217;t share the same certificate store as that of the operating system itself. Check your facts.</p>
<p><i>&#8216;The kernel faults you are worried about will die out for Linux over the next few hardware generations.&#8217;</i></p>
<p>Glad that you cited the grsec forums. Did Brad Spengler tell anything you about &#8220;Chadder Bay&#8221;?</p>
<p><i>&#8216;The kernel faults you are worried about will die out for Linux over the next few hardware generations.&#8217;</i></p>
<p>No, SMAP will merely make exploiting vulnerability more complex. There will always be ways to defeat such mechanisms, as in the case of SMEP and NX. Also, why not ask <a href="http://theinvisiblethings.blogspot.com.au/2011/06/from-slides-to-silicon-in-3-years.html" rel="nofollow">Joanna Rutkowska</a> what she thinks about that (provided that she doesn&#8217;t mind reading barely comprehensible gibberish)?</p>
<p><i>&#8216;Bugger for Windows users. Same problem its windows again as why windows don’t have PAE supporting 64G of ram on a 32 bit system because Microsoft was unable to get third parties to update drivers.&#8217;</i></p>
<p>That&#8217;s interesting. On one hand, you think targeting stock kernels require time-travelling ability. On the other hand, you think targeting device drivers not compiled with the additional features are easy to encounter.</p>
<p>There is simply no end to your wild imaginations, is it?</p>
<p><i>&#8216;With hardware assistance that is coming getting into kernel space is even harder.&#8217;</i></p>
<p>I would rather see you copying and pasting someone else&#8217;s blog entry and pretend it&#8217;s yours than read through a moonspeak version of it translated by you.</p>
<p>You see what I am getting at here?</p>
<p><i>&#8216;In fact to idiot who don’t understand the LSM framework don’t notice that it is possible for the LSM if it wishes to notice. Because it can check the arguments of syscalls not just the name of the syscall used.&#8217;</i></p>
<p>It can check for &#8220;<b>certain</b>&#8221; arguments, and I am quoting from one of those Red Hat brouchers that you treat as if they were the word of God. Any argument not directly related to credentials are simply outside the scope of SELinux.</p>
<p>Again, check your facts.</p>
<p><i>&#8216;This is why Selinux is very much like an anti-virus.&#8217;</i></p>
<p>Again, you have completely misunderstood the purpose of SELinux. SELinux follows policies, not patterns. It doesn&#8217;t not discern by heuristics, but credentials. As long as you have the right credentials, everything you do is <b>legal</b> to SELinux.</p>
<p>Stop trying to promote something you <b>don&#8217;t</b> understand.</p>
<p><i>&#8216;Do those directories have to be real. cgroups can fake both. Selinux accessing a device or a proc file/folder you should not be is termination.&#8217;</i></p>
<p>Again, you are arguing against the possibility of something that has been achieved <b>many times</b> before. Why not go and do a bit of research before mindlessly throwing empty words at me?</p>
<p><i>&#8216;That Exploit Guy there is a policy at play active use-able exploit code you do not hand around. Particularly when its cross platform.&#8217;</i></p>
<p>Mind if I ask you whose policy it is and why you are bound by it?</p>
<p>I think I have got a good grasp already as to what you are and aren&#8217;t, but I am nevertheless curious to see how deep a hole you are willing to dig yourself into.</p>
<p><i>&#8216;Like if you capture screen and find out what anti-virus you are facing off against. Now you can use exploits the anti-virus don’t know.&#8217;</p>
<p>Hang on &#8211; what <b>exactly</b> is your scenario again? Or am I suppose to fill in the blanks here somewhat?</i></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: oiaohm</title>
		<link>http://mrpogson.com/2012/09/30/xl-foods-crashes-and-burns/#comment-98837</link>
		<dc:creator>oiaohm</dc:creator>
		<pubDate>Thu, 04 Oct 2012 04:12:37 +0000</pubDate>
		<guid isPermaLink="false">http://mrpogson.com/?p=14668#comment-98837</guid>
		<description><![CDATA[That Exploit Guy reality is a scary one.  AMD processors for the past 6 years have had a better memory manager for preventing security bugs.

There are a lot of issues in the memory managers include the ones connected to the GPU&#039;s.

Its one thing to go after bug free code.  Its another to be sitting on top of hardware where the bugs simple cannot work.  To get code into kernel space as executable will require 1 of the following.

1) Load a driver.  Linux systems support secure boot these will have to be signed.
2) Kexec.  Linux systems supporting secure boot this this will also have to be signed.
3) find weakness in one of the memory managers to get to where you should not.

Hardware is not going to allow any other option.  There have been many kernel attacks against Linux that in x86 hardware only work on Intel chips don&#039;t work on Amd x86 chips.  Yes this is another thing that brings attackers undone attacking Linux.  Its a x86-64 bit machine there is a point I can send to userspace to run some executable code in kernel space if that machine happens to be an AMD for the past 5 years that fails.

Reality is the Linux is not as easy to attack because the security features of the different CPU chips have been implemented.

--You are targeting a fixed set of vulnerabilities on popular architectures (e.g. x86, x86_64), so what exactly is the difficulty in finding out if they exist on a machine that runs a stock kernel from the repository?--

Popular architectures are far more segmented on Linux.   x86_64 kernel image runs differently on a intel chip or via or amd.  This goes down to security handling.

CVE and others don&#039;t documented if security flaws are Intel, AMD or VIA only on Linux.  Or even if they are only particular generations of CPU&#039;s.

That Exploit Guy Windows is way too easy.]]></description>
		<content:encoded><![CDATA[<p>That Exploit Guy reality is a scary one.  AMD processors for the past 6 years have had a better memory manager for preventing security bugs.</p>
<p>There are a lot of issues in the memory managers include the ones connected to the GPU&#8217;s.</p>
<p>Its one thing to go after bug free code.  Its another to be sitting on top of hardware where the bugs simple cannot work.  To get code into kernel space as executable will require 1 of the following.</p>
<p>1) Load a driver.  Linux systems support secure boot these will have to be signed.<br />
2) Kexec.  Linux systems supporting secure boot this this will also have to be signed.<br />
3) find weakness in one of the memory managers to get to where you should not.</p>
<p>Hardware is not going to allow any other option.  There have been many kernel attacks against Linux that in x86 hardware only work on Intel chips don&#8217;t work on Amd x86 chips.  Yes this is another thing that brings attackers undone attacking Linux.  Its a x86-64 bit machine there is a point I can send to userspace to run some executable code in kernel space if that machine happens to be an AMD for the past 5 years that fails.</p>
<p>Reality is the Linux is not as easy to attack because the security features of the different CPU chips have been implemented.</p>
<p>&#8211;You are targeting a fixed set of vulnerabilities on popular architectures (e.g. x86, x86_64), so what exactly is the difficulty in finding out if they exist on a machine that runs a stock kernel from the repository?&#8211;</p>
<p>Popular architectures are far more segmented on Linux.   x86_64 kernel image runs differently on a intel chip or via or amd.  This goes down to security handling.</p>
<p>CVE and others don&#8217;t documented if security flaws are Intel, AMD or VIA only on Linux.  Or even if they are only particular generations of CPU&#8217;s.</p>
<p>That Exploit Guy Windows is way too easy.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
