Hacking Web Applications
Hacking Web Applications
Hacking Web Applications
md 4/10/2019
Web Applications are that applications that is running on a remote application server and avaliable for
clients over the internet.
Server Administrators are resposible for the web server's safety, speed, functioning and performance.
Application Administrators are responsible for the management and configuration required for the web
application.
Clients are the endpoints which interact with the web application / server.
Users are interacting with the front-end. The processing was controlled and processed by the back-end.
Server-side languages:
PHP
Java
C#
Python
JavaScript
many more...
Client-side languages:
CSS
JavaScript
HTML
Web 2.0
In web 1.0, the users are limited to passive viewing the content.
In web 2.0, the users can interact and collaborate, it contain rich user experience, dynamic content.
1/5
14_Hacking_Web_Applications.md 4/10/2019
Directory traversal
Parameter/Form tampering
DOS attack
Buffer overflow
Log tampering
SQL injection
Cross-site Script
Cross-site Request Forgery
Security misconfiguration
Broken session management
DMZ attacks
Session hijacking
Network access attacks
Unvalidated input
Process an non-validated input from the client to the back-end. This is a major vulnerability, this is the basics
of injection attacks (SQL injection, xss, buffer overflow).
Parameter tempering is an attack, where the attacker manipulate the parameter while client and server are
communicating with each other. Parameters such as Uniform Resource Locator (URL) or web page form
fields are modified (cookies, HTTP Header, form fields).
Injection Flaws
SQL Injection
Injection of malicious SQL queries. Attacker can manipulte the database These vulnerabilities can be detected
by using an automated scanner.
Command Injection
Shell injection
File injection
HTML embedding
LDAP Injection
2/5
14_Hacking_Web_Applications.md 4/10/2019
Attacker can access the database using LDAP filter to search information.
DoS Attack
User Registartion DoS : an automated process, the attacker keep registering fake accounts.
Login DoS : attacker keep sending login requests.
User Enumeration : attacker brute force login credebtials with a dictionary attacks.
Account Lock : attacker attempt to lock the user account by attempting invalid passwords.
Attack Authentication
Exploit the authentication mechanism:
Username enumerate
Cookie exploitation
Session attacks
Password attacks
Accessing the web application with low level privilege account, then escalate privileges to get
information
Parameter tampering (URL, POST data, Query string, cookies, HTTP header)
Injection Attacks
3/5
14_Hacking_Web_Applications.md 4/10/2019
Techniques:
Exploit the data connectivity between application and its database. Data connection requires a connection
string.
Countermeasures
Percent Encoding
Percent Encoding or URL Encoding is a technique for secure handling of URL by replaces unsafe and non-ascii
characters with % followed by two hexadecimal digits.
Example:
In URL:, there are some reserved character such as '/' that is used to separate paths in URL. To use this not as
separator, then it must be encoded.
HTML Encoding
HTML Encoding specify how special character will shown.
Input validation
Customized error messages
Monitoring database traffic
Limit length of user input
Testiong tools
Filtering meta
Filtering output
Reverse proxy
Remove unnecessary functions
Secure remote administration
Firewall
IDS
Other Countermeasures
Dynamic testing
Source Code analysis
Strong cryptography
Use SSL
Hotfixes / patches
Cookie timeout
5/5