12.2 - Web Applications
12.2 - Web applications
Key Terms:
- Web application – Software that has been installed on top of a web server.
Web Application Types
- Browser-based – These web applications can run on the browser and have access to data provided by the web server.
- Mobile-based – The most common type of web application, they are designed to run on mobile devices.
- Client-based – These run on applications that are required to be installed before running.
Web Application Benefits
Web applications aren’t run locally so the client’s processor isn’t used. Installation administration is easier as there are fewer installations that need to take place. Web applications are also universal and don’t need to be developed for certain operating systems.
Vulnerabilities
- Cookies – Due to HTTP not being able to store session information, cookies were introduced to store user preferences and web activities. Cookies contain several parameters including name, value, expiration date, URL and domain. An attacker can steal cookies or craft malicious cookies to cause malicious intent.
- Script errors – These vulnerabilities are when web applications aren't programmed correctly. This can be something like an input validation error where user inputs aren't validated correctly. Script errors can share sensitive information, are open to upload bombing and poison null byte attacks.
- Session Management – When a client connects to a web application, a session is created. These sessions are uniquely identified with a session ID and store current session information. Once the client disconnects, the session should be correctly removed to ensure the security of the session. If this fails to occur, the session is at risk of being hijacked. Also, weak session IDs can be brute forced by a hacker to steal sensitive information.
Web Application Hacking Methodology
- Footprint web infrastructure.
- Attack web servers.
- Analyse web applications.
- Attack authentication mechanisms.
- Attack authorisation schemes.
- Attack session management mechanisms.
- Perform injection attacks.
- Attack application logic flaws.
- Attack database connectivity.
- Attack web app client.
Countermeasures
Web applications should use input validation to verify legitimate inputs, filter packets and deny ICMP access, turn off unused ports and services, keep patches up to date, filter user inputs and access databases with non-privileged accounts.
Comments
Post a Comment