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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:51:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
<?php! a, ^9 [7 T/ y2 [4 C
/**
: r0 e% T2 e- Z+ T, A * uploadFlash.php$ B" f( P9 {7 g8 ?
* Flash文件上传./ z  {+ ^1 y  H
*/
8 O9 v' o5 _. k( r6 ?require_once('../global.inc.php');% o& |9 L5 d( o/ N  f# q

% M/ m  y0 {% n3 ]( y% L//operateId=1 上传,operateId=2 获取地址.
5 u$ ?) r; [- Y6 R$operateId = intval($_REQUEST['operateId']);
2 e+ n. _5 ]% n+ b* ?7 `4 Sif(empty($operateId)) exit;. V! ^1 r4 R2 X4 q6 T$ _

- U& ^2 X" Y, w( Y: o% w; u4 V: ?if($operateId == 1){6 O- q7 S/ n: o* M7 |- O4 K
$date = date("Ymd");
+ x. Y5 |- W1 J% O: P $dest = $CONFIG->basePath."data/files/".$date."/";
- B# o' C  w: |& H# Y% t $COMMON->createDir($dest);" Q+ ^. P; ?5 F* V1 i' W0 g
//if (!is_dir($dest)) mkdir($dest, 0777);! C! g6 m4 A0 j5 V; V+ j
6 p2 A% b, ?+ ~1 T9 ^
$nameExt = strtolower($COMMON->getFileExtName($_FILES['Filedata']['name']));
, S4 i( e5 r5 o- B3 W" n 1 a+ _+ L) r- f" z/ d- A
$allowedType = array('jpg', 'gif', 'bmp', 'png', 'jpeg');
  N! T9 ?( W0 B! G / X8 K; r* B& ?* I# `6 q
if(!in_array($nameExt, $allowedType)){
  j! U  m& [5 q2 d9 A3 h( _  $msg = 0;
1 V) u) C) Y6 I; U: @) E }2 D7 N0 _" Z9 b4 L; K  E/ n
if(empty($msg)){3 I. R* R9 N. G. @8 m
  $filename = getmicrotime().'.'.$nameExt;
6 z6 Z9 A3 z3 u, w  $file_url = urlencode($CONFIG->baseUrl.'data/files/'.$date."/".$filename);
. w# \- C7 t2 }# l% c+ f3 D4 y  
1 X+ o3 V9 }4 }& d  t  $filename = $dest.$filename;& G. S3 F4 D# Z8 N
  if(empty($_FILES['Filedata']['error'])){
! i1 {8 o& D, J$ @2 @/ r3 a$ U% I   move_uploaded_file($_FILES['Filedata']['tmp_name'],$filename);' N+ N, i5 B; W) A1 h
  }
: y& w0 O( g" w, H  e' H4 a5 |  
5 R5 z7 x: Z& G5 S# k, e  if (file_exists($filename)){4 b1 D4 H& Z, ?% k9 j
   //$msg = 1;
' o3 n" s) o5 Q! P& a! [   $msg = $file_url;
  H& d# G# ~5 K2 ]$ K' ]* o   @chmod($filename, 0444);
1 V5 r1 ]0 t6 p) I! _3 n# `1 e  }else{
3 f6 O+ `1 I! _. @  A' \/ h   $msg = 0;6 P# B# Q4 e; Q! T. A: x% Z* s
  }  b  t0 ?2 h$ E  d) C
}
" t0 e) l0 d- S# l6 h; c# Y  L# V $outMsg = "fileUrl=".$msg;8 Z8 h6 {# ]7 l" P9 u
$_SESSION["eoutmsg"] = $outMsg;
- ~8 o  l& E' a: I: \; a exit;
! B0 ?- h+ z6 E7 ^}else if($operateId == 2){
: P! |1 B- a) T& h% O$ S5 a6 c $outMsg = $_SESSION["eoutmsg"];0 b; c  a( w' E* ]
if(!empty($outMsg)){7 D. b" T5 _; B3 K
  session_unregister("eoutmsg");
5 t$ D9 ]" c* ^" q3 K  echo '&'.$outMsg;
& t# @8 Q5 [9 O  exit;
" S1 R3 H) t: i- y# @! Q( d }else{' D: `4 R: `- N- A, e! ]0 h: e4 S
  echo "&fileUrl=0";
  z1 [* N  w  g% E& g4 j- F1 w) ~  H9 ]  exit;
3 U9 X) g! k# n& O1 T; F$ e }5 T" `4 c) \5 w3 [: q
}
0 u+ D7 T# c' v: E" q/ K5 I
0 ]  m! J/ ~$ h5 ]function getmicrotime(){
2 P* J; v- U4 i! Y6 e3 S. z    list($usec, $sec) = explode(" ",microtime()); ' B7 x2 G- I" i
    return ((float)$usec + (float)$sec);
+ w8 z. w# b  B! r( e4 m) g8 B}
$ H# C- G! ~; ]; {# i- F
  m, N! b$ K+ ^1 d+ C; W?>  n. Z2 ]  v8 \+ Q7 ^1 H/ b
回复

使用道具 举报

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

本版积分规则

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