Disabling SSL v2 in Server 2008 x64 and Server 2008 R2

Disclaimer: Always back up your registry prior to making changes!

Incorrect entries can cause unexpected behavior, and may even render your operating system unusable! I disclaim any responsibility for damages, loss of data or any other issues resulting from registry changes.

While this worked for me, every environment is different, so use this at your own risk!

I recently assisted a client with getting a Windows Server 2008 R2 machine in compliance with Payment Card Industry (PCI) standards.

PCI compliance is very important for eCommerce sites and anyone handling credit card information.

We used a 3rd party testing tool that scanned for open ports, SSL version support, as well as allowed encryption/cipher combinations. The first few tests failed due to SSL 2.0 support in Server 2008 R2/IIS7.5.

I found an article on Microsoft’s support site which described how to disable IIS protocols by modifying the registry (this can’t be done through IIS Manager):

http://support.microsoft.com/kb/187498

Here’s where it gets confusing. I followed the instructions and browsed to:

HKey_Local_Machine\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols

As the article points out, the “SSL 1.0,” “SSL 2.0,” “SSL 3.0” subkeys are typically there. Note the use of the word Typically rather than Always, meaning that sometimes they’re bloody well NOT there, as was the case with my server!

The article goes on to say, “create a new DWORD value in the server subkey of the protocol.” I have big problem with this phrasing given the ubiquity of the word, “Server.” The instructions do not explicitly tell you to create a new subkey under “SSL 2.0” called “Server” and to place the DWORD in there, so naturally, I wrongly assumed that the DWORD went in “SSL 2.0” instead, which didn’t work.

After a little digging, I came across another a post on the IIS.net forums by a user named Pawel Dolny who did a much better job of explaining things:

http://forums.iis.net/p/1151822/1879690.aspx

When you follow his article, be sure to create subkeys called “Server” and “Client” in each of the SSL protocol keys, then add a DWORD in each called “Enabled” with a value of “0” to disable it (or 1 to enable it, as would be the case for SSL 3.0).

He also covers enabling/disabling ciphers. Once you’ve rebooted, you can test your site to verify the changes:

https://www.wormly.com/test_ssl

I hope this helps someone!

Slipsteaming Drivers into Windows Setup CDs/DVDs

NOTE: This post was written almost 10 years ago, and republished here for posterity. As such, no attempt has been made to update the links or information below.

I recently had to repair an installation of Windows Server 2003. Unfortunately, Windows Setup was unable to automatically detect my RAID controller, and while you can press F6 during setup to provider a 3rd party driver, this won’t work for computers without floppy drives.

One solution is to “slipstream” the drivers you need into your Windows Setup media. Slipstreaming is a technique used to insert additional drivers, updates and service packs into your installation disks. This can be done manually by manipulating installation files, or by using a 3rd party tool such as nLite (vLite is the Vista version), AutoStream and PE Builder. I personally prefer nLite because it’s free, relatively easy to use, and works with a wide range of Microsoft OS’s. Best of all, you can also use it to remove unwanted or unneeded components, tweak system options, or set preferences in advance to create an unattended setup disk. Here’s procedure I used:

  1. Download and install nLite (https://nliteos.com/download.html)
  2. Copy the contents of your Windows setup CD to a folder on your hard drive (e.g. N:\Windows Setup Files)
  3. Start the nLite application, the click Next to advance to the source file screen
  4. Browse to the files you copied above, click Next again. nLite will detect the OS type, then click Next again to proceed
  5. The next screen gives you the ability choose a previous configuration if you have one, or you can click Next again to skip it and start fresh
  6. The next screen allows you pick and choose what features you want to manipulate, I chose “Integrate > Drivers” and “Create > Bootable ISO”, then Next to take you to the Driver selection screen
  7. Click Insert. If your driver directory comes with multiple .INF or .SYS files, you should select Multiple Driver Folder, otherwise, you can use Single Driver
  8. There will be a pop-up window prompting you to select a driver and a mode. The options are Textmode or PnP. Anything that you need to pre-load prior to installation should be installed as Textmode. NOTE: Be sure to use “Textmode” for any drivers windows will need to begin setup! I chose this option for my RAID controller drivers.
  9. Push Ok > Next to proceed, and when prompted, choose Yes to start the process
  10. When done, it should display the create window. At this point, you can create an ISO or burn the image directly to the CD There you have it!