0x00 漏洞详情

2019年5月21日,sandboxescaper在github上传了一份win10任意文件删除的0Day代码:https://github.com/SandboxEscaper/polarbearrepo,这是从2018年8月开始sandboxescaper发布的第五个0Day。

该漏洞原理与sandboxescaper之前发布的漏洞原理类似(https://cert.360.cn/warning/detail?id=208606780533f78f0731544f1935f8b2)。 在Windows 10中有两个存放计划任务文件的目录:c:\windows\tasks和c:\windows\system32\tasks。第一个目录是因为历史原因保留的,第二个目录是现在使用的目录。

在较老的windows系统上计划任务文件会被放在c:\windows\tasks目录,后缀为.job。如果在Windows 10中想要导入较老系统的.job文件,需要把它放在c:\windows\tasks目录,使用较老系统的schtasks.exe和schedsvc.dll运行schtasks /change /TN taskname /RU username /RP password命令。

tsched::SetJobFileSecurityByName会对c:\windows\system32\tasks中创建的计划任务调用SetSecurityInfo函数, 而它是以system权限运行的,所以通过创建硬链接可以修改系统文件的权限,达到任意文件删除的效果。 sandboxescaper也发布了一段演示视频:

enter description here

0x01 影响范围

该漏洞影响32位和64位的Window 10和Server 2016/2019。

 

0x02 防护建议

成功利用该漏洞需要知道一个普通权限的用户的用户名和密码。建议用户妥善保管用户名和密码,安装360安全卫士等终端防御软件拦截利用此类漏洞的攻击,不要打开来源不明的程序。

 

0x03 时间线

2019-05-21 漏洞详情公开披露

2019-05-22 360CERT发布漏洞预警

 

0x04 参考链接

https://github.com/SandboxEscaper/polarbearrepo

文章原文链接:https://www.anquanke.com/post/id/179059