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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:51:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
<?php
  f7 l" W2 l3 t) u" @/**: t# j9 N2 Z" a, b
* uploadFlash.php. [7 }1 e  @+ k; s
* Flash文件上传.! A  d1 B/ z6 D5 o2 I& \
*/
( q" u, {+ g  y9 U/ m; F0 i9 t9 Krequire_once('../global.inc.php');) x+ w1 c$ L2 J7 S, F/ N! g
: }  Q% U- z3 D% r( Z" U% A' S
//operateId=1 上传,operateId=2 获取地址.5 }: v0 m4 h. R. ~! W
$operateId = intval($_REQUEST['operateId']);+ e% h0 I* {, D8 H- \3 }; S; A
if(empty($operateId)) exit;
6 M% ~4 g! s+ w9 O) n2 A+ N) s3 T; s+ j  T1 e
if($operateId == 1){
) Z$ {# i5 r5 f8 l% r3 Y $date = date("Ymd");8 i# o2 \5 q) V/ W- i
$dest = $CONFIG->basePath."data/files/".$date."/";
( e. k' p7 ]/ e0 D3 A/ h2 { $COMMON->createDir($dest);
0 T* ^9 n7 T* @3 o //if (!is_dir($dest)) mkdir($dest, 0777);
: K5 a7 f) p( I9 J( `
$ L4 c% B$ ~/ ]  Y" D- ^, O/ _4 Y( } $nameExt = strtolower($COMMON->getFileExtName($_FILES['Filedata']['name']));6 C+ k! ^+ H6 |9 {
/ L2 l' R4 P% X+ R& N0 s& K
$allowedType = array('jpg', 'gif', 'bmp', 'png', 'jpeg');& m& A2 N7 d: r! h0 i9 m

3 W% A+ v2 I% p' _, F) a' R if(!in_array($nameExt, $allowedType)){
7 I# a+ k5 F9 b- w& W  $msg = 0;. L: Z$ N5 P: v  L# k6 Q! t, n. E; F
}
) O  O) A, k+ ~' \; P& _5 M if(empty($msg)){( s1 Y1 x/ i  i
  $filename = getmicrotime().'.'.$nameExt;# c( @9 H; A8 t: Y' a
  $file_url = urlencode($CONFIG->baseUrl.'data/files/'.$date."/".$filename);
- ?8 E4 p# {5 O& b  ' T% q+ ^3 B7 W7 i- q) ]1 j! a$ q
  $filename = $dest.$filename;
5 L! L6 U  H/ `; u. L  if(empty($_FILES['Filedata']['error'])){
+ E5 I* Y7 p/ K8 y7 O! T% y* L   move_uploaded_file($_FILES['Filedata']['tmp_name'],$filename);3 _7 q  U7 V+ `& a! M* I' o
  }( o* d7 a; K0 n6 I" J& T3 Z
  : W4 X2 K% @/ r+ g# }6 U5 j0 e
  if (file_exists($filename)){
  ]8 `, f4 Q& w! c) ^. @$ h   //$msg = 1;
  c1 Y, Q" ]3 d" s+ X# }   $msg = $file_url;
9 o6 j6 Q* s" R   @chmod($filename, 0444);! P/ Q: Y$ W; |* _: T8 s+ Q+ C
  }else{) P4 a, i' y% S! i+ I1 T4 y9 w' M
   $msg = 0;
. T; A* r0 P2 e9 s  }! z# e3 Y; H$ W6 P$ Q
}
5 ]" M, b3 D! y" |* r7 r2 m7 d/ E5 g4 y $outMsg = "fileUrl=".$msg;
9 c0 `. w5 e% r" g  L4 ~4 b8 d $_SESSION["eoutmsg"] = $outMsg;
  P* L! P0 c4 X. Q  N exit;* K9 w# ]  p2 ?  D9 {% s. g
}else if($operateId == 2){, |. H/ a+ p; _; U+ S. e
$outMsg = $_SESSION["eoutmsg"];
, J8 W' b" i( f/ _% `% G' p8 p if(!empty($outMsg)){
" I  c" `2 j! m+ n: I. I5 Z0 A, j  f  session_unregister("eoutmsg");& g  W3 q) Y2 X  ?1 i% v1 y
  echo '&'.$outMsg;4 g4 V( ?9 k& _6 r% ?( u: @) ?* w
  exit;: K" H: ]- p4 C  P/ L
}else{3 Z- ]  n8 E) O/ c0 r( M9 ]9 ?4 i. j
  echo "&fileUrl=0";
& g0 M, Z% B: M% D0 r  R6 Q: n  exit;
9 o  V9 E9 \( J2 m1 h1 J+ w }: m# b& V" t* f9 ]* Z5 @; \# @2 J
}  F7 P. X, u; ?8 P6 c

" w- o' h! S) M% L& z2 C; E3 tfunction getmicrotime(){ & _- z2 W, L, m' S
    list($usec, $sec) = explode(" ",microtime());   v# V% h+ c4 `
    return ((float)$usec + (float)$sec); , _- w( a6 ^& u. v9 \% O+ l
}- K  J9 \/ A( d9 z$ }+ ^% z

: D3 Q9 V8 D" I5 {/ N; h?>( T) V" k6 V/ a" p% @( o' n4 {# v
回复

使用道具 举报

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

本版积分规则

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