<?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: Vulnerability httpoxy for PHP, Go, Python and others</title>
	<atom:link href="http://www.epanorama.net/blog/2016/08/05/vulnerability-httpoxy-for-php-go-python-and-others/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.epanorama.net/blog/2016/08/05/vulnerability-httpoxy-for-php-go-python-and-others/</link>
	<description>All about electronics and circuit design</description>
	<lastBuildDate>Sun, 05 Apr 2026 18:35:45 +0000</lastBuildDate>
		<sy:updatePeriod>hourly</sy:updatePeriod>
		<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.9.14</generator>
	<item>
		<title>By: Tomi Engdahl</title>
		<link>https://www.epanorama.net/blog/2016/08/05/vulnerability-httpoxy-for-php-go-python-and-others/comment-page-1/#comment-1505715</link>
		<dc:creator><![CDATA[Tomi Engdahl]]></dc:creator>
		<pubDate>Mon, 15 Aug 2016 09:10:48 +0000</pubDate>
		<guid isPermaLink="false">http://www.epanorama.net/newepa/?p=44871#comment-1505715</guid>
		<description><![CDATA[[NSE] NSE script to detect web apps vulnerable to HTTPoxy
http://goo.gl/Ttsn9x

Attempts to detect web applications vulnerable to &quot;httpoxy&quot; (CVE-2016-5385, CVE-2016-5386,
CVE-2016-5387, CVE-2016-5388, CVE-2016-1000109, CVE-2016-1000110).

The script attempts to detect this vulnerability by measuring the response time when 
assigning a non-existing proxy to the headers. In theory, vulnerable applications will try 
to connect to the bad proxy increasing the response time. To reduce false positives we run 
the test several times and we expect the response time from the request with the bad 
proxy to always be greater than normal responses.  

scripts/http-httpoxy.nse
https://goo.gl/e4nRSC]]></description>
		<content:encoded><![CDATA[<p>[NSE] NSE script to detect web apps vulnerable to HTTPoxy<br />
<a href="http://goo.gl/Ttsn9x" rel="nofollow">http://goo.gl/Ttsn9x</a></p>
<p>Attempts to detect web applications vulnerable to &#8220;httpoxy&#8221; (CVE-2016-5385, CVE-2016-5386,<br />
CVE-2016-5387, CVE-2016-5388, CVE-2016-1000109, CVE-2016-1000110).</p>
<p>The script attempts to detect this vulnerability by measuring the response time when<br />
assigning a non-existing proxy to the headers. In theory, vulnerable applications will try<br />
to connect to the bad proxy increasing the response time. To reduce false positives we run<br />
the test several times and we expect the response time from the request with the bad<br />
proxy to always be greater than normal responses.  </p>
<p>scripts/http-httpoxy.nse<br />
<a href="https://goo.gl/e4nRSC" rel="nofollow">https://goo.gl/e4nRSC</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tomi Engdahl</title>
		<link>https://www.epanorama.net/blog/2016/08/05/vulnerability-httpoxy-for-php-go-python-and-others/comment-page-1/#comment-1505713</link>
		<dc:creator><![CDATA[Tomi Engdahl]]></dc:creator>
		<pubDate>Mon, 15 Aug 2016 09:06:56 +0000</pubDate>
		<guid isPermaLink="false">http://www.epanorama.net/newepa/?p=44871#comment-1505713</guid>
		<description><![CDATA[HTTPoxy – the disease that could make your web server spring a leak
https://nakedsecurity.sophos.com/2016/07/19/httpoxy-the-disease-that-could-make-your-web-server-spring-a-leak/

There’s a brand new BWAIN in the house!

BWAIN is our just-a-bit-cynical term for Bug With An Impressive Name, a publicity trend that started just over two years ago with Heartbleed.

Heartbleed was a sort-of pun, given that the bug allowed you to abuse the TLS/SSL heartbeat function to bleed off random chunks of secret data from a vulnerable server.

Everyone loves 15 minutes’ worth of fame, so the BWAIN bug bit security researchers hard, giving us, in quick order, security holes with funky names such as POODLE and LOGJAM, as well as the more dystopian Shellshock, DROWN, and ImageTragick.

Collision avoidance

RFC3875 tries to avoid collisions with a rule like this:

    [Environment variables visible to the CGI subprocess that have] names beginning with “HTTP_” contain values read from the client request header fields, if the protocol used is HTTP. The HTTP header field name is converted to upper case, has all occurrences of “-” replaced with “_” and has “HTTP_” prepended to give the [environment] variable name.

So far, so good…

…but not not all environment variables that start HTTP_ are inherently safe.

For example, many web-friendly programs, including utilities very likely to be used by CGI scripts, treat the environment variable HTTP_PROXY= in a special way: they use it to configure their own proxy settings.

In other words, if I send a booby-trapped web request that just happens to contain an otherwise-pointless HTTP header such as this…

Proxy: http:⁄⁄dodgy.example/crooked_proxy

…then any CGI scripts that process my request will run with this environment variable set:

HTTP_PROXY=http:⁄⁄dodgy.example/crooked_proxy

Any HTTP requests that those scripts generate in turn (for example, to perform a database query or to authenticate a user) will not be processed directly, but will instead be sent off to the server dodgy.example, because of the sneaky and unexpected proxy configuration.]]></description>
		<content:encoded><![CDATA[<p>HTTPoxy – the disease that could make your web server spring a leak<br />
<a href="https://nakedsecurity.sophos.com/2016/07/19/httpoxy-the-disease-that-could-make-your-web-server-spring-a-leak/" rel="nofollow">https://nakedsecurity.sophos.com/2016/07/19/httpoxy-the-disease-that-could-make-your-web-server-spring-a-leak/</a></p>
<p>There’s a brand new BWAIN in the house!</p>
<p>BWAIN is our just-a-bit-cynical term for Bug With An Impressive Name, a publicity trend that started just over two years ago with Heartbleed.</p>
<p>Heartbleed was a sort-of pun, given that the bug allowed you to abuse the TLS/SSL heartbeat function to bleed off random chunks of secret data from a vulnerable server.</p>
<p>Everyone loves 15 minutes’ worth of fame, so the BWAIN bug bit security researchers hard, giving us, in quick order, security holes with funky names such as POODLE and LOGJAM, as well as the more dystopian Shellshock, DROWN, and ImageTragick.</p>
<p>Collision avoidance</p>
<p>RFC3875 tries to avoid collisions with a rule like this:</p>
<p>    [Environment variables visible to the CGI subprocess that have] names beginning with “HTTP_” contain values read from the client request header fields, if the protocol used is HTTP. The HTTP header field name is converted to upper case, has all occurrences of “-” replaced with “_” and has “HTTP_” prepended to give the [environment] variable name.</p>
<p>So far, so good…</p>
<p>…but not not all environment variables that start HTTP_ are inherently safe.</p>
<p>For example, many web-friendly programs, including utilities very likely to be used by CGI scripts, treat the environment variable HTTP_PROXY= in a special way: they use it to configure their own proxy settings.</p>
<p>In other words, if I send a booby-trapped web request that just happens to contain an otherwise-pointless HTTP header such as this…</p>
<p>Proxy: http:⁄⁄dodgy.example/crooked_proxy</p>
<p>…then any CGI scripts that process my request will run with this environment variable set:</p>
<p>HTTP_PROXY=http:⁄⁄dodgy.example/crooked_proxy</p>
<p>Any HTTP requests that those scripts generate in turn (for example, to perform a database query or to authenticate a user) will not be processed directly, but will instead be sent off to the server dodgy.example, because of the sneaky and unexpected proxy configuration.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tomi Engdahl</title>
		<link>https://www.epanorama.net/blog/2016/08/05/vulnerability-httpoxy-for-php-go-python-and-others/comment-page-1/#comment-1505711</link>
		<dc:creator><![CDATA[Tomi Engdahl]]></dc:creator>
		<pubDate>Mon, 15 Aug 2016 09:04:17 +0000</pubDate>
		<guid isPermaLink="false">http://www.epanorama.net/newepa/?p=44871#comment-1505711</guid>
		<description><![CDATA[Tools for testing HTTPoxy Vulnerability
https://www.silverf0x00.com/tools-for-testing-httpoxy-vulnerability/]]></description>
		<content:encoded><![CDATA[<p>Tools for testing HTTPoxy Vulnerability<br />
<a href="https://www.silverf0x00.com/tools-for-testing-httpoxy-vulnerability/" rel="nofollow">https://www.silverf0x00.com/tools-for-testing-httpoxy-vulnerability/</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tomi Engdahl</title>
		<link>https://www.epanorama.net/blog/2016/08/05/vulnerability-httpoxy-for-php-go-python-and-others/comment-page-1/#comment-1505710</link>
		<dc:creator><![CDATA[Tomi Engdahl]]></dc:creator>
		<pubDate>Mon, 15 Aug 2016 09:03:37 +0000</pubDate>
		<guid isPermaLink="false">http://www.epanorama.net/newepa/?p=44871#comment-1505710</guid>
		<description><![CDATA[HTTPoxy – Is your nginx affected?
http://tunnelix.com/httpoxy-is-your-nginx-affected/]]></description>
		<content:encoded><![CDATA[<p>HTTPoxy – Is your nginx affected?<br />
<a href="http://tunnelix.com/httpoxy-is-your-nginx-affected/" rel="nofollow">http://tunnelix.com/httpoxy-is-your-nginx-affected/</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tomi Engdahl</title>
		<link>https://www.epanorama.net/blog/2016/08/05/vulnerability-httpoxy-for-php-go-python-and-others/comment-page-1/#comment-1505709</link>
		<dc:creator><![CDATA[Tomi Engdahl]]></dc:creator>
		<pubDate>Mon, 15 Aug 2016 09:02:57 +0000</pubDate>
		<guid isPermaLink="false">http://www.epanorama.net/newepa/?p=44871#comment-1505709</guid>
		<description><![CDATA[Old HTTPoxy Flaw Exposes Web Applications to Attacks
http://www.securityweek.com/old-httpoxy-flaw-exposes-web-applications-attacks

Researchers discovered that a vulnerability whose existence has been known for 15 years could affect many web applications, allowing malicious actors to launch man-in-the-middle (MitM) attacks.

Dubbed HTTPoxy, the flaw is a namespace conflict issue that affects applications running in Common Gateway Interface (CGI) or CGI-like environments. A website and a logo have been created for HTTPoxy.

The issue has been found to affect Go, PHP, Python, HAProxy, Nginx, Microsoft IIS, Drupal, HHVM, and some Apache products. Mitigation advice and patches have been provided for the affected products. Additionally, companies such as Akamai and CloudFlare have taken steps to protect their customers against potential attacks.

The following CVE identifiers have been assigned so far: CVE-2016-5385 (PHP), CVE-2016-5386 (Go), CVE-2016-5387 (Apache HTTP Server), CVE-2016-5388 (Apache Tomcat), CVE-2016-1000109 (HHVM) and CVE-2016-1000110 (Python).

HTTPoxy was first discovered and fixed in libwww-perl in 2001, and later that year it was also patched in Curl.]]></description>
		<content:encoded><![CDATA[<p>Old HTTPoxy Flaw Exposes Web Applications to Attacks<br />
<a href="http://www.securityweek.com/old-httpoxy-flaw-exposes-web-applications-attacks" rel="nofollow">http://www.securityweek.com/old-httpoxy-flaw-exposes-web-applications-attacks</a></p>
<p>Researchers discovered that a vulnerability whose existence has been known for 15 years could affect many web applications, allowing malicious actors to launch man-in-the-middle (MitM) attacks.</p>
<p>Dubbed HTTPoxy, the flaw is a namespace conflict issue that affects applications running in Common Gateway Interface (CGI) or CGI-like environments. A website and a logo have been created for HTTPoxy.</p>
<p>The issue has been found to affect Go, PHP, Python, HAProxy, Nginx, Microsoft IIS, Drupal, HHVM, and some Apache products. Mitigation advice and patches have been provided for the affected products. Additionally, companies such as Akamai and CloudFlare have taken steps to protect their customers against potential attacks.</p>
<p>The following CVE identifiers have been assigned so far: CVE-2016-5385 (PHP), CVE-2016-5386 (Go), CVE-2016-5387 (Apache HTTP Server), CVE-2016-5388 (Apache Tomcat), CVE-2016-1000109 (HHVM) and CVE-2016-1000110 (Python).</p>
<p>HTTPoxy was first discovered and fixed in libwww-perl in 2001, and later that year it was also patched in Curl.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tomi Engdahl</title>
		<link>https://www.epanorama.net/blog/2016/08/05/vulnerability-httpoxy-for-php-go-python-and-others/comment-page-1/#comment-1505708</link>
		<dc:creator><![CDATA[Tomi Engdahl]]></dc:creator>
		<pubDate>Mon, 15 Aug 2016 09:01:25 +0000</pubDate>
		<guid isPermaLink="false">http://www.epanorama.net/newepa/?p=44871#comment-1505708</guid>
		<description><![CDATA[15-year-old security hole HTTPoxy returns to menace websites – it has a name, logo too
So you know it&#039;s really scary
http://www.theregister.co.uk/2016/07/18/httpoxy_hole/

A dangerous easy-to-exploit vulnerability discovered 15 years ago has reared its head again, leaving server-side website software potentially open to hijackers.

The Apache Software Foundation, Red Hat, Ngnix and others have rushed to warn programmers of the so-called httpoxy flaw, specifically: CVE-2016-5385 in PHP; CVE-2016-5386 in Go; CVE-2016-5387 in Apache HTTP server; CVE-2016-5388 in Apache TomCat; CVE-2016-1000109 in PHP-engine HHVM; and CVE-2016-1000110 in Python.

This security hole, present in various web apps and libraries, can be exploited to rummage around backstage of vulnerable websites, and potentially access sensitive data or seize control of the code.

Basically, you abuse the Proxy HTTP header in a request to the application to set a common environment variable called HTTP_PROXY on the application&#039;s server. The app then, due to a naming conflict, uses the proxy server defined by that variable for any of its outgoing HTTP connections.

So, if you point HTTP_PROXY at a malicious server, you can intercept the web app&#039;s connections to other systems and, depending on how the code is designed, potentially gain remote code execution. It hinges on whether or not the app makes outgoing connections as part of its operation, and if these can be usefully exploited.

&quot;If you&#039;re running PHP or CGI, you should block the Proxy header now,&quot;

&quot;httpoxy is extremely easy to exploit in basic form, and we expect security researchers to be able to scan for it quickly. If you&#039;re not deploying code, you don&#039;t need to worry,&quot; added Scheirlinck.

Quick and easy mitigations are available, with the best being to block Proxy request headers before they hit applications and to use HTTPS for connections between systems.

A longer-term fix is to not trust HTTP_PROXY under CGI. Developers of web apps, plugins and libraries in need of patching should obtain a Distributed Weakness Filing Project number or apply for a CVE number from MITRE.]]></description>
		<content:encoded><![CDATA[<p>15-year-old security hole HTTPoxy returns to menace websites – it has a name, logo too<br />
So you know it&#8217;s really scary<br />
<a href="http://www.theregister.co.uk/2016/07/18/httpoxy_hole/" rel="nofollow">http://www.theregister.co.uk/2016/07/18/httpoxy_hole/</a></p>
<p>A dangerous easy-to-exploit vulnerability discovered 15 years ago has reared its head again, leaving server-side website software potentially open to hijackers.</p>
<p>The Apache Software Foundation, Red Hat, Ngnix and others have rushed to warn programmers of the so-called httpoxy flaw, specifically: CVE-2016-5385 in PHP; CVE-2016-5386 in Go; CVE-2016-5387 in Apache HTTP server; CVE-2016-5388 in Apache TomCat; CVE-2016-1000109 in PHP-engine HHVM; and CVE-2016-1000110 in Python.</p>
<p>This security hole, present in various web apps and libraries, can be exploited to rummage around backstage of vulnerable websites, and potentially access sensitive data or seize control of the code.</p>
<p>Basically, you abuse the Proxy HTTP header in a request to the application to set a common environment variable called HTTP_PROXY on the application&#8217;s server. The app then, due to a naming conflict, uses the proxy server defined by that variable for any of its outgoing HTTP connections.</p>
<p>So, if you point HTTP_PROXY at a malicious server, you can intercept the web app&#8217;s connections to other systems and, depending on how the code is designed, potentially gain remote code execution. It hinges on whether or not the app makes outgoing connections as part of its operation, and if these can be usefully exploited.</p>
<p>&#8220;If you&#8217;re running PHP or CGI, you should block the Proxy header now,&#8221;</p>
<p>&#8220;httpoxy is extremely easy to exploit in basic form, and we expect security researchers to be able to scan for it quickly. If you&#8217;re not deploying code, you don&#8217;t need to worry,&#8221; added Scheirlinck.</p>
<p>Quick and easy mitigations are available, with the best being to block Proxy request headers before they hit applications and to use HTTPS for connections between systems.</p>
<p>A longer-term fix is to not trust HTTP_PROXY under CGI. Developers of web apps, plugins and libraries in need of patching should obtain a Distributed Weakness Filing Project number or apply for a CVE number from MITRE.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tomi Engdahl</title>
		<link>https://www.epanorama.net/blog/2016/08/05/vulnerability-httpoxy-for-php-go-python-and-others/comment-page-1/#comment-1505707</link>
		<dc:creator><![CDATA[Tomi Engdahl]]></dc:creator>
		<pubDate>Mon, 15 Aug 2016 08:59:48 +0000</pubDate>
		<guid isPermaLink="false">http://www.epanorama.net/newepa/?p=44871#comment-1505707</guid>
		<description><![CDATA[Responsible disclosure of latest named vulnerability, &#039;httpoxy&#039;
http://searchsecurity.techtarget.com/news/450300551/Responsible-disclosure-of-latest-named-vulnerability-httpoxy]]></description>
		<content:encoded><![CDATA[<p>Responsible disclosure of latest named vulnerability, &#8216;httpoxy&#8217;<br />
<a href="http://searchsecurity.techtarget.com/news/450300551/Responsible-disclosure-of-latest-named-vulnerability-httpoxy" rel="nofollow">http://searchsecurity.techtarget.com/news/450300551/Responsible-disclosure-of-latest-named-vulnerability-httpoxy</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tomi Engdahl</title>
		<link>https://www.epanorama.net/blog/2016/08/05/vulnerability-httpoxy-for-php-go-python-and-others/comment-page-1/#comment-1505706</link>
		<dc:creator><![CDATA[Tomi Engdahl]]></dc:creator>
		<pubDate>Mon, 15 Aug 2016 08:59:23 +0000</pubDate>
		<guid isPermaLink="false">http://www.epanorama.net/newepa/?p=44871#comment-1505706</guid>
		<description><![CDATA[How to fix Httpoxy a CGI PHP/Nginx/Apache/Go application vulnerability on Linux or Unix
http://www.cyberciti.biz/faq/fix-httpproxy-cgi-application-vulnerability-for-linux-unix-apache-nginx-python-php/

This attack use HTTP_PROXY for Man-in-the-Middle” attack. The following web servers, web frameworks and programming languages are affected:

    Go lang (CVE-2016-5386)
    PHP lang (CVE-2016-5385)
    HHVM (CVE-2016-1000109)
    Python (CVE-2016-1000110)
    Apache Tomcat (CVE-2016-5388)
    Servers Apache (CVE-2016-5387)/Nginx/Varnish/Httpoxy.
    Disro – RHEL and CentOS and others.]]></description>
		<content:encoded><![CDATA[<p>How to fix Httpoxy a CGI PHP/Nginx/Apache/Go application vulnerability on Linux or Unix<br />
<a href="http://www.cyberciti.biz/faq/fix-httpproxy-cgi-application-vulnerability-for-linux-unix-apache-nginx-python-php/" rel="nofollow">http://www.cyberciti.biz/faq/fix-httpproxy-cgi-application-vulnerability-for-linux-unix-apache-nginx-python-php/</a></p>
<p>This attack use HTTP_PROXY for Man-in-the-Middle” attack. The following web servers, web frameworks and programming languages are affected:</p>
<p>    Go lang (CVE-2016-5386)<br />
    PHP lang (CVE-2016-5385)<br />
    HHVM (CVE-2016-1000109)<br />
    Python (CVE-2016-1000110)<br />
    Apache Tomcat (CVE-2016-5388)<br />
    Servers Apache (CVE-2016-5387)/Nginx/Varnish/Httpoxy.<br />
    Disro – RHEL and CentOS and others.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tomi Engdahl</title>
		<link>https://www.epanorama.net/blog/2016/08/05/vulnerability-httpoxy-for-php-go-python-and-others/comment-page-1/#comment-1505253</link>
		<dc:creator><![CDATA[Tomi Engdahl]]></dc:creator>
		<pubDate>Fri, 12 Aug 2016 12:41:40 +0000</pubDate>
		<guid isPermaLink="false">http://www.epanorama.net/newepa/?p=44871#comment-1505253</guid>
		<description><![CDATA[Tools for testing HTTPoxy vulnerability
https://github.com/silverfoxy/HTTPoxy-Test-Tools]]></description>
		<content:encoded><![CDATA[<p>Tools for testing HTTPoxy vulnerability<br />
<a href="https://github.com/silverfoxy/HTTPoxy-Test-Tools" rel="nofollow">https://github.com/silverfoxy/HTTPoxy-Test-Tools</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tomi Engdahl</title>
		<link>https://www.epanorama.net/blog/2016/08/05/vulnerability-httpoxy-for-php-go-python-and-others/comment-page-1/#comment-1505251</link>
		<dc:creator><![CDATA[Tomi Engdahl]]></dc:creator>
		<pubDate>Fri, 12 Aug 2016 12:40:21 +0000</pubDate>
		<guid isPermaLink="false">http://www.epanorama.net/newepa/?p=44871#comment-1505251</guid>
		<description><![CDATA[HTTPOXY Vulnerability: How to protect and test your web server
https://www.howtoforge.com/tutorial/httpoxy-protect-your-server/

1.1 General solution

The recommended solution at the moment is to unset or filter the HTTP_PROXY header variable. This is done in apache with the mod_headers module and this configuration statement:

RequestHeader unset Proxy early

On Nginx you can use this line to unset the HTTP_PROXY variable.

fastcgi_param HTTP_PROXY &quot;&quot;;

5 Test

Finally, you should test if your server is safe now. Luke Rehman has developed a nice online testing tool which can be found here: https://httpoxy.rehmann.co/

Enter the URL to your server or website in the tool and click on the &quot;test&quot; button.]]></description>
		<content:encoded><![CDATA[<p>HTTPOXY Vulnerability: How to protect and test your web server<br />
<a href="https://www.howtoforge.com/tutorial/httpoxy-protect-your-server/" rel="nofollow">https://www.howtoforge.com/tutorial/httpoxy-protect-your-server/</a></p>
<p>1.1 General solution</p>
<p>The recommended solution at the moment is to unset or filter the HTTP_PROXY header variable. This is done in apache with the mod_headers module and this configuration statement:</p>
<p>RequestHeader unset Proxy early</p>
<p>On Nginx you can use this line to unset the HTTP_PROXY variable.</p>
<p>fastcgi_param HTTP_PROXY &#8220;&#8221;;</p>
<p>5 Test</p>
<p>Finally, you should test if your server is safe now. Luke Rehman has developed a nice online testing tool which can be found here: <a href="https://httpoxy.rehmann.co/" rel="nofollow">https://httpoxy.rehmann.co/</a></p>
<p>Enter the URL to your server or website in the tool and click on the &#8220;test&#8221; button.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
