ajax - Avoiding XSS/XSRF attacks with static parameters -
i have ajax requests follow basic pattern:
function(visitorid, sessionid, ...parameters more specific method call..)
the visitor , session id randomly generated server side. visitor , session ids used validate real visitor live session in our software. 1 method signature:
function(visitorid, sessionid, issueid)
returns state (open, closed, waiting, etc) of current customer's issue represented int
. today got flagged security report 1 of our customers stating particular method vulnerable cross site request forgery because
the test result seems to indicate a vulnerability because the same request was sent twice in different sessions, and the same response was received. this shows that none of the parameters are dynamic (session identifiers are sent only in cookies) and therefore that the application is vulnerable to csrf.
a couple things note:
these methods available post requests, if matters.
a "session" in our software not tied session browser, or iis. our software windows service, iis go down, browser close, , retain session until our internal session tracker determines time rid of it.
3.the ajax request being sent wcf service relays request our windows sevice.
this has me scratching head because majority of our methods follow pattern of static parameters, tend return unique data. makes me wonder if return state along random data potentially pass security test, doesnt seem right. best way approach this?
the best reply report, explaining how sessions work , result "detection" false positive.
a significant number of "vulnerability reports" "consultants" repackaged results misconfigured or confused scanner such hp appscan. don't need change code "comply" there no real issue.
just mention "false positive" , see :)
Comments
Post a Comment