Remoteapp之虚拟化风险 – 作者:Mustard404

前言

这两次在客户现场渗透测试中发现部分资源需利用4A中调用Remoteapp的IE浏览器才可进行访问,通过构思发现该功能虽然保护了应用资源的安全,但同时可能有暴露堡垒机的风险。

环境搭建

演示环境:
Windows Server 2008 R2

Remoteapp部署请参考以下链接,本文不做过多阐述:
https://blog.51cto.com/jqq1982/990645

风险

任意文件读取

本次环境仅开启ie资源访问权限。

1608713883_5fe3069b59daef8eb45ac.png!small

通过上图可以发现服务并未开启explorer.exe访问权限,但通过file:协议可以调用explorer.exe。

file:///C:/

1608713950_5fe306deea53566f0add5.png!small

该问题在实际测试中发现不同版本达到利用效果不同

  • Windows Server 2008 R2
    可直接调用explorer程序,并且可以对文件进行读写执行操作。下图为通过file协议开启explorer,再执行CMD。

1608714013_5fe3071d187d421d1efae.png!small

  • Windows Server 2012
    情况与Server 2008相同

1608714039_5fe30737e87b9aeba5331.png!small

  • 部分环境
    在生产环境中发现,可以读取任意文件及目录,无法调用explorer程序。

配合CVE-2018-8174获取主机权限

利用IE远程代码执行漏洞配合IE的控制权限可以直接获取主机权限。

EXP地址:
https://github.com/Yt1g3r/CVE-2018-8174_EXP

根据相关文档,生产攻击脚本,再利用SimpleHTTPServer开启web服务。

1608714077_5fe3075d0315a119c41e6.png!small

攻击者开启监听。

1608714093_5fe3076d994b114be225a.png!small

通过Remoteapp的IE浏览器进行访问恶意地址http://192.168.3.84/exploit.html

…Sorry,最后测试发现这种方式调用会引起报错,测试无法通过该漏洞获取服务器权限。如果哪位师傅有好的建议可以在此评论。

1608714109_5fe3077d5fb550941dcfa.png!small

利用Active调用CMD程序

利用Remoteapp打开IE后,选择Internet选项=>安全>自定义级别,启用对未标记为可安全执行脚本的Activex控件初始化并执行脚本。1608714121_5fe30789f0249cd7abeb2.png!small

设置好后,将以下代码保存为html文件,并放到web服务器上。

<!DOCTYPE html>
<html>  
    <head>  
        <script type="text/javascript"> 
            function callExe(){ 
                new ActiveXObject("Wscript.Shell").run("cmd.exe");   
            }   
        </script>   
    </head> 
    <body>  
        <input id="Burron" value="调用" onclick="callExe();"/>  
    </body> 
</html> 

打开后单击调用按钮,即可调用cmd程序。

1608714168_5fe307b86fc58497d320c.png!small

后续

本以为将此问题提交给MSRC会被收录漏洞库,经过几轮沟通后,最后确认结果如下。

1608714377_5fe308893ff9c71612b41.png!small

A sad story……

来源:freebuf.com 2020-12-23 17:08:39 by: Mustard404

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论