November 2013 Web Server Survey

In the November 2013 survey we received responses from 785,293,473 sites, reflecting net growth of more than 18 million sites since last month.

Microsoft experienced the largest gains this month, with an additional 13.2 million sites taking its market share up by 1.15 percentage points. In contrast to recent trends, nginx's market share fell by more than 2 percentage points to 14.0% after it lost 13.1 million sites. Despite the absolute gain at Microsoft being almost the same as the number of lost nginx sites, this is merely a coincidence — only 1.2 million nginx sites actually switched to using IIS this month (0.8 million of which opted for IIS 6.0), whereas 1.4 million switched to Apache. 23 million nginx sites that were present in last month's survey have since expired, including a large number of .ru domains previously hosted by Hetzner Online.

nginx enjoyed better fortunes amongst the million busiest sites, where it extended its market share by 0.22 percentage points to 15.31%, placing it 2.46 points ahead of Microsoft. File sharing site has recently started displaying an nginx Server header; previously the site did not reveal which server software it was running, and New Zealand Post has switched from Apache to nginx.

Google's market share went up to 4.81% this month (+0.36) after gaining 3.6 million sites, and could be set to grow even further now that the Google App Engine PHP runtime is widely available. In January, 244 million sites were using PHP (mostly on Apache), highlighting the strong demand. Once a PHP application has been deployed on App Engine, it can make direct use of Google Cloud Storage through existing PHP filesystem functions such as fopen and file_put_contents.

Google is specifically targeting WordPress users to migrate to App Engine — Google have produced an App Engine plugin for WordPress to allow it to interact with App Engine-specific services such as mail and storage. Google cites as one of the early adopters of the App Engine PHP runtime, having moved from nginx running on Amazon EC2. Vice's in-house content management system is powered by the Yii PHP framework, and was moved fully over to App Engine during a limited preview period.

DeveloperOctober 2013PercentNovember 2013PercentChange
Continue reading blocked by Google: False positive or not?

Rasmus Lerdorf – the creator of PHP – is currently trying to get Google to stop blocking the whole website after it was suspected of containing malware. In a tweet earlier this morning, Rasmus posted a screenshot and suggested that the block was caused by a false positive:

Google's Webmaster Tools flag the inclusion of the script at as suspicious, although this file currently appears benign. However, Google's Safe Browsing diagnostics for do suggest that malware has been present on the site in the last 90 days:

"Of the 1513 pages we tested on the site over the past 90 days, 4 page(s) resulted in malicious software being downloaded and installed without user consent."

The block was added to add chunk 127721 in the Google Safe Browsing goog-malware-shavar list. At the time of writing, is still blocked in Firefox and Chrome, both of which make use of Google's blocklist. Visiting from a Google search results page or the bitly URL shortener causes an interstitial warning page to be displayed.

A seemingly benign, yet obfuscated, JavaScript file called functions.js was removed from the PHP website repository this morning. The developer behind this change speculated that the file "Could be the reason why Google is blocking us today.."

However, a short moment ago, a Hacker News user posted some obfuscated JavaScript that was found appended to a possibly cached version of the userprefs.js script, suggesting that the website may have been compromised recently. The obfuscated JavaScript inserts an iframe into the webpage, which loads content from an external site known for distributing malware. Google Chrome blocks the inclusion of any content from known malware domains, although the injected content in this case no longer appears to be accessible.

Using Firebug to display the injection point of the iframe (iframe has been moved to a visible location)

Update [Monday 28th October]: The administrators of have since confirmed that two web servers were compromised and at least one was serving malware. The affected servers have been taken offline and the SSL certificate in use has been revoked by Comodo. The PHP source packages and code repository were reportedly not compromised.

US Government aiding spying… against itself

Partly as a consequence of the US Government shutdown, there are presently more than two hundred .gov websites using expired SSL certificates. Although the shutdown is expected to be a short term measure, the widespread use of expired certificates on .gov sites may cause long term harm. The US Government is effectively training its citizens and employees to click through SSL warnings, and once the users of a website treat SSL error messages as normal, attackers may be able to perform otherwise difficult man-in-the-middle attacks.

The situation is exacerbated by the behaviour of some mainstream browsers which do not faithfully warn the user of the most serious problem in scenarios where two or more errors are present.

An SSL error message presented on EV-enabled in Google Chrome.

When an SSL error occurs, some browsers only display a single error message, sometimes not the most serious, or even a generic error message for all types of SSL error. An attacker can exploit this vulnerable browser behaviour on SSL sites with expired certificates to perform an almost seamless man-in-the-middle attack. By signing his own expired SSL certificate for a US government website, the SSL error message displayed for the attacker's SSL certificate is indistinguishable (in some browsers) from the error message produced by the real SSL certificate belonging to the US Government. Citizens accustomed to seeing the "expired" error message will happily proceed with a connection using the attacker's expired (and untrusted) certificate, unwittingly communicating with the attacker instead of the US Government.

By testing an expired certificate signed by an expired untrusted issuer, Netcraft found that whilst some browsers are vulnerable, Internet Explorer is not as it correctly displays both error messages. Google Chrome on Windows and OS X displays the more serious error message but does not display a warning about the expiry. All other tested browsers displayed either a generic error message or did not mention that the issuing CA is not widely trusted. Generic error messages are dangerous if they hide the severity of the SSL error from the user: a change in the type of the SSL error (from expiry to an untrusted issuer) will not be noticed. The tested website contained in the screenshots below is not on a .gov domain, but demonstrates browser behaviour with an untrusted and expired CA certificate with an expired end-entity certificate.

Google Chrome displaying an error message for an expired SSL certificate issued by an untrusted CA. From left to right: Windows, Mac OS X, Linux, and Android.

Google Chrome's behaviour is not consistent across its supported platforms: on Windows and Mac OS X it displays the most serious SSL error message, namely that an untrusted issuer has signed this SSL certificate. On Linux and Android, however, Google Chrome displays an error message about the expired certificate and does not mention the untrusted issuer. By reading the error message and accepting the risks of trusting an expired certificate, a user may unwittingly trust an SSL certificate that was not issued by a widely trusted CA.

Internet Explorer and Opera displaying an error message for an expired SSL certificate issued by an untrusted CA.

On Windows, Internet Explorer correctly presented both applicable error messages. Opera presented the more serious error message though only after viewing an additional dialogue box. Once a user is accustomed to accepting Opera's generic error message, any other type of SSL error on the same website is unlikely to be noticed. Internet Explorer, Google Chrome, and Opera all use Microsoft's CryptoAPI on the Windows platform which may explain their similar behaviour.

Firefox displaying an error message for an expired SSL certificate issued by an untrusted CA.

Firefox, which displays a generic error message for most SSL errors, has further information hidden by default. For an expired certificate issued by an untrusted and expired CA, Firefox's error message refers only to expired certificates (both the CA and end-entity certificates) and does not make any mention of the issuer not being a widely-trusted CA. Hidden details mean that a user having seen the same error message on the .gov website may not notice a change in the category of the SSL error message.

Safari (on OS X and iOS) displaying an error message for an expired SSL certificate issued by an untrusted CA.

Safari on OS X, like both Firefox and Opera displays a generic error message. If the message is expanded, Safari displays an error message based on the expired certificate and will also highlight the lack of trust in the issuer. Safari on iOS 7 displays a generic error message, "Not trusted", for many types of SSL certificate error — it is difficult to tell what is wrong with the SSL certificate without examining the certificate in detail.

Even without the "training" from the US Government, the click-through rate of different SSL messages has been demonstrated to be very high. For Firefox, which doesn't display full error messages by default, Akhawe and Porter Felt found SSL error messages were bypassed in 85% of cases: 87% for untrusted issuer messages and 81% for expired certificate errors. Paradoxically, in Google Chrome expired certificate error messages were dismissed 57% of the time whereas error messages for an untrusted issuer (the more serious problem) were dismissed in 82% of studied cases.

Phishers using CloudFlare for SSL

Some Content Delivery Networks (CDNs) enable fraudsters to deploy phishing attacks with valid SSL certificates. Not only does this make the fraudulent sites appear more credible, but they also benefit from the fast response times provided by the CDN.

A Turkish phishing site using CloudFlare (site has since been taken down)

The phishing site on is targeted at Turkcell customers — visitors to the phishing site are asked for their phone number, bank name, credit card details, and password. As CloudFlare's SSL feature is only available on paid accounts (which start at $20/month), the fraudster may have used an early victim's credit card to purchase the Pro plan.

Netcraft is currently blocking hundreds of phishing attacks which use CloudFlare's content delivery network, including some which use CloudFlare-provided SSL certificates. So far this year, Netcraft has blocked more than 2,000 phishing attacks using Cloudflare's infrastructure, of which approaching 200 used SSL.

CloudFlare's SSL certificates make use of the Subject Alternative Name (SAN) extension, which allows an edge node to use a single certificate for multiple domains. In the case of, the edge node presented a certificate which had a common name (CN) of "", but also included the domain along with the domains of many other CloudFlare customers.

An SSL certificate used by a CloudFlare edge node server. It is valid for multiple domains belonging to its customers.

The multi-domain SSL certificates used by CloudFlare edge nodes are issued by GlobalSign. Rather than using Server Name Identification (SNI) — which would allow an individual certificate to be used for each website on a single IP address — CloudFlare uses GlobalSign's Cloud product to work around a lack of support for SNI in Internet Explorer on Windows XP and some mobile browsers. The two companies announced their partnership less than a year ago, and GlobalSign's own website uses CloudFlare, as do its OCSP and CRL services.

Some of the SSL phishing sites on CloudFlare that have been blocked by Netcraft have used deceptive domain names, such as, and Last month, a similarly deceptive domain name and SSL certificate issued by Network Solutions was used in a phishing attack against customers of Chase Bank.

Domain registrars and certificate authorities can reduce the likelihood of new domains and certificates being used for fraudulent activities. Netcraft's Domain Registration Risk service identifies domains which are deceptively similar to legitimate websites run by banks and other institutions that are commonly targeted by phishing attackers.

October 2013 Web Server Survey

In the October 2013 survey we received responses from 767,234,152 sites, an increase of 28.2M.

Apache experienced another significant loss, 1.8M hostnames, and saw its market share drop to 45% — the lowest it has been for over 15 years. The last time Apache's market share stood at 45% was in January 1998, at which time it served 830k hostnames. Despite gaining 18M new sites this month, 16M sites previously served by Apache no longer exist and a further 4M sites have moved to other web servers, including 1.5M sites to nginx and 420k sites to Microsoft. This loss was also seen in the SSL survey in which Apache lost 5.8k sites, but it continues to be the largest web server with 43% of the SSL market.

Microsoft saw the largest growth, gaining a net 16.5M hostnames. In May, it seemed inevitable that nginx would shortly match Microsoft in the number of sites served — there was just a single percentage point separating them. Microsoft’s growth has since accelerated however, and Microsoft now stand almost 5 percentage points above nginx. The next version of Microsoft's web server, IIS/8.5, has now been released to MSDN and TechNet subscribers ahead of the public release on the 18th October. More than 600 sites are already served by IIS/8.5, up 60% over last month.

Nginx gained 11.4M hostnames overall this month. Included in this was a net gain of 1.5M hostnames from Apache and a net loss of 340k hostnames to Microsoft. Among the top million, nginx gained 4.4k hostnames and the server is used by 15% of the top million sites.

All major server vendors suffered losses in the active sites metric resulting in a net decrease of 780k active sites, 664k of which belongs to Apache. In June 2000, when Netcraft started measuring active sites, 44% of sites were deemed active. The gap between the number of hostnames and active sites has been steadily increasing, and now the number of active sites account for less than a quarter of all sites.

ICANN signed 30 registry agreements for new top level domains in September. New gTLDs added this month include .reviews and .technology. General availability for domain registration of new gTLDs will begin in early 2014. The last new TLD to be seen in the wild is .post, a sponsored TLD first seen in October 2012. There were just 4 .post domains seen in the survey this month.

DeveloperSeptember 2013PercentOctober 2013PercentChange
Continue reading

President Obama forgets to renew SSL certificate

At the start of the first US Government shutdown since 1996, an SSL certificate used on has expired. Issued by Go Daddy in September 2012, the SSL certificate for * and was used by Organizing for Action, a non-profit grassroots organisation aligned with Obama's political policies. Whilst not directly associated with the US Government, the expiry of the SSL certificate for during a US Government shutdown is nonetheless a curious coincidence.

Warning in Google Chrome when visiting a website using the SSL certificate for *

Several SSL certificates controlled by the US Government expired today and are still being used — for example, the SSL certificates used on both and have expired and may not be replaced any time soon. Furthermore, there are at least 30 US Government sites still using SSL certificates that are scheduled to expire before Friday.

SSL certificates expiring may be least of the problems for US Government websites, some websites have been taken offline: now redirects to