[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Certificate trust vulnerability in Websense Content Gateway

Websense Content Gateway proxy explicitly trusts compromised certificate authorities

Affected versions: Content Gateway 7.8.x
Not affected: Content Gateway 7.7.x, 8.0

Websense Content Gateway is a filtering web proxy and content inspection application based on a modified Inktomi/Apache Traffic Server. To enable inspection and filtering of encrypted traffic, the application uses an internal certificate authority and decrypts and re-encrypts traffic passing through the device. Content Gateway maintains its own list of trusted certificate authorities, since all HTTPS traffic accessed via Content Gateway will appear to be signed by the Content Gateway CA.

Websense updates the list of trusted certificate authorities with each new major version (7.7.0, 7.8.0, etc.). It appears new trusted certificates were imported from the Mozilla/NSS CA store for 7.8.0, but the "deny trust" flag was set incorrectly. Therefore, the status of compromised certificates (DigiNotar, UTN-USERFirst-Hardware, Digisign (Enrich)) was imported as "explicitly trusted" instead of "untrusted".

An attacker with access to these compromised certificates could mount a phishing or MITM attack against clients behind a Content Gateway without raising suspicions.

Websense will not release a patch for this issue. Users of affected systems can upgrade to 8.0, manually delete the compromised trusted certificate authorities, or change the status to "Deny". I have provided steps below which update the status in bulk from the OS shell (non-appliance).

You should review and test these steps first, and evaluate if any other trusted certificates should be updated or removed. These steps are not supported by Websense, and there is no warranty.

From the shell, execute the following commands. This script will change the "status" column to 1 (deny) for the certificate authorities with the listed hashes. Content Gateway must be stopped, or your changes will be overwritten.

sudo service WCG stop
sudo /usr/bin/sqlite3 /opt/WCG/config/new_scip3.db

Paste the following script:
UPDATE cert_issuer
SET status = 0
WHERE issuer_hash IN (

sudo service WCG start

10/10/2014: Opened case with Websense support
10/30/2014: Websense support claims product does not include compromised certificates, and that I added them. I disagree, and verify that a clean install of the product does include them. 11/11/2014: Informed by support that Websense will review the certificates for the next release, but will not issue a patch for existing systems.
11/19/2014: Attempt to escalate issue via sales instead of support
11/20/2014: Sales says they're checking with product management about a patch
1/20/2015: Asked for update on patch
1/21/2015: Informed 8.0 product will include a fix
2/3/2015: Triton 8.0 product released; compromised certificates are no longer included at all

Thanks to Websense Product Security for correcting an error in the SQL script above.