Thanks David for your continued effort on this!

Jacques

From: "David E Jones" <[email protected]>

On Mar 5, 2009, at 2:55 PM, David E Jones wrote:

One thing that we could do to help with this problem, at least for secure pages, is to tighten things up a bit. I'm thinking of 2 things:

1. if a request has https=true then we will not accept http requests AT ALL, we will just return an error message (currently if it is a form submission we just accept it)

2. if a request has https=true we will ONLY pass encrypted data (ie body parameters, not URL parameters) to the service it calls; events may need to be changed to better support this since they have direct access to the request object, but for services we can easily filter this out; that means URL parameters will be ignored in secure requests that call services

These things, and perhaps others, would help this problem a lot for secure requests. For non-secure requests... well they aren't very secure anyway! ... and they would continue to be more vulnerable to XSRF attacks too.

In SVN rev 751501 I have implemented both of these.

For #2 there could be some forms that this breaks. I couldn't find any, but if a form sent via POST has URL parameters as well as the form/body parameters and a URL parameter is the same name as an IN parameter for the service being called it will result in an error. Basically with forms all parameters should go in form/body fields (which is our common practice, and which is more secure anyway since URL parameters are not encrypted).

-David


Reply via email to