Anatomy of an Attack: How I Hacked StackOverflow (2012)
blog.ircmaxell.com
blog.ircmaxell.com
This same issue exists on many VoIP networks as they share the same broken parsing ideas (in SIP).
1: HTTP allows you to line wrap headers and add comments. It's stupidly bizarre. It comes from the 70s or 60s where you wouldn't have a client program, so human-formatted headers weren't just a debug benefit, but a necessary requirement. The IETF can be rather clueless, so they blindly copy these terrible ideas into new protocols, like HTTP and SIP.
There's a lot of historical header abuse caused by the fact that HTTP sort of shared a syntax with email MIME headers, but HTTP implementations have generally started treating such abuses as malformed. (MIME on the other hand still hasn't. It's actually quite gory.)
Lesson learned: Add more "layers" of security.
As far as browsers go, only Internet Explorer lacks SOCKS5 support. And I doubt an office which such stringent header filtering has an IT department that doesn't provide people with proper browsers...
> But IIS was misconfigured to rewrite Remote_Addr from X-Forwarded-For if it existed.
Does anyone know why that might've happened? Is this something IIS does by default, something it inadvertently encourages, etc.? And is there another example of a web server doing something like this?
Now THAT would be an awesome screenshot.
Considering it'd be looking at live data, I would be somewhat freaked out if censor bars weren't present.
As an aside, I find this phrase strange, given the context:
"The SO team was absolutely incredible to deal with during this. They were fast, responsive and reasonable."
Also I'm pretty sure that I've read much more StackExchange vulnerabilities as there are listed here.
Its not like he just bought an iPhone which had a flaw and he was happy with the customer service that resolved the issue, but it reads like that.
To be more blunt, he is using rhetoric in his article, probably acquired through osmosis from reading other articles, without actually realizing that the rhetoric doesn't apply to his situation.