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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:51:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
<?php+ D/ Q: N$ Z- A! C9 t5 s0 V9 h
/**
8 Q/ ^2 c/ N; H  c4 x * uploadFlash.php
# H6 D3 C3 P" J$ M6 Z' q  E9 Y * Flash文件上传.7 S6 ]' d; K* P
*/
% o5 t" R. o0 N# ?4 B  M, Q# erequire_once('../global.inc.php');- M: {2 ^! c6 w  T' F0 Q1 u
  P, A% `: P9 p( J
//operateId=1 上传,operateId=2 获取地址.& @, v) E) h' L4 u
$operateId = intval($_REQUEST['operateId']);# t* r3 H5 X4 x$ i, {
if(empty($operateId)) exit;
8 V3 @' c/ b1 A* g$ e5 X& p$ z" h' e9 z7 C, ?, U0 ~. V# H
if($operateId == 1){, y7 n* ~: ~" p7 ^' \5 T
$date = date("Ymd");$ N: e1 \- t& f& t2 P9 {  `. @4 O
$dest = $CONFIG->basePath."data/files/".$date."/";; n5 L! n' R9 E3 E2 f
$COMMON->createDir($dest);
- R3 _% w4 W5 `. ~ //if (!is_dir($dest)) mkdir($dest, 0777);
9 ^6 s, M* F$ M' O7 E) o& b5 M
) r, }) [6 q! x $nameExt = strtolower($COMMON->getFileExtName($_FILES['Filedata']['name']));; v' s" F0 g% ~; I9 h
6 }2 ^: q  J7 I5 J0 K
$allowedType = array('jpg', 'gif', 'bmp', 'png', 'jpeg');
: @* j2 m$ T3 ]( g) e7 }5 t* q
6 W0 R7 q: ~: A4 F% G if(!in_array($nameExt, $allowedType)){
7 _1 h/ J4 F1 u1 s  $msg = 0;8 d! W% _& {# v$ a. ]$ K
}
9 m* v& Z& Q& p* g& @ if(empty($msg)){- x: d* ]0 {$ _4 T. P! @6 s
  $filename = getmicrotime().'.'.$nameExt;* l/ P( s7 `9 k- i! e. \
  $file_url = urlencode($CONFIG->baseUrl.'data/files/'.$date."/".$filename);
: J* o1 [/ W9 Q0 f$ ?, R1 `0 z  
$ l. m5 q7 J4 u; L/ q, M2 b  $filename = $dest.$filename;
! l5 |! a* D+ j% d  if(empty($_FILES['Filedata']['error'])){
. {1 I) c9 ~; q0 v/ l3 L$ k& }$ Y   move_uploaded_file($_FILES['Filedata']['tmp_name'],$filename);8 L! |3 ~7 z1 ?& s" R/ A
  }
$ V- t: w7 w* |1 |- l! I  
* I; u* ?& Y* T  v# W  if (file_exists($filename)){
( F, C- O. y% ^9 s   //$msg = 1;
. I  a$ N5 `3 ?   $msg = $file_url;  s- s+ t/ i; Y0 ?. x9 E
   @chmod($filename, 0444);& v) W" e* O% i7 t6 A3 \# U
  }else{! A  |2 Q3 P+ X' M( e- R
   $msg = 0;* r' Z. w$ m' p" ^5 `# g2 [0 C
  }
* k# ^  q4 a6 [9 q }- E4 {4 N( {7 U5 ^
$outMsg = "fileUrl=".$msg;! ]) H% I: w+ T2 U
$_SESSION["eoutmsg"] = $outMsg;
5 C9 Z8 v. p* B) ^( l exit;
  {% {, p  Z  \7 m( J, x3 S$ x}else if($operateId == 2){
( W8 p1 }" E$ [' b' p' ?- N $outMsg = $_SESSION["eoutmsg"];5 D( U  Y4 k- D- }% _. z( F$ R
if(!empty($outMsg)){
; E0 j/ o  _4 v' O! Z. M7 D  session_unregister("eoutmsg");- v2 l5 `7 Y  c
  echo '&'.$outMsg;* Z$ E3 q5 Z# {+ E" p  ~  u
  exit;% f. t3 Y/ k1 M
}else{
, l; v  ]0 i, T* ~; b  echo "&fileUrl=0";5 Q  K1 {( o; L' K, ?* i
  exit;
8 a7 R- A+ C9 m! M/ z }3 _  H1 D$ Y! Y" M
}4 w% e2 N/ l, O
/ X7 _( ^$ V# J7 n5 J) m  z/ {
function getmicrotime(){
- ^% ^! |  H- E: O: \7 Z    list($usec, $sec) = explode(" ",microtime()); 9 a0 N  m  B! _* y9 y9 k, b, H+ y- P$ G
    return ((float)$usec + (float)$sec); " b, l! [/ r& d
}& V2 m) t. F  w

: B. q8 {  ?) R8 r! L9 R?>
6 s" E: F  ]6 q# X& u
回复

使用道具 举报

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

本版积分规则

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