SMB Message Signing
SMB message signing is actually four different settings:
- Microsoft network client: Digitally sign communications (always) Sets the Workstation service to require message signing on outbound requests to SMB servers. We recommend you turn this setting on for all systems making outbound Windows networking requests to other systems, including all systems that are used for browsing the Web.
- Microsoft network client: Digitally sign communications (if server agrees) Sets the Workstation service to request message signing on outbound request to SMB servers. This is the only setting of the four that is on by default.
- Microsoft network server: Digitally sign communications (always) Sets the Server service to require message signing on inbound requests from SMB clients. We recommend you turn this setting on for all systems if possible.
- Microsoft network server: Digitally sign communications (if client agrees) Sets the Server service to request message signing on inbound requests from SMB clients. We recommend that at a bare minimum this setting is configured on all systems acting as servers.
Turning on SMB message signing is a tricky operation. The reason is that if you set it to require signing on the Workstation service, the system will fail to connect to any Windows system in a default configuration because message signing on the Server service is not enabled by default. The reason it is not on by default is that it generates a small overheadup to about 5 percentwhich was believed to be unacceptable on many systems.
We think, however, that this setting is incredibly valuable and should be required on all systems. The reason is that SMB message signing helps thwart entire classes of man-in-the-middle attacks known as the SMB reflection attack. These have been used in the wild since at least 2000. It also breaks other types of man-in-the-middle attacks that rely on forwarding SMB messages.
On Windows XP Service Pack 2 and higher, the SMB reflection attack is broken even if SMB message signing is not enabled. However, because there are other man-in-the-middle attacks that are not mitigated this way, it is still important to configure SMB message signing on Windows XP.
In this tutorial:
- Protecting Hosts
- Security Configuration Myths
- Myth 1: Security Guides Make Your System Secure
- Myth 2: If We Hide It, they Not Find It
- Myth 3: The More Tweaks, the Better
- Myth 4: Tweaks Are Necessary
- Myth 5: All Environments Should At Least Use <Insert Favorite Guide Here>
- Myth 6: "High Security" Is an End Goal for All Environments
- Myth 7: Start Securing Your Environment by Applying a Security Guide
- Myth 8: Security Tweaks Can Fix Physical Security Problems
- Myth 9: Security Tweaks Will Stop Worms/Viruses
- Myth 10: An Expert Recommended This Tweak as Defense in Depth
- Server Security Tweaks
- Software Restriction Policies
- Do Not Store LAN Manager Hash Value
- Anonymous Restrictions
- Security Identifiers (SIDs)
- Password Policies
- SMB Message Signing
- Networking LAN Manager Authentication Level
- TCP Hardening
- Restricted Groups
- Audit Settings
- Client Security Tweaks
- Firewalls
- IPsec Filters
- SafeDllSearchMode
- Local Administrator Account Control
- Limit Local Account Use of Blank Passwords to Console Logon Only
- Logon Events
- Allowed to Format and Eject Removable Media
- The Caution ListChanges You Should Not Make
- Crash on Audit Failure
- Clear Virtual Memory Page File
- Security Configuration Tools