With this article, we list some of the common web application attacks, impacts, and possible mitigation. In part -4 we are covering the following attacks.
Web Application Attacks
- Strict transport security not enforced
- Failure to restrict URL access
- Parameter Manipulation
- URL Redirection
Clickjacking is an attack that tricks a user into clicking a webpage element that is invisible or disguised as another element. Clickjacking is an attack where the attacker tricks the user into clicking one link that routes to another page.
clickjacking involves mirroring a login and password form on a website. An attacker may also choose to redirect the clicks to download malware or gain access to vital systems
The header provides the website owner with control over the use of iframes or objects so that inclusion of a web page within a frame can be prohibited with the
Alternatively, framing can be restricted to the same origin as the website using the
Content Security Policy (CSP) is a detection and prevention mechanism that provides mitigation against clickjacking.
Strict transport security not enforced
when the application fails to prevent users from connecting to it over unencrypted connections. HTTP strict transport security HTTS is a security policy implemented in web servers which are to interact with it using only secure (HTTPS) connections.
To exploit this vulnerability, an attacker must be suitably positioned to intercept and modify the victim’s network traffic. an attacker can manipulate pages in the unsecured area of the application or change redirection targets in a manner that the switch to the secured page is not performed or done in a manner, that the attacker remains between client and server.
Enable HTTP Strict Transport Security (HSTS) by adding a response header with the name ‘Strict-Transport-Security’ and the value ‘max-age=expireTime’, where expireTime is the time in seconds that browsers should remember that the site should only be accessed using HTTPS
Strict-Transport-Security: max-age=31536000; includeSubDomains
Failure to restrict URL access
when internal pages of the application can be accessed without authentication by forceful browsing. All the internal pages could be accessed directly.
An attacker can access and steal sensitive information without any authentication.
It is recommended not to serve internal pages without proper authentication and authorization checks. It is also recommended to configure strong session management. http://cwe.mitre.org/data/definitions/285.html
The parameters within the application can be altered to fetch data that is not allowed or is unauthorized.
An attacker can impersonate other users and access/perform unauthorized activities.
It is recommended to implement server-side mapping of a user to accessibility. The features are applicable to different privilege levels should accessible strictly to those level users only.
Any other user should not be granted access to it. It is also recommended to implement strong session management and the user should be logged out while trying parameter manipulation
when an application stores an URL in a parameter while allowing the user to navigate between pages.
This may allow an attacker to craft a malicious URL by changing the URL stored in the parameter to that of a malicious site.
Thus the application will be vulnerable to a phishing attack. An attacker can scam users into surrendering private information that will be used for identity theft.
The application should allow redirection only to white list of URLs.