(新)程氏舞曲CMS 三步GETSHELL(实例演示+源码详析)

- AV AC AU C I A
发布: 2025-04-13
修订: 2025-04-13

### 简要描述: SQL绕过双重保险再注射+无需解MD5后台认证绕过(同时绕过了安装时写在config文件里的验证码)+后台GETSHELL 无论从技术难度还是危害讨论,均已到达最高RANK了吧 实例演示的站点为官方主页链接过去的 www.26yy.com GETSHELL由于对服务器文件有影响,只在本机127.0.0.1演示 详细源码分析,漏洞证明截图各见下文相应区域 ### 详细说明: 第一步: 分析: 本CMS使用自定义CS_Request过滤所有GET和POST 比如: $id=CS_Request("id"); ``` function CS_Request($pi_strName) { set_magic_quotes_runtime(0); //明显要用addslashes $magic= get_magic_quotes_gpc(); if ( isset($_GET[$pi_strName]) ){ $t_Val = $magic?trim($_GET[$pi_strName]):addslashes(trim($_GET[$pi_strName])); }else if ( isset($_POST[$pi_strName])){ $t_Val = $magic?trim($_POST[$pi_strName]):addslashes(trim($_POST[$pi_strName])); }else{ return ''; } return uhtml($t_Val); } ``` 结论:本CMS使用addslashes对输入进行过滤 /user/member/skin_msg.php line:128 ``` if(!empty($id)){ //id不能为空 $row=$db->getrow("select * from ".Getdbname('xiaoxi')." where CS_ID='".$id."'"); //上面这一句里id带上了引号,加上addslashes完全无法注射 //上面这一句的目的是 防止 非法数据起作用,先判断能否避免注射并且正常执行 if($row){//如果$row为真,即上一SQL成功执行并返回,则通过判定 $db->query("update ".Getdbname('xiaoxi')."...

0%
暂无可用Exp或PoC
当前有0条受影响产品信息