SINE安全公司在对phpcms2008网站代码进行安全检测与审计的时候发现该phpcms存在远程代码写入缓存文件的一个SQL注入漏洞,该phpcms漏洞危害较大,可以导致网站被黑,以及服务器遭受黑客的攻击...,关于这次发现的phpcms漏洞细节以及如何利用提权我们来详细剖析。...整个phpcms采用PHP+Mysql数据库作为架构,稳定,并发高,承载量大。 phpcms2008漏洞详情 在对代码的安全检测与审计当中,发现type.php文件代码存在漏洞,代码如下: <?...可以看出$template没有进行过滤就可以直接写入到缓存模板中,我们可以指定TAG内容,post提交过去,如下代码: 我们在自己的本地电脑搭建了一套phpcms2008系统的环境,进行漏洞测试,提交...phpcms漏洞修复与安全建议 目前phpcms官方已经修复该漏洞,请各大网站运营者尽快升级phpcms2008到最新版本,有些二次开发的网站可以针对缓存目录进行安全限制,禁止PHP脚本文件的执行,data
最近研究源码审计相关知识,会抓起以前开源的CMS漏洞进行研究,昨天偶然看见了这个PHPCMS的漏洞,就准备分析研究一番,最开始本来想直接从源头对代码进行静态分析,但是发现本身对PHPCMS架构不是很熟悉...,导致很难定位代码的位置,最后就采用动态调试&静态分析的方式对漏洞的触发进行分析,下面进入正题。...1、漏洞触发代码定位 通过漏洞的POC(/phpcms/index.php?...m=member&c=index&a=register&siteid=1 )判断,漏洞触发点的入口位于/phpcms/modules/member/index.php文件中的register()方法中,...结论就是,漏洞的触发函数在倒数6、7两行,单独截个图,如下⤵️: ?
当然,我自己搓一点都无所谓,但怎么能丢了parsec的脸,各位还是且听我娓娓道来~ 0×01 最初的phpcms头像上传getshell漏洞 不知道大家还记得phpcms曾经火极一时的头像上传漏洞不,因为这个漏洞...那件事以后我分析过漏洞才成因以及利用方法(https://www.leavesongs.com/PENETRATION/phpcms-upload-getshell.html),简单来说phpcms对头像上传是这么处理...这就是phpcms最早的头像上传漏洞。这个漏洞影响的不只是phpcms,也包括抄袭其代码的finecms。...finecms是一个很喜感的cms,在phpcms出问题以后,finecms偷偷将漏洞修复了,当然修复方法就是直接拷贝了phpcms的补丁。...那么,我们来看看finecms(phpcms代码类似)是怎么修补这个漏洞的: <?php public function upload() { if (!
前面咱们一起学习了phpcms_v9.6.0,任意文件上传漏洞复现的过程,不知道小伙伴们后面有没有想到如何进行批量检测呢?...创作背景: 上周发完phpcms_v9.6.0,任意文件上传漏洞复现的过程的文章后,有小伙伴们说phpcms_v9.6.1的任意文件下载一直复现不成功,于是就有了本文。...源码部署: 参考:phpcms_v9.6.0 任意文件上传漏洞的链接 : https://mp.weixin.qq.com/s/hApXD2cKG0a83fzkRTjAlA 0x01 同样的按照常规的源码部署流程先将...漏洞复现: 0x01 在未登录的状态下访问以下链接http://127.0.0.1/phpcms961/index.php?...总结: 这个漏洞的复现过程也是属于较为简单的操作,需要明白整个漏洞利用流程,个别小伙伴们复现不成功,有可能wap未开启,或者第二步中绕过代码过滤时没处理好。
环境搭建 参考PHPCMS_V9.2任意文件上传getshell漏洞分析 漏洞复现 此漏洞利用过程可能稍有复杂,我们可分为以下三个步骤: Step1:GET请求访问/index.php?...漏洞复现 为了更好的理解这个漏洞产生的原因,我们采取的方式是从后往前分析。...在phpcms/modules/wap/index.php ? 上图代码处通过GET获取siteid的值,然后为其设置cookie。 整个漏洞的利用流程如下: ? 漏洞修复 ?...http://www.phpcms96.com/index.php?...http://www.phpcms96.com/index.php?
前言 PHPCMS是一款网站管理软件。该软件采用模块化开发,支持多种分类方式。...环境搭建 本次PHPCMS版本为9.6.0,安装步骤跟上一篇文章一样,参考PHPCMS_V9.2任意文件上传getshell漏洞分析 漏洞复现 在注册用户处,添加用户进行抓包(这里以Tao为例) ?...漏洞分析 这个漏洞存在于用户注册处,通过上面请求的地址(/index.php?...为了更好的理解漏洞的原理和利用的巧妙之处,我们就先看看正常的注册流程。...漏洞修复 在phpcms9.6.1中修复了该漏洞,修复方案就是对用fileext获取到的文件后缀再用黑白名单分别过滤一次 ? 文章中有什么不足和错误的地方还望师傅们指正。
参数名称 描述 位置 备注 m 模型/模块名称 phpcms/modules中模块目录名称 必须 c 控制器名称 phpcms/modules/模块/*.php 文件名称 必须 a 事件名称 phpcms...漏洞复现 访问首页index.php ? 注册一个账户(这里我以Tao这个普通用户进行演示) ? 到个人主页修改头像处,上传头像 ? 在此之前,还要准备一个后缀为zip的压缩包,具体内容如下: ?...漏洞分析 在分析之前,我们先说一下漏洞存在处的功能,执行流程,以及漏洞产生的原因。 在编辑头像处,我们上传头像,前端会将我们上传的图片进行分割成三张(三个尺寸大小)。...所以,漏洞产生的原因就是unlink函数 if(!in_array($file, $avatararr)) { @unlink($dir.$file); // 漏洞产生的原因 ?...因为unlink无法删除文件夹,这就是为什么上面利用的压缩包里的恶意代码文件需要放在目录下 漏洞修复 不使用zip压缩包处理图片文件 使用最新版的phpcms 文章中有什么不足和错误的地方还望师傅们指正
catid="$catid" num="10" id="$id"} {if $data} 相关文章 {loop $data $r} 标签: phpcms
lists输出时用随机排序 Phpcms默认不支持随机文章调用,必须自己动手实现,以下代码只有 order=”rand()”,其它与正常调用一样。...title="{$v["title"]}"{title_style($v[style])}>{$v["title"]} {/loop} {/pc} 方法二:自定义随机函数 打开phpcms...blank" title="{$r[title]}">{str_cut($r[title], 51, "")} {/loop} 如果想要调用全站随机文章,参考 phpcms
本周斗哥给大家带来了4月份爆出phpcms v9.6.0的漏洞之一,允许上传任意文件,可直接利用该漏洞getShell,这个漏洞利用过程还是比较简单和直接的,接下来复现下这个漏洞。...基础环境 1.phpcms_v9.6.0源码。 2.web应用环境用于搭建phpcms。 3.web应用服务器用于下载木马文件。 需要工具 1.BurpSuite 或者hackBar等。...1. 0x01 解压phpcms_v9.6.0源码文件,将源码放在www目录下。 ? 2.0x02 启动phpstudy,然后访问本地http://127.0.0.1/phpcms/地址。 ? ?...http://127.0.0.1/phpcms/index.php。 ?...漏洞复现过程 1. 0x01 按照常规的源码部署流程先将phpcms_v9.6.0部署到web环境中,部署完成后访问注册模块。 ?
对于PHPcms9.6.0 最新版漏洞,具体利用步骤如下: 首先我们在本地搭建一个php环境,我这里是appserv(只要可以执行php文件就行) 在根目录下新建一个txt文本文件里面写上php一句话,...如上图可以访问 接着我们找到phpcms网站注册模块,随便填一下信息 然后我们用burpsuite抓包 然后发送到repeater 我们在最下面的注册那儿使用img标签插入我们本地第一步搭建的一句话 poc
删除了原表单一些不必要的代码,修改typeid的值为1。这是表单最基本的代码,缺一不可。 如果希望点击搜索弹出新窗口,只需要在 method="get"后面添加...
记一次phpcms漏洞利用到获得服务器 by lshc 随着最近phpcms V9 任意上传和注入poc的流出,在圈内又掀起了一阵漏洞利用浪潮,想到之前遇到一个网站采用phpcms没能getshell...好了,言归正传,首先上传漏洞的利用需要一个外网服务器,在自己的外网服务器写下一句话: ?...我将发出的phpcms的sql注入和任意上传poc整合到一个脚本测试目标站点,发现该目标站点只有注入漏洞: ?...成功爆出后台用户名和密码 ,将密码拿到cmd5破解,还算幸运,成功解出密码,然后登陆后台 ,发现版本是9.5,怪不得没有最新版本的任意上传漏洞: ?...发现它可以在线升级版本,会不会升级了版本就存在了任意上传漏洞, ? 于是开始升级版本至9.6: ? 再次执行脚本: ? ok上传一句话。 先访问一下上传文件看是否成功,ok,页面存在 ?
下表为PC标签保留参数表,几乎所有的PC标签都支持这些保留参数设置 变量名 默认值 说明 action null 本参数的值表示为操作事件,模型类PC标签必须使...
PHPCMS点击排行榜代码 {pc:content action="hits" catid="$catid" order="weekviews DESC" num="10"} {loop $data $
注意事项:在调用代码之前不能有pc标签,包括栏目调用或文章列表调用,否则将无法调出搜索结果列表
最后说下最常用的{siteurl($siteid)},在标签列表页tag_list无法获取当前站点ID,而且会拖慢标签列表页打开速度,手动指定站点ID可解决问题...
首先得看官方配置教程,http://v9.help.phpcms.cn/html/2010/search_0919/35.html phpcms后台sphinx设置 IP:如果phpcms程序跟数据库是在一个服务器上
以上标签首页不能调用,分类页和文章页都可以。从某种意义上讲 CAT = CATEGORYS[catid] 但是CATEGORYS是二维数组,可以在任意位置调用。
PHPCMS是采用MVC设计模式开发,基于模块和操作的方式进行访问 ? 常见的payload如下: index.php?...php#.jpg>&dosubmit=1 对应的是phpcms/modules/member/index.php中的register函数,所以我们在那里下断点,接着使用 PoC 并开启动态调试,在获取一些信息之后...经过new_html_special_chars函数的转换之后,new_html_special_chars函数位于phpcms/libs/functions/global.func.php中 function...然后数据进入到 trim_script中, 函数位于phpcms/libs/functions/global.func.php中 function trim_script($str) { if(is_array...参考文章: https://paper.seebug.org/273/ https://github.com/jiangsir404/PHP-code-audit/blob/master/phpcms/
领取专属 10元无门槛券
手把手带您无忧上云