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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:51:07 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
<?php
% l2 K' |9 a* [( s+ Y$ @8 |/*** Q/ R1 f. O$ ~; w, C* O
* uploadFlash.php5 Q; O; g& Y6 a! Z
* Flash文件上传.
0 N  G9 h6 z: w: l; [3 u& s( R */
( ~) k( u4 g3 Hrequire_once('../global.inc.php');0 B0 ]6 S9 a# ^1 F- C. A

' m( Z1 ?5 c4 N6 @4 Q' M5 F; |//operateId=1 上传,operateId=2 获取地址.5 [& |2 I9 [+ [  d" q% O6 x
$operateId = intval($_REQUEST['operateId']);
8 ~: i4 ], A: ]+ ^/ W  _/ kif(empty($operateId)) exit;" h  U3 m* {6 L- R: k" ^7 h

* J# z! v2 k# @8 Pif($operateId == 1){( Z$ L# U8 c6 m: ?% f" o( X
$date = date("Ymd");2 |  Y; P- d' ]* f3 H3 c3 Q% ]
$dest = $CONFIG->basePath."data/files/".$date."/";* s3 `8 C' a9 J- P* v/ c9 O& H( Y
$COMMON->createDir($dest);
. B4 q1 b) J+ a) q //if (!is_dir($dest)) mkdir($dest, 0777);: E# @2 _. |' r" n. V8 l, W* i; h
6 w2 G  M$ I, B/ B& [  R/ y
$nameExt = strtolower($COMMON->getFileExtName($_FILES['Filedata']['name']));
. z* t7 S1 ]7 _1 g' q1 K . ?- {  o# L$ s8 P) P/ Z
$allowedType = array('jpg', 'gif', 'bmp', 'png', 'jpeg');" Q9 K+ d& O! x/ c/ l/ X
7 j$ R% L  ^. y5 Y  f/ x
if(!in_array($nameExt, $allowedType)){
) |' `& b8 F0 v6 P; G, D  $msg = 0;
& h9 u; ?1 G+ U9 J! {7 Z2 [6 r }
* d7 g* b8 Q/ l' H& n* F if(empty($msg)){8 n! C9 U9 Z4 X( O
  $filename = getmicrotime().'.'.$nameExt;
9 `# A7 B9 `! J  $file_url = urlencode($CONFIG->baseUrl.'data/files/'.$date."/".$filename);( g3 R+ h( Y  X" A' q/ x; }. U" T
  % ~9 I) _( _0 j2 N7 R( {
  $filename = $dest.$filename;% D& T/ o! c& G# m" t  r7 p8 S) T
  if(empty($_FILES['Filedata']['error'])){' R1 o! |8 h  i; Z6 |6 O
   move_uploaded_file($_FILES['Filedata']['tmp_name'],$filename);
1 P8 Q* |6 u2 B1 ~0 l2 ~  }
7 ]# h3 B- R+ @) I$ z! P2 k  
1 }# D' _' n* b! R8 w  if (file_exists($filename)){5 ^6 T* X0 v  W4 j; @( w
   //$msg = 1;
9 e, n  ^) G  Y   $msg = $file_url;
7 [# N% r; G* E# p& I+ H   @chmod($filename, 0444);
, u! O1 ~6 U1 e! m0 X- e  }else{
0 p. \! l% n2 Y   $msg = 0;6 l6 {7 H1 j, ~) f) K
  }
! m& i6 v; {0 U( A0 e0 W9 c }1 H" o$ `* {6 i* D% y2 d" M, w8 i8 W
$outMsg = "fileUrl=".$msg;
1 q3 k5 X4 J# c6 ^ $_SESSION["eoutmsg"] = $outMsg;
6 w- [6 ]* n$ ~1 N2 x" N( j+ l exit;
" E- y( P9 J, O2 w6 f9 K5 E$ L' v( [}else if($operateId == 2){& s2 l. n' M1 n
$outMsg = $_SESSION["eoutmsg"];. Q9 s% y* U$ H5 T" ?2 F" M
if(!empty($outMsg)){
6 ?' z" u5 B$ u  session_unregister("eoutmsg");
( S2 ]0 `; E" _6 \  echo '&'.$outMsg;
0 ], M+ v; D6 \5 r. ]+ y  exit;
3 Y, f) w) B/ n8 _% x }else{
# K8 _' t" k. U: y  echo "&fileUrl=0";: K9 Q* h5 C( d9 b9 z5 s
  exit;
# Z2 j& G2 g: h  D7 y. d% F }
* u' b, h6 k4 X+ H; k( u/ n}
! g$ B: Q4 ]% z. F% K3 M" T, P  T& w, X4 C( g3 c
function getmicrotime(){ 1 l) l1 S( j  Z, i: x
    list($usec, $sec) = explode(" ",microtime()); + T- j/ u6 L7 d/ I6 O8 v" n
    return ((float)$usec + (float)$sec);   K& k; w! q& p5 [& |8 _
}4 v: F' C* E; T9 x! n: \0 I2 B
$ w5 [3 s6 ~% z' o8 A) C3 U! S/ `
?>
% p8 @& B3 G! k  @+ ]& h% R
回复

使用道具 举报

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

本版积分规则

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