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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:51:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
<?php
: W  B' S. L' K& F/**" L6 O8 G# M: o3 ~1 a
* uploadFlash.php1 S+ G* y+ f( E, }" j: g
* Flash文件上传.& J5 R  p/ J7 Q: I1 [1 L* c
*/
8 W( n# A3 L) f4 ?% Yrequire_once('../global.inc.php');; s/ A  V- f& ^/ O$ Z, ]9 l
" ~- a8 A  ]6 C+ ~1 @/ M
//operateId=1 上传,operateId=2 获取地址.- ~  V* d. y4 |1 }; W( Q; P
$operateId = intval($_REQUEST['operateId']);
* l8 a" K+ w; u% }) P2 R) V  Zif(empty($operateId)) exit;
# e  j. j" y& Z, d. M. D$ }; ]2 [. e2 w5 n" p+ ?
if($operateId == 1){
0 l0 t3 c1 F3 c5 G3 b $date = date("Ymd");
7 s+ i0 E3 G9 S6 m  L4 n $dest = $CONFIG->basePath."data/files/".$date."/";
( T2 s4 R$ v6 @) ?/ L% g) p+ h $COMMON->createDir($dest);  H0 F" @3 o" w3 r3 F0 W
//if (!is_dir($dest)) mkdir($dest, 0777);# k" ~' {) X. S4 A' f( e
; N5 y- s5 J4 b6 p) L6 R
$nameExt = strtolower($COMMON->getFileExtName($_FILES['Filedata']['name']));' o$ r  z/ ]  h, @

8 E3 h3 ^0 F4 G5 ]# }* d $allowedType = array('jpg', 'gif', 'bmp', 'png', 'jpeg');
, E8 D4 T5 g, d. ^ ' k. v4 S! c- J5 Q# R  l
if(!in_array($nameExt, $allowedType)){
: g" R2 A( A5 r; z5 e  $msg = 0;1 {: o/ z! N& ^# D- b9 O1 V
}( R8 y9 A; T+ D! |/ n* D6 o
if(empty($msg)){
( n6 g- W' u2 v3 G1 C( q: [  $filename = getmicrotime().'.'.$nameExt;
4 Y  G& @  k/ u" U+ G5 j# H9 a  $file_url = urlencode($CONFIG->baseUrl.'data/files/'.$date."/".$filename);
; u" }' U! z( X# s- y  + {9 b! _1 v! `: n7 }6 e& s$ k
  $filename = $dest.$filename;
" b7 i0 t. K3 b. G+ z  if(empty($_FILES['Filedata']['error'])){3 O. m9 R, [1 x* s$ c# G( A/ I) N7 l
   move_uploaded_file($_FILES['Filedata']['tmp_name'],$filename);4 u8 d3 d8 F. ?: e* u& T
  }
4 W( @% ~+ p  Q/ s; q6 }  ' m# i9 y6 O' m! Z; r( L6 T( o
  if (file_exists($filename)){; S" Y  b, Y* L
   //$msg = 1;. P4 `0 n- L% n, v3 m2 _/ e+ d+ j* \
   $msg = $file_url;
! z6 l6 R: t3 B# I  }8 N   @chmod($filename, 0444);0 x9 e: e" o+ j5 d, U
  }else{
" L! X9 N1 d1 Q1 H9 j   $msg = 0;
! }, S0 U( q) d* Y+ t: _  }
6 Q* z- B: T# Q9 e }7 s& }- T- z: \9 i
$outMsg = "fileUrl=".$msg;
5 q$ J$ N/ E* g7 q $_SESSION["eoutmsg"] = $outMsg;
. }/ j; S& R; Z. d2 _. Y exit;
+ Y! Q8 U8 C: l}else if($operateId == 2){
$ l' A0 ]  Q8 n. s9 C) n1 o $outMsg = $_SESSION["eoutmsg"];
7 W. V; _9 U( z3 I' @0 w( ~ if(!empty($outMsg)){
) z4 w9 m; L& I( ?9 J5 W  session_unregister("eoutmsg");$ z& b! W2 q( w4 p" |  r
  echo '&'.$outMsg;1 S( ]1 Q4 P2 ?* K, ~. n$ |
  exit;
7 x% y5 r" ^" |! Y; L# R( O }else{
7 M/ o3 @6 U; {' E: b! B' B7 F+ a. |  echo "&fileUrl=0";: r# y$ S9 S1 G8 @8 O
  exit;, u1 G. W* f; |) i6 ]
}
. ^7 y5 w" O: Y. |2 L* B8 p, k& S}
: M8 t! l# o) k$ |1 ?# q  i; \( T9 R0 L/ a
function getmicrotime(){
3 W+ T+ q4 b) A1 r4 f    list($usec, $sec) = explode(" ",microtime());
5 _, D- F' V6 |# r; c% n' w    return ((float)$usec + (float)$sec); 2 J- n+ N8 l7 t1 f
}+ I9 c6 N0 ?1 b5 Q

3 A; {. F5 H+ |2 J/ p4 x?>
2 ?; y" b! m7 J. k4 H4 o/ q0 {
回复

使用道具 举报

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

本版积分规则

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