【PHP代码审计】站帮主CMS漏洞挖掘——这种类型的cms直接到cnvd里去搜漏洞即可

直接到cnvd里去搜站帮主关键字,有啥漏洞都出来了。

https://www.cnvd.org.cn/flaw/list.htm?flag=true 可以看到很多:

 

【PHP代码审计】站帮主CMS漏洞挖掘

PHP代码审计
专栏收录该内容
9 篇文章2 订阅
订阅专栏
文章目录
任意文件删除
SQL注入漏洞
任意文件删除
这里随便挑了一个cnvd上最新发布的cms漏洞

查找unlink函数,任意文件删除常见函数

看到一个return unlink($path);感觉自己看到了结局

双击发现是delDirAndFile函数的功能

function delDirAndFile($path, $delDir = FALSE) {
if($path=='' || $path=='/' || $path=='./' || $path=='../' || $path=='../../' || $path=='../../../'){
exit('严禁该操作');
}
$handle = opendir($path);
if ($handle) {
while (false !== ( $item = readdir($handle) )){
if ($item != "." && $item != "..")
is_dir("$path/$item") ? delDirAndFile("$path/$item", $delDir) : unlink("$path/$item");
}
closedir($handle);
if ($delDir)
return rmdir($path);
}else {
if (file_exists($path)) {
return unlink($path);
} else {
return false;
}
}
}
发现此函数可以对传入的$path进行删除操作

跟进函数使用位置

if($run=='delpath'){
$path=$_POST['path'];
delDirAndFile($path, $delDir = true);
}

发现如果变量run等于delpath,就可以通过post传递的参数path来删除文件

看怎么给变量run赋值

if(!isset($_GET['run'])){
exit("参数有误");
}

发现是get请求传递的run参数

这个时候我们可以看一下首页文件

<?php
error_reporting(0);
header("Content-type: text/html; charset=utf-8");
if(count($_GET)<=0 and file_exists('index.html')){
echo "<script>window.location='index.html';</script>";
exit;
}
else if(!file_exists('cms/cms/install/install.txt')){
echo "<script>window.location='cms/cms/install/index.php';</script>";
exit;
}
else{
echo "<script>window.location='search.php?index';</script>";
}
?>

是通过cms/cms/install/install.txt是否存在,来判断是否跳转到安装界面的

我们安装网站后尝试直接访问安装界面

可以看到,如果需要重新安装,请把install.txt文件删除
通过上面的存在任意文件删除漏洞处构造payload

发现文件被删除系统需要重装


SQL注入漏洞
通过查找select字段发现如下字段

可以看到未经过任何安全函数之类的进行过滤

<?php
include('c_top.php');
if(isset($_GET['aid'])){
$aid=$_GET['aid'];
$arts=$c_sql->select("select * from art where id={$aid}");
$arts=$arts[0];
$tid=$arts['tid'];
}

直接http://192.168.80.158/zbzcms/cms/cms/admin/art.php?aid=1放到sqlmap跑

得到账号密码
这里其他的漏洞基本上都差不多,还是比较简单的,适合我这样的新手学习,这里就不写了,基本就是查一下危险函数,黑白盒一起很容易发现的
————————————————
版权声明:本文为CSDN博主「SanSs敲利码」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_44978149/article/details/118403113

posted @   bonelee  阅读(582)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」
点击右上角即可分享
微信分享提示