当前位置: 首页 > news >正文

Adobe ColdFusion反序列化漏洞(cve-2017-3066)

目录

    • 概述
    • 复现过程
    • 修复建议

概述

Adobe ColdFusion(直译:冷聚变),是一个动态Web服务器,其CFML(ColdFusion Markup Language)是一种程序设计语言,类似JSP里的JSTL(JSP Standard Tag Lib),从1995年开始开发,其设计思想被一些人认为非常先进,被一些语言所借鉴。

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

复现过程

访问漏洞链接:http://192.168.3.243:8500/
在这里插入图片描述

访问url后发现为404,直接使用nikto工具进行敏感路径探测

在这里插入图片描述
直接访问登录后的页面:http://192.168.3.243:8500/CFIDE/administrator/index.cfm
在这里插入图片描述

先进行安装,使用vulhub搭建默认密码为vulhub,稍等就可以安装成功
在这里插入图片描述

之后访问页面如下

在这里插入图片描述

点击退出登录

在这里插入图片描述

下载ColdFusionPwn链接:https://github.com/codewhitesec/ColdFusionPwn/releases/download/0.0.1/ColdFusionPwn-0.0.1-SNAPSHOT-all.jar下载ysoserial链接: https://jitpack.io/com/github/frohoff/ysoserial/master-SNAPSHOT/ysoserial-master-SNAPSHOT.jar

使用命令生成poc,由于在靶场简介上写着网站的绝对路径跟key文件的路径所以这里我们可以使用cp命令来将根目录下的key文件复制到wwwroot目录下的key.txt文件里面
'cp /KEY.txt /opt/coldfusion11/cfusion/wwwroot/key.txt’里可替换为其他可执行命令并生成poc如反弹shell命令,但此靶场并不能弹shell,但通过自己搭建的靶场可以看出需要反弹shell的话需要bash加密。

java -cp ColdFusionPwn-0.0.1-SNAPSHOT-all.jar:ysoserial-master-SNAPSHOT.jar com.codewhitesec.coldfusionpwn.ColdFusionPwner -e CommonsBeanutils1 'cp /KEY.txt /opt/coldfusion11/cfusion/wwwroot/key.txt' poc.ser

在这里插入图片描述
我这边java版本太高了,运行报错,无所谓了

漏洞在位置为/flex2gateway/amf,使用POST请求方式,导入poc文件时不要用复制粘贴,用burp进行导入,要记得将Content-Type修改application/x-amf,如下:
在这里插入图片描述

在这里插入图片描述

粘贴poc时候注意不要直接复制粘贴,容易因为编码问题导致利用不成功

粘贴之后点击发送

修复建议

根据官方提示升级到最新版本

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 【Day04】0基础微信小程序入门-学习笔记
  • SQL报错注入之updatexml
  • 数据仓库怎么建设?一文详解数仓的建设过程!
  • Haproxy搭建Web群集(群集)
  • c++----初识模板
  • 案例分享-国外UI设计界面赏析
  • 盘点5个PDF 怎么转换成 Word 的实用技巧
  • Elasticsearch 概述
  • SQLiteStudio 连接sqlite3数据库(真机数据库可视化调试)
  • 使用 VueDraggable 创建可拖拽列表的全面指南
  • Web开发-CSS篇-上
  • Python代码之特征工程基础
  • 互联网重构“规则制定权”,周期性谋咒开始轮转!
  • 用Python开发的坦克大战小游戏,高度还原经典(附源码)!
  • Animate软件基本概念:元件(影片剪辑、图形、按钮)
  • 《Javascript高级程序设计 (第三版)》第五章 引用类型
  • Angular 响应式表单之下拉框
  • CODING 缺陷管理功能正式开始公测
  • CSS3 变换
  • GraphQL学习过程应该是这样的
  • JAVA SE 6 GC调优笔记
  • Javascript Math对象和Date对象常用方法详解
  • PHP变量
  • Redis提升并发能力 | 从0开始构建SpringCloud微服务(2)
  • springMvc学习笔记(2)
  • Sublime Text 2/3 绑定Eclipse快捷键
  • vue和cordova项目整合打包,并实现vue调用android的相机的demo
  • WebSocket使用
  • 包装类对象
  • 从setTimeout-setInterval看JS线程
  • 对超线程几个不同角度的解释
  • 新书推荐|Windows黑客编程技术详解
  • 一起来学SpringBoot | 第三篇:SpringBoot日志配置
  • 这几个编码小技巧将令你 PHP 代码更加简洁
  • 通过调用文摘列表API获取文摘
  • ​2021半年盘点,不想你错过的重磅新书
  • ​LeetCode解法汇总2670. 找出不同元素数目差数组
  • ## 1.3.Git命令
  • #{} 和 ${}区别
  • #565. 查找之大编号
  • $.ajax()方法详解
  • (35)远程识别(又称无人机识别)(二)
  • (JSP)EL——优化登录界面,获取对象,获取数据
  • (LeetCode) T14. Longest Common Prefix
  • (三)docker:Dockerfile构建容器运行jar包
  • (四)汇编语言——简单程序
  • (贪心 + 双指针) LeetCode 455. 分发饼干
  • (限时免费)震惊!流落人间的haproxy宝典被找到了!一切玄妙尽在此处!
  • (原创)Stanford Machine Learning (by Andrew NG) --- (week 9) Anomaly DetectionRecommender Systems...
  • (转)jQuery 基础
  • (转)mysql使用Navicat 导出和导入数据库
  • (转)程序员疫苗:代码注入
  • .apk 成为历史!
  • .NET 通过系统影子账户实现权限维持
  • .NET/C# 使用 #if 和 Conditional 特性来按条件编译代码的不同原理和适用场景