<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Python SSL Mitm Proxy and More</title>
	<atom:link href="http://www.gnucitizen.org/blog/python-ssl-mitm-proxy-and-more/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.gnucitizen.org/blog/python-ssl-mitm-proxy-and-more/</link>
	<description>Information Security Think Tank</description>
	<lastBuildDate>Sat, 02 Feb 2013 17:50:40 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.4.1</generator>
	<item>
		<title>By: Certificate Store - Page 8 - PSX-SCENE: The oldest and most trusted Playstation Scene Community</title>
		<link>http://www.gnucitizen.org/blog/python-ssl-mitm-proxy-and-more/comment-page-1/#comment-129718</link>
		<dc:creator>Certificate Store - Page 8 - PSX-SCENE: The oldest and most trusted Playstation Scene Community</dc:creator>
		<pubDate>Sat, 12 Feb 2011 17:18:26 +0000</pubDate>
		<guid isPermaLink="false">https://www.gnucitizen.org/?p=2588#comment-129718</guid>
		<description>[...] you might find this piece of software interesting. You mentioned Python earlier.  Python SSL Mitm Proxy and More &#124; GNUCITIZEN  Sounds like it could be easily extended to be [...]</description>
		<content:encoded><![CDATA[<p>[...] you might find this piece of software interesting. You mentioned Python earlier.  Python SSL Mitm Proxy and More | GNUCITIZEN  Sounds like it could be easily extended to be [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: pdp</title>
		<link>http://www.gnucitizen.org/blog/python-ssl-mitm-proxy-and-more/comment-page-1/#comment-128164</link>
		<dc:creator>pdp</dc:creator>
		<pubDate>Tue, 23 Feb 2010 09:36:27 +0000</pubDate>
		<guid isPermaLink="false">https://www.gnucitizen.org/?p=2588#comment-128164</guid>
		<description>darb, not sure! you have to check.</description>
		<content:encoded><![CDATA[<p>darb, not sure! you have to check.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Subbu</title>
		<link>http://www.gnucitizen.org/blog/python-ssl-mitm-proxy-and-more/comment-page-1/#comment-128151</link>
		<dc:creator>Subbu</dc:creator>
		<pubDate>Fri, 19 Feb 2010 00:41:16 +0000</pubDate>
		<guid isPermaLink="false">https://www.gnucitizen.org/?p=2588#comment-128151</guid>
		<description>I&#039;m seeing a bug in this proxy, I will investigate a fix,  but wanted to let you know. The issue is this:

I clear all the cookies in a browser. Then
I fire up the proxy and browse some websites, and then look at what cookies are set in my browser, I don&#039;t see some cookies that I expect to be set. 

When I do the exact same thing (clear cookies, _ exact websites), I can see the cookies being set in the browser. 

So my inference is that the proxy is somehow eating up the cookies in the response. These sites are http, not https, so that is also not the issue. 

Any pointers for investigation?</description>
		<content:encoded><![CDATA[<p>I&#8217;m seeing a bug in this proxy, I will investigate a fix,  but wanted to let you know. The issue is this:</p>
<p>I clear all the cookies in a browser. Then<br />
I fire up the proxy and browse some websites, and then look at what cookies are set in my browser, I don&#8217;t see some cookies that I expect to be set. </p>
<p>When I do the exact same thing (clear cookies, _ exact websites), I can see the cookies being set in the browser. </p>
<p>So my inference is that the proxy is somehow eating up the cookies in the response. These sites are http, not https, so that is also not the issue. </p>
<p>Any pointers for investigation?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: darb</title>
		<link>http://www.gnucitizen.org/blog/python-ssl-mitm-proxy-and-more/comment-page-1/#comment-128097</link>
		<dc:creator>darb</dc:creator>
		<pubDate>Wed, 13 Jan 2010 19:58:53 +0000</pubDate>
		<guid isPermaLink="false">https://www.gnucitizen.org/?p=2588#comment-128097</guid>
		<description>Any chance of using this to effectively block Skype&#039;s use of https, while allowing the rest of https traffic alone?</description>
		<content:encoded><![CDATA[<p>Any chance of using this to effectively block Skype&#8217;s use of https, while allowing the rest of https traffic alone?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: eduardo</title>
		<link>http://www.gnucitizen.org/blog/python-ssl-mitm-proxy-and-more/comment-page-1/#comment-128002</link>
		<dc:creator>eduardo</dc:creator>
		<pubDate>Thu, 19 Nov 2009 22:02:58 +0000</pubDate>
		<guid isPermaLink="false">https://www.gnucitizen.org/?p=2588#comment-128002</guid>
		<description>Hi, I would like to try your mitm proxy for ssl, but i have not been able to make it work with windows, could you help me provide a step by step?  feel free to contact me by email

thanks</description>
		<content:encoded><![CDATA[<p>Hi, I would like to try your mitm proxy for ssl, but i have not been able to make it work with windows, could you help me provide a step by step?  feel free to contact me by email</p>
<p>thanks</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: pdp</title>
		<link>http://www.gnucitizen.org/blog/python-ssl-mitm-proxy-and-more/comment-page-1/#comment-126689</link>
		<dc:creator>pdp</dc:creator>
		<pubDate>Tue, 28 Apr 2009 06:29:51 +0000</pubDate>
		<guid isPermaLink="false">https://www.gnucitizen.org/?p=2588#comment-126689</guid>
		<description>cool, thanks! is this tool written in python as well?</description>
		<content:encoded><![CDATA[<p>cool, thanks! is this tool written in python as well?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Christian Martorella</title>
		<link>http://www.gnucitizen.org/blog/python-ssl-mitm-proxy-and-more/comment-page-1/#comment-126681</link>
		<dc:creator>Christian Martorella</dc:creator>
		<pubDate>Mon, 27 Apr 2009 11:09:58 +0000</pubDate>
		<guid isPermaLink="false">https://www.gnucitizen.org/?p=2588#comment-126681</guid>
		<description>Hi pdp, we created a proxy https in python, for our tool ProxyStrike, you can check it here: http://www.edge-security.com/proxystrike.php

We faced the same problem as you, at time we wrote the tool the only available proxy in http was the one in spikeProxy.

By the way we updated the tool and now you can easily implement plugins.

-CMM</description>
		<content:encoded><![CDATA[<p>Hi pdp, we created a proxy https in python, for our tool ProxyStrike, you can check it here: <a href="http://www.edge-security.com/proxystrike.php" rel="nofollow">http://www.edge-security.com/proxystrike.php</a></p>
<p>We faced the same problem as you, at time we wrote the tool the only available proxy in http was the one in spikeProxy.</p>
<p>By the way we updated the tool and now you can easily implement plugins.</p>
<p>-CMM</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: pdp</title>
		<link>http://www.gnucitizen.org/blog/python-ssl-mitm-proxy-and-more/comment-page-1/#comment-126307</link>
		<dc:creator>pdp</dc:creator>
		<pubDate>Sun, 15 Mar 2009 00:09:06 +0000</pubDate>
		<guid isPermaLink="false">https://www.gnucitizen.org/?p=2588#comment-126307</guid>
		<description>good stuff. the reason I wrote this proxy is to create a new HTTP tampering tool which I am comfortable with. but yes, you can use the code for MITM attacks but you have to make a couple of changes. I think that recently there was a presentation which discussed MITM-like attacks for SSL. worth googling it!</description>
		<content:encoded><![CDATA[<p>good stuff. the reason I wrote this proxy is to create a new HTTP tampering tool which I am comfortable with. but yes, you can use the code for MITM attacks but you have to make a couple of changes. I think that recently there was a presentation which discussed MITM-like attacks for SSL. worth googling it!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Eric Blair</title>
		<link>http://www.gnucitizen.org/blog/python-ssl-mitm-proxy-and-more/comment-page-1/#comment-126303</link>
		<dc:creator>Eric Blair</dc:creator>
		<pubDate>Sat, 14 Mar 2009 13:56:34 +0000</pubDate>
		<guid isPermaLink="false">https://www.gnucitizen.org/?p=2588#comment-126303</guid>
		<description>I don&#039;t use Python, but clicked to see &quot;SSL Mitm Proxy.&quot;

It might be easier to write this as a general (CGI) script that could be developed on your local box without a web server. I could script it using a Bourne shell script ;-) but I would probably use my favorite, Tcl.

From the command-line, you can use &quot;openssl s_client&quot;, and s_server and generate a certificate:

http://www.securityfocus.com/infocus/1486
http://www.vanemery.com/Linux/Apache/openSSL.html

Anyway, I put up a page regarding SSL termination:

http://grandscheme.org/gs.cgi?How-secure-is-https.html

Since a browser will complain about certificate mismatches, I was wondering how you were expecting your code to be useful as part of a &quot;transparent SSL proxy.&quot; You made no mention of certificates.</description>
		<content:encoded><![CDATA[<p>I don&#8217;t use Python, but clicked to see &#8220;SSL Mitm Proxy.&#8221;</p>
<p>It might be easier to write this as a general (CGI) script that could be developed on your local box without a web server. I could script it using a Bourne shell script ;-) but I would probably use my favorite, Tcl.</p>
<p>From the command-line, you can use &#8220;openssl s_client&#8221;, and s_server and generate a certificate:</p>
<p><a href="http://www.securityfocus.com/infocus/1486" rel="nofollow">http://www.securityfocus.com/infocus/1486</a><br />
<a href="http://www.vanemery.com/Linux/Apache/openSSL.html" rel="nofollow">http://www.vanemery.com/Linux/Apache/openSSL.html</a></p>
<p>Anyway, I put up a page regarding SSL termination:</p>
<p><a href="http://grandscheme.org/gs.cgi?How-secure-is-https.html" rel="nofollow">http://grandscheme.org/gs.cgi?.....https.html</a></p>
<p>Since a browser will complain about certificate mismatches, I was wondering how you were expecting your code to be useful as part of a &#8220;transparent SSL proxy.&#8221; You made no mention of certificates.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Links for March 14, 2009 &#171; iStoleYour.info</title>
		<link>http://www.gnucitizen.org/blog/python-ssl-mitm-proxy-and-more/comment-page-1/#comment-126299</link>
		<dc:creator>Links for March 14, 2009 &#171; iStoleYour.info</dc:creator>
		<pubDate>Sat, 14 Mar 2009 08:18:21 +0000</pubDate>
		<guid isPermaLink="false">https://www.gnucitizen.org/?p=2588#comment-126299</guid>
		<description>[...] Python SSL Mitm Proxy and More [...]</description>
		<content:encoded><![CDATA[<p>[...] Python SSL Mitm Proxy and More [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: pdp</title>
		<link>http://www.gnucitizen.org/blog/python-ssl-mitm-proxy-and-more/comment-page-1/#comment-126271</link>
		<dc:creator>pdp</dc:creator>
		<pubDate>Mon, 09 Mar 2009 08:47:32 +0000</pubDate>
		<guid isPermaLink="false">https://www.gnucitizen.org/?p=2588#comment-126271</guid>
		<description>schang, I have been a bit busy lately but I do have some patches that needs to be merged and I will do so as soon as I get some free time.</description>
		<content:encoded><![CDATA[<p>schang, I have been a bit busy lately but I do have some patches that needs to be merged and I will do so as soon as I get some free time.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: schang</title>
		<link>http://www.gnucitizen.org/blog/python-ssl-mitm-proxy-and-more/comment-page-1/#comment-126236</link>
		<dc:creator>schang</dc:creator>
		<pubDate>Thu, 05 Mar 2009 09:33:16 +0000</pubDate>
		<guid isPermaLink="false">https://www.gnucitizen.org/?p=2588#comment-126236</guid>
		<description>Mike,

could you share the fixed code with us ?
I have been trying to fix it myself. It kind of works but it always takes like 1 or 2 minutes before I get an answer to my POST...

thanks</description>
		<content:encoded><![CDATA[<p>Mike,</p>
<p>could you share the fixed code with us ?<br />
I have been trying to fix it myself. It kind of works but it always takes like 1 or 2 minutes before I get an answer to my POST&#8230;</p>
<p>thanks</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: pdp</title>
		<link>http://www.gnucitizen.org/blog/python-ssl-mitm-proxy-and-more/comment-page-1/#comment-126040</link>
		<dc:creator>pdp</dc:creator>
		<pubDate>Sat, 21 Feb 2009 00:30:20 +0000</pubDate>
		<guid isPermaLink="false">https://www.gnucitizen.org/?p=2588#comment-126040</guid>
		<description>The file is self-descriptive. It will be great if someone can spend some time cleaning up the code an also to make sure that everything works ok.</description>
		<content:encoded><![CDATA[<p>The file is self-descriptive. It will be great if someone can spend some time cleaning up the code an also to make sure that everything works ok.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Anonymous</title>
		<link>http://www.gnucitizen.org/blog/python-ssl-mitm-proxy-and-more/comment-page-1/#comment-126022</link>
		<dc:creator>Anonymous</dc:creator>
		<pubDate>Thu, 19 Feb 2009 21:23:26 +0000</pubDate>
		<guid isPermaLink="false">https://www.gnucitizen.org/?p=2588#comment-126022</guid>
		<description>Good stuff.

If i wanted to write some basic tests for this, how would I go about doing it? I think it&#039;d be useful. I was thinking something along the lines of, say, having a Paramiko-driven app try and connect to https&#058;//gmail.com using some dummy username and password we create, and seeing if it can intercept the information properly (?)

Just a thought. I don&#039;t have enough netsec experience to contribute directly, but i do have python experience enough (and with scripting paramiko) to do this i think. At the  very least, setting up some unit tests should help me figure out how the python networkign stuff works better.

Again, good stuff! I&#039;ll be keeping tabs on this definitely.</description>
		<content:encoded><![CDATA[<p>Good stuff.</p>
<p>If i wanted to write some basic tests for this, how would I go about doing it? I think it&#8217;d be useful. I was thinking something along the lines of, say, having a Paramiko-driven app try and connect to https&#58;//gmail.com using some dummy username and password we create, and seeing if it can intercept the information properly (?)</p>
<p>Just a thought. I don&#8217;t have enough netsec experience to contribute directly, but i do have python experience enough (and with scripting paramiko) to do this i think. At the  very least, setting up some unit tests should help me figure out how the python networkign stuff works better.</p>
<p>Again, good stuff! I&#8217;ll be keeping tabs on this definitely.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Trapping HTTP Requests and Responses with Python &#124; GNUCITIZEN</title>
		<link>http://www.gnucitizen.org/blog/python-ssl-mitm-proxy-and-more/comment-page-1/#comment-126007</link>
		<dc:creator>Trapping HTTP Requests and Responses with Python &#124; GNUCITIZEN</dc:creator>
		<pubDate>Wed, 18 Feb 2009 11:53:17 +0000</pubDate>
		<guid isPermaLink="false">https://www.gnucitizen.org/?p=2588#comment-126007</guid>
		<description>[...] HTTP Requests and Responses with Python published: February 18th, 2009 In my last post I showed my own implementation of an HTTPS Man-in-the-middle proxy written from scratch in Python. [...]</description>
		<content:encoded><![CDATA[<p>[...] HTTP Requests and Responses with Python published: February 18th, 2009 In my last post I showed my own implementation of an HTTPS Man-in-the-middle proxy written from scratch in Python. [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: .:SSLFail:. &#187; Blog Archive &#187; Python SSL MitM Proxy</title>
		<link>http://www.gnucitizen.org/blog/python-ssl-mitm-proxy-and-more/comment-page-1/#comment-126000</link>
		<dc:creator>.:SSLFail:. &#187; Blog Archive &#187; Python SSL MitM Proxy</dc:creator>
		<pubDate>Tue, 17 Feb 2009 23:27:13 +0000</pubDate>
		<guid isPermaLink="false">https://www.gnucitizen.org/?p=2588#comment-126000</guid>
		<description>[...]   Posted by Tyler on February 17, 2009  Tools  Just a quick post to share that pdp has released a Python SSL proxy. I haven&#8217;t had a chance to play with it yet but it definitely looks promising, so I figured [...]</description>
		<content:encoded><![CDATA[<p>[...]   Posted by Tyler on February 17, 2009  Tools  Just a quick post to share that pdp has released a Python SSL proxy. I haven&#8217;t had a chance to play with it yet but it definitely looks promising, so I figured [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: pdp</title>
		<link>http://www.gnucitizen.org/blog/python-ssl-mitm-proxy-and-more/comment-page-1/#comment-125979</link>
		<dc:creator>pdp</dc:creator>
		<pubDate>Sun, 15 Feb 2009 10:11:15 +0000</pubDate>
		<guid isPermaLink="false">https://www.gnucitizen.org/?p=2588#comment-125979</guid>
		<description>Hi Mike,

Thanks for letting me know. It will be great if we can polish this module as much as possible as I see that there is a lot of interest in a technology like this one and no one is providing it at the moment. I personally need it for several projects of mine.

Regarding your comment on HTTPServerWrapper class. This code is essential in order to make SSL sniffing work. It basically transmits information about the path which needs to be accessed from the SSL endpoint the browser tries to connect to via the proxy. Anyway, I will email you so we can keep in touch.</description>
		<content:encoded><![CDATA[<p>Hi Mike,</p>
<p>Thanks for letting me know. It will be great if we can polish this module as much as possible as I see that there is a lot of interest in a technology like this one and no one is providing it at the moment. I personally need it for several projects of mine.</p>
<p>Regarding your comment on HTTPServerWrapper class. This code is essential in order to make SSL sniffing work. It basically transmits information about the path which needs to be accessed from the SSL endpoint the browser tries to connect to via the proxy. Anyway, I will email you so we can keep in touch.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mike</title>
		<link>http://www.gnucitizen.org/blog/python-ssl-mitm-proxy-and-more/comment-page-1/#comment-125971</link>
		<dc:creator>Mike</dc:creator>
		<pubDate>Sat, 14 Feb 2009 23:16:22 +0000</pubDate>
		<guid isPermaLink="false">https://www.gnucitizen.org/?p=2588#comment-125971</guid>
		<description>Nice tool. I have a couple of corrections. I would have emailed them, but I couldn&#039;t find your email. Now you have mine though so we should get in contact.

Line 488: &lt;code&gt;SSL.SysCallError&lt;/code&gt; should be &lt;code&gt;OpenSSL.SSL.SysCallError&lt;/code&gt;

I was getting a &lt;code&gt;SysCallError&lt;/code&gt; exception on reads, so I added &quot;or OpenSSL.SSL.SysCallError&quot; to line 276.

The &lt;code&gt;do_GET&lt;/code&gt; function on line 161 was having problems with certain web sites. I think it has something to do with the &lt;code&gt;if hasattr(self.server, &#039;chainedHandler&quot;)&lt;/code&gt; block from the other &lt;code&gt;do_GET&lt;/code&gt; function elsewhere in the code. When I copied that code from the other do_GET to the do_GET on line 161 it worked for every site I tried it on.

Email me so I know how to get a hold of you later if I find more bugs, ok?</description>
		<content:encoded><![CDATA[<p>Nice tool. I have a couple of corrections. I would have emailed them, but I couldn&#8217;t find your email. Now you have mine though so we should get in contact.</p>
<p>Line 488: <code>SSL.SysCallError</code> should be <code>OpenSSL.SSL.SysCallError</code></p>
<p>I was getting a <code>SysCallError</code> exception on reads, so I added &#8220;or OpenSSL.SSL.SysCallError&#8221; to line 276.</p>
<p>The <code>do_GET</code> function on line 161 was having problems with certain web sites. I think it has something to do with the <code>if hasattr(self.server, 'chainedHandler")</code> block from the other <code>do_GET</code> function elsewhere in the code. When I copied that code from the other do_GET to the do_GET on line 161 it worked for every site I tried it on.</p>
<p>Email me so I know how to get a hold of you later if I find more bugs, ok?</p>
]]></content:encoded>
	</item>
</channel>
</rss>
