I know that to protect web applications from Cross Site Request Forgery, the only secure method is implementing a CSRF token. My question is, isn't it possible to use the CSRF token to track sessions also? Why should we implement a different session id to track the sessions?
What is the purpose of using a session id when csrf protection is already implemented?
2.3k views Asked by Anonymous Platypus At
1
There are 1 answers
Related Questions in SESSION
- project version in .exe-filename
- Modifying AndroidManifest.xml with build tag causes infinite rebuilding in Eclipse
- Versioned containers
- Adding some automatic versioning to CSS files. How come I'm not able to pull assembly info?
- How to commit subversion revision with every commit in order to refer between two repositories
- Forcing the browser to reload css/js only if they have changed
- Best way to specify version in REST service calls
- How to auto increase versioning so that browser can automatically reload the JS/CSS files without having to clear the cache manually
- PHP Get version from url
- In a Golang application, how to embed a version in a other package than main?
Related Questions in COOKIES
- project version in .exe-filename
- Modifying AndroidManifest.xml with build tag causes infinite rebuilding in Eclipse
- Versioned containers
- Adding some automatic versioning to CSS files. How come I'm not able to pull assembly info?
- How to commit subversion revision with every commit in order to refer between two repositories
- Forcing the browser to reload css/js only if they have changed
- Best way to specify version in REST service calls
- How to auto increase versioning so that browser can automatically reload the JS/CSS files without having to clear the cache manually
- PHP Get version from url
- In a Golang application, how to embed a version in a other package than main?
Related Questions in TOKEN
- project version in .exe-filename
- Modifying AndroidManifest.xml with build tag causes infinite rebuilding in Eclipse
- Versioned containers
- Adding some automatic versioning to CSS files. How come I'm not able to pull assembly info?
- How to commit subversion revision with every commit in order to refer between two repositories
- Forcing the browser to reload css/js only if they have changed
- Best way to specify version in REST service calls
- How to auto increase versioning so that browser can automatically reload the JS/CSS files without having to clear the cache manually
- PHP Get version from url
- In a Golang application, how to embed a version in a other package than main?
Related Questions in CSRF
- project version in .exe-filename
- Modifying AndroidManifest.xml with build tag causes infinite rebuilding in Eclipse
- Versioned containers
- Adding some automatic versioning to CSS files. How come I'm not able to pull assembly info?
- How to commit subversion revision with every commit in order to refer between two repositories
- Forcing the browser to reload css/js only if they have changed
- Best way to specify version in REST service calls
- How to auto increase versioning so that browser can automatically reload the JS/CSS files without having to clear the cache manually
- PHP Get version from url
- In a Golang application, how to embed a version in a other package than main?
Related Questions in SESSIONID
- project version in .exe-filename
- Modifying AndroidManifest.xml with build tag causes infinite rebuilding in Eclipse
- Versioned containers
- Adding some automatic versioning to CSS files. How come I'm not able to pull assembly info?
- How to commit subversion revision with every commit in order to refer between two repositories
- Forcing the browser to reload css/js only if they have changed
- Best way to specify version in REST service calls
- How to auto increase versioning so that browser can automatically reload the JS/CSS files without having to clear the cache manually
- PHP Get version from url
- In a Golang application, how to embed a version in a other package than main?
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Popular Tags
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
A CSRF token is a value that must be generated randomly and associated to a session (a user) in EVERY GET that shows a form to prevent false POST. This false POST comes from the user browser too so, to authenticate the POST, you need a session with the token stored in server memory to compare if the token that comes with the POST is the same that is stored in user session.
Also, web app's should need to identify users in a GET and CSRF tokens are only in POST.
Session need to be static to identify user along time and several request due to disconnected nature of HTTP. CSRF changes in every GET, it can not be used like session.
On the other hand, what should server do with your idea? Create a new session every GET request and copy all previous session data to the new session? This is crazy.
Take a look to this pdf at Montana State University. It helped me to understand CSRF.