Catfishcms漏洞复现

环境搭建:

Catfishcms v4.8.54环境搭建

漏洞复现:

代码审计:

_method=__construct
Request类(catfish/library/think/Request.php)用于处理请求,函数method用于获取请求的类型

application/config.php 中定义了“表单请求类型伪装变量”:

POST请求参数 “ _method=__construct ”,将 __construct 传给了var_method ,在Request类的method函数中执行后,实现了对Request类的 __construct 构造函数的调用;并且将完整的POST参数传给了构造函数

method=*&filter[]=system
catfish/library/think/Request.php模块中的Request类的构造函数:

函数中循环取出参数,如果是本类中存在的参数,就取用户传入的值为其赋值,property_exists(

先判断该对象是否有这个属性,如果有则返回真。如果该对象没有有这个属性, 则继续判断该对象对应的类是否定义过这个属性,如果定义过仍然返回真,否则才返回假。)

_method=__construct 使得 method 函数调用了 __construct 构造函数, 并且将完整的POST参数传递过去。实现了对本类中的 $method 和 $filter 两个全局变量的覆盖

filter[]=system 的补充:
filter[]=system 或者 filter=system都可以,[]符号可有可无;system意为执行系统命令

Method=* 的补充:
method参数的取值限定为:catfish/library/think/Route.php 模块中定义的路由规则,如:GET、POST、PUT、* 等任何一个值都可以;如果值不在此表或为空,都会报错

s=whoami
application/config.php 中定义PATHINFO变量名为’ s ’,可用s传入需要执行的命令,如s=whoami

payload:

s=whoami&_method=__construct&method=&filter[]=system
_method=__construct 使得 Request类的method函数调用 __construct 构造函数,并且将完整的payload传递给构造函数;构造函数中对 method 和filter 两个全局变量进行覆盖,method=&filter[]=system ;参数s传入需要执行的系统命令

这里没有复现出来,不知道问题出在哪里,希望大佬指出

Catfishcms漏洞复现相关推荐

  1. DAY25:逻辑漏洞复现

    DAY25:逻辑漏洞复现 1.phpaacms垂直漏洞复现 进入靶场,发现是phpaa,那么进后台 可以发现admin.admin 可以登陆进去- 点击管理员账户,添加账号,抓个包看看, 可以看到是 ...

  2. 成功爬取CVE-2019-9766漏洞复现【CSDN】【1】

    代码: import requests import bs4 from bs4 import BeautifulSoup import ress = '' headers = {'user-agent ...

  3. docker逃逸漏洞复现 cve-2019-5736

    0x01 概述 2019年2月11日,runC的维护团队报告了一个新发现的漏洞,该漏洞最初由Adam Iwaniuk和Borys Poplawski发现.该漏洞编号为CVE-2019-5736,漏洞影 ...

  4. php 远程代码执行漏洞复现 cve-2019-11043

    漏洞描述 CVE-2019-11043 是一个远程代码执行漏洞,使用某些特定配置的 Nginx + PHP-FPM 的服务器存在漏洞,可允许攻击者远程执行代码. 向Nginx + PHP-FPM的服务 ...

  5. java struts2 漏洞复现合集

    目录 一.S2-001复现 二.S2-005复现 三.S2-007复现 四.S2-008复现 五.S2-009复现 六.S2-012复现 七.S2-013复现 八.S2-015复现 九.S2-016复 ...

  6. Jenkins cve-2016-0792 漏洞复现 Xstream 反序列化漏洞

    环境搭建 首先需要安装jenkins,这里使用的是1.642.1版本,其他版本可以自行下载,在官网和百度一开始都是没找到的,包括看了其他人的分析,但是都没有找到环境搭建,大部分是直接复现和poc分析 ...

  7. winrar远程代码执行漏洞复现(cve-2018-20250)

    使用metasploit验证漏洞 1.漏洞影响 WinRAR < 5.70 Beta 1 Bandizip< = 6.2.0.0 好压(2345压缩) < = 5.9.8.10907 ...

  8. Typecho反序列化导致前台 getshell 漏洞复现

    Typecho反序列化导致前台 getshell 漏洞复现 漏洞描述: Typecho是一款快速建博客的程序,外观简洁,应用广泛.这次的漏洞通过install.php安装程序页面的反序列化函数,造成了 ...

  9. Winrar目录穿越漏洞复现

    Winrar目录穿越漏洞复现 1.漏洞概述 WinRAR 是一款功能强大的压缩包管理器,它是档案工具RAR在Windows环境下的图形界面.2019年 2 月 20 日Check Point团队爆出了 ...

最新文章

  1. 公元2019年,你对AI的信任有几分?
  2. @springbootapplication 注解_Spring Boot最核心的27个干货注解,你了解多少?
  3. 程序员送女朋友的礼物:域名和祝福视频
  4. Activity生命周期 onCreate onResume onStop onPause
  5. 在eclipse安卓sqlite怎么用_把安卓手机性能发挥到极致之-Aid Learning
  6. 抓取html的地址怎么写,跪求一个获取URL地址html代码的写法
  7. CSS3:伪类前的冒号和两个冒号区别
  8. python 如何判断字典存在key
  9. Spring与MyBatis整合源码分析
  10. App 瘦身最全最佳实践
  11. Tomcat乱码解决方法
  12. JavaGUI——背景图片设置
  13. 在C语言中的实型变量分为两种类型6,在C语言中的实型变量分为两种类型.doc
  14. 关于android属性persistent的问题
  15. Git使用教程详解之四 服务器上的Git
  16. 用了这么多年百度搜索, 今天才发现加上双引号搜索结果这么准
  17. 《果壳中的C# C# 5.0 权威指南》 (09-26章) - 学习笔记
  18. 关闭“Chromium 未正确关闭”提示
  19. 图像配置分类及名词解释
  20. 在网页上嵌入微博--微博秀

热门文章

  1. Java 国际化和字符集
  2. Collection stream 应用实例
  3. python制作英语字典_Pyqt5实现英文学习词典
  4. SGU 103 Traffic Lights(最短路)
  5. 嵌入式就应该这样学!!
  6. Leetcode377(力扣377):组合总和
  7. ImmunoChemistry艾美捷高级钙素AM细胞活力试剂盒方案
  8. 中学生学习方法 摘自360问答
  9. 运用联盟区块链保护网络著作权
  10. 【.Net Core】007Http请求