<?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"
	>
<channel>
	<title>Comments on: Backdooring Images</title>
	<atom:link href="http://www.gnucitizen.org/blog/backdooring-images/feed/" rel="self" type="application/rss+xml" />
	<link>/blog/backdooring-images/</link>
	<description>Information Security Think Tank</description>
	<pubDate>Thu, 21 Aug 2008 20:33:46 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.1</generator>
		<item>
		<title>By: Correr javascript no IE a partir de uma imagem</title>
		<link>/blog/backdooring-images/#comment-122976</link>
		<dc:creator>Correr javascript no IE a partir de uma imagem</dc:creator>
		<pubDate>Wed, 16 Jul 2008 20:57:24 +0000</pubDate>
		<guid isPermaLink="false">http://www.gnucitizen.org/blog/backdooring-images#comment-122976</guid>
		<description>[...] Update 2: Mais sobre o assunto aqui e aqui. [...]</description>
		<content:encoded><![CDATA[<p>[...] Update 2: Mais sobre o assunto aqui e aqui. [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: andrew</title>
		<link>/blog/backdooring-images/#comment-117386</link>
		<dc:creator>andrew</dc:creator>
		<pubDate>Tue, 25 Mar 2008 13:26:17 +0000</pubDate>
		<guid isPermaLink="false">http://www.gnucitizen.org/blog/backdooring-images#comment-117386</guid>
		<description>pdp, I disagree - mime types and headers are there to ensure correct handling of the data sent. It is the way things should work and IE clearly violates that. Without this IE bug there would be no security problem at all. 

Also, web developers should not care if the images are valid (and even valid images can contain JS!), at least not from security point of view. They should take care that they are served the right way (and not executed on the server), that they are small enough, that they have correct extension and mime type header - but that's all. 

I think IE is to blame, but yes, web developers must deal with it... :(</description>
		<content:encoded><![CDATA[<p>pdp, I disagree - mime types and headers are there to ensure correct handling of the data sent. It is the way things should work and IE clearly violates that. Without this IE bug there would be no security problem at all. </p>
<p>Also, web developers should not care if the images are valid (and even valid images can contain JS!), at least not from security point of view. They should take care that they are served the right way (and not executed on the server), that they are small enough, that they have correct extension and mime type header - but that&#8217;s all. </p>
<p>I think IE is to blame, but yes, web developers must deal with it&#8230; :(</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: pdp</title>
		<link>/blog/backdooring-images/#comment-117381</link>
		<dc:creator>pdp</dc:creator>
		<pubDate>Tue, 25 Mar 2008 12:08:25 +0000</pubDate>
		<guid isPermaLink="false">http://www.gnucitizen.org/blog/backdooring-images#comment-117381</guid>
		<description>andrew, in a way it is a server-side problem because developers allow uploads of files based on their extensions. IE shouldn't try to detect the mime-type of everything it pulls from the web but also developers should sanitize everything that comes from the user in order to prevent the wrong data going into the wrong pace.</description>
		<content:encoded><![CDATA[<p>andrew, in a way it is a server-side problem because developers allow uploads of files based on their extensions. IE shouldn&#8217;t try to detect the mime-type of everything it pulls from the web but also developers should sanitize everything that comes from the user in order to prevent the wrong data going into the wrong pace.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: andrew</title>
		<link>/blog/backdooring-images/#comment-117375</link>
		<dc:creator>andrew</dc:creator>
		<pubDate>Tue, 25 Mar 2008 10:20:37 +0000</pubDate>
		<guid isPermaLink="false">http://www.gnucitizen.org/blog/backdooring-images#comment-117375</guid>
		<description>"In fact, this is not even a browser related problem. It is a server side problem"

I don't agree. If server sends header:

Content-Type: image/jpeg

then IE (as any other browser) should render the image as an image, not parse it as HTML! 

This is a huge bug on IE side, and while the server can remedy things by carefully examining the images, that really should not be needed. This is clearly another IE bug.</description>
		<content:encoded><![CDATA[<p>&#8220;In fact, this is not even a browser related problem. It is a server side problem&#8221;</p>
<p>I don&#8217;t agree. If server sends header:</p>
<p>Content-Type: image/jpeg</p>
<p>then IE (as any other browser) should render the image as an image, not parse it as HTML! </p>
<p>This is a huge bug on IE side, and while the server can remedy things by carefully examining the images, that really should not be needed. This is clearly another IE bug.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: uropian</title>
		<link>/blog/backdooring-images/#comment-19772</link>
		<dc:creator>uropian</dc:creator>
		<pubDate>Sat, 05 May 2007 00:38:59 +0000</pubDate>
		<guid isPermaLink="false">http://www.gnucitizen.org/blog/backdooring-images#comment-19772</guid>
		<description>Nor can Mehtap! I want to say that your site better throughout the World Wide Web :) 
Thank you. Keep it.</description>
		<content:encoded><![CDATA[<p>Nor can Mehtap! I want to say that your site better throughout the World Wide Web :)<br />
Thank you. Keep it.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dan</title>
		<link>/blog/backdooring-images/#comment-3632</link>
		<dc:creator>Dan</dc:creator>
		<pubDate>Thu, 08 Feb 2007 23:20:27 +0000</pubDate>
		<guid isPermaLink="false">http://www.gnucitizen.org/blog/backdooring-images#comment-3632</guid>
		<description>This doesnt work on myspace.</description>
		<content:encoded><![CDATA[<p>This doesnt work on myspace.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: GNUCITIZEN &#187; DANGER, DANGER, DANGER</title>
		<link>/blog/backdooring-images/#comment-1780</link>
		<dc:creator>GNUCITIZEN &#187; DANGER, DANGER, DANGER</dc:creator>
		<pubDate>Wed, 03 Jan 2007 09:31:58 +0000</pubDate>
		<guid isPermaLink="false">http://www.gnucitizen.org/blog/backdooring-images#comment-1780</guid>
		<description>[...] The WEB has gone crazy. I know that this is not news for some of you but you will be surprised to what extend this craziness has just developed. It seams that the entire WEB is falling apart and someone has to do something otherwise we risk to lose too much. Among the traditional QuickTime Movie, QTL, Flash, Image, HTML and PDF backdoors, there is another one trivially achievable with high degree of impact. [...]</description>
		<content:encoded><![CDATA[<p>[...] The WEB has gone crazy. I know that this is not news for some of you but you will be surprised to what extend this craziness has just developed. It seams that the entire WEB is falling apart and someone has to do something otherwise we risk to lose too much. Among the traditional QuickTime Movie, QTL, Flash, Image, HTML and PDF backdoors, there is another one trivially achievable with high degree of impact. [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Top Web Hacks of 2006 &#187; Hack Report</title>
		<link>/blog/backdooring-images/#comment-1739</link>
		<dc:creator>Top Web Hacks of 2006 &#187; Hack Report</dc:creator>
		<pubDate>Tue, 02 Jan 2007 03:07:06 +0000</pubDate>
		<guid isPermaLink="false">http://www.gnucitizen.org/blog/backdooring-images#comment-1739</guid>
		<description>[...] 1. Web Browser Intranet Hacking / Port Scanning - (with JavaScript and with HTML-only and the improved model) 2. Internet Explorer 7 &#8220;mhtml:&#8221; Redirection Information Disclosure 3. Anti-DNS Pinning and Circumventing Anti-Anti DNS pinning 4. Web Browser History Stealing - (with CSS, evil marketing, JS login-detection, and authenticated images) 5. Backdooring Media Files (QuickTime, Flash, PDF, Images, Word [2], and MP3&#8217;s) 6. Forging HTTP request headers with Flash 7. Exponential XSS 8. Encoding Filter Bypass (UTF-7, Variable Width, US-ASCII) 9. Web Worms - (AdultSpace, MySpace, Xanga) 10. Hacking RSS Feeds [...]</description>
		<content:encoded><![CDATA[<p>[...] 1. Web Browser Intranet Hacking / Port Scanning - (with JavaScript and with HTML-only and the improved model) 2. Internet Explorer 7 &#8220;mhtml:&#8221; Redirection Information Disclosure 3. Anti-DNS Pinning and Circumventing Anti-Anti DNS pinning 4. Web Browser History Stealing - (with CSS, evil marketing, JS login-detection, and authenticated images) 5. Backdooring Media Files (QuickTime, Flash, PDF, Images, Word [2], and MP3&#8217;s) 6. Forging HTTP request headers with Flash 7. Exponential XSS 8. Encoding Filter Bypass (UTF-7, Variable Width, US-ASCII) 9. Web Worms - (AdultSpace, MySpace, Xanga) 10. Hacking RSS Feeds [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Operation n &#187; Hacking with Images 1</title>
		<link>/blog/backdooring-images/#comment-1625</link>
		<dc:creator>Operation n &#187; Hacking with Images 1</dc:creator>
		<pubDate>Sat, 30 Dec 2006 01:07:44 +0000</pubDate>
		<guid isPermaLink="false">http://www.gnucitizen.org/blog/backdooring-images#comment-1625</guid>
		<description>[...] pdp recently released, &#8220;Backdooring Images&#8221; where he discusses reasonably well-known but a relatively un-used technique whereby an attacker can store code in an image file. [...]</description>
		<content:encoded><![CDATA[<p>[...] pdp recently released, &#8220;Backdooring Images&#8221; where he discusses reasonably well-known but a relatively un-used technique whereby an attacker can store code in an image file. [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: harmlessHacked</title>
		<link>/blog/backdooring-images/#comment-1432</link>
		<dc:creator>harmlessHacked</dc:creator>
		<pubDate>Sat, 23 Dec 2006 10:21:53 +0000</pubDate>
		<guid isPermaLink="false">http://www.gnucitizen.org/blog/backdooring-images#comment-1432</guid>
		<description>An URL not an Image:
To perform this trick you should be able to feed an url to the "spy" image which is hosted in a server of yours, so you have to feed an URL to the image not upload the image itself (actualy the servlet). in another word Myspace is expected to save the URL in its database not the image itself.</description>
		<content:encoded><![CDATA[<p>An URL not an Image:<br />
To perform this trick you should be able to feed an url to the &#8220;spy&#8221; image which is hosted in a server of yours, so you have to feed an URL to the image not upload the image itself (actualy the servlet). in another word Myspace is expected to save the URL in its database not the image itself.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Danny</title>
		<link>/blog/backdooring-images/#comment-1387</link>
		<dc:creator>Danny</dc:creator>
		<pubDate>Thu, 21 Dec 2006 23:46:20 +0000</pubDate>
		<guid isPermaLink="false">http://www.gnucitizen.org/blog/backdooring-images#comment-1387</guid>
		<description>I just attempted this on my MySpace and it didn't allow me to upload it. I also tried on facebook and that did not work either. Check this site, I'm sure with not too much imagination you could derive a very slick exploit from this idea and the one on this site.

	http://jeremiahgrossman.blogspot.com/2006/12/i-know-if-youre-logged-in-anywhere.html</description>
		<content:encoded><![CDATA[<p>I just attempted this on my MySpace and it didn&#8217;t allow me to upload it. I also tried on facebook and that did not work either. Check this site, I&#8217;m sure with not too much imagination you could derive a very slick exploit from this idea and the one on this site.</p>
<p>	<a href="http://jeremiahgrossman.blogspot.com/2006/12/i-know-if-youre-logged-in-anywhere.html" rel="nofollow">http://jeremiahgrossman.blogspot.com/2006/12/i-know-if-youre-logged-in-anywhere.html</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: average admins &#187; Blog Archive &#187; Backdooring images</title>
		<link>/blog/backdooring-images/#comment-1349</link>
		<dc:creator>average admins &#187; Blog Archive &#187; Backdooring images</dc:creator>
		<pubDate>Wed, 20 Dec 2006 02:24:27 +0000</pubDate>
		<guid isPermaLink="false">http://www.gnucitizen.org/blog/backdooring-images#comment-1349</guid>
		<description>[...] http://www.gnucitizen.org/blog/backdooring-images [...]</description>
		<content:encoded><![CDATA[<p>[...] <a href="http://www.gnucitizen.org/blog/backdooring-images" rel="nofollow">http://www.gnucitizen.org/blog/backdooring-images</a> [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: harmlessHacked</title>
		<link>/blog/backdooring-images/#comment-1326</link>
		<dc:creator>harmlessHacked</dc:creator>
		<pubDate>Tue, 19 Dec 2006 13:31:02 +0000</pubDate>
		<guid isPermaLink="false">http://www.gnucitizen.org/blog/backdooring-images#comment-1326</guid>
		<description>I'm almost sure that embed both image and id theft in a servlet can't bypassed since the http header may be altered before posting response, even if browser sanitize the image and find it innocent he will never ever detect the id theft because it a server-side stuff</description>
		<content:encoded><![CDATA[<p>I&#8217;m almost sure that embed both image and id theft in a servlet can&#8217;t bypassed since the http header may be altered before posting response, even if browser sanitize the image and find it innocent he will never ever detect the id theft because it a server-side stuff</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: pst</title>
		<link>/blog/backdooring-images/#comment-1289</link>
		<dc:creator>pst</dc:creator>
		<pubDate>Mon, 18 Dec 2006 10:06:55 +0000</pubDate>
		<guid isPermaLink="false">http://www.gnucitizen.org/blog/backdooring-images#comment-1289</guid>
		<description>Hi,

Interesting discussion indeed. Content checking is an ever coming up issue, and I think that browser vendors/creators should care. However it's not on the file type recognition part but on the processing part where the stake lies. If a file has a .jpg ending it should be handled as JPEG and not be parsed as HTML (as in our above example), that's all about sticking witzh standards. 

It's the same (many years now) with bad HTML code. Why should a browser interpret bad/non standard HTML code ? The result can be unexpected even not speaking about the security issue it implicates.

just my 5 cents,
pst</description>
		<content:encoded><![CDATA[<p>Hi,</p>
<p>Interesting discussion indeed. Content checking is an ever coming up issue, and I think that browser vendors/creators should care. However it&#8217;s not on the file type recognition part but on the processing part where the stake lies. If a file has a .jpg ending it should be handled as JPEG and not be parsed as HTML (as in our above example), that&#8217;s all about sticking witzh standards. </p>
<p>It&#8217;s the same (many years now) with bad HTML code. Why should a browser interpret bad/non standard HTML code ? The result can be unexpected even not speaking about the security issue it implicates.</p>
<p>just my 5 cents,<br />
pst</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: harmlessHacked</title>
		<link>/blog/backdooring-images/#comment-1287</link>
		<dc:creator>harmlessHacked</dc:creator>
		<pubDate>Mon, 18 Dec 2006 09:17:19 +0000</pubDate>
		<guid isPermaLink="false">http://www.gnucitizen.org/blog/backdooring-images#comment-1287</guid>
		<description>Also attacker my use servlet not only to display image but also hijak the session id of the user, by giving extension of gif or jpeg or other image extension to the servlet name  like myavatar.jpeg which performs both tasks; display image and hijak sessionID</description>
		<content:encoded><![CDATA[<p>Also attacker my use servlet not only to display image but also hijak the session id of the user, by giving extension of gif or jpeg or other image extension to the servlet name  like myavatar.jpeg which performs both tasks; display image and hijak sessionID</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: kuza55</title>
		<link>/blog/backdooring-images/#comment-1264</link>
		<dc:creator>kuza55</dc:creator>
		<pubDate>Sun, 17 Dec 2006 11:03:44 +0000</pubDate>
		<guid isPermaLink="false">http://www.gnucitizen.org/blog/backdooring-images#comment-1264</guid>
		<description>Well, I'm pretty sure most people developing serious applications nowadays know about this issue. And so most applications at least check the headers of the files to make sure that they are the appropriate headers. Some like vBulletin go further and do a limited scan on the first part (200 bytes in vBulletin's case) of the image to make sure that anyone using an old version cannot be attacked. (The odd thing about vBulletin though is that the patch is actually rather recent, which makes you wonder about why it has suddenly become something they wanted to guard against)

MySpace goes further and makes sure that it is a valid image and can be rendered. I'm not sure how it does it, but one of the possibilities I've thought of would be using something like the GD library to detect what type of picture it is then try and load it and if it fails then don't move it to a web-accessible directory, and simply remove it.

So barring a vulnerability similar to the IE GIF one mentioned in this post I don't think there are going to be any similar issues.</description>
		<content:encoded><![CDATA[<p>Well, I&#8217;m pretty sure most people developing serious applications nowadays know about this issue. And so most applications at least check the headers of the files to make sure that they are the appropriate headers. Some like vBulletin go further and do a limited scan on the first part (200 bytes in vBulletin&#8217;s case) of the image to make sure that anyone using an old version cannot be attacked. (The odd thing about vBulletin though is that the patch is actually rather recent, which makes you wonder about why it has suddenly become something they wanted to guard against)</p>
<p>MySpace goes further and makes sure that it is a valid image and can be rendered. I&#8217;m not sure how it does it, but one of the possibilities I&#8217;ve thought of would be using something like the GD library to detect what type of picture it is then try and load it and if it fails then don&#8217;t move it to a web-accessible directory, and simply remove it.</p>
<p>So barring a vulnerability similar to the IE GIF one mentioned in this post I don&#8217;t think there are going to be any similar issues.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: pdp</title>
		<link>/blog/backdooring-images/#comment-1260</link>
		<dc:creator>pdp</dc:creator>
		<pubDate>Sun, 17 Dec 2006 08:19:39 +0000</pubDate>
		<guid isPermaLink="false">http://www.gnucitizen.org/blog/backdooring-images#comment-1260</guid>
		<description>Will, it works on IE7 SP2. I have tested it on my machine. Make sure that you put the files on a server first. Download WAMP and start from there.

Adriaan, your English is good. I understand what you are talking about and I am on your side. Sure, browser can do some additional checks to verify that what it is receiving is what it says. Unfortunately, I can clearly see that this is not the case and it never be.

The problem here is that the Internet/Web is almost infinite. There are so many different file types out there that it takes a big afford just to put them into a database. Browsers, should take this a lot more seriously, sure, but is it feasible. I don't know. Maybe they should be able to check for the most popular file types such as JPG, PNG, JS, CSS, GIF... etc. However, I can see how in certain situation this feature can break one or another company corporate application. So, from all browsers out there, only Firefox, Opera and a few others may implement this feature in the near future. I hope they do. IE will support all legacy stuff no matter what.

You are bringing some interesting points here. Let's see if browser vendors will take your advice seriously.</description>
		<content:encoded><![CDATA[<p>Will, it works on IE7 SP2. I have tested it on my machine. Make sure that you put the files on a server first. Download WAMP and start from there.</p>
<p>Adriaan, your English is good. I understand what you are talking about and I am on your side. Sure, browser can do some additional checks to verify that what it is receiving is what it says. Unfortunately, I can clearly see that this is not the case and it never be.</p>
<p>The problem here is that the Internet/Web is almost infinite. There are so many different file types out there that it takes a big afford just to put them into a database. Browsers, should take this a lot more seriously, sure, but is it feasible. I don&#8217;t know. Maybe they should be able to check for the most popular file types such as JPG, PNG, JS, CSS, GIF&#8230; etc. However, I can see how in certain situation this feature can break one or another company corporate application. So, from all browsers out there, only Firefox, Opera and a few others may implement this feature in the near future. I hope they do. IE will support all legacy stuff no matter what.</p>
<p>You are bringing some interesting points here. Let&#8217;s see if browser vendors will take your advice seriously.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Adriaan Graas</title>
		<link>/blog/backdooring-images/#comment-1251</link>
		<dc:creator>Adriaan Graas</dc:creator>
		<pubDate>Sat, 16 Dec 2006 00:50:54 +0000</pubDate>
		<guid isPermaLink="false">http://www.gnucitizen.org/blog/backdooring-images#comment-1251</guid>
		<description>Hi,

I am following your blog for a little wile now, and I think it is really great that you point out so much issues.

In this post you say that these are not browser vulnerabilities, but server side problems. I don't really get that.

Extensions don't matter. So the browser looks to the content-type header what it is. When it says its html, does that mean that it should handle it as html? A image is most likely embedded in html or css. The browser should know by then (by tag or css) that it should handle it as image, and then ignore the header. It would be more clean if the browser takes the websites source as first priority how to interprent the file, instead of just accepting the header, imho. This would solve a lot of security issues.
Images which are not included by website source should then be handled as the content-type header says.

I hope you understand my english, and please correct me if I'm wrong.

Adriaan</description>
		<content:encoded><![CDATA[<p>Hi,</p>
<p>I am following your blog for a little wile now, and I think it is really great that you point out so much issues.</p>
<p>In this post you say that these are not browser vulnerabilities, but server side problems. I don&#8217;t really get that.</p>
<p>Extensions don&#8217;t matter. So the browser looks to the content-type header what it is. When it says its html, does that mean that it should handle it as html? A image is most likely embedded in html or css. The browser should know by then (by tag or css) that it should handle it as image, and then ignore the header. It would be more clean if the browser takes the websites source as first priority how to interprent the file, instead of just accepting the header, imho. This would solve a lot of security issues.<br />
Images which are not included by website source should then be handled as the content-type header says.</p>
<p>I hope you understand my english, and please correct me if I&#8217;m wrong.</p>
<p>Adriaan</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: will</title>
		<link>/blog/backdooring-images/#comment-1247</link>
		<dc:creator>will</dc:creator>
		<pubDate>Fri, 15 Dec 2006 21:06:41 +0000</pubDate>
		<guid isPermaLink="false">http://www.gnucitizen.org/blog/backdooring-images#comment-1247</guid>
		<description>Have you tried this in IE 7 yet?  I can't get it to work.</description>
		<content:encoded><![CDATA[<p>Have you tried this in IE 7 yet?  I can&#8217;t get it to work.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
