Analysis:
During the analysis, it was observed that the mentioned application was deployed over an unencrypted protocol (i.e. HTTP). Due to this user credentials are transmitted in plain text over the network. Please refer to the below-provided evidence.
Impact:
When the transport layer is not encrypted, all communication between the website and the server is sent in clear text which leaves it open to interception, injection, and redirection (also known as a man-in-the-middle/MITM attack).
An attacker may passively intercept the communication, giving them access to any sensitive data that is being transmitted such as usernames and passwords. An attacker may also actively inject/remove content from the communication, allowing the attacker to forge and omit information, inject malicious scripting, or cause the client to access remote untrusted content.
An attacker may also redirect the communication in such a way that the website and client are no longer communicating with each other, but instead are unknowingly communicating with the attacker in the context of the other trusted party.
Recommendation:
Recommendation to Enforce TLS:
- Applications should be deployed over encrypted communication channels i.e. HTTPS.
- At a minimum, do all the following:
- Require HTTPS for all sensitive pages. Non-SSL requests to these pages should be redirected to the HTTPS page.
- Ensure your certificate is valid, not expired, not revoked, and matches all domains used by the site.
- The back-end and external connections made by the application should also use HTTPS or other encryption technologies.
Note: After deploying over the HTTPS, Set the ‘secure’ flag on all sensitive cookies.
References:
How to Enforce SSL/TLS – OWASP:
https://www.owasp.org/index.php/Top_10_2010-A9-Insufficient_Transport_Layer_Protection
ITLS – WebAppSec:
http://projects.webappsec.org/w/page/13246945/Insufficient%20Transport%20Layer%20Protection
Comments
Post a Comment