简介
全称:Local Administrator Password Solution
将本地管理员密码存储在LDAP上,作为计算机账户的一个机密属性,配合GPO,实现自动定期修改密码、设置密码长度、强度等,然后配置某些指的账号,能查看存储的密码, 如果用户需要,可以用PowerShell或指的工具查询密码,但对非授权用户,确无法获取,从而实现本机管理员的自动化管理。 LAPS使用两个LDAP属性来存储本地管理员凭证,这两个属性分别是ms-MCS-AdmPwd(存储密码)和ms-MCS-AdmPwdExpirationTime(存储过期时间)。
环境搭建
域控创建相关组织
创建组织OU:lapscomputers、lapsadminusers
创建组:lapsadmins
lapscomputers放机器、lapsadminusers放用户
移动目标机器进lapsOU内
确认新增机器
相关用户也拉进组及OU里
安装LAPS
安装后效果如下
导入AdmPwd.PS扩展架构
Import-module AdmPwd.PS
Update-AdmPwdADSchema
注意此处08powershell为2.0,需进行升级
确认属性新增
授予计算机修改本机ms-Mcs-AdmPwdExpirationTime 和 ms-Mcs-AdmPwd这两个扩展属性的权限
Set-AdmPwdComputerSelfPermission -OrgUnit lapscomputers
设置读取组织lapscomputers里的计算机扩展属性的权限组为lapsadmins
Set-AdmPwdReadPasswordPermission -OrgUnit lapscomputers -AllowedPrincipals lapsadmins
确认lapsadmins组新增了
Find-AdmPwdExtendedRights -Identity lapscomputers | Format-Table -AutoSize
设置重装密码权限组为lapsadmins
Set-AdmPwdResetPasswordPermission -OrgUnit lapscomputers -AllowedPrincipals lapsadmins
创建组策略
lapsadminusers的OU负责安装laps
当lapsadminusers组织里的域用户登录时,通过组策略安装laps
lapscomputers的OU负责设置laps
当域用户登陆后成功安装了laps后,通过组策略自动修改本地管理员密码
install laps安装
创建lapsadminusers的OU安装laps的组策略
将先前laps安装包放入新增的组策略目录
\0day.orgSYSVOL day.orgPolicies{90777ACA-859D-4021-9249-4625C33063B3}Machine
右键新增的组策略进行编辑,在软件安装处点击新建选择先前的msi包
此处如下选择
当域用户登录桌面时就会自动进行安装,如果已经装过了的就不会再安装
set laps安装
同理设置set laps组策略
进入编辑如下
密码长度及密码周期设定如下
此处未配置则未默认的administrator
密码到期时间可能比“密码设置”策略所需的时间长,启用此设置时,不允许计划密码到期时间长于“密码设置”策略规定的密码时间。 当检测到此类到期时,立即更改密码并根据策略设置密码到期。禁用或未配置此设置时,密码到期时间可能比“密码设置”策略所需的时间长。
此处启用后将对本地管理员密码进行设置
实际应用
更换先前设置的jerry用户登录域机器将进行安装laps如下
通过jerry链接ldap能够查看到本地管理员账户密码信息,应该是以明文显示的,这里却以ascii进行了展示,不过解码后也可以登陆上去,其实这里很奇怪,之前环境遇到的是明文的,不知是咋回事,如果有大哥知道希望可以帮忙答疑下谢谢
漏洞利用
Grouper2导出组策略
全局搜索laps可确认到连接的uid
进一步查OU
通过jerry用户查全域内机器并输出用户密码,弟弟这里机器带不动其他的了,就一台做个演示
确认终端可成功登陆
参考
https://skewwg.github.io/2020/11/26/zu-ce-lue-zhi-laps/
https://www.opsit.cn/1377.html