
前言
本篇是对极致CMSv1.7漏洞的一些新的发现,先从MVC开始到漏洞的发掘利用
MVC篇
首先,先打开index.php
<?php
// 应用目录为当前目录
define('APP_PATH', __DIR__ . '/');
// 开启调试模式
//define('APP_DEBUG', true);
//定义项目目录
define('APP_HOME','Home');
//定义项目模板文件目录
define('HOME_VIEW','template');
//定义项目模板公共文件目录
define('Tpl_common','');
//定义项目控制器文件目录
define('HOME_CONTROLLER','c');
//定义项目模型文件目录
define('HOME_MODEL','m');
//定义项目默认方法
define('DefaultAction','jizhi');
//取消log
define('StopLog',false);
//定义静态文件路径
define('Tpl_style','/static/');
// 加载框架文件
require(APP_PATH . 'FrPHP/Fr.php');
// 就这么简单~
先是define定义,然后加载框架,所以直接去加载的框架看看,是再FrPHP/Fr.php,打开后,拖到最后,发现

先加载了配置文件,因为配置文件里是用单引号包裹,就没什么好看的。然后再会触发FrPHP的eun方法,跟进查看
我是一名网络安全工作者,擅长渗透攻防方面的内容,学习工作了几年,也整理了很多渗透、攻防、审计等资料文档,需要这份文档的读者 优快云大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享

前三个很简单,是配置数据库,和对传入的数据的简单处理,需要注意的是route()路由处理,对它进行跟进

在141行接收url传入的参数,然后在206行对控制器和方法名进行define赋值
然后在212行对传入的url进行处理,把输入的url前面传入的index.php先舍去

然后在231行开始,会对传入的url拆分,变为数组,如我url输入:index.php/Home/ce,会被拆分为Home和ce然后在243行赋值给控制器名和方法名



然后再调用我们指定的类的方法

漏洞篇
SQL注入
在\Home\c\HomeController.php中的jizhi中

看到在101行存在把 u r l 变为数组 , 然后

本文深入探讨极致CMSv1.7的多个安全漏洞,包括SQL注入和XSS攻击。作者通过分析代码,揭示了如何利用路由处理和控制器方法定义进行SQL注入,并指出在UserController.php中的release方法存在XSS漏洞。同时,文章展示了如何通过删除图片功能实现任意文件删除。对于网络安全从业者和开发者来说,这是理解Web应用安全问题的重要参考资料。
最低0.47元/天 解锁文章
865

被折叠的 条评论
为什么被折叠?



