<?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/"
	xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule">

<channel>
	<title>Security Ripcord &#187; Exploits</title>
	<atom:link href="http://www.cutawaysecurity.com/blog/archives/category/exploits/feed" rel="self" type="application/rss+xml" />
	<link>http://www.cutawaysecurity.com/blog</link>
	<description>Cutaway's Observations, Opinions, Rants, Raves, Tantrums, and Tirades</description>
	<lastBuildDate>Tue, 01 Jun 2010 15:17:09 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>		<item>
		<title>atlas &#8211; an Email Interview</title>
		<link>http://www.cutawaysecurity.com/blog/archives/229</link>
		<comments>http://www.cutawaysecurity.com/blog/archives/229#comments</comments>
		<pubDate>Wed, 26 Mar 2008 04:06:36 +0000</pubDate>
		<dc:creator>cutaway</dc:creator>
				<category><![CDATA[CISecurity]]></category>
		<category><![CDATA[DefCon]]></category>
		<category><![CDATA[Exploits]]></category>
		<category><![CDATA[InGuardians]]></category>
		<category><![CDATA[Interviews]]></category>
		<category><![CDATA[atlas]]></category>

		<guid isPermaLink="false">http://www.cutawaysecurity.com/blog/archives/229</guid>
		<description><![CDATA[Although I have never met atlas personally, I was originally made aware of him at RSA 2007 while speaking with Ed Skoudis.  I was talking to Ed about my interest in the DefCon CTF and he mentioned that his company InGuardians was working with altas on several projects because, among other reasons, of his [...]]]></description>
			<content:encoded><![CDATA[<p>Although I have never met <a href="http://www.flickr.com/photos/veruus/1043907281/in/set-72157601280791450/" title="atlas speaks" target="_blank"><em>atlas</em></a> personally, I was originally made aware of him at RSA 2007 while speaking with <a href="http://www.intelguardians.com/info.html" title="Ed Skoudis Bio" target="_blank">Ed Skoudis</a>.  I was talking to Ed about my interest in the DefCon CTF and he mentioned that his company <a href="http://www.intelguardians.com" title="InGuardians" target="_blank">InGuardians</a> was working with <em>altas</em> on several projects because, among other reasons, of his outstanding performances at DefCon.  The next time I heard about <em>atlas</em> was during last year&#8217;s <a href="http://nopsr.us/ctf2007/overview.html" title="DefCon CTF 2007 Overview" target="_blank">DefCon CTF 2007</a> when <em>invisigoth</em> mention how impressed he was with <em>altas&#8217;</em> leadership qualities during the intense competition as he lead his team, <a href="http://nopsr.us/ctf2007/" title="DefCon CTF 2007" target="_blank"><em>l@stplace</em></a>, to a second, consecutive, victory.  All of this peeked my interested and I was very keen on getting an interview to augment my post on last years DefCon CTF, <a href="http://www.cutawaysecurity.com/blog/archives/176" title="DefCon 15 CTF - WarGamez" target="_blank">DefCon 15 CTF &#8211; WarGamez</a>, but time quickly passed and I went ahead with the post without the interview as I was not aware at the time of <em>altas</em>&#8216; blog, <a href="http://atlas.r4780y.com/cgi-bin/atlas" title="-atlas wandering-" target="_blank">atlas wandering</a>.  After the post I mentioned my disappointment to my good friend Lara and she said, &#8220;Oh, he&#8217;s a great guy.  I&#8217;ll drop him a note tomorrow.&#8221;  For those of you who know Lara, she always comes through.</p>
<p>Sure enough <em>altas</em> emailed me several days later.  We quickly agreed to an interview but because of constant battles with SPAM filtering, multiple projects on both sides, and several <a href="http://atlas.r4780y.com/myimages/VulnCatcher-slides.pdf" title="Vulncatcher at POC" target="_blank">conference</a> <a href="http://www.shmoocon.org/speakers.html" title="Vulncatcher: Fun with VTRACE and Programmatic Debugging" target="_blank">presentations</a> by <em>atlas</em>, we just did not get it completed until a few days ago.   During one of the emails I asked <em>atlas</em> to mention some of the things that he was working on to help me write some pointed questions directed towards his interests.  He mentioned a few:</p>
<blockquote><p>I have been doing some fun stuff with 16-bit real mode, kernel module play in<br />
Linux, BIOS hacking, and of course disassembly and programmatic debugging.</p></blockquote>
<p>My first thought was &#8220;Uh, oh.&#8221;  Sure, I have heard of all of this but if you followed my failings with writing exploits for a <a href="http://www.cutawaysecurity.com/blog/archives/136" title="Testing Shellcode For Functionality" target="_blank">simple</a> <a href="http://www.cutawaysecurity.com/blog/archives/134" title="More Exploit Writing Failures" target="_blank">buffer</a> <a href="http://www.cutawaysecurity.com/blog/archives/131" title="Exploiting Programs - Pointers and Problems" target="_blank">overflow</a> you know that I am not going to be able to dig very deeply into these topics.   I did some quick research on the topics.  Then I reviewed his latest posts on his toolkit, <a href="http://atlas.r4780y.com/resources/atlasutils-2.2.5.tgz" title="atlasutils 2.2.25" target="_blank">atlasutils</a> and reviewed his presentation on <a href="http://atlas.r4780y.com/myimages/VulnCatcher-paper.pdf" title="Vulncatcher Whitepaper" target="_blank">Vulncatcher</a>.  I started to get a little frustrated.  After all, I did not want to waste the excellent opportunity just because I do not have a grasp of the integrate details of complex software and hardware relationships.  Ahhh, bingo.  I hit the nail on the head.  Looking over everything that I can find on <em>altas</em> I realized that he has one of those special eyes for detail.  He can see the integrate relationships within complex systems and understand how to research them.  Or, at least, he understands it enough to try and manipulate the relationship.  Hacking at its finest, its very core.  Excellent.  I might not be able to delve deeply into his research, but I can at least find out his opinions on this complexity.</p>
<p>First, a little Bio on <em>altas</em> stolen from his <a href="http://www.shmoocon.org/speakers.html" title="Look for it" target="_blank">ShmooCon 2008 introduction</a>.</p>
<blockquote><p>atlas is an average joe who spends his time learning new ways to make computer systems dance. When he&#8217;s not slicing and dicing windows and unix binaries, he&#8217;s writing tools to make vulnerability research simpler and more enjoyable. His hobbies include deadlisting (opcode disassembly), vulnerability research, and lately he&#8217;s been working on processor emulation and kernel-mode internals. atlas leads the capture-the-flag team, 1@stplace, who recently won back-to-back victories at defcon, which he blames on his teammates. &#8220;I surround myself with brilliant people,&#8221; he quips.</p></blockquote>
<p>So, without further ado, <em>atlas</em>.</p>
<hr align="center" color="#ff0000" size="2" width="80%" />
<blockquote><p><strong> DefCon CTF</strong></p>
<p><strong>1.  You have lead your team to two straight victories in the DefCon CTF. </strong><br />
<strong> Has this part of your life run its course or is it still challenging enough</strong><br />
<strong> to give it another run?</strong></p>
<p>Wow&#8230; it&#8217;s still challenging!  Each year we have been extremely challenged by<br />
amazing talent.  There is still immense question of how well we will place<br />
this year, with the outstanding talent the Naval Postgrad School puts forth<br />
each year, Vigna&#8217;s team has provided some serious domination in the past, we<br />
have several international teams which are doing very well, and other talent<br />
not yet &#8220;displayed&#8221; at defcon.  We have to go in each year focused on doing<br />
our best, regardless of who and what challenges we face.  How many more years<br />
I have left to give is another question.  It&#8217;s a very consuming weekend, and<br />
quals weekend, even though we don&#8217;t currently have to qualify, is challenging<br />
as well.</p>
<p><strong>2.  Your team is obviously very skilled but the types of personalities I</strong><br />
<strong> imagine that are involved are use to individual performance and behavior.</strong><br />
<strong> Was it a challenge to lead them and keep them focused on goals that</strong><br />
<strong> benefitted the group as a whole?  I.E. tracking down a problem that might</strong><br />
<strong> be too difficult for the competition or not worth the effort.</strong></p>
<p>If I&#8217;ve done anything really well in CTF it is selecting amazing people.  They<br />
have always been an honor to lead, and have actually helped me lead them in<br />
more ways than I can count.</p>
<p><strong>3.  Have you or your team members seen benefits develop from the amount of</strong><br />
<strong> time and effort you have placed in getting ready for DefCon CTF?</strong></p>
<p>Oh totally.  A few of my guys, myself included, have changed career paths<br />
based largely on how well they&#8217;ve proven themselves at ctf.  I can&#8217;t speak<br />
for the others, but I&#8217;m quite happy with the results.  I think we&#8217;ve all seen<br />
improvements in our daily tasks and our abilities to achieve our goals.<br />
We&#8217;ve built strong friendships within the team which has been very good.<br />
Management also responds well to our wins, as they are more likely to think<br />
we know what the heck we&#8217;re talking about.</p>
<p><strong>4.  Are you personally going to give it another run?  Will l@stplace return</strong><br />
<strong> as the same team or will you select different members to keep the blood</strong><br />
<strong> fresh and challenge high?</strong></p>
<p>We&#8217;ll return the same team we left.  I&#8217;ve been fortunate to find such amazing<br />
guys, hand-selected them based on their talent, skill and personality, and<br />
formed lasting friendships that transcend defcon.  I&#8217;m confident from our<br />
talks offline that we will all be returning this year, Lord willing.</p>
<p><strong>5.  Do you believe that there are real world teams, criminal or govenment,</strong><br />
<strong> performing detailed and near real-time application analysis to penetrate</strong><br />
<strong> businesses and government systems, much in the same manner that the teams</strong><br />
<strong> in the last DefCon CTF were doing?</strong></p>
<p>Certainly.  Absolutely.  No Comment.</p>
<p><strong>Program Research and Exploit Writing</strong></p>
<p><strong>6.  What was your background before you started really moving into program</strong><br />
<strong> and architecture research?</strong></p>
<p>I had been a coder since I was young, but got a career in sys-admin work, then<br />
moved into data-telecom where I was responsible for many security-related<br />
services, then got drafted into security.</p>
<p><strong>7.  To me some of the concepts are difficult to grasp and implement when</strong><br />
<strong> there are resources.  What did you do to help you get over the hump and</strong><br />
<strong> begin to fully understand the intricacies of low level programming and</strong><br />
<strong> analysis?</strong></p>
<p>Gave up.  Then I redoubled back.  I was freaked out at the possibility I&#8217;d<br />
fail.  So I decided that I couldn&#8217;t do it.  Once I had finished freaking out<br />
I decided to work it and grow.  Some people could and were doing this stuff,<br />
what&#8217;s the cost of throwing myself into the learning curve and seeing where<br />
it lead?</p>
<p><strong>8.  Your toolset, atlasutils, is a combination of python programs and</strong><br />
<strong> script that include a disassembler and other tools that help located and</strong><br />
<strong> provide information to exploit vulnerabilities.  I have noticed that Dave</strong><br />
<strong> Aitel likes to talk about writing his own debuggers as well.  Is this</strong><br />
<strong> because the tools that are out there are not useful, you have different</strong><br />
<strong> ideas that did not go into the usual debugger, or that you just need</strong><br />
<strong> something to help fit a specific niche?  Or, it is just fun to write your</strong><br />
<strong> down debugger? <img src='http://www.cutawaysecurity.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </strong></p>
<p>To quote a very good friend of mine, I write code because I&#8217;m lazy.  <img src='http://www.cutawaysecurity.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />   Truth<br />
is, using others&#8217; tools is tiring, since I have to learn to think like<br />
them&#8230;  Writing my own forces to me to learn how to think about the things<br />
I&#8217;m trying to do, then write tools that help me next time I have to do them.<br />
I hope people find my tools useful, but they&#8217;re really for my benefit.  I<br />
often write my own tools because I&#8217;m forced to learn the details better&#8230;<br />
and then I can add my own whizbang fun new stuff on from there.  For<br />
instance, I&#8217;m rewriting disass, because there was an upper-limit in binary<br />
size, above which it simply took forever to process because of inefficient<br />
use of memory.  It was also very &#8220;dogmatic&#8221;, and not agile.  Some code I want<br />
to disassemble is packed/encrypted and wrapped with an unpacker/decryptor.<br />
That means the data/code actually changes post-loading.  Disassemblers have<br />
to account for that, which means they have to be &#8220;agile&#8221;, or able to adjust<br />
how they view the memory setup of a binary.  I&#8217;m also working parts of the<br />
remake of disass into an emulator (no, not complete emulation) which will<br />
allow me to better address certain laborious tasks.</p>
<p><strong>9.  When you are developing these tools, how do you pick a program to</strong><br />
<strong> analyze? Do you generate your own vulnerable code or find something with</strong><br />
<strong> known vulnerabilities to analyze?</strong></p>
<p>When developing tools I try to use them on anything I want to analyze, just to<br />
see them break (and wow they break).  Sometimes it&#8217;s code I&#8217;ve snagged from<br />
ctf, sometimes it&#8217;s my own code, sometimes it&#8217;s POSIX code or Win32 code, or<br />
&lt;insert-your-fav-commercial-app&gt; code.</p>
<p><strong>10.  As I look at the types of research you are performing I start to</strong><br />
<strong> wonder if computers are just too complex.  Or if the higher level</strong><br />
<strong> programming languages that we have just cannot securely support all of the</strong><br />
<strong> low level functionality.  Then I start thinking about the interactions and</strong><br />
<strong> complexity added by software and hardware interaction, BIOS, and firmware</strong><br />
<strong> and my head really starts to spin.  What are your thoughts on this</strong><br />
<strong> complexity and how it is affecting the security of technology as a whole?</strong></p>
<p>Well, you&#8217;ve really nailed it.  Computers have become very complex indeed&#8230;<br />
and continue to do so.  In many layers of &#8220;synthesis&#8221; the computer industry<br />
has striven to group low-level functions into simple-to-use functionality;<br />
for the developers and ultimately the end users.<br />
Each iteration of simplification masks many details from the users/developers,<br />
and with the disappearance of those details comes many assumptions.<br />
Assumptions are inevitable in our industry because you can&#8217;t teach *every*<br />
administrator and developer *every* detail about the computer.  Some in the<br />
security field have attained a great deal of understanding those details&#8230;<br />
and we tend to hail them as deities.<br />
False assumptions and the state of mind induced by details-overload work<br />
together to provide vulnerabilities for attackers to leverage.  Sometimes<br />
those vulnerabilities highlight a loss of communication, laziness, lack of<br />
understanding, or simply mistakes.</p>
<p>This dilemma is not going away.  We continue to see layered-development and a<br />
push for ease-of-use at every level.  Ease-of-use tends to be directly<br />
counter to security, in that we enable users and developers to do mighty<br />
things without realizing the truth of what they are doing.  For example,<br />
without proper education and focus on security, thousands of SQL-Servers were<br />
put on the Internet with a blank SA password (the default).</p>
<p>Security must become a baked-in part of the development culture.  Developers<br />
need to be screened for how seriously they take security, and continually<br />
trained and updated on new security problems, such as format-string bugs and<br />
buffer overflows in the 90s.  When the next new common programming flaw is<br />
identified, those mistakes must be put in front of developers to warn them<br />
and instruct what the computer is actually doing, or how attackers are<br />
leveraging the flaws to do evil things.  Each development team needs to have<br />
someone who understands how to think like an evil d00d.  I venture to say<br />
that every developer should become that person.</p>
<p>This complexity provides plenty of playground for attackers, but hackers are<br />
rising to the occasion, finding enjoyment in understanding systems better<br />
sometimes than their creators.  We insert stop-gap protections like ASLR and<br />
anti-corruption techniques and hackers find ways around them.  Worse than the<br />
time lost in the creation and adoption of those protections is the<br />
complacency they allow developers, who wrongfully think they are protected.<br />
With all the complexity of just learning someone else&#8217;s API and interacting<br />
with third-party products, as well as designing corporate-wide API&#8217;s that<br />
hundreds of developers may use, they are happy to think on the good sides to<br />
such protections, without being able to understand the details or<br />
limitations.  Even if they have the base-knowledge to understand, they simply<br />
are seldom given the time.</p>
<p><strong>11.  With this complexity, how can developers fix it?  I mean, programmers</strong><br />
<strong> just do not have the time and resources to think of every little piece of</strong><br />
<strong> the puzzle.  We cannot expect them to.  So, how do developers protect their</strong><br />
<strong> projects?  Do we just need to realize that we are in a constant state of</strong><br />
<strong> possible exploitation and accept that very expensive systems will get</strong><br />
<strong> exploited and we better have a good incident response team?</strong></p>
<p>See above&#8230; Good incident handling teams are invaluable for an organization.<br />
Teams who understand proactive security and the patching process are equally<br />
important.  Consider them &#8220;stoppers&#8221; and &#8220;sweepers&#8221; if you like futbol.</p>
<p>In the end, the ball is the developer&#8217;s court.  Each person who writes code<br />
needs to learn the details of what they are doing, and accept responsibility<br />
for the security of their work.  If format-string bugs seem impossible to<br />
exploit, that developer needs training (SANS SEC504 is generally very good<br />
for that).  If XSS doesn&#8217;t seem to be a big deal, training is necessary.<br />
Aside from great training, that SANS course will likely provide networking<br />
opportunities with people who think evil all day every day.  BlackHat and<br />
defcon are also good venues, but likely less substantive.  We need to stop<br />
training our developers only about how to enable things&#8230; because that only<br />
enables exploits.</p>
<p><strong>12.  Along the lines of complexity, most of the technologies that are put</strong><br />
<strong> out there, operating systems and applications, automatically have these</strong><br />
<strong> complexities built into them as features.  The Center of Internet Security</strong><br />
<strong> has long benchmarks to help guide administrators through steps that help</strong><br />
<strong> them limit their exposure to some of these complexities, but with each new</strong><br />
<strong> release of a product the administrator has to be worried about what is new</strong><br />
<strong> or what was modified that exposes the environment to additional risk.  What</strong><br />
<strong> recommendations can you make to these administrators as they are taking</strong><br />
<strong> these complexities into consideration?</strong></p>
<p>Good luck?  The truth is that CIS spits out some outstanding documents to help<br />
us get a certain level of security with the least outlay of effort.  It&#8217;s a<br />
bang-for-your-buck arrangement.  Unfortunately no benchmark or security guide<br />
is going to take the place of a solid understanding of the technologies one<br />
is using.  Best case, CIS guides serve as a litmus test and a guide to<br />
someone who already has a great understanding and the curiosity to know their<br />
playground well.  Someone who knows enough to know how much they don&#8217;t know<br />
so they welcome the help, but someone who plays with their tech and groks<br />
it&#8230; because they want to.  This is the part where I get to piss a lot of<br />
people off&#8230; if you don&#8217;t love security or IT or IS&#8230; get out.  There are<br />
many professions where you may be happier and more successful.  Computers<br />
have become the next &#8220;Doctor&#8221; or &#8220;Lawyer&#8221; profession, where people flood<br />
Computer college programs in hopes of a mighty paycheck.  Those people<br />
everyone views as gods in this industry are people who would tinker anyway,<br />
even if they were janitors during the day.  And if you *do* tinker and wind<br />
up in the industry&#8230; get yourself some security understanding.  Learn to<br />
think as your opponent&#8230; think about how someone who hates your guts and<br />
your programs would mess with them.  Get the training, from an organization<br />
or a friend if you cannot afford formalized training.<br />
And remember, patching is a vital, ongoing process organization-wide.</p>
<p>@</p></blockquote>
<hr align="center" color="#ff0000" size="2" width="80%" /> Of course you have to love any question that ends in &#8220;No Comment.&#8221;  The Mission Impossible music always seems to kick in at those moments.<br />
I hope all of you enjoyed this as much I as did.  Thank you to <em>altas</em> for being so patient and generous with his time.<br />
Of course, thank you to Lara who always pulls through for me and my family.</p>
<p>Go forth and do good things,<br />Don C. Weber</p>
<span class="ttag"><img src="http://www.cutawaysecurity.com/blog/wp-content/plugins/technobubble.gif" alt="Technorati Tags" /> <a href="http://www.technorati.com/tag/atlas" rel="tag">atlas</a>, <a href="http://www.technorati.com/tag/exploits" rel="tag">exploits</a>, <a href="http://www.technorati.com/tag/vulnerabilities" rel="tag">vulnerabilities</a>, <a href="http://www.technorati.com/tag/defcon" rel="tag">defcon</a>, <a href="http://www.technorati.com/tag/ctf" rel="tag">ctf</a>, <a href="http://www.technorati.com/tag/atlasutils" rel="tag">atlasutils</a>, <a href="http://www.technorati.com/tag/vulncatcher" rel="tag">vulncatcher</a>, <a href="http://www.technorati.com/tag/InGuardians" rel="tag">InGuardians</a>, <a href="http://www.technorati.com/tag/skoudis" rel="tag">skoudis</a>, <a href="http://www.technorati.com/tag/Security+Ripcord" rel="tag">Security Ripcord</a>, <a href="http://www.technorati.com/tag/atlas+wandering" rel="tag">atlas wandering</a>, <a href="http://www.technorati.com/tag/l@astplace" rel="tag">l@astplace</a></span>]]></content:encoded>
			<wfw:commentRss>http://www.cutawaysecurity.com/blog/archives/229/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Immunity&#8217;s SILICA, Debugger, and PCI Based Rootkit at DefCon 15</title>
		<link>http://www.cutawaysecurity.com/blog/archives/173</link>
		<comments>http://www.cutawaysecurity.com/blog/archives/173#comments</comments>
		<pubDate>Sun, 12 Aug 2007 08:09:56 +0000</pubDate>
		<dc:creator>cutaway</dc:creator>
				<category><![CDATA[Exploits]]></category>
		<category><![CDATA[Security Vendors]]></category>
		<category><![CDATA[Tools]]></category>

		<guid isPermaLink="false">http://www.cutawaysecurity.com/blog/archives/173</guid>
		<description><![CDATA[On the last day of DefCon 15 I had time to stop by the Immunity booth in the vendor area.  Although he was very busy Dave Aitel did take some time out to speak with me.  After a little small talk he pointed out a few of the things that they were promoting [...]]]></description>
			<content:encoded><![CDATA[<p>On the last day of <a href="http://defcon.org/">DefCon 15</a> I had time to stop by the <a href="http://www.immunityinc.com">Immunity</a> booth in the vendor area.  Although he was very busy <a href="http://archives.neohapsis.com/archives/dailydave/">Dave Aitel</a> did take some time out to speak with me.  After a little small talk he pointed out a few of the things that they were promoting to the DefCon attendees.  </p>
<p><strong>SILICA</strong><br />
First was the <a href="http://www.nokiausa.com/link?cid=EDITORIAL_217334">Nokia N800</a> running <a href="http://www.immunityinc.com/products-silica.shtml">SILICA</a>.  This penetration testing device is going for a cool $3600 and Immunity is <a href="http://www.immunitysec.com/products-silica.shtml">selling it directly on their website</a>.  According to Immunity:</p>
<blockquote><p>
Immunity SILICA is a hand-held penetration testing product that leverages Immunity CANVAS to provide a unique testing tool for networks. Currently it supports 802.11 (Wi-Fi) and Bluetooth, and Ethernet via USB is planned for the near future.</p>
<p>Its slim, PDA-like profile allows the penetration tester to perform testing while behaving innocuously.
</p></blockquote>
<p><img src="http://www.cutawaysecurity.com/images/nokia_800_silica.jpg" alt="SILICA on Nokia N800" /></p>
<p>Very interesting.  I would love to get my hands on one but cannot afford the sticker price.  Of course, it would be even more interesting to see if there is enough memory to also <a href="http://erratasec.blogspot.com/2007/02/needs-more-cowbell.html">include Ruby and Metasploit as David Maynor has done</a>.  How could it hurt to have both of these tools at your PDA fingertips?</p>
<p><strong>Immunity Debugger</strong><br />
After looking these over Dave pointed me to Immunity&#8217;s latest release, the <a href="http://www.immunitysec.com/products-immdbg.shtml">Immunity Debugger</a>.  According to Immunity:</p>
<blockquote><p>
Immunity Debugger is a powerful new way to write exploits, analyze malware, and reverse engineer binary files. It builds on a solid user interface with function graphing, the industry&#8217;s first heap analysis tool built specifically for heap creation, and a large and well supported Python API for easy extensibility.</p>
<ul>
<li>A debugger with functionality designed specifically for the security industry</li>
<li>Cuts exploit development time by 50%</li>
<li>Simple, understandable interfaces</li>
<li>Robust and powerful scripting language for automating intelligent debugging</li>
<li>Lightweight and fast debugging to prevent corruption during complex analysis</li>
<li>Connectivity to fuzzers and exploit development tools</li>
</ul>
</blockquote>
<p>Although I have very limited experience with debuggers Immunity seems to have put together a package that is very user friendly.  Hopping between analyzing source code and GUI based flow charts seemed very helpful and I could easily understand how a vulnerability in one section of code affected and was accessible from throughout the whole program.  One interesting aspect of the <a href="http://www.immunitysec.com/products-immdbg.shtml">Immunity Debugger</a> has nothing to do with actually analyzing code.  Rather, it has to do with companies advertising for programmers and researchers right through the tool.  As Immunity Debugger is free for download one way that Immunity has decided to support the product is to allow employers to insert advertisements for job openings.  Now companies can have a direct link to the individuals they would like to locate, specifically, persons who are familiar with debugging programs.  A unique and interesting approach.  Although some companies would probably like to turn this feature off, this is just the cost of a free tool.  I am willing to bet that Immunity would be willing to do it for a small fee, or perhaps there is a module that can be excluded when compiling the tool.  That would also depend, however, on Immunity releasing the source code for this debugger and I am not sure if that is the case.</p>
<p>UPDATE:  I just discovered something that was worth an update.  I <a href="http://www.immunityinc.com/products-immdbg.shtml">downloaded the Immunity Debugger</a>.  First it required a simple registration and then I received the Windows Installation file: ImmunityDebugger_setup.exe.  Yes, Windows Installation Executable file.  I would think that if this is written in <a href="http://www.python.org/">Python</a> that I would be able to run it in Linux at least.  Big deal? No.  But I was surprised.</p>
<p><strong>Immplant</strong><br />
After reviewing the Immunity Debugger, Dave handed me a little piece of paper.  It contained information about a future Immunity product that they are trying to drum up interest in.  The product will be called Immplant.  Here is what the paper said about the product.</p>
<blockquote><p>
A penetration tester often finds themselves in the position where they have access to a physical host for a short time, but they do not have a user name or password on that host.  Immplant is revolutionary technology from Immunity, makers of the market leading CANVAS penetration testing software that allows penetration testers to leverage temporary physical access into permanent remote control.</p>
<p>Immplant is deployed as a PCI card, which can be quickly and easily installed on typical desktop machines.  This card then wakes up when the machine is booted, and injects code into the operating system which causes it to call out to your listening post securely.  Because Immplant is hardware based, software protections such as anti-virus cannot prevent it from operating and it leaves no traces on the hard drive to be analyzed.</p>
<p>Immplant, not being resident on the hard disk, ignores full-disk encryption, patches, and many kinds of OS upgrades and reconfigurations.
</p></blockquote>
<p>Basically, this is a hardware device that will pump a shell back to a remote computer.  I guess this is the same premise as subverting video cards or other hardware devices.  But I am a little concerned about the statement &#8220;it leaves no traces on the hard drive to be analyzed.&#8221;  Certainly, this type of device will not require software written to the hard drive but there is still the issue of memory.  Unless the device can insure that all of its activity is restricted to RAM then I guess it would be very difficult to detect during analysis.  But if any of the information gets <a href="http://www.theeldergeek.com/paging_file.htm">written to the page file</a> or <a href="http://linux.about.com/od/linux101/l/blnewbie4_2_13.htm">swap space</a> then I imagine that there would be something to analyze.  Even if it is not immediately obvious there should be a way to identify and correlate information with this device.  After all, that is why we have forensic analysis.  When I queried Dave about this he did not have the answer and the person who did was attending one of the sessions at that time.  The next thing that interested me was the communications protocol.  I assume that they will be tunneling the communications over HTTP or HTTPS.  Dave also did not have a response to this question but this time I felt it was more due to the fact that they were still working out different methods for communications or, very possibly, he didn&#8217;t want to give out that information.  </p>
<p>Personally, I don&#8217;t think organizations who are doing proper security will have a problem with these devices.  Unfortunately, the average home user will not have the protections in place to prevent the installation and activity of this type of device making this a interesting tool for a private investigators, parents, or even the system administrators that want to maintain a guaranteed connection with a computer.  This could have a positive impact on locating and controlling stolen computers.  But, could you imagine if a small mom-n-pop computer service business started implanting these as a &#8220;service&#8221; to their customers?  And, hopefully, Immunity has the common sense not to let the <a href="http://tech.blorge.com/Structure:%20/2007/07/12/geek-squad-steals-porn-from-dead-porn-star/">GeekSquad</a> get a hold of any of these.</p>
<p>Go forth and do good things,<br />
Cutaway</p>
<span class="ttag"><img src="http://www.cutawaysecurity.com/blog/wp-content/plugins/technobubble.gif" alt="Technorati Tags" /> <a href="http://www.technorati.com/tag/Immunity" rel="tag">Immunity</a>, <a href="http://www.technorati.com/tag/SILICA" rel="tag">SILICA</a>, <a href="http://www.technorati.com/tag/Security+Ripcord" rel="tag">Security Ripcord</a>, <a href="http://www.technorati.com/tag/Immunity+Debugger" rel="tag">Immunity Debugger</a>, <a href="http://www.technorati.com/tag/Immunity+Immplant" rel="tag">Immunity Immplant</a>, <a href="http://www.technorati.com/tag/Nokia+N800+DefCon15+Metasploit" rel="tag">Nokia N800 DefCon15 Metasploit</a>, <a href="http://www.technorati.com/tag/Dave+Aitel" rel="tag">Dave Aitel</a>, <a href="http://www.technorati.com/tag/David+Maynor" rel="tag">David Maynor</a></span>]]></content:encoded>
			<wfw:commentRss>http://www.cutawaysecurity.com/blog/archives/173/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>VMGameOver?</title>
		<link>http://www.cutawaysecurity.com/blog/archives/170</link>
		<comments>http://www.cutawaysecurity.com/blog/archives/170#comments</comments>
		<pubDate>Sat, 28 Jul 2007 05:21:52 +0000</pubDate>
		<dc:creator>cutaway</dc:creator>
				<category><![CDATA[Exploits]]></category>
		<category><![CDATA[InGuardians]]></category>
		<category><![CDATA[Virtual Machines]]></category>
		<category><![CDATA[Vulnerability]]></category>

		<guid isPermaLink="false">http://www.cutawaysecurity.com/blog/archives/170</guid>
		<description><![CDATA[UPDATE:  Don&#8217;t miss the detailed comment by Ed Skoudis.
I hope that you have been designing your implementation of virtual environments properly.  It has been no secret that the crew of InGuardians has been feverishly working on a method to escape from a virtual guest and gain control of the host operating system.  [...]]]></description>
			<content:encoded><![CDATA[<p>UPDATE:  Don&#8217;t miss the <a href="http://www.cutawaysecurity.com/blog/archives/170">detailed comment</a> by <a href="http://www.counterhack.net/Counter%20Hack/About%20Me.html">Ed Skoudis</a>.</p>
<p>I hope that you have been designing your implementation of virtual environments properly.  It has been no secret that the crew of <a href="http://www.intelguardians.com/">InGuardians</a> has been feverishly working on a method to escape from a virtual guest and gain control of the host operating system.  Well, according to a <a href="http://www.foolmoon.net/cgi-bin/blog/index.cgi?mode=viewone&#038;blog=1185593255">recent post </a>by my good friend, Monty McDougal, who attended a presentation on the subject at <a href="http://www.sans.org/sansfire07/">SANFire 2007</a> they might have accomplished it.  Although Monty describes some of the interesting applications they have developed such as VMchat, VMcat, VMdrag-n-hack, VMdrag-n-sploit, and VMftp, it is the demonstration of an &#8220;unnamed&#8221;   application that has Monty saying,</p>
<blockquote><p>
Additionally, another “un-named” application was run on the client OS. This ran for quite a while and eventually produced a crash of the client OS. While not immediately visible this had the effect of killing the client OS, but in doing so they were able to execute arbitrary code on the host OS thus providing a full escape of the virtualization that did not rely on the path traversal flaw above. The details of how this worked was not disclosed and I would not speculate as to how it was done, but I would call this VMowned and say it is GAME OVER.
</p></blockquote>
<p>Could it be true?  I guess we will find out soon enough.  Either way, if you are currently deploying virtual environments or just considering it, I would be sure to evaluate your method of deployments and updating procedures.  Also, as Monty suggested, watch the <a href="http://www.cisecurity.org/">Center for Internet Security</a> as they will soon add a guideline for virtual environments to their list.  I have helped with this document a little bit and a version for ESX should be released in the next couple of months.  If you would like to help with the development of the ESX document or the other virtual technologies then <a href="http://www.cisecurity.org/development.html#cigi">check out how you can get involved at the CIS website</a>.</p>
<p>I also highly recommend that you add <a href="http://www.foolmoon.net/cgi-bin/blog/index.cgi?category=All%20Categories">Monty&#8217;s blog</a> to your <a href="http://www.foolmoon.net/blogdata/index.rss">RSS feeds</a>.  Monty is very smart and I often look to him for guidance and leadership.  We can all expect some very interesting insight and, if I know Monty, some very good technical posts.</p>
<p>BTW, Monty, you do need to turn on comments.</p>
<p>Go forth and do good things,<br />
Cutaway</p>
<span class="ttag"><img src="http://www.cutawaysecurity.com/blog/wp-content/plugins/technobubble.gif" alt="Technorati Tags" /> <a href="http://www.technorati.com/tag/InGuardians" rel="tag">InGuardians</a>, <a href="http://www.technorati.com/tag/ESX" rel="tag">ESX</a>, <a href="http://www.technorati.com/tag/CIS" rel="tag">CIS</a>, <a href="http://www.technorati.com/tag/VMware" rel="tag">VMware</a>, <a href="http://www.technorati.com/tag/SANSFire2007" rel="tag">SANSFire2007</a>, <a href="http://www.technorati.com/tag/VMchat" rel="tag">VMchat</a>, <a href="http://www.technorati.com/tag/VMcat" rel="tag">VMcat</a>, <a href="http://www.technorati.com/tag/VMftp" rel="tag">VMftp</a>, <a href="http://www.technorati.com/tag/VMdrag-n-hack" rel="tag">VMdrag-n-hack</a>, <a href="http://www.technorati.com/tag/VMdrag-n-sploit" rel="tag">VMdrag-n-sploit</a>, <a href="http://www.technorati.com/tag/Security+Ripcord" rel="tag">Security Ripcord</a>, <a href="http://www.technorati.com/tag/Monty+McDougal" rel="tag">Monty McDougal</a>, <a href="http://www.technorati.com/tag/VM+Escape" rel="tag">VM Escape</a></span>]]></content:encoded>
			<wfw:commentRss>http://www.cutawaysecurity.com/blog/archives/170/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>
