phpshe后台任意文件删除漏洞及getshell

  • A+
所属分类:颓废's Blog
摘要

phpshe是一个开源商城程序,程序在前台入库的地方都用了pe_dbhold函数(mysql_real_escape_string,htmlspecialchars过滤),虽然用的是全局变量注册,但是进行了变量的划分。


phpshe程序简介

phpshe是一个开源商城程序,程序在前台入库的地方都用了pe_dbhold函数(mysql_real_escape_string,htmlspecialchars过滤),虽然用的是全局变量注册,但是进行了变量的划分。

phpshe后台任意文件删除漏洞及getshell

加上了各自不同请求的前缀。使得变量不能夸请求覆盖,同时底层有入库的参数值都是用单引号进行包含。

所以注入是不可能的了,加上htmlsepcialchars的过滤,连xss都没发现一个。

上传方面用的是白名单,限死了后缀,加上文件名重命名,使用时间加上大范围随机数md5的方法。

前台就介绍到这里,讲讲后台的一些情况。

后台大部分都进行了csrf防御,只有少部分没有(一些查询操作,没有实际作用),几乎所有后台页面都是存在注入,但由于程序是没有开启报错的。
phpshe后台任意文件删除漏洞及getshell

所以是没有办法通过报错的方式拿到绝对路径,后台的注入其实等于没用,也没有越权的情况(通过鉴权文件,加载后台模块)

后台两处任意文件删除至getshell

文件module/admin/db.php( 数据库操作相关)

phpshe后台任意文件删除漏洞及getshell

没有任何过滤,直接拼接路径删除。但是有csrf防御。

文件 module/admin/moban.php(模板操作相关)

phpshe后台任意文件删除漏洞及getshell

也是等同于没有任何过滤,有csrf token防御。

再看看安装文件的逻辑。
phpshe后台任意文件删除漏洞及getshell

GETSHELL

重装的方式直接getshell。(动作太大了)

原文地址:https://www.cnblogs.com/r00tuser/p/8445289.html

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: