<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
		>
<channel>
	<title>Comments for root labs rdist</title>
	<atom:link href="http://rdist.root.org/comments/feed/" rel="self" type="application/rss+xml" />
	<link>http://rdist.root.org</link>
	<description>Embedded security, crypto, software protection</description>
	<lastBuildDate>Sat, 18 May 2013 22:28:08 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
	<item>
		<title>Comment on Keeping skills current in a changing world by Ross C</title>
		<link>http://rdist.root.org/2013/05/06/keeping-skills-current-in-a-changing-world/comment-page-1/#comment-7950</link>
		<dc:creator><![CDATA[Ross C]]></dc:creator>
		<pubDate>Sat, 18 May 2013 22:28:08 +0000</pubDate>
		<guid isPermaLink="false">http://rdist.root.org/?p=914#comment-7950</guid>
		<description><![CDATA[I agree completely. I also think unrealistic assumptions about compensation contribute to the illusion of age discrimination -- there are too many grey-haired engineers who think that they&#039;re automatically entitled to ever-increasing salaries as they age. (I say this as a semi-grey-haired 41-year old). Software engineers do get better (and thus more valuable) as they get older, but the difference is not as great as it might be in other professions.]]></description>
		<content:encoded><![CDATA[<p>I agree completely. I also think unrealistic assumptions about compensation contribute to the illusion of age discrimination &#8212; there are too many grey-haired engineers who think that they&#8217;re automatically entitled to ever-increasing salaries as they age. (I say this as a semi-grey-haired 41-year old). Software engineers do get better (and thus more valuable) as they get older, but the difference is not as great as it might be in other professions.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Keeping skills current in a changing world by Jordan</title>
		<link>http://rdist.root.org/2013/05/06/keeping-skills-current-in-a-changing-world/comment-page-1/#comment-7941</link>
		<dc:creator><![CDATA[Jordan]]></dc:creator>
		<pubDate>Sat, 11 May 2013 03:39:36 +0000</pubDate>
		<guid isPermaLink="false">http://rdist.root.org/?p=914#comment-7941</guid>
		<description><![CDATA[Hear, hear. 

I&#039;m 33, on my way downhill from technical relevance as a security research (or so I&#039;m told), and I even spend much of my daylight hours doing management these days. 

But at night, I go home and work on fun things. Taking Boneh&#039;s crypto course from coursera, playing CTF challenges. Learning hardware hacking by building some raspberry pi and arduino gadgets around the house. There&#039;s a wealth of resources out there if you try. I don&#039;t think age has as much to do with it as a new educational model where you are not spoon fed. You pick the topic, you pick the deadline.]]></description>
		<content:encoded><![CDATA[<p>Hear, hear. </p>
<p>I&#8217;m 33, on my way downhill from technical relevance as a security research (or so I&#8217;m told), and I even spend much of my daylight hours doing management these days. </p>
<p>But at night, I go home and work on fun things. Taking Boneh&#8217;s crypto course from coursera, playing CTF challenges. Learning hardware hacking by building some raspberry pi and arduino gadgets around the house. There&#8217;s a wealth of resources out there if you try. I don&#8217;t think age has as much to do with it as a new educational model where you are not spoon fed. You pick the topic, you pick the deadline.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Keeping skills current in a changing world by Lennie</title>
		<link>http://rdist.root.org/2013/05/06/keeping-skills-current-in-a-changing-world/comment-page-1/#comment-7928</link>
		<dc:creator><![CDATA[Lennie]]></dc:creator>
		<pubDate>Mon, 06 May 2013 19:48:19 +0000</pubDate>
		<guid isPermaLink="false">http://rdist.root.org/?p=914#comment-7928</guid>
		<description><![CDATA[The other way is to get involved in an open source project. You want cloud ? Try OpenStack, lots of things one could do there. It&#039;s Python, if you have never used Python it should be pretty easy to pick up. You just need a modern desktop machine that can run several VMs at the same time.

There are lots of companies looking for people to work on OpenStack solutions.]]></description>
		<content:encoded><![CDATA[<p>The other way is to get involved in an open source project. You want cloud ? Try OpenStack, lots of things one could do there. It&#8217;s Python, if you have never used Python it should be pretty easy to pick up. You just need a modern desktop machine that can run several VMs at the same time.</p>
<p>There are lots of companies looking for people to work on OpenStack solutions.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on History of memory corruption vulnerabilities and exploits by Tim Newsham</title>
		<link>http://rdist.root.org/2013/01/28/history-of-memory-corruption-vulnerabilities-and-exploits/comment-page-1/#comment-7925</link>
		<dc:creator><![CDATA[Tim Newsham]]></dc:creator>
		<pubDate>Wed, 17 Apr 2013 01:41:23 +0000</pubDate>
		<guid isPermaLink="false">http://rdist.root.org/?p=909#comment-7925</guid>
		<description><![CDATA[A couple of (late) comments on the comments:
1) stack direction will not solve the problem. Often buffer overflows happen not in the function containing the buffer but in one of the called functions. There will be a return address somewhere in memory after the buffer no matter which direction the stack grows in.
2) Code signing does nothing to prevent arbitrary code execution post-exploitation. An attacker can dynamically generate and execute code as needed once control flow has been hijacked. Check out some of the small interpreters available in professional exploit kits such as Core Impact or Metasploit Framework, for example.
3) This blog would indeed be a great platform for telling the world about your company&#039;s new contest and about male virility!]]></description>
		<content:encoded><![CDATA[<p>A couple of (late) comments on the comments:<br />
1) stack direction will not solve the problem. Often buffer overflows happen not in the function containing the buffer but in one of the called functions. There will be a return address somewhere in memory after the buffer no matter which direction the stack grows in.<br />
2) Code signing does nothing to prevent arbitrary code execution post-exploitation. An attacker can dynamically generate and execute code as needed once control flow has been hijacked. Check out some of the small interpreters available in professional exploit kits such as Core Impact or Metasploit Framework, for example.<br />
3) This blog would indeed be a great platform for telling the world about your company&#8217;s new contest and about male virility!</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on History of memory corruption vulnerabilities and exploits by Watson Bernard Ladd</title>
		<link>http://rdist.root.org/2013/01/28/history-of-memory-corruption-vulnerabilities-and-exploits/comment-page-1/#comment-7921</link>
		<dc:creator><![CDATA[Watson Bernard Ladd]]></dc:creator>
		<pubDate>Wed, 20 Mar 2013 13:45:18 +0000</pubDate>
		<guid isPermaLink="false">http://rdist.root.org/?p=909#comment-7921</guid>
		<description><![CDATA[Easy solution: Use memory-safe languages so that we don&#039;t have exploits from bugs. This doesn&#039;t solve all security problems, like Confused Deputies, but does solve most of them. Ada, Java, SML, etc. are all much safer then C, and in many cases just as fast.]]></description>
		<content:encoded><![CDATA[<p>Easy solution: Use memory-safe languages so that we don&#8217;t have exploits from bugs. This doesn&#8217;t solve all security problems, like Confused Deputies, but does solve most of them. Ada, Java, SML, etc. are all much safer then C, and in many cases just as fast.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on History of memory corruption vulnerabilities and exploits by @secolive</title>
		<link>http://rdist.root.org/2013/01/28/history-of-memory-corruption-vulnerabilities-and-exploits/comment-page-1/#comment-7862</link>
		<dc:creator><![CDATA[@secolive]]></dc:creator>
		<pubDate>Mon, 04 Feb 2013 12:18:26 +0000</pubDate>
		<guid isPermaLink="false">http://rdist.root.org/?p=909#comment-7862</guid>
		<description><![CDATA[Stacks are an interesting, venerable piece of legacy. For example, having a stack grow downwards was vey useful at the time there was no virtual memory, but it also now makes overwriting return adresses much easier. Why the industry could not move to upwards stack is a bit of a puzzle to me. Also, we keep wanting to mix automatic variables (data pane) and return adresses (control pane) on the same stack. Shouldn&#039;t be too difficult to use two stacks to stop mixing control and data panes here. Would mean a redefinition of the calling conventions, but this can easily be done when introducing new platforms.

Whatever exploitation technique is used, at some point the attacker wants to execute arbitrary code. A good mitigation is to only allow execution of signed code. iOS chose that road and almost succeeded. The failure? The OS is allowed to turn that mechanism off, for whatever reason. This is a perfect illustration of the too-big TCB. Actually, a way to see it is that you need different levels of trusts, and the most-trusted component should be a mechanism whose sole purpose is to make sure only signed code is allowed execution as a given privilege, also managing trust chains.

In conclusion, with all defenses we have now (NX, ASLR...) we are really hacking around the issues instead of fixing the core problems in the architecture. Granted, easier said than done :)

@secolive]]></description>
		<content:encoded><![CDATA[<p>Stacks are an interesting, venerable piece of legacy. For example, having a stack grow downwards was vey useful at the time there was no virtual memory, but it also now makes overwriting return adresses much easier. Why the industry could not move to upwards stack is a bit of a puzzle to me. Also, we keep wanting to mix automatic variables (data pane) and return adresses (control pane) on the same stack. Shouldn&#8217;t be too difficult to use two stacks to stop mixing control and data panes here. Would mean a redefinition of the calling conventions, but this can easily be done when introducing new platforms.</p>
<p>Whatever exploitation technique is used, at some point the attacker wants to execute arbitrary code. A good mitigation is to only allow execution of signed code. iOS chose that road and almost succeeded. The failure? The OS is allowed to turn that mechanism off, for whatever reason. This is a perfect illustration of the too-big TCB. Actually, a way to see it is that you need different levels of trusts, and the most-trusted component should be a mechanism whose sole purpose is to make sure only signed code is allowed execution as a given privilege, also managing trust chains.</p>
<p>In conclusion, with all defenses we have now (NX, ASLR&#8230;) we are really hacking around the issues instead of fixing the core problems in the architecture. Granted, easier said than done :)</p>
<p>@secolive</p>
]]></content:encoded>
	</item>
</channel>
</rss>
