返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >ZZCMS201910审计——存储XSS漏洞
  • 137
分享到

ZZCMS201910审计——存储XSS漏洞

php服务器开发语言 2023-09-08 07:09:36 137人浏览 独家记忆
摘要

ZZCMS201910审计——存储XSS漏洞 在函数集成文件…/inc/function.PHP中发现如下代码:由此猜测若存在调用此函数的地方,可能会出现sql或者xss注入的存在;下一步应该全局查

ZZCMS201910审计——存储XSS漏洞

  1. 在函数集成文件…/inc/function.PHP中发现如下代码:由此猜测若存在调用此函数的地方,可能会出现sql或者xss注入的存在;下一步应该全局查找存在调用此函数,且第二个参数为true的地方;(shift+ctrl+F)
function stripfxg($string,$htmlspecialchars_decode=false,$nl2br=false) {   //去反斜杠$string=stripslashes($string);//去反斜杠,不开get_magic_quotes_gpc 的情况下,在stopsqlin中都加上了,这里要去了if ($htmlspecialchars_decode==true){   $string=htmlspecialchars_decode($string);//转html实体符号}if ($nl2br==true){   $string=nl2br($string);}return $string;}

在文件…/zt/show.php中:逻辑是找到对应变量是否可控和被打印输出。这一步找到了gsjj变量是可以被打印的;content值是来自于一句sql查询里面某个字段的值,且通过url传入参数id可以被打印出来;

$gsjj=$gsjj. stripfxg($content,true);//全局发现上面语句(验证了content可能可控和gsjj可打印);同时变量gsjj视乎都是具体html字符串变量;//之后要判断gsjj是否可打印输出;ctrl+f逐个搜索gsjj,几乎跳到本文件的最下方:出现以下代码:$strout=str_replace("{#gsjj}",$gsjj,$strout); echo  $strout;  //可见变量strout若存在 " {#gsjj} "字符串,该字符串会被变量gsjj所覆盖; 至于旧的strout变量视乎很多,但是感觉有点是集成化的html字符串,所以可以假设这里大概率会被覆盖; 最后echo出变量strout;由此可见该变量可以被输出。//之后找变量content:本文件没有,但是在include文件里找到了在top.php文件中:$rs=query($sql);$row=num_rows($rs);    //获取行数if (!$row

来源地址:https://blog.csdn.net/quexiyi8051/article/details/127710155

--结束END--

本文标题: ZZCMS201910审计——存储XSS漏洞

本文链接: https://lsjlt.com/news/399490.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作