Name |
Forceful Browsing |
|
Likelyhood of attack |
Typical severity |
High |
High |
|
Summary |
An attacker employs forceful browsing (direct URL entry) to access portions of a website that are otherwise unreachable. Usually, a front controller or similar design pattern is employed to protect access to portions of a web application. Forceful browsing enables an attacker to access information, perform privileged operations and otherwise reach sections of the web application that have been improperly protected. |
Prerequisites |
The forcibly browseable pages or accessible resources must be discoverable and improperly protected. |
Execution Flow |
Step |
Phase |
Description |
Techniques |
1 |
Explore |
[Spider] Using an automated tool, an attacker follows all public links on a web site. They record all the links they find. |
- Use a spidering tool to follow and record all links.
- Use a proxy tool to record all links visited during a manual traversal of the web application.
|
2 |
Experiment |
[Attempt well-known or guessable resource locations] Using an automated tool, an attacker requests a variety of well-known URLs that correspond to administrative, debugging, or other useful internal actions. They record all the positive responses from the server. |
- Use a spidering tool to follow and record attempts on well-known URLs.
- Use a proxy tool to record all links visited during a manual traversal of attempts on well-known URLs.
|
3 |
Exploit |
[Use unauthorized resources] By visiting the unprotected resource, the attacker makes use of unauthorized functionality. |
- Access unprotected functions and execute them.
|
4 |
Exploit |
[View unauthorized data] The attacker discovers and views unprotected sensitive data. |
- Direct request of protected pages that directly access database back-ends. (e.g., list.jsp, accounts.jsp, status.jsp, etc.)
|
|
Solutions | Authenticate request to every resource. In addition, every page or resource must ensure that the request it is handling has been made in an authorized context. Forceful browsing can also be made difficult to a large extent by not hard-coding names of application pages or resources. This way, the attacker cannot figure out, from the application alone, the resources available from the present context. |
Related Weaknesses |
CWE ID
|
Description
|
CWE-285 |
Improper Authorization |
CWE-425 |
Direct Request ('Forced Browsing') |
CWE-693 |
Protection Mechanism Failure |
|
Related CAPECS |
CAPEC ID
|
Description
|
CAPEC-115 |
An attacker gains access to application, service, or device with the privileges of an authorized or privileged user by evading or circumventing an authentication mechanism. The attacker is therefore able to access protected data without authentication ever having taken place. |
|
Taxonomy: WASC |
Entry ID
|
Entry Name
|
34 |
Predictable Resource Location |
|
Taxonomy: OWASP Attacks |
Entry ID
|
Entry Name
|
Link |
Forced browsing |
|