Windows
View all Worklets
WindowsWindows

Windows - Security - Mitigate Sweet32 Vulnerability (CVE-2016-2183)

Disable the Triple DES 168 cipher in Windows SCHANNEL to mitigate the SWEET32 birthday attack on TLS

Worklet Details

What the SWEET32 mitigation Worklet does

This Automox Worklet™ disables the Triple DES 168-bit cipher on Windows endpoints to neutralize the SWEET32 birthday attack (CVE-2016-2183). The Worklet writes Enabled = 0 as a REG_DWORD under HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\Triple DES 168. That value tells the Windows SChannel provider to stop negotiating 3DES suites for any TLS or SSL session the endpoint terminates.

The Worklet opens the registry through Microsoft.Win32.RegistryKey with the correct view (Registry64 on 64-bit Windows, Registry32 otherwise). It creates the Triple DES 168 subkey if it is missing, then sets the Enabled value with the exact REG_DWORD type that SChannel reads. The script is parameter-free and the desired state is hard-coded. That makes the policy safe to schedule across mixed Windows 10, Windows 11, and Windows Server fleets without per-host configuration.

The registry change takes effect after a reboot. The Worklet does not initiate the restart on your behalf, which lets you stage the reboot through a separate Automox policy or maintenance window. Once the endpoint restarts, SChannel reloads its cipher catalog. The provider then removes 3DES from both the offer list during the TLS ClientHello and the accept list during ServerHello.

Why disable Triple DES at fleet scale

SWEET32 is a practical attack against 64-bit block ciphers. Researchers Karthikeyan Bhargavan and Gaëtan Leurent showed that after roughly 785 GB of ciphertext on a single 3DES-protected connection, an attacker can recover plaintext via a birthday collision in CBC mode. The same class of weakness affects Blowfish. The realistic exposure on Windows is 3DES, because SChannel still offers TLS_RSA_WITH_3DES_EDE_CBC_SHA on legacy installs. NIST SP 800-52 Rev. 2 deprecates 3DES for TLS. PCI-DSS v4.0 requirement 4.2.1 mandates strong cryptography. Vulnerability scanners from Tenable, Qualys, and Rapid7 raise plugin-level findings against any endpoint offering 3DES on TLS-bearing ports such as 443, 3389, 5985, and 5986. Disabling the cipher in SCHANNEL clears the finding at the source instead of patching it scanner by scanner.

SWEET32 (CVE-2016-2183) is a birthday attack against 64-bit block ciphers, and any Windows endpoint with Triple DES still enabled in SChannel keeps the cipher suite reachable to external scanners and TLS clients. This Worklet sets Enabled to 0 on HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\Triple DES 168 across Windows servers running IIS, RDP gateways, WinRM listeners, and developer workstations alike. If a software install or image refresh ever reverts the registry value, the next evaluation pass restores it.

How SWEET32 mitigation works

  1. Evaluation phase: The Worklet calls a testRegistry function that opens HKLM through Microsoft.Win32.RegistryKey::OpenBaseKey with the correct architecture view. It navigates to SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\Triple DES 168, then checks that the Enabled value exists, has data of 0, and is typed as DWord. If the subkey is missing, the Enabled value is absent, the data is anything other than 0, or the type is not DWord, testRegistry returns false. The script writes a non-compliance message to standard output and exits 2 to flag the endpoint for remediation. A compliant endpoint exits 0 with the message 'The 3DES cipher is disabled. Device is compliant.'

  2. Remediation phase: The remediation script reruns testRegistry, then calls setRegistry against any input that failed the check. setRegistry uses CreateSubKey to materialize the Triple DES 168 path if it does not exist. SetValue then writes Enabled = 0 as a Microsoft.Win32.RegistryValueKind.DWord. The success path writes 'The desired registry configuration has been set.' to the Automox activity log. A registry exception is captured by Write-Error and the script exits 2, so the failure surfaces in the policy run report rather than silently passing.

SWEET32 remediation requirements

  • Windows workstation or server with the Automox agent installed (Windows 10, Windows 11, Windows Server 2016 and later all expose the same SCHANNEL registry path)

  • Local administrator privileges to write under HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL (the Automox agent already runs in the SYSTEM context)

  • Reboot scheduled after remediation – SChannel only reloads its cipher catalog at LSASS initialization, so the Enabled = 0 value is read on next boot

  • Inventory of any legacy applications still requiring 3DES (legacy point-of-sale firmware, very old Java clients, some pre-2014 VPN concentrators) – disable the cipher in a pilot ring first if you are unsure

  • Optional: a companion Worklet that also disables RC4 (HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\RC4 40/128, RC4 56/128, RC4 64/128, RC4 128/128) for a complete weak-cipher hardening pass

  • FixNow compatible – the Worklet can be triggered on-demand against a single endpoint or a tag-defined group when a scanner result needs to be cleared quickly

Expected SChannel state after remediation

After remediation and reboot, the Triple DES 168 subkey exists under SCHANNEL\Ciphers with Enabled = 0 (REG_DWORD). Validate the registry directly with PowerShell: Get-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\Triple DES 168' -Name Enabled returns 0. Validate the cipher offer with a TLS probe: nmap --script ssl-enum-ciphers -p 443 <host> no longer lists TLS_RSA_WITH_3DES_EDE_CBC_SHA, and openssl s_client -cipher 'DES-CBC3-SHA' -connect <host>:443 closes with a handshake failure. Vulnerability scanners stop raising the SWEET32 / 3DES finding (Tenable 94437, Qualys 38628, Rapid7 ssl-3des-ciphers) on the next scheduled scan.

The Worklet is idempotent. Re-evaluation against a compliant endpoint exits 0 without touching the registry. The policy is safe to leave on a recurring schedule, and Daily or Weekly cadences both fit a hardening baseline. If a future Windows update, third-party security tool, or admin error re-enables 3DES, the next evaluation flags the endpoint. The next remediation run then restores Enabled = 0 before the drift becomes a scanner finding or an audit observation. Exit codes are predictable: 0 for compliance, 2 for non-compliance or remediation failure, and 1 for a registry-access exception during evaluation.

View in app
evalutation image
remediation image

Consider Worklets your easy button

What's a Worklet?

A Worklet is an automation script, written in Bash or PowerShell, designed for seamless execution on endpoints – at scale – within the Automox platform. Worklets deploy named-CVE mitigations within hours of disclosure, perform configuration, remediation, and install or remove applications and settings across Windows, macOS, and Linux.

do more with worklets