This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Bypass network security packet filters using web proxy

I've noticed that the web proxy can be used to bypass network security packet filters.  Consider a gateway with three interfaces, one for the WAN, one for the LAN, and one for GUESTS.  If GUESTS are normally not permitted to access web servers on the LAN, but are permitted to access the web proxy (to limit web access), than the GUESTS can make requests through the web proxy to access the LAN.

As a simple measure to prevent this, I've tried using URL Filtering to block hosts on the LAN by URL.  But this won't cut it as anyone can register a domain name that does not match my URL filters and resolves to a host on my LAN.  I've also tried to add network security packet filter rules that block the Astaro LAN IP from accessing any hosts on the LAN - but it seems that the web proxy is exempt from these rules.

What I'd really like is a way to limit the web proxy by destination IP address or IP range.  I know how to do this with Squid (acl to_localnet dst ; http_access deny to_localnet), but is there a way to do this with Astaro?


This thread was automatically locked due to age.
Parents
  • OK, so I was trying to make you work too hard... [;)]

    Let me try again... If you have the following scenario, the webserver cannot be reached via the transparent proxy from the "Internal (Network)" even though it's in 'Allowed networks' for the proxy:
    • Webserver in "DMZ (Network)"
    • "DMZ (Network)" in 'Transparent mode skiplist'
    • 'Allow HTTP traffic for listed hosts/nets' is not checked and no packet filter rule allows access

    You can't browse to the webserver from "Internal (Network)" regardless of whether you try with an IP or a resolvable FQDN.

    Right?

    Cheers - Bob
     
    Sophos UTM Community Moderator
    Sophos Certified Architect - UTM
    Sophos Certified Engineer - XG
    Gold Solution Partner since 2005
    MediaSoft, Inc. USA
  • Ok you made me work but I was curious myself so here it goes.


    You can't browse to the webserver from "Internal (Network)" regardless of whether you try with an IP or a resolvable FQDN.

    You are correct. You can't access DMZ once its in the bypass proxy list in transparent mode only.

    Here is how to block everyone from manually defining HTTP proxy while letting transparent proxy do its thing. 

    1.  Enable http proxy in transparent mode (Screenshot1) 

    1.  Create a DNAT rule to catch any webproxy traffic and redirect it to some other port. I am redirecting LAN traffic as a test, you can redirect any network (guest,dmz etc). I am using port 80 on my astaro as redirect, but you can send to some dummy address if you like. Leave the autopacket filter unchecked since we are stopping the traffic, not actually redirecting. (Screenshot2)

    2. Change your web browser's proxy settings to point to astaro port 8080(web proxy) and you will see that it is being dnatted and dropped with the default drop rule.(Screenshot 3) 

    3. Create a bypass rule for your dmz/server network in http proxy-->advance-->bypass transparent proxy and either add the whole dmz network or just your webserver for blocking Screenshot4. 

    4.  Screenshot5 (my client 192.168.0.10 trying to get to my webserver on dmz @192.168.1.101). Notice that this is packet filter log since its bypassing proxy due to the bypass rule in previous step.

    Things to keep in mind. If you have a packet filter rule Allow http-->ANY as a backup, your DMZ network is part of ANY so make sure you change ANY rules to Internet as destination.

    Finally, netfilter is only as smart as the user defining the rules. Astaro has done an awesome job of making it easy to write the rules by pointing and clicking. I for one am thankful that I don't have to manually write these rules, saving hours of headaches and misconfigurations. Just say thanks to the developers and to astaro for letting us use this as a fully functional product for free[;)]
Reply
  • Ok you made me work but I was curious myself so here it goes.


    You can't browse to the webserver from "Internal (Network)" regardless of whether you try with an IP or a resolvable FQDN.

    You are correct. You can't access DMZ once its in the bypass proxy list in transparent mode only.

    Here is how to block everyone from manually defining HTTP proxy while letting transparent proxy do its thing. 

    1.  Enable http proxy in transparent mode (Screenshot1) 

    1.  Create a DNAT rule to catch any webproxy traffic and redirect it to some other port. I am redirecting LAN traffic as a test, you can redirect any network (guest,dmz etc). I am using port 80 on my astaro as redirect, but you can send to some dummy address if you like. Leave the autopacket filter unchecked since we are stopping the traffic, not actually redirecting. (Screenshot2)

    2. Change your web browser's proxy settings to point to astaro port 8080(web proxy) and you will see that it is being dnatted and dropped with the default drop rule.(Screenshot 3) 

    3. Create a bypass rule for your dmz/server network in http proxy-->advance-->bypass transparent proxy and either add the whole dmz network or just your webserver for blocking Screenshot4. 

    4.  Screenshot5 (my client 192.168.0.10 trying to get to my webserver on dmz @192.168.1.101). Notice that this is packet filter log since its bypassing proxy due to the bypass rule in previous step.

    Things to keep in mind. If you have a packet filter rule Allow http-->ANY as a backup, your DMZ network is part of ANY so make sure you change ANY rules to Internet as destination.

    Finally, netfilter is only as smart as the user defining the rules. Astaro has done an awesome job of making it easy to write the rules by pointing and clicking. I for one am thankful that I don't have to manually write these rules, saving hours of headaches and misconfigurations. Just say thanks to the developers and to astaro for letting us use this as a fully functional product for free[;)]
Children
No Data