找回密码
 立即注册
查看: 2671|回复: 0
打印 上一主题 下一主题

织梦(Dedecms)V5.X 本地文件包含漏洞

[复制链接]
跳转到指定楼层
楼主
发表于 2013-4-4 17:36:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
漏洞版本:
- _5 G5 J3 W7 F& aDedeCms 5.x漏洞描述:
  A: Q) K# N2 Y% v2 V6 R: sDedeCms是免费的PHP网站内容管理系统。& X9 a8 T+ I% r: N$ f
, F4 c) a& U4 O2 Y) F
plus/carbuyaction.php里没有对变量进行严格的过滤
; Z7 L0 b: N5 M$ _% q) r" z$ k8 o1 c5 e$ w3 j
出现漏洞的两个文件为:
9 [( ^7 G* @" PInclude/payment/alipay.php
1 M* @( i' h; `7 J, M! xInclude/payment/yeepay.php2 _3 C; |2 L  G& M4 j2 |* X
漏洞均出现在respond方法里0 j8 L( q+ E$ H+ z
, t5 L; y8 c6 l. `
Include/payment/alipay.php % f1 ]4 f: s' \  o% }) ^2 _" Q
......function respond(){if (!empty($_POST)){foreach($_POST as $key => $data){$_GET[$key] = $data;}}/* 引入配置文件 */require_once DEDEDATA.'/payment/'.$_GET['code'].'.php';......
& J6 m( F" e! b* t* [                       
) K/ x: x# a, {+ l6 [# z$ ?7 e大概在133行左右,$_GET[‘code’]没有经过任何判断和过滤。
4 e+ y6 L' Y1 p! pInclude/payment/yeepay.php
: y! G! n1 }. C% i* W8 b' D0 X......function respond(){ /* 引入配置文件 */require_once DEDEDATA.'/payment/'.$_REQUEST['code'].'.php'; $p1_MerId = trim($payment['yp_account']);$merchantKey = trim($payment['yp_key']);......
# B) n, U* u! N& h                        4 n! y5 P# e% |  z3 \9 Y
大概在145行左右,$_REQUEST['code']没有经过任何判断和过滤。<* 参考9 s5 I$ N7 j3 N# _  J% D
http://bugscan.net/manage/node/83
; z+ ^3 Q6 X: whttp://www.cnseay.com/2515/
  T4 |5 y' M0 `6 R9 x! d*>
: X, J! v6 A3 x. F3 t4 Y测试方法:+ h. P/ j; M1 z7 |9 |
1.http://www.dedecms.com/plus/carb ... amp;code=../../tags 上面的Exp是包含根目录下的tags.php文件包含其他后缀请自行构造截断, 使用exp测试时须要自己添加一个code等于alipay或yeepay的cookie
9 |# _+ P- G$ u0 ?0 l2.由于bank和cod这两个文件并没有respond方法,所以如果code等于bank或者cod时将会暴错泄露路径
1 A) T9 h% _6 A7 S0 d8 a  H8 \修复方法:
: K  ~# V2 G( p7 |2 `0 r+ w* V; h目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:% C5 e3 P. ^9 S8 [+ U( Z9 I
http://www.dedecms.com/products/dedecms/, j( E0 u0 n. r, ^# v" U) a5 J$ E
; a9 V, J- J+ Z# v* j
临时修复:
# t% g: f+ t; a1)Include/payment/alipay.php) {6 A# E4 v  D
  大概133行左右
4 {1 Y3 ~; N% }+ N/ n$ v/ {) K  require_once DEDEDATA.'/payment/'.$_GET['code'].'.php';
7 w, z8 W9 `, |# |替换
4 `9 `2 _* D  w2 i: Z. f0 t$ n6 h require_once DEDEDATA.'/payment/'.basename($_GET['code']).'.php';  I# _9 s& D0 R' Y
2) Include/payment/yeepay.php: g0 U2 W6 w( b
大概在145行左右
6 t. Q6 A* `: z9 v) c require_once DEDEDATA.'/payment/'.$_REQUEST['code'].'.php';1 L6 A) R0 A0 D* M# Z2 a8 C
替换
7 K+ k' I5 u) w require_once DEDEDATA.'/payment/'.basename($_REQUEST['code']).'.php';- r/ ^' o# U; y: F7 i2 J
( A! p1 d% K' \' h, D: w  W3 p+ ^
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表