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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:51:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
<?php
# q7 s  V% c: y/**+ J$ A, ~( v8 I5 T: Y
* uploadFlash.php, M- }2 H& l, w2 t
* Flash文件上传.
" ]: j$ w4 _& O: K8 w */4 o- ?( `7 S* Z6 i
require_once('../global.inc.php');
8 S& w" f  C2 F! _- S7 ^, J
& V/ J/ u8 s% v  I//operateId=1 上传,operateId=2 获取地址.& \) A( [- l7 z8 j  y/ `/ Z
$operateId = intval($_REQUEST['operateId']);
- k) y# r; c& c- }8 eif(empty($operateId)) exit;
) t% W7 D$ b; z) ?4 B
# b& f5 C" c6 Y, L8 P6 N/ T2 S: Q! pif($operateId == 1){3 S' x7 w" S( h1 G9 L0 c% ^$ J4 h
$date = date("Ymd");0 B# s6 l' N2 X4 o
$dest = $CONFIG->basePath."data/files/".$date."/";; @+ ^5 n( `1 S, t/ h; y
$COMMON->createDir($dest);( ?, e& l& T% \2 D6 t' t3 R4 x! V
//if (!is_dir($dest)) mkdir($dest, 0777);3 k; G5 D5 Z9 f4 [/ w$ A
: R9 B0 w* e( d9 L0 \# a
$nameExt = strtolower($COMMON->getFileExtName($_FILES['Filedata']['name']));
+ s7 X3 i* j* G( F1 V3 b5 @
7 B8 `* v, o3 B- ` $allowedType = array('jpg', 'gif', 'bmp', 'png', 'jpeg');
" X: j1 H4 s0 X* k0 M ; x2 n1 [' s. S; R$ X
if(!in_array($nameExt, $allowedType)){
. M7 ?- E4 E- f3 y+ V: G  $msg = 0;% C8 e' r8 R7 Q: I  A& Z( v
}2 T- N( F+ k% H9 X. ]- ^
if(empty($msg)){; ~" e- d% G" @5 C
  $filename = getmicrotime().'.'.$nameExt;( S9 N# {! X$ T  u
  $file_url = urlencode($CONFIG->baseUrl.'data/files/'.$date."/".$filename);
4 |! w8 x! \& `5 `; k+ v  
( t/ E6 Q/ i( e# c; S- ?  $filename = $dest.$filename;
3 a3 a+ G  _( |, d3 u6 i% Q  if(empty($_FILES['Filedata']['error'])){2 N7 m4 J6 g4 d' ?/ y4 J
   move_uploaded_file($_FILES['Filedata']['tmp_name'],$filename);1 K+ ]9 A/ o: `- R
  }8 e1 n, C: j0 I1 U" `- A$ N9 b5 B
  : U/ [$ E3 x$ R
  if (file_exists($filename)){0 j4 l$ \6 B! A: g0 l% V  I
   //$msg = 1;
- h$ a, P) p! n$ E0 U   $msg = $file_url;
- q' [( V* A) x4 |. v1 e. [$ s! J' D   @chmod($filename, 0444);3 D) P' L1 E9 Z7 Y. d# S
  }else{
: ?6 a: V/ J6 {' U3 |   $msg = 0;
1 ?2 S8 f' F. `8 C) i6 ]  }
- K9 }0 }9 ]9 p* t% Y }
& e1 {8 d+ }9 `! x $outMsg = "fileUrl=".$msg;
& m+ L0 b2 @  L0 n% A $_SESSION["eoutmsg"] = $outMsg;
8 Q% O, P' Q! z: A exit;, @+ X9 E% ^# K0 ], {0 O. Z
}else if($operateId == 2){" o, s  {& U4 m
$outMsg = $_SESSION["eoutmsg"];
5 }9 T1 _3 j5 R! o/ T if(!empty($outMsg)){3 \3 @& ?- p! a
  session_unregister("eoutmsg");. W. q" e# Z. i' h4 R
  echo '&'.$outMsg;" K1 R/ q4 ^& M+ u0 P, f
  exit;# S6 \5 r# X4 p6 M
}else{
2 H3 t4 ~" r) b  echo "&fileUrl=0";
/ Q+ ]: |  G% C$ w" c5 ^  exit;
, \. Z+ v' ?/ ? }
  T, b, D. a# ]}/ i7 ^  ^  e! _7 R8 K# ^

; s) X& _2 [; qfunction getmicrotime(){ 2 @+ b, ^: {6 B, j' G8 _* L
    list($usec, $sec) = explode(" ",microtime()); : s# b/ f7 x9 `& B6 x8 {
    return ((float)$usec + (float)$sec); ( E. F, p) I2 q* Y
}" J$ s) y0 C& A& v. H  ^& b9 H) @

+ _: W$ Z" T3 K% N! @$ F2 v& q?>
1 K" ~# ~& Z- J9 @2 ~
回复

使用道具 举报

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

本版积分规则

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