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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:51:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
<?php
% U. H& ?( @6 r. f+ I% S; L- L& F/**
% j9 g/ \/ @/ J5 h. }* {; z * uploadFlash.php
* ]" N4 f0 [6 F3 h7 }( p1 F * Flash文件上传.# A9 a3 x4 ^4 H  m& {( p
*/1 Q* n, ^2 ~7 f" e
require_once('../global.inc.php');" N" h  S, u8 j  Q$ L$ t

! M( p0 H, M/ m; m8 e. f//operateId=1 上传,operateId=2 获取地址.2 j" f. y9 M/ A  R* m  Z
$operateId = intval($_REQUEST['operateId']);; [) W% l6 S) U% g
if(empty($operateId)) exit;
7 R/ a9 _1 I  u$ P/ S  T6 @& D
0 U, t! p; I1 Zif($operateId == 1){
0 I* H0 H( \4 y5 u9 K- N $date = date("Ymd");+ P& ]8 b' _8 S7 R: c, h
$dest = $CONFIG->basePath."data/files/".$date."/";4 e0 m" l8 E0 W4 T
$COMMON->createDir($dest);
6 B/ |. W# m: H- G# Z9 N' }3 g //if (!is_dir($dest)) mkdir($dest, 0777);, Q3 X' o3 T' }1 U2 L
, J  a2 K3 F  I1 U
$nameExt = strtolower($COMMON->getFileExtName($_FILES['Filedata']['name']));. {  g* l' `% F2 ]5 T
) s0 ]7 w: p/ `8 S* W0 k
$allowedType = array('jpg', 'gif', 'bmp', 'png', 'jpeg');
3 i# [' P6 }  b# f; v * J6 y# |- q' |, C8 z, f( h' @+ J, R; X
if(!in_array($nameExt, $allowedType)){) P& c) a+ ^! X9 W( u
  $msg = 0;
$ E5 y5 [1 f, a/ L+ {5 Q }
( M' E2 \, ^- I" \$ }. d5 P if(empty($msg)){
# s" f# p1 \2 H( Y6 T  $filename = getmicrotime().'.'.$nameExt;
& w9 T2 M# j' O: t' z  $file_url = urlencode($CONFIG->baseUrl.'data/files/'.$date."/".$filename);
9 x7 w! O* p* Y" {" O  
1 O. X. ?7 d; f5 {4 _: g: t  $filename = $dest.$filename;
6 N5 I2 r' j8 }- e4 u5 l  if(empty($_FILES['Filedata']['error'])){- t# g6 e& L( ~2 M& }, s
   move_uploaded_file($_FILES['Filedata']['tmp_name'],$filename);
4 ^' E! m1 U: x5 k2 A' e1 m4 n  }  j. n- F' V9 x6 V9 z
  
; a" S2 ]4 l! j7 ], ]$ x  if (file_exists($filename)){
! z) B% {( d; f+ m   //$msg = 1;
" f& U( Z( X2 a$ b) @. k5 O$ h   $msg = $file_url;& }+ m$ {+ }' ]( B
   @chmod($filename, 0444);9 v4 K1 C: a2 W: y# q
  }else{
3 G' }  u' l" _1 {4 D' o5 @   $msg = 0;& J3 t# E5 E, ~* N* t1 m
  }9 b9 j5 ]6 W+ ^6 U4 L
}
' y2 i) b; B0 [. J8 ?+ p $outMsg = "fileUrl=".$msg;
4 A! A: U* {7 G $_SESSION["eoutmsg"] = $outMsg;% |! z/ w2 k* F; _( w: I
exit;
) I+ t& `1 Y& u}else if($operateId == 2){/ c% S* ]7 O* f/ H! H2 t
$outMsg = $_SESSION["eoutmsg"];
% R) s. y* {5 g  z& i if(!empty($outMsg)){2 ^/ |/ I  D: Q$ F' S( j1 {
  session_unregister("eoutmsg");
' i0 h% z- V" ^- h8 [1 g  echo '&'.$outMsg;
2 H3 E% ]' B  B4 X9 N  exit;
( C3 I/ D, R  h) [  W% ~ }else{% T2 \' X. \# s. Q
  echo "&fileUrl=0";
& V( K0 ~+ c+ r' T' u  exit;  Q5 x. u) I1 E: i7 {
}
3 Q2 R5 _) x6 j4 A/ M; b}9 S2 W' x1 a4 {8 R2 ]0 K
$ j* L: W! z" g6 p1 r
function getmicrotime(){
" U3 U# k* X; M. z: D. P/ }    list($usec, $sec) = explode(" ",microtime());
) K0 p  O2 w8 K$ V3 \7 T    return ((float)$usec + (float)$sec); 8 _! O- \( w# d5 c. {" ]
}( q: g+ B7 |$ W7 r

( t* F+ M* j3 A) l" d  H5 `?>
6 _% o7 ^$ [( b5 [
回复

使用道具 举报

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

本版积分规则

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