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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:51:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
<?php# l9 i2 w0 H- h3 i. H9 _( H2 X0 J
/*** }  t' h* R1 o" M0 k% [
* uploadFlash.php5 t$ Z* a& H, X% q* ^  r# W$ F8 `
* Flash文件上传.
% r* e$ g- j7 u0 h5 y9 O' S */& s: e! `& L2 K+ ^
require_once('../global.inc.php');
3 E$ V/ B$ H  Q4 F0 p) z1 p* I; y! j! S3 ^* \- R& f3 C$ G
//operateId=1 上传,operateId=2 获取地址., G6 h9 y6 |# X) ]) o* K: {3 L
$operateId = intval($_REQUEST['operateId']);
& D$ S: q( [0 b; ?7 ^% V( Oif(empty($operateId)) exit;
: i/ b- I; m: X, P4 H8 X, w# y2 _, e. `3 S+ s% C- Y9 G
if($operateId == 1){! I5 R# O' o' c
$date = date("Ymd");
* {* G+ y2 \, L  ?: M& P $dest = $CONFIG->basePath."data/files/".$date."/";1 h3 \1 s4 P/ F6 |
$COMMON->createDir($dest);
4 ^/ [3 Z$ I( n  f3 q, e7 A* o //if (!is_dir($dest)) mkdir($dest, 0777);/ g+ T( i' N" R0 q, s- ?. l: F
! o' a5 j) P; M, t3 c
$nameExt = strtolower($COMMON->getFileExtName($_FILES['Filedata']['name']));8 n7 L7 `" C3 b4 u+ T$ `
1 c9 C- ?8 t: z; n' B( b
$allowedType = array('jpg', 'gif', 'bmp', 'png', 'jpeg');9 N1 w9 F4 W4 h6 b* ?
5 y- o# y1 a; G$ f8 p" B. u3 U
if(!in_array($nameExt, $allowedType)){- y7 N$ p4 k+ j# }
  $msg = 0;
. p/ z+ K2 `- F4 ?) g' Q6 L }; T  a* y& j/ X# y2 A6 K
if(empty($msg)){
$ {( [0 L4 Q# ^5 v0 o& g. v$ A  $filename = getmicrotime().'.'.$nameExt;4 i+ \, u5 i1 \
  $file_url = urlencode($CONFIG->baseUrl.'data/files/'.$date."/".$filename);. z6 v  B" e! ~( {8 W
  9 P0 Y" i( G6 q# u. n7 P
  $filename = $dest.$filename;
' \/ h- C" [6 `9 P% c  if(empty($_FILES['Filedata']['error'])){* B  x8 k  S2 n. S+ e1 f6 X5 ?. O
   move_uploaded_file($_FILES['Filedata']['tmp_name'],$filename);% [9 z7 c6 Y$ T0 M$ H; b
  }
. l% e# q: M4 _# m  ' {5 @6 w) D5 }" s% _. _6 N0 s
  if (file_exists($filename)){6 M3 [! h' l" h% x3 w0 `# M
   //$msg = 1;
5 ]( e# G1 p# j$ G( T; W0 F7 }+ J   $msg = $file_url;
! Y! D# ]# i, u: P   @chmod($filename, 0444);
) \7 E, [# Q# F! S  }else{# _: b6 J$ S  p$ ^) W
   $msg = 0;1 m# U9 Z0 b' W- e
  }( v+ ]* l4 z* c
}
4 f9 S$ _1 d% X# _6 p5 [ $outMsg = "fileUrl=".$msg;, k8 n+ _9 |& x1 }) [
$_SESSION["eoutmsg"] = $outMsg;
' z7 Y! @- h) q exit;0 w; M2 o0 ]& B9 O! [; i
}else if($operateId == 2){
% P# a2 \5 B# f8 D $outMsg = $_SESSION["eoutmsg"];
% K6 m: q- K8 b) h% L9 v if(!empty($outMsg)){5 o, j# k, P- b+ s; b
  session_unregister("eoutmsg");
1 T- [( z; b8 T) p' X  echo '&'.$outMsg;
  ]2 U. A. w1 c2 m2 S7 h5 ^* z: h  exit;
. B& {2 Y2 y# L- ?) C }else{5 u. Y+ H- V, k# E/ x3 {
  echo "&fileUrl=0";$ l3 v6 o# ~% f9 j3 y
  exit;& v+ O# U5 `; y9 {7 Q) i$ O
}
8 ^$ B  w6 T1 _2 r- \}+ M( H4 e4 n$ \5 u8 Q

5 g, z/ I  x+ M, q) r% S8 rfunction getmicrotime(){ 9 B! e( E8 m( B% e6 x) V1 b) x
    list($usec, $sec) = explode(" ",microtime());
. s5 q" o4 Z; A' w% `    return ((float)$usec + (float)$sec);
+ a9 [$ a4 ]/ [2 R- Y8 b}% ^# Q8 Q* Z/ b* a2 c. b  J
9 d) j3 j- z1 r3 K: c" ]; k& G' i& g
?>7 e+ N, ?6 t5 w2 q; _
回复

使用道具 举报

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

本版积分规则

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