Windows 认证协议深度解析
1. 认证协议概述
密码作为一种认证器,用于向计算机验证用户身份。当用户交互式登录本地账户时,流程相对简单:
1. 用户使用安全注意序列(SAS,即“三指敬礼”,也就是 Ctrl + Alt + Delete)调出登录对话框。这会使本地安全机构子系统(LSASS)生成一个新会话,并在该会话中加载 WinLogon,WinLogon 再加载 LogonUI。
2. 用户输入用户名和密码。
3. WinLogon 进程获取密码,将其哈希为 NT 哈希,在本地 SAM 中查找用户名,并将 NT 哈希与为该用户存储的哈希进行比较。如果两者匹配,则登录成功。
4. 如果计算机上安装了子认证包,则将登录信息传递给它们进行额外处理。否则,调用 user32.exe 并加载用户环境。
这个过程很直接,因为从接收用户输入明文凭证的 LogonUI 到凭证比较,存在一个安全通道。但通过网络进行认证时,情况会变得复杂,因为需要考虑认证声明如何在用户所在的客户端和托管账户数据库的认证服务器之间传输。在 Windows 中,认证有多种形式,下面将详细介绍。
2. 基本认证
基本认证是所有认证形式中最简单的一种。它直接在网络上传输原始登录信息,即用户名和密码以明文形式或能在网络上完整传输的形式(如 Base - 64 编码)发送。在某些实现中,这被称为密码认证协议(PAP)。基本认证在 Telnet、FTP、POP、IMAP 等较旧的网络协议中很常见,甚至在 HTTP 中也有使用。如今,例如在通过 Internet 将 Microsoft Office Outlook 客户端连接到 Exchange 服务器的
订阅专栏 解锁全文
1361

被折叠的 条评论
为什么被折叠?



