freeBuf
主站

分类

云安全 AI安全 开发安全 终端安全 数据安全 Web安全 基础安全 企业安全 关基安全 移动安全 系统安全 其他安全

特色

热点 工具 漏洞 人物志 活动 安全招聘 攻防演练 政策法规

点我创作

试试在FreeBuf发布您的第一篇文章 让安全圈留下您的足迹
我知道了

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

Windows凭证知识整理
yunyun羽泪云 2023-10-09 13:05:50 114611

Kerberos协议流程

其设计目标就是采用密钥系统客户机服务器之间提供严格的身份认证服务。

其流程为:

  1. 认证客户机身份:客户机向AS(认证用户服务器)发出认证请求;认证通过后,AS会返回一个票据(TGT),目的是为了获取ticket(服务授予票据)。
  2. 请求服务授权:客户机使用TGT向TGS(票据授予服务器)请求访问应用服务;TGT认证通过后,TGS返回一个ticket。
  3. 发送请求服务:客户机使用ticket请求访问服务;ticket校验通过后,资源服务器允许访问。

NTLM协议流程

当Kerberos在某些情况下无法对用户认证时,NTLM作为一种备份

它采用的是 质询/应答信息交换的模式

其流程为:

  1. 用户登录客户端,客户端会将原始密码进行哈希并缓存,成功登录的用户会向服务器请求资源,发出的请求包含了自己的明文用户名。
  2. 服务器收到该请求后,生成一串随机数,这个称之为Challenge,以明文形式返回给客户端,并自己保存下来
  3. 客户端收到之后,用第一步缓存的哈希值对这个Challenge进行加密,并发送给服务器
  4. 服务器将用户名、哈希过的Challenge、原始Challenge发送给域控
  5. 域控根据用户名找到对应的密码哈希值,它再对原始的Challenge加密,和第三步处理后的Challenge进行比对,如果一致,则通过

SAM

即,安全账户管理(Security account manager),可以看做是windows系统上的一个数据库,它用于在本地计算中以NTLM哈希格式存储用户凭证。本地登录时,LSA会根据存储在SAM中的数据验证凭证,去验证登录尝试。

从SAM中导出凭证,有多种方法:

工具方面:mimikatz工具、渗透工具(cobalt strike)自带的hashdump命令、impacket远程导出。

离线方面:注册表上HKLM\SAM和HKTM\SYSTEM处进行一个拷贝,再离线分析。

LSA与LSASS

LSA:即,本地安全机构,负责管理系统的交互式登录,实行本地安全策略、为用户发放安全访问令牌等。

LSA机密:即,LSA存储的一些敏感信息,如(用户密码、sql密码、系统账户密码等)。

LSASS:windows上的一个进程,是攻击者的目标之一;它主要是代表LSA去执行安全策略和处理用户的登录时的身份验证请求,以高权限运行。

关系:lsass是lsa的一个执行者

从lsass中导出凭证:

1.mimikatz的工具命令

2.系统内置的方法,如:用ProdDump64.exe 命令导出,再用pypykatz进行离线解析。

PPL

全称为:Protected Process Light,它是一个驱动,一种针对凭证会被导出的防御机制,即,启用了PPL保护的进程,即使是SYSTEM权限也无法访问。

当然了,也存在绕过。

一个原理就是,攻击者会去找存在任意代码执行漏洞的脆弱驱动,导致高特权下的代码执行,进而用于绕过驱动签名策略。

此外,github上有现成的ppl漏洞工具。

最后

整理文章的时候,也是一次复盘梳理的过程,如有不妥之处,请指正。

# 网络安全 # 系统安全
本文为 yunyun羽泪云 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
yunyun羽泪云 LV.2
这家伙太懒了,还未填写个人描述!
  • 3 文章数
  • 0 关注者
JWT概述
2023-10-19
webshell工具原理
2023-10-09
文章目录