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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:51:07 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
<?php
! L* g- \2 E0 T2 N& ~" F. S/**5 |: ]* m0 L/ R9 m% Z1 t1 _, w
* uploadFlash.php
: g, Q8 T# _' [# Q+ x) Q/ S9 C# Q * Flash文件上传.( ?0 Z2 O0 @; r  A" W4 t9 Y
*/
' L: R) g# X9 t6 @require_once('../global.inc.php');
; a4 S: k) P  }, S
# F# M, k$ W& u( `9 R! y" x8 _//operateId=1 上传,operateId=2 获取地址.
' A& S9 b  v' @$operateId = intval($_REQUEST['operateId']);& t; p7 m2 r  f
if(empty($operateId)) exit;3 Y/ @# z* Z5 q$ Z3 |" f

& [7 c  t6 p7 O& rif($operateId == 1){' ?0 P, ]* n4 }5 G$ O
$date = date("Ymd");
4 I' N5 X* o4 H: m" e+ g4 { $dest = $CONFIG->basePath."data/files/".$date."/";
# ^% `, V: W5 t $COMMON->createDir($dest);
. h9 Y: E  D7 b  M; K9 _* N //if (!is_dir($dest)) mkdir($dest, 0777);
. a" M& h6 _* `0 z
% u" z- {+ W+ G* ]! g $nameExt = strtolower($COMMON->getFileExtName($_FILES['Filedata']['name']));8 @5 f: g( ~+ S$ J- C
- U* c' ?. Z1 C. e: O
$allowedType = array('jpg', 'gif', 'bmp', 'png', 'jpeg');) t6 U$ J, @4 a' V
2 p, _7 a8 Y, F8 g+ m
if(!in_array($nameExt, $allowedType)){# C2 `" T9 e1 o
  $msg = 0;
8 }! u- C$ a# ]! c2 } }1 l& s, v. A( e% w8 d' r- X
if(empty($msg)){: d/ E; s2 {# E& x* b) c+ J
  $filename = getmicrotime().'.'.$nameExt;
5 L! @+ U- ?2 L, I( J  $file_url = urlencode($CONFIG->baseUrl.'data/files/'.$date."/".$filename);
3 S( P" z( I- W  $ C! _% p+ ?  E
  $filename = $dest.$filename;3 Q% l' u' N7 h0 {/ f
  if(empty($_FILES['Filedata']['error'])){
2 ~; {( \/ `% u   move_uploaded_file($_FILES['Filedata']['tmp_name'],$filename);
( l8 Q% M6 ~! K1 d4 k& I  }
6 q. ~* J( y  I' o  
& m8 p" j' G  _, j! b  if (file_exists($filename)){
' P7 f) h) a4 V$ x# S. E, Q   //$msg = 1;% f+ y# Y( s! h# T) q: e
   $msg = $file_url;
8 z2 @3 U* ?0 @9 K3 [$ c( n   @chmod($filename, 0444);. b% Y& O5 Z2 @6 Z; j& Y
  }else{; J, x# L9 V2 ^3 M5 ^* D+ Q$ L
   $msg = 0;, s2 o( e0 u  u, u# \4 ^
  }
: B, i5 t; e# g  A: R- w$ ^& d }6 _6 \0 Z7 _+ n1 h) c' {
$outMsg = "fileUrl=".$msg;! S( n# z2 A/ k2 p: G3 B
$_SESSION["eoutmsg"] = $outMsg;) A; \; N) R% G. X, J, G( M9 G
exit;  Q  m1 F7 O4 X& O+ T1 Y
}else if($operateId == 2){
+ k9 h8 O- q/ j  V1 M4 L $outMsg = $_SESSION["eoutmsg"];! w2 h, A3 c+ L$ t3 o7 a5 W5 H0 [
if(!empty($outMsg)){
8 `" Q' R8 y* X) J5 [- t2 C# |; j1 m  session_unregister("eoutmsg");
; h$ P7 [# ?7 T2 {  echo '&'.$outMsg;
' {, z, u9 L9 }: ?  exit;
$ e* l7 o, h7 O! }. p+ V }else{
6 c5 ^1 Q4 @+ h; o! Q1 @  echo "&fileUrl=0";: J7 @4 G, w' S
  exit;
& Z1 Z8 v% Y# s }8 d& r/ b4 x- [2 z8 M# E) M
}
* z: U' E% |! [6 H  O" d' ]. s& W3 \/ L( p
function getmicrotime(){ ; Q% a* [. i& |2 L! F& ^5 ?) v+ w
    list($usec, $sec) = explode(" ",microtime());
" f  @' G7 F$ r0 |' [2 a) s& t. x    return ((float)$usec + (float)$sec); - B! O" N; f7 v" y2 N6 T: l+ F% _) i
}1 b  ?" ^* M8 g. Z8 E/ P

+ F" r" N( g5 K0 ~3 O$ x% D7 f?>+ Y  t- J9 Z' v! c. [* E! J
回复

使用道具 举报

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

本版积分规则

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