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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:51:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
<?php
, D1 Y' D$ G" O0 G- h0 _/**
: B( q2 Y! M  R5 Q" R7 p$ s * uploadFlash.php
/ x7 c- Q! n4 M) O& ?9 F- U( a * Flash文件上传.
* p" P8 U& I. @& E7 y/ l6 k: f8 U */: H7 d4 [' L$ l$ Y- V# p2 ]! Y
require_once('../global.inc.php');  F* Q0 m) e% M6 k- c  Y0 ]

+ R$ T2 \5 ~* g& Q- I2 |//operateId=1 上传,operateId=2 获取地址.
3 Z" Q, x7 O# t: M% b$operateId = intval($_REQUEST['operateId']);+ ]7 D1 Q2 r: `8 S: K5 e
if(empty($operateId)) exit;% h0 g$ ~- U6 m+ C7 H, l
# j& q7 `* [# X' v5 t# R9 [
if($operateId == 1){& d" x+ @3 g$ s3 |  s+ A8 Z
$date = date("Ymd");0 c' @8 J6 l3 a
$dest = $CONFIG->basePath."data/files/".$date."/";/ E5 Z6 e$ x6 Y) V% Z! l& V; U
$COMMON->createDir($dest);
2 G" t3 f4 s5 S; \- L4 Y5 B4 K8 e //if (!is_dir($dest)) mkdir($dest, 0777);7 e- X; P! [  I" T% m4 \8 q
* b% a/ W3 w, U0 ]* l! G1 |* C
$nameExt = strtolower($COMMON->getFileExtName($_FILES['Filedata']['name']));: G& S, `6 z2 N2 L' B; I

- n( Y( L0 W7 r6 e# y; a0 p6 L( W $allowedType = array('jpg', 'gif', 'bmp', 'png', 'jpeg');- q2 m8 e2 n" d( q" n, C2 X) p" v
$ `( g/ K% _% Q
if(!in_array($nameExt, $allowedType)){
6 N9 J/ A0 a& B1 C  $msg = 0;! V, ]2 m0 \- S3 r7 N% x* l
}
7 o- S$ _2 }& q- b! V$ c if(empty($msg)){( j( M* H( K' a0 F9 Y$ X
  $filename = getmicrotime().'.'.$nameExt;# G/ p& N. u3 @: R2 s: E: q
  $file_url = urlencode($CONFIG->baseUrl.'data/files/'.$date."/".$filename);& q; @- R# F$ x8 D  G
  
$ W, K7 i$ D9 e. |  $filename = $dest.$filename;
( I$ H, h+ S2 H2 M9 O" J  if(empty($_FILES['Filedata']['error'])){
/ g: s2 r$ z, m' P9 i& T: m" \   move_uploaded_file($_FILES['Filedata']['tmp_name'],$filename);# ]  D$ m( k# l0 m
  }3 e* ^( k( k1 z. O
  
6 ?, x8 a9 b0 z) O( [  if (file_exists($filename)){
' n6 }9 i; J! u   //$msg = 1;$ m$ P2 b1 S' B, Z6 ^, b
   $msg = $file_url;
5 h* }9 w# u, g/ R: c/ G   @chmod($filename, 0444);
" i0 g+ e/ P& ^  }else{/ R. N7 T9 q* N( ?1 b" T, w. `% t; C
   $msg = 0;
5 j: n9 d/ y, E; X: R  }" |& n9 L) ?: y8 a) P2 i
}
$ j% X: P) ]: @! } $outMsg = "fileUrl=".$msg;
' `1 S. m9 j( n2 C1 ]6 o2 K7 t $_SESSION["eoutmsg"] = $outMsg;' b- H% w3 l/ G  d9 Z0 _; R
exit;) \/ O* z! E, C* T3 r& m
}else if($operateId == 2){
( D2 p+ x0 ?! e  V- k $outMsg = $_SESSION["eoutmsg"];
7 j+ \. Q# [% }: B) A6 a; Y% @ if(!empty($outMsg)){9 e  q8 r3 x# q
  session_unregister("eoutmsg");
8 _# c3 Y- f7 ?  R) D/ v  echo '&'.$outMsg;1 \8 m3 U. W0 v* q
  exit;5 E6 \$ ^  z6 y! Z! u3 i+ U
}else{
! M7 X" s$ V6 a  e9 U  echo "&fileUrl=0";
. ~  p: n( k( X7 q* ^3 ^  exit;- m; v& k' H0 v( r% l6 z. g$ R
}
6 u0 z" z% n1 ]3 N}
+ M% ~  l. V3 |4 w
) i3 i1 W, f+ Y0 h% D/ f' w1 Bfunction getmicrotime(){ 7 l/ F- U0 E/ E6 e# s: P' @
    list($usec, $sec) = explode(" ",microtime()); ! D% i3 m7 Z1 ?% |
    return ((float)$usec + (float)$sec);
* N8 b8 _. D" ]}
6 m) u! H( W' g, d4 n% F& S" \* N& i- X! M
?>- W  A& P* B/ z% [3 H3 |- z$ M! y
回复

使用道具 举报

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

本版积分规则

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