找回密码
 立即注册
欢迎中测联盟老会员回家,1997年注册的域名
查看: 1988|回复: 0
打印 上一主题 下一主题

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

[复制链接]
跳转到指定楼层
楼主
发表于 2013-4-4 17:36:50 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
漏洞版本:( R# I1 x7 a4 |( g/ ~
DedeCms 5.x漏洞描述:
4 z. z; N, ~( ODedeCms是免费的PHP网站内容管理系统。" A7 p5 e( C& |! a* w

: t6 r$ u0 q2 @2 q6 kplus/carbuyaction.php里没有对变量进行严格的过滤2 `1 P, k5 w. a( y/ O. ^
+ ~/ s  C. a/ D& ~# T: t
出现漏洞的两个文件为:  S8 s2 l  l5 W) m" _
Include/payment/alipay.php
7 Z5 H8 Z# G% g* d9 @Include/payment/yeepay.php0 S7 r7 o" y/ L# ^. J- j' u$ U1 U
漏洞均出现在respond方法里
5 U; I' e+ ~2 W+ A7 m8 D- c* L
+ v6 C# q5 U# e9 K4 J' EInclude/payment/alipay.php ! E6 n' B  n1 s/ V$ S/ ~
......function respond(){if (!empty($_POST)){foreach($_POST as $key => $data){$_GET[$key] = $data;}}/* 引入配置文件 */require_once DEDEDATA.'/payment/'.$_GET['code'].'.php';......
" L! ^0 t- A# q- u5 S0 Y                        : q/ D5 z- n3 {9 g
大概在133行左右,$_GET[‘code’]没有经过任何判断和过滤。& H2 p7 q6 _0 b  [$ A
Include/payment/yeepay.php
# ]  H  K& H# E" P( G......function respond(){ /* 引入配置文件 */require_once DEDEDATA.'/payment/'.$_REQUEST['code'].'.php'; $p1_MerId = trim($payment['yp_account']);$merchantKey = trim($payment['yp_key']);....... h% g+ S* D4 ?2 ]( J
                        ! J8 _7 ?6 M& v
大概在145行左右,$_REQUEST['code']没有经过任何判断和过滤。<* 参考
5 W4 {5 V+ v- ]2 ?http://bugscan.net/manage/node/83
% s$ R: T3 t$ Q1 o8 G- E; V1 A( R: [http://www.cnseay.com/2515/( q4 ]3 ~1 ~5 ]6 u9 P
*>8 z( X/ a1 u) Q9 `/ B) P) Y8 I( S
测试方法:
' R: v7 `: i) b9 j1.http://www.dedecms.com/plus/carb ... amp;code=../../tags 上面的Exp是包含根目录下的tags.php文件包含其他后缀请自行构造截断, 使用exp测试时须要自己添加一个code等于alipay或yeepay的cookie 7 D  g: T* R' D3 B; J7 H* ^
2.由于bank和cod这两个文件并没有respond方法,所以如果code等于bank或者cod时将会暴错泄露路径2 Z1 ^' W( Y& I" p! R- \0 V0 |' Q
修复方法:! Q; A: e5 C$ K5 M5 ~  d" L! S3 H& Q
目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:
/ S+ d2 ?# ~+ {, E8 _$ D! K$ u! _http://www.dedecms.com/products/dedecms/) X0 f2 g  q, t( h. m( Q

  V7 ~6 D, u: A! w% `  q  a 临时修复:
' b' A$ M2 j" ?) |6 J) ~+ ~0 n, B1)Include/payment/alipay.php
( V) r5 g3 w  A4 H# S" A  大概133行左右6 I8 {" s2 S) `* v' R
  require_once DEDEDATA.'/payment/'.$_GET['code'].'.php';
7 P% @, f, s0 i1 g替换8 U* c7 T' l. z
require_once DEDEDATA.'/payment/'.basename($_GET['code']).'.php';8 f3 Q% X( r- ^
2) Include/payment/yeepay.php1 X( g+ q5 G3 M$ U1 i5 L3 i
大概在145行左右
' m) i: S+ G' R0 ?6 d' a require_once DEDEDATA.'/payment/'.$_REQUEST['code'].'.php';; o6 }4 z" m1 v# @- E" F
替换" T+ ~% G) z. x4 K1 j
require_once DEDEDATA.'/payment/'.basename($_REQUEST['code']).'.php';
" ]  G1 T" H  `$ y* H% o" V 8 h0 [: ?: B" q) r3 B$ G5 s8 q
回复

使用道具 举报

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

本版积分规则

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