Skip to main content
Cover

Bypassing Firewalls and Avoiding Detection in Penetration Testing

Now You See Me and You Don't

Penetration testing used to be a joyful journey. It is to look for security weaknesses in network, hosts, applications and data access.

 

 

Paradise Lost

Paradise Lost

The paradise has been lost when the penetration tester hit into a web application firewall (WAF). His favorable tools like Nessus and Acunetix turn to a state of helplessness.

 

Detecting Web Application Firewall – wafw00f

One way to detect web application firewall is to use Web Application Firewall Detection Tool, wafwoof. That is pre-installed in Kali Linux.

When you get to the appropriate directory /usr/bin in this case, simply issue the command for the target website:

# wafw00f [target website]

REMINDER – only test the website that you are allowed to, period.

wafw00f

Too bad, WAF is detected.

For the sake of discussion try another target website.

wafw00f-2

No WAF is detected for this second website.

 

Testing WAF bypass and getting to the target – hping3

We can test the bypass using the tool hping3, which is also pre-installed in Kali Linux.

# hping3 –c 10 –S –spoof [spoofing IP] –p 80 [target website IP]

hping3

No luck.

Try again.

# hping3 –S [target website IP] –c 80 –p ++1

hping3-2

One packet gets through WAF via port 80 to the target website.

 

Second tool to bypass WAF – nmap’s firewalker

Nmap is pre-installed in Kali Linux as well.

# nmap --script=firewalk --traceroute [target website IP]

firewalker

This time we find WAF sitting at hop# 7 with ports 1, 3, 4, 6, 7, 9, 13, 17, 19 and 20 blocked and there are 996 ports filtered.  

Ports 80, 443, 8000 and 8443 are open.

Thank you and welcome.