<?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: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>Didier Stevens &#187; Quickpost</title>
	<atom:link href="http://blog.didierstevens.com/category/quickpost/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.didierstevens.com</link>
	<description>(blog 'DidierStevens)</description>
	<lastBuildDate>Thu, 26 Aug 2010 12:11:11 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='blog.didierstevens.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://0.gravatar.com/blavatar/60bb50c97cd147341ffb43b0e2ef0d15?s=96&#038;d=http://s2.wp.com/i/buttonw-com.png</url>
		<title>Didier Stevens &#187; Quickpost</title>
		<link>http://blog.didierstevens.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://blog.didierstevens.com/osd.xml" title="Didier Stevens" />
	<atom:link rel='hub' href='http://blog.didierstevens.com/?pushpress=hub'/>
		<item>
		<title>Quickpost: Ariad &amp; DLL Preloading</title>
		<link>http://blog.didierstevens.com/2010/08/26/quickpost-ariad-dll-preloading/</link>
		<comments>http://blog.didierstevens.com/2010/08/26/quickpost-ariad-dll-preloading/#comments</comments>
		<pubDate>Thu, 26 Aug 2010 12:11:11 +0000</pubDate>
		<dc:creator>Didier Stevens</dc:creator>
				<category><![CDATA[My Software]]></category>
		<category><![CDATA[Quickpost]]></category>
		<category><![CDATA[Vulnerabilities]]></category>

		<guid isPermaLink="false">http://blog.didierstevens.com/?p=2267</guid>
		<description><![CDATA[I&#8217;m writing this quickpost just in case you hadn&#8217;t figured this out for yourself: the techniques I described to protect machines from the .LNK vulnerability also help you mitigate the DLL preloading issue. The .LNK vulnerability mitigation examples I gave with Ariad (no file execute) and SRP prevent loading of DLLs from untrusted locations (USB [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.didierstevens.com&amp;blog=264765&amp;post=2267&amp;subd=didierstevens&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m writing this quickpost just in case you hadn&#8217;t figured this out for yourself: the <a href="http://blog.didierstevens.com/2010/07/18/mitigating-lnk-exploitation-with-ariad/">techniques</a> <a href="http://blog.didierstevens.com/2010/07/20/mitigating-lnk-exploitation-with-srp/">I described</a> to protect machines from the .LNK vulnerability also help you mitigate the <a href="http://blogs.technet.com/b/srd/archive/2010/08/23/more-information-about-dll-preloading-remote-attack-vector.aspx">DLL preloading issue</a>.</p>
<p>The .LNK vulnerability mitigation examples I gave with <a href="http://blog.didierstevens.com/2010/07/18/mitigating-lnk-exploitation-with-ariad/">Ariad (no file execute)</a> and <a href="http://blog.didierstevens.com/2010/07/20/mitigating-lnk-exploitation-with-srp/">SRP</a> prevent loading of DLLs from untrusted locations (USB sticks, network drives, &#8230;). These will also prevent DLLs from loading from untrusted sources in the case of DLL Preloading exploits.</p>
<hr /><a href="http://blog.didierstevens.com/2007/11/01/announcing-quickposts/">Quickpost info</a></p>
<hr />
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/didierstevens.wordpress.com/2267/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/didierstevens.wordpress.com/2267/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/didierstevens.wordpress.com/2267/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/didierstevens.wordpress.com/2267/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/didierstevens.wordpress.com/2267/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/didierstevens.wordpress.com/2267/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/didierstevens.wordpress.com/2267/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/didierstevens.wordpress.com/2267/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/didierstevens.wordpress.com/2267/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/didierstevens.wordpress.com/2267/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/didierstevens.wordpress.com/2267/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/didierstevens.wordpress.com/2267/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/didierstevens.wordpress.com/2267/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/didierstevens.wordpress.com/2267/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.didierstevens.com&amp;blog=264765&amp;post=2267&amp;subd=didierstevens&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.didierstevens.com/2010/08/26/quickpost-ariad-dll-preloading/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">didierstevens</media:title>
		</media:content>
	</item>
		<item>
		<title>Quickpost: .LNK Template Update</title>
		<link>http://blog.didierstevens.com/2010/08/18/quickpost-2/</link>
		<comments>http://blog.didierstevens.com/2010/08/18/quickpost-2/#comments</comments>
		<pubDate>Wed, 18 Aug 2010 10:43:38 +0000</pubDate>
		<dc:creator>Didier Stevens</dc:creator>
				<category><![CDATA[My Software]]></category>
		<category><![CDATA[Quickpost]]></category>
		<category><![CDATA[Vulnerabilities]]></category>

		<guid isPermaLink="false">http://blog.didierstevens.com/?p=2261</guid>
		<description><![CDATA[I updated my .LNK template with info I got from comments from WndSks and Forrest Gump. This new version identifies well-known Shell GUIDs: Quickpost info<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.didierstevens.com&amp;blog=264765&amp;post=2261&amp;subd=didierstevens&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I updated my <a href="http://didierstevens.com/files/software/LNKTemplate.zip">.LNK template</a> with info I got from comments <a href="http://blog.didierstevens.com/2010/08/08/quickpost-2-lnk-tools/">from WndSks and Forrest Gump</a>. This new version identifies well-known Shell GUIDs:</p>
<p><img class="alignnone size-full wp-image-2262" title="20100818-123834" src="http://didierstevens.files.wordpress.com/2010/08/20100818-123834.png?w=632&#038;h=483" alt="" width="632" height="483" /></p>
<hr /><a href="http://blog.didierstevens.com/2007/11/01/announcing-quickposts/">Quickpost info</a></p>
<hr />
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/didierstevens.wordpress.com/2261/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/didierstevens.wordpress.com/2261/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/didierstevens.wordpress.com/2261/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/didierstevens.wordpress.com/2261/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/didierstevens.wordpress.com/2261/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/didierstevens.wordpress.com/2261/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/didierstevens.wordpress.com/2261/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/didierstevens.wordpress.com/2261/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/didierstevens.wordpress.com/2261/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/didierstevens.wordpress.com/2261/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/didierstevens.wordpress.com/2261/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/didierstevens.wordpress.com/2261/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/didierstevens.wordpress.com/2261/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/didierstevens.wordpress.com/2261/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.didierstevens.com&amp;blog=264765&amp;post=2261&amp;subd=didierstevens&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.didierstevens.com/2010/08/18/quickpost-2/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">didierstevens</media:title>
		</media:content>

		<media:content url="http://didierstevens.files.wordpress.com/2010/08/20100818-123834.png" medium="image">
			<media:title type="html">20100818-123834</media:title>
		</media:content>
	</item>
		<item>
		<title>Quickpost: 2 .LNK Tools</title>
		<link>http://blog.didierstevens.com/2010/08/08/quickpost-2-lnk-tools/</link>
		<comments>http://blog.didierstevens.com/2010/08/08/quickpost-2-lnk-tools/#comments</comments>
		<pubDate>Sun, 08 Aug 2010 10:52:14 +0000</pubDate>
		<dc:creator>Didier Stevens</dc:creator>
				<category><![CDATA[My Software]]></category>
		<category><![CDATA[Quickpost]]></category>
		<category><![CDATA[Vulnerabilities]]></category>

		<guid isPermaLink="false">http://blog.didierstevens.com/?p=2256</guid>
		<description><![CDATA[Microsoft has issued an emergency patch (MS10-046) for the .LNK file vulnerability (CVE-2010-2568). I&#8217;m releasing two small tools I developed to help me investigate this vulnerability. First one is a 010 Editor template file for the .LNK binary file format. Second one is a ClamAV signature file to find all .LNK shortcuts that load a [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.didierstevens.com&amp;blog=264765&amp;post=2256&amp;subd=didierstevens&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Microsoft has issued an emergency patch (MS10-046) for the .LNK file vulnerability (CVE-2010-2568).</p>
<p>I&#8217;m releasing two small tools I developed to help me investigate this vulnerability.</p>
<p>First one is a <a href="http://didierstevens.com/files/software/LNKTemplate.zip">010 Editor template file for the .LNK binary file format</a>.</p>
<p><img class="alignnone size-full wp-image-2257" title="20100807-155313" src="http://didierstevens.files.wordpress.com/2010/08/20100807-155313.png?w=616&#038;h=497" alt="" width="616" height="497" /><br />
Second one is a <a href="http://didierstevens.com/files/data/LNK-CPL-CVE-2010-2568.zip">ClamAV signature file to find all .LNK shortcuts</a> that load a DLL (malicious or benign).</p>
<p>To scan your drive C, issue command</p>
<pre>clamscan.exe -d LNK-CPL-CVE-2010-2568.ndb -l scan.log -r c:\</pre>
<hr /><a href="http://blog.didierstevens.com/2007/11/01/announcing-quickposts/">Quickpost info</a></p>
<hr />
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/didierstevens.wordpress.com/2256/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/didierstevens.wordpress.com/2256/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/didierstevens.wordpress.com/2256/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/didierstevens.wordpress.com/2256/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/didierstevens.wordpress.com/2256/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/didierstevens.wordpress.com/2256/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/didierstevens.wordpress.com/2256/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/didierstevens.wordpress.com/2256/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/didierstevens.wordpress.com/2256/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/didierstevens.wordpress.com/2256/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/didierstevens.wordpress.com/2256/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/didierstevens.wordpress.com/2256/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/didierstevens.wordpress.com/2256/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/didierstevens.wordpress.com/2256/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.didierstevens.com&amp;blog=264765&amp;post=2256&amp;subd=didierstevens&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.didierstevens.com/2010/08/08/quickpost-2-lnk-tools/feed/</wfw:commentRss>
		<slash:comments>18</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">didierstevens</media:title>
		</media:content>

		<media:content url="http://didierstevens.files.wordpress.com/2010/08/20100807-155313.png" medium="image">
			<media:title type="html">20100807-155313</media:title>
		</media:content>
	</item>
		<item>
		<title>Quickpost: Preventing the /Launch Action &#8220;cmd.exe&#8221; Bypass</title>
		<link>http://blog.didierstevens.com/2010/07/04/quickpost-preventing-the-launch-action-cmd-exe-bypass/</link>
		<comments>http://blog.didierstevens.com/2010/07/04/quickpost-preventing-the-launch-action-cmd-exe-bypass/#comments</comments>
		<pubDate>Sun, 04 Jul 2010 21:20:01 +0000</pubDate>
		<dc:creator>Didier Stevens</dc:creator>
				<category><![CDATA[PDF]]></category>
		<category><![CDATA[Quickpost]]></category>

		<guid isPermaLink="false">http://blog.didierstevens.com/?p=2183</guid>
		<description><![CDATA[Adobe has released a new Adobe Reader version that contains functionality to block my /Launch action PoC, but Bkis found a bypass: just put double quotes around cmd.exe, like this:  &#8220;cmd.exe&#8221;. I did some research and discovered that Adobe implemented a blacklist of extensions for the launch action, but that the blacklisting functionality identifies the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.didierstevens.com&amp;blog=264765&amp;post=2183&amp;subd=didierstevens&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Adobe has released a new Adobe Reader version that contains functionality to <a href="http://blog.didierstevens.com/2010/06/29/quickpost-no-escape-from-pdf/">block my /Launch action PoC</a>, but <a href="http://blog.bkis.com/en/adobe-fix-still-allows-escape-from-pdf/">Bkis found a bypass</a>: just put double quotes around cmd.exe, like this:  &#8220;cmd.exe&#8221;.</p>
<p><img class="alignnone size-full wp-image-2184" title="20100704-224412" src="http://didierstevens.files.wordpress.com/2010/07/20100704-224412.png?w=478&#038;h=269" alt="" width="478" height="269" /></p>
<p>I did some research and discovered that Adobe implemented a blacklist of extensions for the launch action, but that the blacklisting functionality identifies the file type of &#8220;cmd.exe&#8221; as .exe&#8221;, and not .exe</p>
<p><a href="http://blogs.adobe.com/asset/2010/07/update_on_functionality_change.html">Adobe is aware of the issue</a>, and will evaluate the need to fix the blacklisting functionality.</p>
<p>But meanwhile, you can apply my fix to block launching &#8220;cmd.exe&#8221;.</p>
<p>You can configure the blacklist of extensions via the registry. Go to HKLM\SOFTWARE\Policies\Adobe\<em>product</em>\<em>version</em>\FeatureLockDown\cDefaultLaunchAttachmentPerms and open registry value tBuiltInPermList.</p>
<p><img class="alignnone size-full wp-image-2185" title="20100704-224329" src="http://didierstevens.files.wordpress.com/2010/07/20100704-224329.png?w=544&#038;h=285" alt="" width="544" height="285" /></p>
<p>This is a list of |-separated extensions, together with the action Adobe Reader should take (3 means block the extension). Add .exe&#8221;:3 to block &#8220;cmd.exe&#8221;:</p>
<p><img class="alignnone size-full wp-image-2186" title="20100704-224524" src="http://didierstevens.files.wordpress.com/2010/07/20100704-224524.png?w=400&#038;h=185" alt="" width="400" height="185" /></p>
<p>With this addition, Bkis&#8217; bypass will not work anymore:</p>
<p><img class="alignnone size-full wp-image-2187" title="29-06-2010 20-27-37" src="http://didierstevens.files.wordpress.com/2010/07/29-06-2010-20-27-37.png?w=478&#038;h=223" alt="" width="478" height="223" /></p>
<p>Some further testing shows that adding 2 double quotes is also a way to bypass the blacklist: &#8220;&#8221;cmd.exe&#8221;":</p>
<p><img class="alignnone size-full wp-image-2188" title="20100704-224912" src="http://didierstevens.files.wordpress.com/2010/07/20100704-224912.png?w=478&#038;h=269" alt="" width="478" height="269" /></p>
<p>So we need to block this too:</p>
<p><img class="alignnone size-full wp-image-2189" title="20100704-225019" src="http://didierstevens.files.wordpress.com/2010/07/20100704-225019.png?w=400&#038;h=185" alt="" width="400" height="185" /></p>
<p><img class="alignnone size-full wp-image-2190" title="20100704-225040" src="http://didierstevens.files.wordpress.com/2010/07/20100704-225040.png?w=478&#038;h=223" alt="" width="478" height="223" /></p>
<p>I tested 3 and 4 quotes too, but this is not accepted by Adobe Reader. But should there still be other valid characters to append to the extension, you can block them in the same way as I showed here, until Adobe fixes the blacklist functionality.</p>
<hr /><a href="http://blog.didierstevens.com/2007/11/01/announcing-quickposts/">Quickpost info</a></p>
<hr />
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/didierstevens.wordpress.com/2183/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/didierstevens.wordpress.com/2183/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/didierstevens.wordpress.com/2183/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/didierstevens.wordpress.com/2183/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/didierstevens.wordpress.com/2183/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/didierstevens.wordpress.com/2183/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/didierstevens.wordpress.com/2183/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/didierstevens.wordpress.com/2183/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/didierstevens.wordpress.com/2183/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/didierstevens.wordpress.com/2183/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/didierstevens.wordpress.com/2183/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/didierstevens.wordpress.com/2183/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/didierstevens.wordpress.com/2183/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/didierstevens.wordpress.com/2183/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.didierstevens.com&amp;blog=264765&amp;post=2183&amp;subd=didierstevens&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.didierstevens.com/2010/07/04/quickpost-preventing-the-launch-action-cmd-exe-bypass/feed/</wfw:commentRss>
		<slash:comments>18</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">didierstevens</media:title>
		</media:content>

		<media:content url="http://didierstevens.files.wordpress.com/2010/07/20100704-224412.png" medium="image">
			<media:title type="html">20100704-224412</media:title>
		</media:content>

		<media:content url="http://didierstevens.files.wordpress.com/2010/07/20100704-224329.png" medium="image">
			<media:title type="html">20100704-224329</media:title>
		</media:content>

		<media:content url="http://didierstevens.files.wordpress.com/2010/07/20100704-224524.png" medium="image">
			<media:title type="html">20100704-224524</media:title>
		</media:content>

		<media:content url="http://didierstevens.files.wordpress.com/2010/07/29-06-2010-20-27-37.png" medium="image">
			<media:title type="html">29-06-2010 20-27-37</media:title>
		</media:content>

		<media:content url="http://didierstevens.files.wordpress.com/2010/07/20100704-224912.png" medium="image">
			<media:title type="html">20100704-224912</media:title>
		</media:content>

		<media:content url="http://didierstevens.files.wordpress.com/2010/07/20100704-225019.png" medium="image">
			<media:title type="html">20100704-225019</media:title>
		</media:content>

		<media:content url="http://didierstevens.files.wordpress.com/2010/07/20100704-225040.png" medium="image">
			<media:title type="html">20100704-225040</media:title>
		</media:content>
	</item>
		<item>
		<title>Quickpost: No Escape From PDF</title>
		<link>http://blog.didierstevens.com/2010/06/29/quickpost-no-escape-from-pdf/</link>
		<comments>http://blog.didierstevens.com/2010/06/29/quickpost-no-escape-from-pdf/#comments</comments>
		<pubDate>Tue, 29 Jun 2010 18:41:31 +0000</pubDate>
		<dc:creator>Didier Stevens</dc:creator>
				<category><![CDATA[PDF]]></category>
		<category><![CDATA[Quickpost]]></category>
		<category><![CDATA[Vulnerabilities]]></category>

		<guid isPermaLink="false">http://blog.didierstevens.com/?p=2178</guid>
		<description><![CDATA[Adobe has released a new Adobe Reader version with a fix for my /Launch action PoC PDF. Before version 9.3.3: Since version 9.3.3: Not only is the dialog box fixed, but the /Launch action is also disabled by default. Quickpost info<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.didierstevens.com&amp;blog=264765&amp;post=2178&amp;subd=didierstevens&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Adobe has released a new Adobe Reader version with a fix for <a href="http://blog.didierstevens.com/2010/03/29/escape-from-pdf/">my /Launch action PoC PDF</a>.</p>
<p>Before version 9.3.3:</p>
<p><img class="alignnone size-full wp-image-2099" title="20100329-211313" src="http://didierstevens.files.wordpress.com/2010/03/20100329-211313.png?w=478&#038;h=262" alt="" width="478" height="262" /></p>
<p>Since version 9.3.3:</p>
<p><img class="alignnone size-full wp-image-2179" title="29-06-2010 20-27-37" src="http://didierstevens.files.wordpress.com/2010/06/29-06-2010-20-27-37.png?w=478&#038;h=223" alt="" width="478" height="223" /></p>
<p>Not only is the dialog box fixed, but the /Launch action is also disabled by default.</p>
<hr /><a href="http://blog.didierstevens.com/2007/11/01/announcing-quickposts/">Quickpost info</a></p>
<hr />
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/didierstevens.wordpress.com/2178/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/didierstevens.wordpress.com/2178/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/didierstevens.wordpress.com/2178/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/didierstevens.wordpress.com/2178/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/didierstevens.wordpress.com/2178/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/didierstevens.wordpress.com/2178/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/didierstevens.wordpress.com/2178/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/didierstevens.wordpress.com/2178/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/didierstevens.wordpress.com/2178/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/didierstevens.wordpress.com/2178/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/didierstevens.wordpress.com/2178/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/didierstevens.wordpress.com/2178/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/didierstevens.wordpress.com/2178/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/didierstevens.wordpress.com/2178/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.didierstevens.com&amp;blog=264765&amp;post=2178&amp;subd=didierstevens&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.didierstevens.com/2010/06/29/quickpost-no-escape-from-pdf/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">didierstevens</media:title>
		</media:content>

		<media:content url="http://didierstevens.files.wordpress.com/2010/03/20100329-211313.png" medium="image">
			<media:title type="html">20100329-211313</media:title>
		</media:content>

		<media:content url="http://didierstevens.files.wordpress.com/2010/06/29-06-2010-20-27-37.png" medium="image">
			<media:title type="html">29-06-2010 20-27-37</media:title>
		</media:content>
	</item>
		<item>
		<title>Quickpost: More Malformed PDFs</title>
		<link>http://blog.didierstevens.com/2010/05/18/quickpost-more-malformed-pdfs/</link>
		<comments>http://blog.didierstevens.com/2010/05/18/quickpost-more-malformed-pdfs/#comments</comments>
		<pubDate>Tue, 18 May 2010 12:05:23 +0000</pubDate>
		<dc:creator>Didier Stevens</dc:creator>
				<category><![CDATA[Malware]]></category>
		<category><![CDATA[PDF]]></category>
		<category><![CDATA[Quickpost]]></category>

		<guid isPermaLink="false">http://blog.didierstevens.com/?p=2157</guid>
		<description><![CDATA[Here&#8217;s a heads up for some malicious PDF samples that are deliberately malformed to avoid detection. The most important case is the missing endobj keyword: Adobe Reader will happily parse a PDF where the object are not terminated with endobj, but my pdf-parser won&#8217;t. I&#8217;ll have to update the parser to deal with this case. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.didierstevens.com&amp;blog=264765&amp;post=2157&amp;subd=didierstevens&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Here&#8217;s a heads up for some malicious PDF samples that are deliberately malformed to avoid detection.</p>
<p>The most important case is the missing endobj keyword:</p>
<p><img class="alignnone size-full wp-image-2158" title="20100517-232551" src="http://didierstevens.files.wordpress.com/2010/05/20100517-232551.png?w=230&#038;h=176" alt="" width="230" height="176" /></p>
<p>Adobe Reader will happily parse a PDF where the object are not terminated with endobj, but my pdf-parser won&#8217;t. I&#8217;ll have to update the parser to deal with this case.</p>
<p>The cross-reference table can also be omitted:</p>
<p><img class="alignnone size-full wp-image-2159" title="20100517-232740" src="http://didierstevens.files.wordpress.com/2010/05/20100517-232740.png?w=256&#038;h=420" alt="" width="256" height="420" /></p>
<p>This is not an issue for my parser.</p>
<p>And then I also received a sample with a stream object, where the case of the endstream object was wrong: Endstream. First we assumed Adobe Reader was not case-sensitive for the endstream keyword, but I found out it can actually parse a stream object with missing endstream keyword:</p>
<p><img class="alignnone size-full wp-image-2160" title="20100517-232817" src="http://didierstevens.files.wordpress.com/2010/05/20100517-232817.png?w=267&#038;h=242" alt="" width="267" height="242" /></p>
<p>This is an issue for my parser.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/didierstevens.wordpress.com/2157/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/didierstevens.wordpress.com/2157/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/didierstevens.wordpress.com/2157/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/didierstevens.wordpress.com/2157/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/didierstevens.wordpress.com/2157/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/didierstevens.wordpress.com/2157/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/didierstevens.wordpress.com/2157/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/didierstevens.wordpress.com/2157/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/didierstevens.wordpress.com/2157/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/didierstevens.wordpress.com/2157/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/didierstevens.wordpress.com/2157/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/didierstevens.wordpress.com/2157/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/didierstevens.wordpress.com/2157/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/didierstevens.wordpress.com/2157/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.didierstevens.com&amp;blog=264765&amp;post=2157&amp;subd=didierstevens&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.didierstevens.com/2010/05/18/quickpost-more-malformed-pdfs/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">didierstevens</media:title>
		</media:content>

		<media:content url="http://didierstevens.files.wordpress.com/2010/05/20100517-232551.png" medium="image">
			<media:title type="html">20100517-232551</media:title>
		</media:content>

		<media:content url="http://didierstevens.files.wordpress.com/2010/05/20100517-232740.png" medium="image">
			<media:title type="html">20100517-232740</media:title>
		</media:content>

		<media:content url="http://didierstevens.files.wordpress.com/2010/05/20100517-232817.png" medium="image">
			<media:title type="html">20100517-232817</media:title>
		</media:content>
	</item>
		<item>
		<title>Quickpost: NetworkMashup.xls</title>
		<link>http://blog.didierstevens.com/2010/03/01/quickpost-networkmashup-xls/</link>
		<comments>http://blog.didierstevens.com/2010/03/01/quickpost-networkmashup-xls/#comments</comments>
		<pubDate>Mon, 01 Mar 2010 06:11:11 +0000</pubDate>
		<dc:creator>Didier Stevens</dc:creator>
				<category><![CDATA[My Software]]></category>
		<category><![CDATA[Quickpost]]></category>

		<guid isPermaLink="false">http://blog.didierstevens.com/?p=2029</guid>
		<description><![CDATA[NetworkMashup.xls is a spreadsheet with VBA macros I scraped from the Internet to execute pings and name/address resolution from within Excel with WIN32 API calls. Not only is it handy when you need to do some network mapping in a restricted environment, but also if you&#8217;ve just a list of machines to monitor. The spreadsheet [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.didierstevens.com&amp;blog=264765&amp;post=2029&amp;subd=didierstevens&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>NetworkMashup.xls is a spreadsheet with VBA macros I scraped from the Internet to execute pings and name/address resolution from within Excel with WIN32 API calls.</p>
<p>Not only is it handy when you need to do some network mapping in a restricted environment, but also if you&#8217;ve just a list of machines to monitor.</p>
<p>The spreadsheet contains several sheets. One sheet to perform a single ping:</p>
<p><img class="alignnone size-full wp-image-2030" title="20100228-144238" src="http://didierstevens.files.wordpress.com/2010/02/20100228-144238.png?w=601&#038;h=338" alt="" width="601" height="338" /></p>
<p>One sheet to ping/resolve a list:</p>
<p><img class="alignnone size-full wp-image-2031" title="20100228-144254" src="http://didierstevens.files.wordpress.com/2010/02/20100228-144254.png?w=601&#038;h=338" alt="" width="601" height="338" /></p>
<p>One sheet to list the IP addresses of the current machine:</p>
<p><img class="alignnone size-full wp-image-2033" title="20100228-144315" src="http://didierstevens.files.wordpress.com/2010/02/20100228-144315.png?w=601&#038;h=338" alt="" width="601" height="338" /></p>
<p>And last, a sheet with settings:</p>
<p><img class="alignnone size-full wp-image-2032" title="20100228-144332" src="http://didierstevens.files.wordpress.com/2010/02/20100228-144332.png?w=601&#038;h=338" alt="" width="601" height="338" /></p>
<p>Download <a href="http://didierstevens.com/files/software/NetworkMashup_V0_0_2.zip">here</a>.</p>
<hr /><a href="http://blog.didierstevens.com/2007/11/01/announcing-quickposts/">Quickpost info</a></p>
<hr />
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/didierstevens.wordpress.com/2029/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/didierstevens.wordpress.com/2029/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/didierstevens.wordpress.com/2029/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/didierstevens.wordpress.com/2029/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/didierstevens.wordpress.com/2029/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/didierstevens.wordpress.com/2029/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/didierstevens.wordpress.com/2029/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/didierstevens.wordpress.com/2029/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/didierstevens.wordpress.com/2029/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/didierstevens.wordpress.com/2029/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/didierstevens.wordpress.com/2029/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/didierstevens.wordpress.com/2029/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/didierstevens.wordpress.com/2029/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/didierstevens.wordpress.com/2029/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.didierstevens.com&amp;blog=264765&amp;post=2029&amp;subd=didierstevens&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.didierstevens.com/2010/03/01/quickpost-networkmashup-xls/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">didierstevens</media:title>
		</media:content>

		<media:content url="http://didierstevens.files.wordpress.com/2010/02/20100228-144238.png" medium="image">
			<media:title type="html">20100228-144238</media:title>
		</media:content>

		<media:content url="http://didierstevens.files.wordpress.com/2010/02/20100228-144254.png" medium="image">
			<media:title type="html">20100228-144254</media:title>
		</media:content>

		<media:content url="http://didierstevens.files.wordpress.com/2010/02/20100228-144315.png" medium="image">
			<media:title type="html">20100228-144315</media:title>
		</media:content>

		<media:content url="http://didierstevens.files.wordpress.com/2010/02/20100228-144332.png" medium="image">
			<media:title type="html">20100228-144332</media:title>
		</media:content>
	</item>
		<item>
		<title>Quickpost: Quasi-Tautologies &amp; SQL-Injection</title>
		<link>http://blog.didierstevens.com/2010/02/02/quickpost-quasi-tautologies-sql-injection/</link>
		<comments>http://blog.didierstevens.com/2010/02/02/quickpost-quasi-tautologies-sql-injection/#comments</comments>
		<pubDate>Tue, 02 Feb 2010 09:54:27 +0000</pubDate>
		<dc:creator>Didier Stevens</dc:creator>
				<category><![CDATA[Hacking]]></category>
		<category><![CDATA[Quickpost]]></category>

		<guid isPermaLink="false">http://blog.didierstevens.com/?p=1966</guid>
		<description><![CDATA[Last OWASP/ISSA Belgian chapter meeting was the location of an interesting discussion. For a full report of the meeting, read Xavier&#8217;s excellent blogpost. Many SQL-injection techniques rely on tautologies: adding an expression that is always true to the where-clause of a select statement. Like OR 1=1. 1=1 is a tautology, it&#8217;s an expression that always [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.didierstevens.com&amp;blog=264765&amp;post=1966&amp;subd=didierstevens&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Last <a href="http://www.owasp.org/index.php/Belgium#tab=Chapter_Meetings">OWASP/ISSA Belgian chapter meeting</a> was the location of an interesting discussion. For a full report of the meeting, read <a href="http://blog.rootshell.be/2010/02/01/owasp-issa-belgium-chapter-meeting/">Xavier&#8217;s excellent blogpost</a>.</p>
<p>Many <a href="http://en.wikipedia.org/wiki/SQL_injection">SQL-injection techniques</a> rely on <a href="http://en.wikipedia.org/wiki/Tautology_%28logic%29">tautologies</a>: adding an expression that is always true to the where-clause of a select statement. Like <strong>OR 1=1</strong>. <strong>1=1</strong> is a tautology, it&#8217;s an expression that always yields true.</p>
<p>So if <strong>SELECT * FROM USERS WHERE USERNAME = &#8216;ADMIN&#8217; and PASSWORD = &#8216;UNKNOWN&#8217;</strong> doesn&#8217;t select any rows because the password is not correct, injecting <strong>&#8216; OR 1=1 &#8211;</strong> gives SQL statement <strong>SELECT * FROM USERS WHERE USERNAME = &#8216;ADMIN&#8217; and PASSWORD = &#8221; OR 1=1 &#8211;&#8217;</strong> which will return all rows, because the where-clause is always true (<strong>OR 1=1</strong>).</p>
<p>There are several security applications (WAFs, SQL firewalls, &#8230;) designed to monitor the stream of SQL statements and reject statements with tautologies, i.e. the result of a SQL-injection. Some are very simple and just try to match pattern 1=1. Bypassing them is easy: 1&gt;0 is also a tautology. Others are more sophisticated and try to find constant expressions in the where-clause. Constant expressions are expressions with operators, functions and constants, but without variables. If a constant expression is detected that always evaluates to true, the firewall assumes it&#8217;s the result of a SQL-injection and blocks the query.</p>
<p>This is all classic SQL-injection, but now comes the interesting part.</p>
<p>What if I use an expression that is not a tautology in it&#8217;s mathematical sense, but is almost one&#8230; Say I use expression <strong>RAND() &gt; 0.01</strong> ? The <a href="http://dev.mysql.com/doc/refman/5.0/en/mathematical-functions.html#function_rand">RAND</a> function is a random number generator and returns a floating point value in the range [0.0, 1.0[. Expression <strong>RAND() &gt; 0.01</strong> is not a tautology, it&#8217;s not always true, but it is true about 99% percent of the time. I call this a quasi-tautology.</p>
<p>A firewall looking for tautologies will not detect this, because it is not a tautology. But when you use it in a SQL-injection, you stand a 99% chance of being succesful (provided the application is vulnerable to SQL-injection)!</p>
<p>There are other functions than RAND to create quasi-tautologies. An expression comparing the seconds of the current system time with 59 is also a quasi-tautology.</p>
<p>The <a href="http://www.greensql.net/">GreenSQL firewall</a> will detect SQL statements with quasi-tautologies, not because it looks for them, but because it builds a whitelist in training mode.</p>
<hr /><a href="http://blog.didierstevens.com/2007/11/01/announcing-quickposts/">Quickpost info</a></p>
<hr />
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/didierstevens.wordpress.com/1966/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/didierstevens.wordpress.com/1966/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/didierstevens.wordpress.com/1966/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/didierstevens.wordpress.com/1966/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/didierstevens.wordpress.com/1966/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/didierstevens.wordpress.com/1966/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/didierstevens.wordpress.com/1966/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/didierstevens.wordpress.com/1966/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/didierstevens.wordpress.com/1966/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/didierstevens.wordpress.com/1966/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/didierstevens.wordpress.com/1966/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/didierstevens.wordpress.com/1966/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/didierstevens.wordpress.com/1966/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/didierstevens.wordpress.com/1966/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.didierstevens.com&amp;blog=264765&amp;post=1966&amp;subd=didierstevens&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.didierstevens.com/2010/02/02/quickpost-quasi-tautologies-sql-injection/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">didierstevens</media:title>
		</media:content>
	</item>
		<item>
		<title>Quickpost: Shellcode to Load a DLL From Memory</title>
		<link>http://blog.didierstevens.com/2010/01/28/quickpost-shellcode-to-load-a-dll-from-memory/</link>
		<comments>http://blog.didierstevens.com/2010/01/28/quickpost-shellcode-to-load-a-dll-from-memory/#comments</comments>
		<pubDate>Thu, 28 Jan 2010 03:08:14 +0000</pubDate>
		<dc:creator>Didier Stevens</dc:creator>
				<category><![CDATA[Hacking]]></category>
		<category><![CDATA[My Software]]></category>
		<category><![CDATA[Quickpost]]></category>

		<guid isPermaLink="false">http://blog.didierstevens.com/?p=1959</guid>
		<description><![CDATA[I finally took time to develop shellcode to load a DLL, not with LoadLibrary, but directly from memory. Not storing the DLL on disk prevents it from being detected by AV software; not using LoadLibrary bypasses HIPS software that monitors this system call. My shellcode is based on Joachim&#8217;s code. In previous posts, I showed [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.didierstevens.com&amp;blog=264765&amp;post=1959&amp;subd=didierstevens&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I finally took time to develop shellcode to load a DLL, not with LoadLibrary, but directly from memory. Not storing the DLL on disk prevents it from being detected by AV software; not using LoadLibrary bypasses HIPS software that monitors this system call.</p>
<p>My shellcode is based on <a href="http://www.joachim-bauch.de/tutorials/load_dll_memory.html">Joachim&#8217;s code</a>.</p>
<p>In previous posts, I showed how to <a href="http://blog.didierstevens.com/2008/06/05/bpmtk-how-about-srp-whitelists/">load a DLL</a> <a href="http://blog.didierstevens.com/2008/10/23/excel-exercises-in-style/">or shellcode</a> with VBA in Excel. This is a combination of both techniques: a VBA macro loads and executes shellcode in Excel&#8217;s process space, and the shellcode loads a DLL from memory into Excel&#8217;s process memory.</p>
<p>With the <a href="http://blog.didierstevens.com/2008/06/25/bpmtk-bypassing-srp-with-dll-restrictions/">code of the previous post</a>, the DLL appears in the list of loaded DLLs:</p>
<p><img class="alignnone size-full wp-image-1960" title="20100127-193739" src="http://didierstevens.files.wordpress.com/2010/01/20100127-193739.png?w=616&#038;h=419" alt="" width="616" height="419" /></p>
<p>With this shellcode, it doesn&#8217;t:</p>
<p><img class="alignnone size-full wp-image-1961" title="20100127-192408" src="http://didierstevens.files.wordpress.com/2010/01/20100127-192408.png?w=616&#038;h=419" alt="" width="616" height="419" /></p>
<hr /><a href="http://blog.didierstevens.com/2007/11/01/announcing-quickposts/">Quickpost info</a></p>
<hr />
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/didierstevens.wordpress.com/1959/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/didierstevens.wordpress.com/1959/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/didierstevens.wordpress.com/1959/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/didierstevens.wordpress.com/1959/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/didierstevens.wordpress.com/1959/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/didierstevens.wordpress.com/1959/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/didierstevens.wordpress.com/1959/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/didierstevens.wordpress.com/1959/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/didierstevens.wordpress.com/1959/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/didierstevens.wordpress.com/1959/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/didierstevens.wordpress.com/1959/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/didierstevens.wordpress.com/1959/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/didierstevens.wordpress.com/1959/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/didierstevens.wordpress.com/1959/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.didierstevens.com&amp;blog=264765&amp;post=1959&amp;subd=didierstevens&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.didierstevens.com/2010/01/28/quickpost-shellcode-to-load-a-dll-from-memory/feed/</wfw:commentRss>
		<slash:comments>15</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">didierstevens</media:title>
		</media:content>

		<media:content url="http://didierstevens.files.wordpress.com/2010/01/20100127-193739.png" medium="image">
			<media:title type="html">20100127-193739</media:title>
		</media:content>

		<media:content url="http://didierstevens.files.wordpress.com/2010/01/20100127-192408.png" medium="image">
			<media:title type="html">20100127-192408</media:title>
		</media:content>
	</item>
		<item>
		<title>Quickpost: PDF Header %!PS-Adobe-N.n PDF-M.m</title>
		<link>http://blog.didierstevens.com/2010/01/21/quickpost-pdf-header-ps-adobe-n-n-pdf-m-m/</link>
		<comments>http://blog.didierstevens.com/2010/01/21/quickpost-pdf-header-ps-adobe-n-n-pdf-m-m/#comments</comments>
		<pubDate>Thu, 21 Jan 2010 11:21:03 +0000</pubDate>
		<dc:creator>Didier Stevens</dc:creator>
				<category><![CDATA[My Software]]></category>
		<category><![CDATA[PDF]]></category>
		<category><![CDATA[Quickpost]]></category>

		<guid isPermaLink="false">http://blog.didierstevens.com/?p=1953</guid>
		<description><![CDATA[@Feliam has an interesting PDF library to create PDF files with an unconventional header (the generated document doesn&#8217;t start with %PDF-&#8230;, but %PDF appears somewhere in the first 1024 bytes of the document). As this trick is likely to be taken over by malware authors, I updated PDFiD to support this. The PDF reference document [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.didierstevens.com&amp;blog=264765&amp;post=1953&amp;subd=didierstevens&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><a href="http://twitter.com/feliam" target="_self">@Feliam</a> has an interesting <a href="http://feliam.wordpress.com/">PDF library</a> to create PDF files with an unconventional header (the generated document doesn&#8217;t start with %PDF-&#8230;, but %PDF appears somewhere in the first 1024 bytes of the document). As this trick is likely to be taken over by malware authors, I updated <a href="http://blog.didierstevens.com/2010/01/13/quickpost-new-versions-of-pdfid-and-pdf-parser/" target="_self">PDFiD</a> to support this.</p>
<p>The PDF reference document also mentions %!PS-Adobe-N.n PDF-M.m as a valid header, however, the PDF documents I and @Feliam generated with this header are not rendered by Adobe Reader (neither Foxit or Sumatra PDF).</p>
<p>I was told Adobe did support this header in older versions. My tests show Adobe Reader version 3, 4, 5 and 6 will render PDF documents with header %!PS-Adobe-N.n PDF-M.m. Versions 7, 8 and 9 will not. Therefor I decided not to include support for this header to PDFiD.</p>
<p>pdf-parser doesn&#8217;t test the header, it analyzes PDF documents regardless of the header.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/didierstevens.wordpress.com/1953/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/didierstevens.wordpress.com/1953/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/didierstevens.wordpress.com/1953/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/didierstevens.wordpress.com/1953/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/didierstevens.wordpress.com/1953/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/didierstevens.wordpress.com/1953/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/didierstevens.wordpress.com/1953/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/didierstevens.wordpress.com/1953/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/didierstevens.wordpress.com/1953/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/didierstevens.wordpress.com/1953/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/didierstevens.wordpress.com/1953/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/didierstevens.wordpress.com/1953/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/didierstevens.wordpress.com/1953/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/didierstevens.wordpress.com/1953/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.didierstevens.com&amp;blog=264765&amp;post=1953&amp;subd=didierstevens&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.didierstevens.com/2010/01/21/quickpost-pdf-header-ps-adobe-n-n-pdf-m-m/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">didierstevens</media:title>
		</media:content>
	</item>
	</channel>
</rss>