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.
  • AFAIK, there isn't a way to do this currently; but I do think this functionality should be added.

    CTO, Convergent Information Security Solutions, LLC

    https://www.convergesecurity.com

    Sophos Platinum Partner

    --------------------------------------

    Advice given as posted on this forum does not construe a support relationship or other relationship with Convergent Information Security Solutions, LLC or its subsidiaries.  Use the advice given at your own risk.

  • [LIST=1]
    • If GUESTS are not allowed to access the internal network, then your Astaro DNS Proxy and packet filter rules should be configured in such a way that GUESTS cannot resolve names in LAN.

    • For those inside LAN, if running in transparent mode, accesses inside LAN won't transit the Astaro.  If running in a mode that requires pointing browsers at the proxy, be sure to select the browser option to bypass the proxy for local accesses.

    • In 'Web Security >> HTTP/S', on the 'URL Filtering' tab, block internal addresses.  For example, if LAN is 10.11.12.0/24, put //10.11.12.
    [/LIST]
    Does that do what you want?

    Cheers - Bob
     
    Sophos UTM Community Moderator
    Sophos Certified Architect - UTM
    Sophos Certified Engineer - XG
    Gold Solution Partner since 2005
    MediaSoft, Inc. USA
  • Hi Bob,
    let me see if I have understood you correctly.
    1/. the guests would only pickup an external DNS from the ASG DHCP server?
    I am not sure how you would use a packet filter rule to enforce this?

    2 and 3 I understand.

    Regards

    Ian M[[:)]][[:)]]

    XG115W - v20.0.2 MR-2 - Home

    XG on VM 8 - v21 GA

    If a post solves your question please use the 'Verify Answer' button.

  • I don't think I understand #1 either.  What is stopping someone from registering myinternalnetwork.dyndns.org and having it point to 10.11.12.100.  Won't this resolve with the DNS server and also bypass the filters setup in #3?
  • Good trick, esev, that might indeed work.  I think you could obviate that by creating a separate HTTP Profile in Transparent mode for GUESTS and putting LAN into the transparent mode skiplist (don't check 'Allow HTTP traffic for listed hosts/nets').  GUESTS should not be in "Allowed networks' of the default Profile.

    Ian, 'GUESTS -> DNS > Internet : Allow' and otherwise don't put GUESTS into 'Allowed networks' in the DNS proxy.  It isn't clear to me at the moment that we would have blocked the proxy from resolving internal addresses if there are static entries in the Astaro DNS instead of in the internal nameserver.

    Cheers - Bob
     
    Sophos UTM Community Moderator
    Sophos Certified Architect - UTM
    Sophos Certified Engineer - XG
    Gold Solution Partner since 2005
    MediaSoft, Inc. USA
  • Bob,

    That's a good plan!  I'll try that.  It should take care of most issues.  I think however, even if the hosts are in the transparent skip list, a user in the GUESTS network segment could configure their browser to use the proxy on port 8080 (ie. use it non-transparently) and then still get passed the packet filter rules.

    I still find it a little strange that the proxy is exempt from the packet filter rules.  I'm guessing it is that way for ease of use.  It seems like a reasonable default.  But it would be nice that if an admin specifically configures the packet filter to deny the web proxy access to a subnet that such a rule actually works.
  • As I suspected, even in transparent mode, a user can configure their browser to use the proxy non-transparently and get around the packet filters.  I think this is a bug, you shouldn't be able to subvert the packet filter rules by using the proxy.  I've submitted a feature request to add a filter by ip address in the web proxy.

    For now, I've just gone in via the console and added the rules to iptables manually.  I'm wondering what would break if I switched the ordering of the rules on the iptables OUTPUT filter to place the auto-generated rules (that permit the proxy) after the user generated rules.  That way any user-generated deny/drop rules would take precedence over the automatic rules.  I'll wait a bit to see what happens with the feature request.
  • Hi esev,
    I am not sure that your example of the dydns registration would work because the 10.x.x.x network is internal and there is no way of relating the internal address to the external address. That would drive a dns insane trying to workout which 10.x.x.x it was really meant to point at.

    Bob, your packet filter rule while limiting the GUESTS to external DNS does not stop them resolving any external advertised servers on the local LAN and being able to come into the ASG from the external interface. I can access my ASG on its external interface from inside by using its dydns entry.

    Ian M

    XG115W - v20.0.2 MR-2 - Home

    XG on VM 8 - v21 GA

    If a post solves your question please use the 'Verify Answer' button.

  • Hi esev,
    I am not sure that your example of the dydns registration would work because the 10.x.x.x network is internal and there is no way of relating the internal address to the external address. That would drive a dns insane trying to workout which 10.x.x.x it was really meant to point at.


    It'll work.  To test, I registered the example above.  myinternalnetwork.dyndns.org now really does resolve to 10.11.12.100 [:)]
  • Bob, your packet filter rule while limiting the GUESTS to external DNS does not stop them resolving any external advertised servers on the local LAN and being able to come into the ASG from the external interface.


    I'm not sure what happens when the Astaro HTTP Proxy tries to reach an internal server when the FQDN in the URL resolves to 'External (Address)'.  I'm thinking it can't see it.
    It'll work. To test, I registered the example above. myinternalnetwork.dyndns.org now really does resolve to 10.11.12.100 

    But, I think with the Profile in transparent mode and LAN in the skiplist, even that won't work.

    The Proxy isn't "exempt" from the PF rules - it just captures the traffic with its own PF rules.  I think DNAT comes before the proxy, so you might be able to capture that port 8080 traffic from GUESTS and translate it into port 80, thus foiling those unscrupulous guests you seem to be attracting! [;)]

    Cheers - Bob
     
    Sophos UTM Community Moderator
    Sophos Certified Architect - UTM
    Sophos Certified Engineer - XG
    Gold Solution Partner since 2005
    MediaSoft, Inc. USA