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

Sophos Firewall: v19.5 GA: Feedback and experiences

Release Post:  Sophos Firewall v19.5 is Now Available 

Old v19.0 MR1 thread:  Sophos Firewall: v19.0 MR1: Feedback and experiences 

EAP Sub thread:  SFOS v19.5 Early Access Program 

EAP 19.5 Thread:  Sophos Firewall: v19.5 EAP1: Feedback and experiences 



This thread was automatically locked due to age.

Top Replies

  • This is indeed expected behavior of the FCI feature.  What follows is a Draft of a KB Article I'm writing (feedback welcome).



    In XG 18.0 the DPI proxy was introduced, with many more SSL/TLS scanning options and certificate protection. There are some certificate security concerns with that are blocked in most configurations, however they are allowed without any warning when using DPI mode with the decryption profile "Maximum compatibility". In these cases the XG decrypts and re-signs, creating a new certificate with its own Certificate Authority that hides potential problems that the end user should know about which that would be blocked in other configurations.

    In 19.0 a new feature was added called Forward Certificate Invalidity (FCI). This feature detects certain types of certificate invalidity and "forwards" (tells the user) about them. Because we cannot create a certificate with the same error, so we create one in a special way that we know will cause browsers to warn users. A CA is used that us unique and untrusted, and the certificate Common Name is used as the error message to tell the end user what the problem is. This changes the behavior of DPI mode with Maximum Compatibility. By signing it in the way, browsers will warn users that there is a certificate problem but will allow users to proceed and load the pages as they did in 18.0/18.5.

    The most common issue that FCI catches on the public internet is websites that do not send their entire certificate chain. When a website provides their certificate, they usually provide the certificate, the CA that signed it (usually an intermediate CA), the CA that signed that one, up to the root CA. The root CA is trusted by the browser, and the browser can verify the entire chain.

    However some websites do not provide the chain. They may provide only the certificate, or they provide the certificate and the root CA, but they do not provide the intermediate CA. While this is valid, it is not best practice and sites like ssllabs.com which rate sites will cap their score.

    If a website does not provide the chain they usually implement AIA (Authority Information Access). This is a link within the certificate that says where to download the CA that signed it.

    Some browsers (Chrome 58+, Edge, Safari) will automatically use the AIA to download the intermediate and store it for future use. Firefox 75+ uses a different mechanism called intermediate CA preloading (wiki.mozilla.org/.../Intermediate_Preloading). Older Android (pre Oreo) devices do not support any mechanism. The XG does not currently support AIA.

    If the website does not provide the full chain, the XG behavior depends on the configuration. It is important to note that v19 did not introduce blocking of sites that do not provide the full chain. The XG has always blocked these sites when using normal security, and the resolution below has always worked. The difference is that when using a decryption profile that does not block self signed certificate, invalid issuers, or many other security concerns (such as "Maximum compatibility") we used to allow the connection and sign it in a way that made it appear more secure. Now we allow but sign it in a way that appears insecure.

    How to configure the system to allow access to sites that do not provide a complete certificate chain.

    Method 1 - Do not decrypt
    Configure the domain to not be decrypted. Adding the domain to the Local TLS Exclusion List is the best option for DPI mode. Adding it to a Web Exception will exclude it for both DPI and Proxy mode.

    Method 2 - Add the Intermediate certificate to the XG CA store

    Option 1:
    Test the site in www.ssllabs.com/.../
    You should see that the grade is capped to B and the Certification Path includes an "Extra Download". In the section under Issuer there should be an AIA link.

    Option 2:
    Use a browser that is not going through the XG, or is going through the XG with HTTPS not decrypted so that you get the original certificates as presented by the site. Ask the browser to display the certificate information and the AIA link should be there. How this is displayed is browser specific.

    Once you have the AIA link, download the certificate to your computer. Then in WebAdmin go to Certificates > Certificate Authorities and Add. Choose the file.
    With the Intermediate in the CA store, the page will load in all configurations.

    Jump to answer
Parents
  • BGP not working. On my test device XG210 SFOS 19.5.0 GA-Build 197 does not work BGP with full BGP table. Firewall is not available via the advertised address. In the version of SFOS 19.0.1 MR1-Build365 works normally.

  •   Dev team would like to investigate why BGP is not working in your setup.Can you share the support access for your device/s in  Private message to me? Meanwhile some quick info on this setup will help us - Is this migration or fresh install for 19.5 GA? What is the remote end /neighour device for BGP.   The devices provide us 1. config from /conf/routing/ 2. Logs: /log/csc.log , /log/bgpd.log , /log/zebra.log 

  • We had a major problem with bgp. Had to roll back. Will post more tomorrow 

  •  Like wise Dev team would like to investigate this setup too. Can you share access details and info as above for your installation in private message to me.

  •    in addition to above, if we can get full backup and complete logs from /log that will help.

  • **We are currently investigating the problematic scenario/use case under NC-109623 as we have not faced such issue internally during our testing.

     We worked with Jaroslav Faldik and able to resolve the problem with additional configuration of “no bgp network import-check”.  This will help overcome extra validation performed by the BGP service before advertising network that specific network should be available in RIB before advertising to peer.

    E.g.

    BGP Network Configuration:

    !

    address-family ipv4 unicast

      network 100.100.0.0/16

       maximum-paths 15

    exit-address-family

    !

    How to check if specific network is advertised to peer? 

    bgp# sh ip bgp 100.100.0.0/16

    BGP routing table entry for 100.100.0.0/16, version 18

    Paths: (1 available, no best path)

      Not advertised to any peer

      Local

        0.0.0.0 (inaccessible) from 0.0.0.0 (200.0.0.8)

          Origin IGP, metric 0, weight 32768, invalid, sourced, local

          Last update: Fri Nov 18 09:06:38 2022

    Basically, when you are seeing configured BGP network is not getting advertised to any peer, which stopped working after migration/upgrade to v19.5:

    1. Interface link is down where this subnet is configured. 
    2. Interface subnet mismatch compared to network configured in BGP e.g., in case interface subnet is “100.100.100.0/24”, and configured network is “100.100.0.0/16”.

    One can try the additional CLI command no bgp network import-check” in BGP to overcome these validations.

  • We had some downtime so we jumped back to 19.5 if you want to jump in firsthand and see the issues.

  •   
    Hey Guys,  and I re-upgraded to 19.5 so we could do some testing and appy the above command. When we have all 4 tunnels up, the intended subnet doesn't get advertised to the expected peers. So we did the "no bgp network import-check", but it didn't resolve the issue. When we down one of the tunnels, I can see that the subnets then get advertised to the other tunnel that shares a peer with the tunnel that was shut down.

    Any additional tests we could perform?

  •  did you come up with a solution? How many routes do you accept? We take full tables from 3 providers (2.8 mil routes or so) and V19.5 falls on it's face. V18.5 handles it ok, but not in HA failover. The router process shoots up to 100% CPU and the firewall locks up. V19.5 on a single unit is very sluggish and the network traffic latency is affected. This is an XG330, so there should be no issues. We don't use XG as an edge device, since I know it can't handle it, but Sophos says it can, so I test it on every release.

  • Hi  , is it possible to share support access id for your device running 19.5.?Dev team would like to investigate what causes the device become slow or the cpu utilisation difference between 18.5 and this version. please PM me. -Shrikant

Reply Children
No Data