Testing for Bypassing Authentication Schema (OTG-AUTHN-004)
While most most application require authentication for gaining access to private information or tasks, not every authentication method is able to provide adequate security level.
Negligence, ignorance or simple understatement of the security threats often result in authentication schemes that can be easily bypassed by simply skipping the login page and directly calling an internal page that is supposed to be accessed only after authentication has been performed.
In addition to this it is often possible to bypass compulsory authentication tampering with requests and tricking the application into thinking that we're already authenticated either by modifying the given URL parameter or by manipulating form or by counterfeiting sessions.
Description of the Issue
Problems related to Authentication Schema could be found at different stages of software development life cycle (SDLC), like design, development and deployment phase.
Examples of design errors include a wrong definition of application parts to be protected, the choice of not applying strong encryption protocols for securing authentication data exchange, and many more.
Problems in development phase are for example the incorrect implementation of input validation functionalities, or not following the specific language security best practices.
In addition there are issues during application setup (Installation and configuration activities) due to a lack in required technical skills, or due to poor documentation available.
Black Box testing and example
Bypassing authentication schema methods:
- Direct page request
In alcuni casi la richiesta di autenticazione della web application avviene solamente quando si cerca di accedere alla home page, mentre se si accedede a qualche risorsa richiamandola direttamente si puo' bypassare lo schem di autenticazione
- Parameter Modification
In alcuni casi l'autenticazione si basa sul valore con cui sono impostati alcuni parametri quindi e' sufficiente modificarli per bypassare lo schema di autenticazione
For example, /webapps/login?validUser=yes&isAutheticated=yes can be manually entered into the browser in an attempt to bypass the application server's authentication mechanism.
- Session Issue
- Session ID Prediction
- Session Fixation
- Sql Injection (HTML Form Authentication)
Gray Box testing and example
Testing for Topic X vulnerabilities:
OWASP Testing Guide v2