CAPEC-31
Accessing/Intercepting/Modifying HTTP Cookies
This attack relies on the use of HTTP Cookies to store credentials, state information and other critical data on client systems. There are several different forms of this attack. The first form of this attack involves accessing HTTP Cookies to mine for potentially sensitive data contained therein. The second form involves intercepting this data as it is transmitted from client to server. This intercepted information is then used by the adversary to impersonate the remote user/session. The third form is when the cookie's content is modified by the adversary before it is sent back to the server. Here the adversary seeks to convince the target server to operate on this falsified information.
Abstraction
Detailed
Typical severity
High
Likelihood of attack
High
Understand the attack
What is this attack pattern?
Execution flow
How does the attack proceed, step by step?
Explore
Obtain copy of cookie
Techniques used
- Sniff cookie using a network sniffer such as Wireshark
- Obtain cookie using a utility such as the Firefox Cookie Manager, Chrome DevTools or AnEC Cookie Editor.
- Steal cookie via a cross-site scripting attack.
- Guess cookie contents if it contains predictable information.
Experiment
Obtain sensitive information from cookie
Techniques used
- If cookie shows any signs of being encoded using a standard scheme such as base64, decode it.
- Analyze the cookie's contents to determine whether it contains any sensitive information.
Modify cookie to subvert security controls.
Techniques used
- Modify logical parts of cookie and send it back to server to observe the effects.
- Modify numeric parts of cookie arithmetically and send it back to server to observe the effects.
- Modify cookie bitwise and send it back to server to observe the effects.
- Replace cookie with an older legitimate cookie and send it back to server to observe the effects. This technique would be helpful in cases where the cookie contains a "points balance" for a given user where the points have some value. The user may spend their points and then replace their cookie with an older one to restore their balance.
Requirements
What does the attack require?
Prerequisites
- Target server software must be a HTTP daemon that relies on cookies.
- The cookies must contain sensitive information.
- The adversary must be able to make HTTP requests to the server, and the cookie must be contained in the reply.
Skills required
- Low: To overwrite session cookie data, and submit targeted attacks via HTTP
- High: Exploiting a remote buffer overflow generated by attack
Resources required
- A utility that allows for the viewing and modification of cookies. Many modern web browsers support this behavior.
Impact
What does a successful attack lead to?
Affected scopes: Confidentiality
Affected scopes: Integrity
Affected scopes: Confidentiality, Access Control, Authorization
Defence
How is it prevented and mitigated?
Real world