Chapter 1
第1章
Windows安全基础
1.1 Windows认证基础知识
1.1.1 Windows凭据
1.SSPI
SSPI(Security Support Provider Interface,安全支持提供程序接口)是Windows操作系统中用于执行各种安全相关操作的公用API。SSPI的功能比较全面,可以用来获得身份验证、信息完整性校验、信息隐私保护等集成的安全服务。它是众多安全支持提供程序的调用接口。
2.SSP
SSP(Security Support Provider,安全支持提供程序)是一个用于实现身份验证的DDL文件。当操作系统启动时,SSP会被加载到LSA(Local Security Authority,本地安全机构)中。SSP的主要作用是扩展Windows的身份安全验证功能。可以这样简单理解:SSP就是一个DLL文件,用来实现身份认证并维持系统权限。下面介绍一下Windows系统中的常见SSP类型。
3.常见SSP类型
1)NTLM:一种Windows网络认证协议,基于挑战/响应(Challenge/Response)验证机制,用于对主机进行身份验证。
2)Kerberos:一种网络身份验证协议。作为一种可信任的第三方认证服务,它的主要优势在于可以提供强大的加密和单点登录(SSO)机制。
3)Negotiate:用于在SSPI和其他SSP之间进行安全支撑的应用程序层。当某个应用程序调入SSPI以登录到网络时,该应用程序会指定一个SSP来处理请求。如果指定Kerberos或NTLM SSP,则Negotiate将会分析请求并选取最佳SSP,以便基于客户配置的安全策略处理请求。
4)安全通道:也称SChannel,它使用SSL/TLS记录来加密数据有效载荷,主要用于需要进行安全超文本传输协议(HTTP)通信的Web应用程序。
5)摘要身份验证:基于HTTP和SASL(简单认证与安全层)身份验证的质询/响应协议。
6)Cred SSP:用于传输安全凭据的网络协议,通常在RDP或WinRM远程管理中用于提供单点登录和网络级身份验证。
7)分布式密码验证(DPA):提供使用数字证书完成的互联网身份验证。
8)用户对用户的公开密钥加密技术(Public Key Cryptography User-to-User,PKU2U):在不隶属于域的系统之间提供使用数字证书的对等身份验证。