I tried to send the bad curl request to our servers (test env, obviously) and I didn't get any error. It seems I should be getting "Requested Range Not Satisfiable" if the server is vulnerable and "The request has an invalid header name" if it's patched. I'm getting neither, simply a normal response HTTP 200 with the requested page. Anyone knows how to really test it? EDIT : It is indeed related to "Output Cache" set…
I just crashed a 2008 R2 server without a rule, just with "Enable Kernel Caching". Not sure if it is relevant, but I first added a rule for .png, and then removed it again. Still worked.
Remote Kernel Code Execution Via HTTP Request In IIS On Windows
141–150 of 201 posts
Re: Remote Kernel Code Execution Via HTTP Request In IIS On Windows
#142http://en.wikipedia.org/wiki/Wheat_and_chessboard_problem
Edit: 2^64 - 1
Re: Remote Kernel Code Execution Via HTTP Request In IIS On Windows
#143Re: Remote Kernel Code Execution Via HTTP Request In IIS On Windows
#144But does it have a catchy name yet? I suggest: Long-range
Re: Remote Kernel Code Execution Via HTTP Request In IIS On Windows
#145Re: Remote Kernel Code Execution Via HTTP Request In IIS On Windows
#146Re: Remote Kernel Code Execution Via HTTP Request In IIS On Windows
#147 if (inclusiveEnd + 1 > size) {
return ERR_INVALID;
}
HTTP ranges are inclusive, and most likely implemented here with unsigned 64 bit integers. My guess is the author converted to exclusive range, then compared with size, as a form of validation. It passes the check, because 18446744073709551615 + 1 results in wraparound to 0.The general solution is instead to use something like:
if (size size - offset) {
... // range violated
}
But you hardly ever see people do that.Re: Remote Kernel Code Execution Via HTTP Request In IIS On Windows
#148Re: Remote Kernel Code Execution Via HTTP Request In IIS On Windows
#149Earlier quoted context omitted.
SYSTEM account is far more powerful than Administrator, especially after Win2008
This page makes it sound easy to go from the one to the other: http://blogs.technet.com/b/askds/archive/2008/10/22/getting-... (not as easy as earlier versions, but still)
Re: Remote Kernel Code Execution Via HTTP Request In IIS On Windows
#150Earlier quoted context omitted.
I just crashed a 2008 R2 server without a rule, just with "Enable Kernel Caching". Not sure if it is relevant, but I first added a rule for .png, and then removed it again. Still worked.
Can't edit the top comment anymore :( but it has been found that indeed no rules are needed to exploit this (my previous answer is outdated and wrong!) If you can't afford to reboot your servers right now to install the patch, at least you can add this to your web.config and deploy your websites ASAP :