MONSTER COOKIES can nom nom nom ALL THE BLOGS
Blog networks can be force-fed more than they can chew
Giant cookies could be used to create a denial of service (DoS) on blog networks, says infosec researcher Bogdan Calin.
Such an attack would work by feeding users cookies with header values so large that they trigger web server errors.
Calin created a proof of concept attack against the Google Blog Spot network after a customer reported problems with internal security testing. In his subsequent tests, he found that if one sends many cookies to a browser, sets them to never expire and includes pointers to a blog network's root domain, the user won't ever be able to see any blogs on the service.
Victims can tell if supersized cookies have been stuffed down their browser's throats when 400 errors such as "Your browser sent a request that this server could not understand. Size of a request header field exceeds server limit" appear.
Sydney security bod Wade Alcorn (@WadeAlcorn) said the attack would work if custom cookies could be set.
"This attack, denial-of-service by cookies, sets many long cookies, forcing the browser to create a very long request [that] is too long for the server to handle, and simply returns an error page," Alcorn said.
"The vulnerable browser won’t be able to visit that origin until the cookies are cleared.
"When a browser visits one of these [user-controlled] subdomains it will allow a cookie to be set on the parent domain [which] means that when a denial-of-service by cookies attack is launched, the victim browser will not be able to visit the parent domain or any of the subdomains."
For an application to be vulnerable it must provide an opportunity for the attacker to set custom cookies in the victim’s browser, Alcorn pointed out.
Chrome users were not affected when perusing Blog Spot but were on other unnamed domains.
Alcorn said a Google security rep told him the risk was a problem for web browser developers to fix, rather than a lone web app providers, and welcomed ideas that could squash the vector. ®