|
It must be mentioned here that, in its advisory, the ASF had mentioned several workarounds to mitigate against the bug being exploited. The Debian patch is based on these workarounds.
The ASF did not respond to a request for comment from iTWire.
If a web server running Apache is sent a large number of requests for overlapping byte regions of a single file download, that server would run out of memory and be rendered unable to do its job.
The Debian advisory, issued by Stefan Fritsch on behalf of the security team, said the fix issued patched both the problem with Range header and also an older bug.
Debian has a number of streams of development and a fix for the testing stream is yet to be issued. All other streams have been patched.
Once the upstream developers issue a fix, it normally takes at least 12 to 24 hours for each Linux distribution to issue its own specific fix; the same applies to other platforms.
Rick Moen, a seasoned UNIX systems administrator from California, said it was likely that the Apache developers were taking their time as the workarounds suggested by them had fixed the problem.
"It seems there is still ongoing discussion of what mix of limitations on the Range function are best used in the 2.2.x production releases, of the several that are already used in 2.3.x beta versions plus several others," Moen said.
"The developers seem to be simultaneously aware that they're overdue on the promised update, and also that it really doesn't matter much, since people have already deployed the suggested workarounds."
|
Moen said that the bug was not so much an Apache vulnerability, as one in the httpd protocol itself. "That is, (the) IETF (Internet Engineering Task Force) included that functionality in the HTTP 1.1 specification (RFC 2616), apparently not mindful of its abuse possibilities. There has been discussion of those possibilities for the past four years, but with no urgency until the recent emergence of an extremely efficient attack script, that can overwhelm a server by requesting many tiny overlapping byte ranges, each requested to be gzipped."
Polish security researcher Michal Zalewski warned of the possibility of this bug being exploited more than four years ago, pointing out that both Apache and Microsoft's Internet Information Services (IIS) had what he described as "a bizarro implementation of HTTP/1.1 'Range' header functionality".
"Their implementations allow the same fragment of a file to be requested an arbitrary number of times, and each redundant part to be received separately in a separate multipart/byteranges envelope," Zalewski said in a post to the Bugtraq security mailing list.
Moen added that the Apache httpd was targeted because of its popularity and its storage of pending requests in-RAM in internal "bucket brigades". "Some of the upcoming improvements will make Apache handle its 'bucket brigades' more efficiently, but the larger problem is the one inherent in HTTP itself. IETF have begun a task to refine RFC 2616's definition of Range requests to reduce their ability to be abused for DoSing."
He said it was an interesting question whether other HTTP daemons might be similarly vulnerable to DoS, simply on account of correctly implementing RFC 2616.
"This would hardly be the first time that real-world considerations lead to curtailing of Internet functionality mandated by RFCs that have become too widely abused. For example, in RFC 5321, one of the internet standards defining SMTP, sections 2.3.5, 3.1, 4.1.1.3, and 4.5.1 require that any internet domain handling SMTP mail accept all mail addressed to 'postmaster', as a point of contact for mail problems.
"Similarly, RFC 2142 section 1, paragraph 1, and section 5 require that such Internet domains accept all mail addressed to 'abuse' as a point of contact about inappropriate public user behaviour. _However_, because of the spam problem, most diligent postmasters aggressively block spam inbound to 'postmaster' and 'abuse'; otherwise, those mailboxes would quickly become unreadable.
"In fact, a number of large providers starting with Google's GMail no longer respect those RFCs at all: Google requires that anyone seeking to report GMail user misbehaviour fill out a rather irksome web form, an outright violation of RFC 2142's letter and spirit."
Apache is by far the most widely used web server software and runs on all major operating systems. According to the internet services company, Netcraft, which conducts a monthly web survey, a little less than two-thirds of the websites it received a response from in August - a total of 301,771,518 - were running Apache. Responses were received from 463,000,317 sites in all.