- Internet & the Web
SharePoint and SSL protocol supportability
As SharePoint is a web-based platform it is supposed to have a trusted SSL certificate imported for better security. In a highly secure environment SSL certificate is part of security policy and is always required. In this article I’m going to share some cases you may have to deal with SSL certificate and SSL protocol.
SSLv3 is not a good friend these days. Historically it had BEAST and POODLE issues. Hence, hardening guideline requires system administrator to disable SSLv3 at server level. Although this does not give you any level of confidence, it at least says about mitigation.
If you are working on a SharePoint 2010 environment with Windows Server 2008, you may deal with SSL over TCP handshake failure. Such an issue can be captured by NMAP. Recently I was involved to deeply investigate as to why TSL 1.0 was refused during handshake. My custom batch job built with .NET client object model when sending request to the destination Exchange server was not successful. It took me just a few hours to figure out that TLS 1.0 with RC4_128_SHA was only supported.
TLS 1.0 was only the initiated protocol. At that time, I always focused on server level and configuration stuff because I thought that there would be a change made by the system administrator. It took me two days to fully examine in my environment including building Exchange server, SharePoint and re-deploy the custom batch job. Finally, I realized that my custom batch job by default initiated SSL v3 protocol stream which the destination server did not support. The solution was come up by somehow making the custom batch job initiate supported SSL protocol namely TLS 1.1 or 1.2
Fortunately, Microsoft’s prediction is so good. They allow developers to specify SSL protocol to be initiated by the class below in .NET 4.5 Framework
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
By using this class, you are to let your application always run with TLS 1.2 which is considered secure.
TLS 1.0 is still not recommended as well. However, SharePoint 2010 and 2013 still rely on these old protocols including SSL v3 and TLS 1.0. You could disable these but make sure to test in your test/staging environment first. Installing .NET 4.5 Framework would be an option but this may make impact on your custom application running in SharePoint.