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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:51:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
<?php: D- M0 g( r% v7 p8 _) p; ~$ h
/**
% K6 m* C! w8 O! C4 h * uploadFlash.php6 v0 d, ~/ t/ E: o* S" h: E
* Flash文件上传.
5 P  M5 h3 O) v- Y1 `2 D& H1 [ */
' v) U" ~, c& z7 Prequire_once('../global.inc.php');" F- `* [4 Y4 b! n9 V% W

. u1 G+ \, d& m" U//operateId=1 上传,operateId=2 获取地址.
7 f1 |3 a: A2 _/ W1 z& }; x- }$operateId = intval($_REQUEST['operateId']);
; u3 W. A- d& U- p, Aif(empty($operateId)) exit;1 d7 G7 h) f* c# Z4 I
+ {; \1 K) o) [) c
if($operateId == 1){
. v- N: f- r! r. v $date = date("Ymd");% t* S% z! }5 K) L
$dest = $CONFIG->basePath."data/files/".$date."/";5 E2 n* Y; ^4 k4 K$ h% q
$COMMON->createDir($dest);3 I6 X4 p  V$ H3 L3 @: W
//if (!is_dir($dest)) mkdir($dest, 0777);
. ~8 r* i7 C# L : r' B2 ?, M% P  _
$nameExt = strtolower($COMMON->getFileExtName($_FILES['Filedata']['name']));
# a' ?8 x3 @6 t9 V7 x. w: I' E 3 F) V4 Q4 L3 Q3 H% I1 T0 ?# ?: g5 Z
$allowedType = array('jpg', 'gif', 'bmp', 'png', 'jpeg');- a; i, S/ z7 _' w9 Z* Z

2 z. W1 O4 P4 ~  h4 i if(!in_array($nameExt, $allowedType)){4 _$ K& ^" X6 u& |
  $msg = 0;
. J' _3 Q) S( i% G! W* z }+ o: S3 ?, r3 W& }5 ]2 O
if(empty($msg)){
. t# q2 X- W1 k6 y+ |  $filename = getmicrotime().'.'.$nameExt;! p# {/ _5 B& ?2 B  H6 F  q! r
  $file_url = urlencode($CONFIG->baseUrl.'data/files/'.$date."/".$filename);
7 ^0 Q- F6 R9 g" U& ~& ]3 S  $ t5 ~) A& |) @( @( _1 N9 B5 J
  $filename = $dest.$filename;
8 j3 ^& F- e. K% I. t  if(empty($_FILES['Filedata']['error'])){! K' H1 r/ I) ~4 N6 f/ E. `
   move_uploaded_file($_FILES['Filedata']['tmp_name'],$filename);
# l! r3 N" d: O7 c* g; Z( p  }
. w4 [1 {9 D2 h. b- l' ], F4 \" i' T    ^6 _1 l! _% x6 L6 R
  if (file_exists($filename)){* P! k& T* L7 \/ F4 t/ a- y& ^9 k
   //$msg = 1;
' A) z: u2 ~/ a  Z* z   $msg = $file_url;3 z4 R9 b: S. z7 X
   @chmod($filename, 0444);
( d" p! |7 i! }! j/ h, C  }else{1 m$ @1 \  W# `( q
   $msg = 0;
  N4 k1 t/ s7 l1 x  }
! g7 Y8 @* Q: X; i }! T7 r. F) L0 ~# o& `  G* H8 Z
$outMsg = "fileUrl=".$msg;& K) x% ?# C) _% e+ o+ S, r7 A9 U
$_SESSION["eoutmsg"] = $outMsg;+ S( [% l+ a# \9 H1 O1 C/ x0 K. U
exit;, o: n3 `1 O9 h9 {# S
}else if($operateId == 2){
1 l" E- a) p  [ $outMsg = $_SESSION["eoutmsg"];& b* c. d2 [6 U% l
if(!empty($outMsg)){  p, l2 \: f7 I: M
  session_unregister("eoutmsg");+ r3 w7 M. l( {+ [9 N. W& y; o3 z
  echo '&'.$outMsg;
. ]7 o6 J- T3 H% W" L  exit;! c9 l% J7 Z6 j1 ?. j+ O% C& H
}else{/ ^- ~% r' r9 I
  echo "&fileUrl=0";6 Z$ \1 _0 B) Z! ?
  exit;
* n4 }+ c* m# N7 B) X }
+ Z1 ?7 v! ]; p( _  R/ e/ E' H}
+ s% K8 b" d0 w; ^7 m: X' j6 @+ [7 W& j0 C0 p
function getmicrotime(){
$ ]' l+ V# O) Z5 q, o- x5 y    list($usec, $sec) = explode(" ",microtime());
& f5 B. z& N1 z" c    return ((float)$usec + (float)$sec); ! x& I! }) k& l0 |1 S
}
( F1 U; N) ^% y+ \0 I, |
7 U- m) C1 Z$ G  h) a( V% T?>1 v2 U7 R9 e& P( _9 i" P5 I
回复

使用道具 举报

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

本版积分规则

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