Knowledge Base

DPI-SSL and Google


DPI-SSL is a sanctioned Man-in-the-middle attack.  At its core, DPI-SSL Provides downstream machines with a certificate they have chosen to trust, and that certificate in turn is provided by the firewall in response to any attempt to create an HTTPS connection so the SonicWall can terminate the tunnel, scan the traffic for threats, re-encrypt the traffic with its own client tunnel to the remote site, and send the traffic along. This works in both directions.

DPI-SSL intercepts user HTTPS requests. It uses their request to create a secure connection between the SonicWall and the services, while providing its own separate secure connection between itself and the user using the DPI-SSL Certificate.  This "sanctioned man-in-the-middle attack" allows the SonicWall to scan the communication in the Deep-Packet-Inspection engine to determine if the traffic is legitimate, or if it poses a threat.

Google (and other companies) uses a method known as "certificate pinning" for software that is installed on a laptop, phone, etc...  This means that as you launch the Google app, the software checks to see whether or not you are creating an encrypted tunnel using a certificate with a particular serial number.
If the serial number of the certificate used to create the HTTPS connection back to Google does not match the "pinned" certificate serial number, the connection is rejected.  This is why your connection is not being allowed.  This is by design, specifically to prevent man-in-the-middle attacks.
Google and SonicWall DPI-SSL certificate Serial Numbers viewed side-by-side in windows

The only known workaround is to add all Google and Google-related FQDN objects to the DPI-SSL exclusion list.  Google has provided a list of domains to exclude here, under the link "How to set up networks with SSL content filters".

To be clear: certificate pinning only occurs on software that is installed on a phone, laptop, etc. The certificate is typically hardcoded, or bundled into the software. Currently Google DOES NOT apply certificate pinning to their websites. For example, going to drive.google.com does not involve certificate pinning and DPI-SSL can be used. However, if Google Drive is installed on a laptop, the certificate has been hardcoded/bundled into the software thereby expecting a specific certificate (and if given another, such as the DPI-SSL certificate, the connection is rejected). This is built-in security that the Google Drive application is providing and can not be circumvented.