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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:51:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
<?php( H% b: ~2 R. t* M% l/ ^9 p
/**
6 x9 o! P- p8 t$ d * uploadFlash.php  _" E4 _3 c# N5 l' l
* Flash文件上传.0 y% v( H7 m7 o* {! S; c" A: b
*/
) Y1 R7 o% [6 I8 T9 xrequire_once('../global.inc.php');( d+ w: R4 T. Y  s3 E# O

# p% Z0 `, K5 `//operateId=1 上传,operateId=2 获取地址.
, z6 Y7 v0 z7 {- F3 ^% i' T$operateId = intval($_REQUEST['operateId']);& s# {1 N, u9 z0 F! c
if(empty($operateId)) exit;/ l/ U- l2 Z; Y, g2 }0 ]+ g5 e
4 P8 {! g7 V8 w5 m# B: ?( w
if($operateId == 1){- a: G3 r6 ?, B1 \1 d* j. T
$date = date("Ymd");
3 P$ D2 v$ K# m0 t1 l' c+ r# j; k- M $dest = $CONFIG->basePath."data/files/".$date."/";4 E; u1 z' J0 u6 {4 S( o( `
$COMMON->createDir($dest);
  i. F: O, R2 v2 Z //if (!is_dir($dest)) mkdir($dest, 0777);
  i  x/ i+ D' O3 x* @ 9 u6 m' f9 d" u0 B1 e8 g
$nameExt = strtolower($COMMON->getFileExtName($_FILES['Filedata']['name']));2 R' e! `% K9 X* w( \. x
& m, q/ v6 R' j* l
$allowedType = array('jpg', 'gif', 'bmp', 'png', 'jpeg');
/ l( t" c+ o5 _ 1 N- p' d5 F$ }* e
if(!in_array($nameExt, $allowedType)){
+ W! Y) v! W- t/ m, ]( `4 b  $msg = 0;
5 p, y) V' D+ H* _! Z* T }
# _( m/ h) P' R/ s% }) S( r* B. v if(empty($msg)){4 U* z* q( ~! _9 k3 P" Y% G4 m
  $filename = getmicrotime().'.'.$nameExt;
- J6 k) N+ ?; Y7 o7 I* F  $file_url = urlencode($CONFIG->baseUrl.'data/files/'.$date."/".$filename);+ S/ x$ `6 v1 [
  
; |' W, o: |. U  $filename = $dest.$filename;) G, n8 M3 m4 F
  if(empty($_FILES['Filedata']['error'])){
% N( S! B7 ^4 Q3 {" x3 J( C   move_uploaded_file($_FILES['Filedata']['tmp_name'],$filename);1 X9 y+ M) b  N# s7 W" l
  }
) k0 Y) M3 W; t" V3 N  # v' P: L- N9 q2 U( q/ F* d
  if (file_exists($filename)){
6 m2 S& [0 f: s   //$msg = 1;
0 V6 Z+ B  Q5 k. z2 b2 ~. I) h   $msg = $file_url;
7 M& L; ^3 r3 C2 B   @chmod($filename, 0444);
8 N9 N# V8 D+ H$ o  q) y  }else{+ f* ~. T, K  e  P& _- ?
   $msg = 0;5 X6 O/ M  P) J- ~6 _. t
  }5 z4 p1 h0 X7 m  Y3 @9 m
}
- H. K& _, r: M/ w; Q( G $outMsg = "fileUrl=".$msg;% F& o" ]" ~6 F, i7 y9 C
$_SESSION["eoutmsg"] = $outMsg;, C/ V; D7 @8 v8 }9 w+ F0 \3 {5 \
exit;3 H/ z# ?# x' H8 q
}else if($operateId == 2){
" k+ j- J: \( Q9 o* C $outMsg = $_SESSION["eoutmsg"];: j3 a5 Y" T1 t8 m
if(!empty($outMsg)){
0 }7 ~& _, [' i0 ?( F  Z# v  session_unregister("eoutmsg");
/ N5 i/ g. \5 S  @$ b; ?  echo '&'.$outMsg;
, O! E& S: x# E* x  exit;0 z" @) S; ^9 V
}else{
3 H) O- j1 O9 _. Z. G  echo "&fileUrl=0";- u! E5 D1 d6 b2 C  U3 |
  exit;
" D& `8 F+ E, T6 V2 v }( s0 G. n) d$ i. M6 ]
}
' e/ C5 {+ y$ X# F8 U  ~: I
: Y' e) }$ X. G7 C" @function getmicrotime(){ * T/ s; g. x! _2 t% }
    list($usec, $sec) = explode(" ",microtime()); 3 F* Z* w- C8 ]
    return ((float)$usec + (float)$sec); 5 o7 }9 [. d) H4 f: r8 C8 @
}0 {: }0 S) @2 [& W# D# q

6 E' w& M! T1 f- c9 D3 o?>- F; X, `' X8 M; S9 N
回复

使用道具 举报

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

本版积分规则

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