首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

phpcms上传导致getshell详解及案例

phpcms上传导致getshell详解及案例 这篇文章好几天前写了,给协会里新成员普及知识,看大家也都玩的差不多了,就发表到博客里,增加一点噱头和访问量,哈哈~ 0x01 什么是上传漏洞...但据说一年前phpcms就有这个0day了,知道昨天才被公开。 0x02 过程演示 首先找到目标网站(使用phpcms搭建),注册一个账号。来到用户中心 - 上传头像 ?...phpcms对头像上传是这么处理,上传上去的zip文件,它先解压好,然后删除非图片文件。 关键地方代码: //存储flashpost图片 $filename = $dir....0x05 附加篇:怎么找到使用phpcms的网站 我前两篇都有这个栏目,因为大家处在web安全初期,平时要多练手,所以可以找一些网站进行实战。...phpcms是一个大型的cms,用的人很多,基本上是以万计数,所以找起来很容易。 直接百度 powered by phpcms即可: ?

2.3K10

回忆phpcms头像上传漏洞以及后续影响

当然,我自己搓一点都无所谓,但怎么能丢了parsec的脸,各位还是且听我娓娓道来~ 0×01 最初的phpcms头像上传getshell漏洞 不知道大家还记得phpcms曾经火极一时的头像上传漏洞不,因为这个漏洞...那件事以后我分析过漏洞才成因以及利用方法(https://www.leavesongs.com/PENETRATION/phpcms-upload-getshell.html),简单来说phpcms对头像上传是这么处理...所以我就创建了一个包含phi文件夹的压缩包,phi里面放上webshell.php,上传上去。 这就是phpcms最早的头像上传漏洞。...我在本地用notepad++即可修改、构造一个压缩包。...phpcms已经彻底抛弃了解压缩的方式,直接在前端将图片处理完成后进行上传

1.3K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    PHPCMS V9.6.0_前台任意文件上传

    影响范围 PHPCMS V9.6.0 攻击类型 任意文件上传 利用条件 影响范围应用 漏洞概述 2017年4月份左右PHPCMS V9.6被曝出注册页面存在任意文件上传漏洞,通过该漏洞攻击者可以在未授权的情况下上传任意文件...,甚至getshell 漏洞复现 利用方式1 首先打开用户注册页面,之后随意填写数据,同时使用burpsuite抓取数据包: http://192.168.174.138/phpcms/index.php...php#.jpg>&dosubmit=1&protocol= 文件成功上传 利用方式2 在Firefox中访问用户注册页面,同时通过hackbar来POST以下请求(这里的img标签中的src为可以访问到的...php#.jpg>&dosubmit=1&protocol= 之后更具目录去相关目录下查看文件,发现webshell确实已经被成功上传: 之后使用蚁剑来连接: 漏洞分析 首先我们需要查看一下用户的注册功能...漏洞POC pocsuite3 POC完整脚本后台回复"PHPCMS"下载 修复建议 phpcms 发布了9.6.1版本,针对该漏洞的具体补丁如下,在获取文件扩展名后再对扩展名进行检测 参考链接

    67440

    PHPCMS_V9.2任意文件上传getshell漏洞分析

    参数名称 描述 位置 备注 m 模型/模块名称 phpcms/modules中模块目录名称 必须 c 控制器名称 phpcms/modules/模块/*.php 文件名称 必须 a 事件名称 phpcms...Burpsuite2.1,2021年最新那个burp编码有问题(可能我没调好),数据乱码,导致上传错误 测试站点网址:www.phpcms92.com 访问/install/install.php文件进行安装...到个人主页修改头像处,上传头像 ? 在此之前,还要准备一个后缀为zip的压缩包,具体内容如下: ?...在编辑头像处,我们上传头像,前端会将我们上传的图片进行分割成三张(三个尺寸大小)。...然后前端打包压缩成zip数据,当我们保存图片时,我们的压缩包数据会上传到服务器,通过uploadavatar函数进行处理(函数在文件phpsso_server/phpcms/modules/phpsso

    3.7K20

    docker 上传本地镜像_docker 上传镜像

    前言 之前通过docker搭建过jenkins+python3环境,如果想要在不同的机器上搭建一样的环境,就可以将之前搭建的镜像上传到镜像仓库,这样方便在不同的机器上快速搭建同一套环境。...如果公开的话,别人也可以用你的镜像快速搭建环境,类似于 GitHub 本地代码上传到代码仓库,再从仓库拉取代码到本地。...tag 在上传之前,先给本地镜像打个tag标签,相当于重新复制镜像并重命名为docker账户名/仓库名称 docker tag 本地镜像:tag docker账号/docker仓库:tag ➜ ~ docker...e5599f396096 12 days ago 717MB ******/centos_jenkins latest e5599f396096 12 days ago 717MB push 上传本地镜像...Login Succeeded 上传本地镜像标签到镜像仓库,使用docker指令 docker push docker 账号/仓库名称:tagname ➜ ~ docker push s649821022

    1.9K30

    github上传本地项目

    github上传本地项目,分为两个部分: 1、如果建立了ssh key的,直接看第二部分的上传部分就行了 2、如果没有建立ssh key的,就从头开始看吧 ——————————————————我是快乐的分割线...—————————————————— 第一部分建立钥匙: 1、在本地创建ssh key: $ ssh-keygen -t rsa -C "your_email@youremail.com" 输入后会让你输入密码...第二部分上传项目:  1、进入你要上传文件的目录下,右键git bash here 验证是否连上了github,后面会让你输入密码 验证是否成功,在git bash下输入 $ ssh -T git@github.com...2、接下来我们要做的就是把本地仓库传到github上去,在此之前还需要设置username和email,因为github每次commit都会记录他们 $ git config --global user.name...,文件名为README.md,我用的是git add --all,也就是上传当前文件夹的全部 git commit -m "first commit" ##我用的是git commit -m

    54360

    前端本地文件操作与上传

    前端无法像原生APP一样直接操作本地文件,否则的话打开个网页就能把用户电脑上的文件偷光了,所以需要通过用户触发,用户可通过以下三种方式操作触发: 通过input type=”file” 选择本地文件...它新建了一个img标签,并把img的src指向一个blob的本地数据。什么是blob呢,如何读取blob的内容呢?...form上面设置这个属性,因为上传文件只能使用POST的这种编码。...img标签,可以通过发送一个请求加载本地的blob数据,然后再通过FileReader读取,或者直接append到formData里面。...总之,前端处理和上传本地文件应该差不多就是这些内容了,但是应该还有好多细节没有提及到,读者可通过本文列的方向自行实践。如果有其它的上传方式还请告知。

    1.6K20

    上传本地代码到github

    --------来自小马哥的故事 ---- 第一步:下载Git 下载地址: https://gitforwindows.org/ 第二步:建立git仓库 Git bash Here 命令下 cd到你的本地项目根目录下...第五步:重点来了,将本地的仓库关联到github上 git remote add origin https://github.com/MaRuifu/Java8NewFeatures 后面的https链接地址换成你自己的仓库...url地址,也就是上面红框中标出来的地址 第六步:上传github之前,要先pull一下 git pull origin master 第七步,也就是最后一步,上传代码到github远程仓库 git push...-u origin master 执行完后,如果没有异常,等待执行完就上传成功了,中间可能会让你输入Username和Password,你只要输入github的账号和密码就行了 ?

    69041

    本地代码上传gitHub--01

    第一步:建立git仓库  cd到你的本地项目根目录下,执行git命令 git init win7 组织-》文件夹和搜索选项 第二步:将项目的所有文件添加到仓库中 git add ....上创建自己的Repository,创建页面如下图所示:  点击下面的Create repository,就会进入到类似下面的一个页面,拿到创建的仓库的https地址,红框标示的就是  第五步:重点来了,将本地的仓库关联到...add origin https://github.com/hanhailong/CustomRatingBar 后面的https链接地址换成你自己的仓库url地址,也就是上面红框中标出来的地址 第六步:上传...github之前,要先pull一下,执行如下命令: ///git pull origin master git pull --rebase origin master 第七步,也就是最后一步,上传代码到...github远程仓库 git push -u origin master 执行完后,如果没有异常,等待执行完就上传成功了,中间可能会让你输入Username和Password,你只要输入github的账号和密码就行了

    13520

    Gitee本地文件上传远程仓库

    此篇介绍在日常使用中,国内gitee上传本地文件的方法(国外有github,不过网速较慢,国内可以使用gitee速度会快一点),包括绝大格式的图片、文章、代码等等。...图片 2.新建文件夹储存需要上传的文件 可以在电脑的任何地方新建一个文件夹,然后先需要上传到gitee远程仓库的文件存储到新建的文件夹中。...git commit -m "first commit" #上传提交,引号内可以自己定义上传的备注 git remote add origin https://gitee.com/yan-songjie.../study.git #配置仓库地址 git push -u origin "master" #推送 图片 4.开始上传文件 第三步创建完之后会出现一个文件夹,我们直接将需要上传的文件复制到里面,然后输入一下命令...#添加当前目录下的所有文件到 将文件提交到本地: git commit -m '第一次提交' #单引号内的内容为提交时的备注信息 将本地文件推送到仓库中: git push origin master

    37130
    领券