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

.用友ICC网站客服系统远程代码执行漏洞EXP

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:51:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
<?php( f, k5 J& X: l6 M* y; a) w4 m
/**" ~2 }$ ?! c& h7 B3 C2 z
* uploadFlash.php/ V0 j3 F$ D) H+ V3 j8 }
* Flash文件上传.
( a! W) [  m1 X! I7 @ */8 u9 ~$ g' P0 k5 L/ o
require_once('../global.inc.php');
" g4 i. K/ m9 {" C* d
" |& q- r7 K, i. C& v: t! g$ Q//operateId=1 上传,operateId=2 获取地址.
$ L6 ]5 @! [! [/ F( e6 D$operateId = intval($_REQUEST['operateId']);
8 b" `# B! E5 n. w9 b2 _if(empty($operateId)) exit;& G) _; w2 o3 a' y4 V  h# h# E

8 e' i4 q, D* H7 {if($operateId == 1){* z' I4 c) Z- g8 L3 X# s5 @
$date = date("Ymd");- D8 v$ P/ Y8 z2 z( C
$dest = $CONFIG->basePath."data/files/".$date."/";
/ L5 w% `( Q' { $COMMON->createDir($dest);2 N2 i8 E  p7 Z: t  G
//if (!is_dir($dest)) mkdir($dest, 0777);% q7 q- ~$ F: k0 P* f
. b6 w) |3 f( u
$nameExt = strtolower($COMMON->getFileExtName($_FILES['Filedata']['name']));
& r, x! L! k) ^3 l
4 h% r7 @  k$ G- q/ X $allowedType = array('jpg', 'gif', 'bmp', 'png', 'jpeg');, [7 x) V( E2 ^- G- M: I

" g( H' d9 ^: |! y- E if(!in_array($nameExt, $allowedType)){
4 n1 j2 |) V5 v+ |+ T  _  $msg = 0;* {; [& W% K" |( Y
}
' ?) W  N1 B/ ]- K9 t0 P8 V  [ if(empty($msg)){
  E0 X% T3 d( ~5 K* V  $filename = getmicrotime().'.'.$nameExt;/ @2 L" k+ g3 x' K) k* _$ T
  $file_url = urlencode($CONFIG->baseUrl.'data/files/'.$date."/".$filename);8 h% G% f/ [1 E. g
  
6 V+ Y' Q' ]# K2 c4 ?" u  $filename = $dest.$filename;
$ \, c7 }% G& @0 p0 p  if(empty($_FILES['Filedata']['error'])){% t* X: w, P# \6 M( U# Z, C
   move_uploaded_file($_FILES['Filedata']['tmp_name'],$filename);7 H- L: L% B  c& o# v
  }
: l2 B0 D& ]( Y) w# X7 K- Y* ?  * Q' M5 k" }2 f' `
  if (file_exists($filename)){8 e5 N. G$ L1 {/ Z1 R9 B
   //$msg = 1;1 A1 Z# [  `4 i) H
   $msg = $file_url;5 q; ]: g2 p+ `' z. y
   @chmod($filename, 0444);
# v: U' Q& s: m  N: B  }else{! R; E- ~+ h/ l
   $msg = 0;
/ L0 F7 Q# e8 F0 r& |! d* \  }' ^0 Q' g- A6 e. d  d; b
}
/ j: P/ T/ x# F6 o) d $outMsg = "fileUrl=".$msg;2 m/ y2 s. S- T: {& W, q
$_SESSION["eoutmsg"] = $outMsg;
( {' I* [; B! ]* M: c exit;
7 {5 R/ ^1 t6 y: x# {7 ~9 T  e}else if($operateId == 2){
* Y( i6 W8 J1 O# O% W5 X4 R5 _ $outMsg = $_SESSION["eoutmsg"];3 B. H% Y! I" m# t3 w, |0 e% o
if(!empty($outMsg)){% v, c- E2 z2 u9 Q! H
  session_unregister("eoutmsg");5 {: K3 O; Q# Z8 D$ j1 b
  echo '&'.$outMsg;3 I5 f2 e5 v' c9 ~
  exit;7 i) \8 C3 h+ U0 I5 {' n$ i
}else{
) G8 |8 v/ i3 u& w  echo "&fileUrl=0";  f0 m: y' U( ?& }# O
  exit;9 Y# S; R4 I/ ~6 x
}$ Y8 Y# A% U7 ?; d% E. c& `; P: ?/ Y
}
) |/ N$ K' u$ |0 z8 g/ b2 l2 z) L) F, l$ V; q2 a! p
function getmicrotime(){ $ `# R$ l8 v. \$ C
    list($usec, $sec) = explode(" ",microtime());
# D% m- h- \, _    return ((float)$usec + (float)$sec);
9 _. h& X0 l2 `* E3 N( f2 s- N}
# t# l9 a/ H! @9 V& G" d8 m
6 w+ l) u6 ^) O* S?>" P& V5 g5 C* _- G) M# j
回复

使用道具 举报

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

本版积分规则

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