On Tuesday, August 30, 2011 1:10:07 PM UTC-4, Phyo Arkar wrote:
>
> Wow
>
> thanks alot for the notice Anthony , thats such a big security hole.
>
> So , putting response.generic_patterns =  ['json']  inside db.py ,
> will still re-open that vulnerability?
>
Yes, that would still be vulnerable. 

>
> Putting it on all views that return Json will be the safest?
>

Yes. In general, you can take one of two approaches (or some combination):

   - Be selective about which generic_patterns you enable for which specific 
   requests -- only enable the specific generic views you need for specific 
   functions.
   - Make sure your controller functions return only the variables and 
   database records and fields that you are comfortable exposing to the public 
   via generic views (i.e., don't return anything to the view that is not 
   needed or is needed only conditionally for some authorized users). For 
   example, in the view, don't do something like {{if auth.user:}}{{show 
   some sensitive data returned by the controller action}} -- a generic view 
   will expose the sensitive data because it won't check for auth.user.

Anthony

>

Reply via email to