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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:51:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
<?php) ~( f4 R7 k- E! P6 J! w
/**
3 `6 K: j$ K  y  w# Q, z& C * uploadFlash.php
2 P8 F- {: h5 Y- z. D: Z * Flash文件上传.
  w! O0 X, ~# y  E/ H$ q */* c1 p! [+ f5 f( w/ i8 g
require_once('../global.inc.php');
1 o9 i7 N& B! F- \1 @! `) A, z, K/ [' W% R' E) e% h- D( }1 n
//operateId=1 上传,operateId=2 获取地址.
  }5 I. P6 o& r5 \$operateId = intval($_REQUEST['operateId']);6 X2 y2 e) A$ V& i& |# j  y, t
if(empty($operateId)) exit;
- g9 e5 U  C& e: n7 L: h8 a" x) f$ a4 t7 o
if($operateId == 1){
. e1 n9 P+ e2 Q; ]; B$ w $date = date("Ymd");
2 Z6 {$ {$ k; Z3 j6 ^, X; [ $dest = $CONFIG->basePath."data/files/".$date."/";5 L1 B* F; ?8 n5 V" [2 ]0 g
$COMMON->createDir($dest);
9 W0 j9 U% h" G8 b8 b7 e //if (!is_dir($dest)) mkdir($dest, 0777);
) r, G4 L9 T+ H7 Y 4 N6 T0 r6 Z, T" I3 ]$ Z4 `
$nameExt = strtolower($COMMON->getFileExtName($_FILES['Filedata']['name']));5 b6 y" ?8 m& m2 l' c% N) A7 ?; x9 w

8 ^7 J7 Z# t# i. T $allowedType = array('jpg', 'gif', 'bmp', 'png', 'jpeg');7 g7 B+ W: j& [8 K$ I
6 F  m  d" \' d6 }& A
if(!in_array($nameExt, $allowedType)){
9 Y& ~% R* [6 W$ \6 n( d+ o7 W  $msg = 0;- f, }* `8 n; l* z
}
# L/ D" L: V8 t9 \6 I/ n if(empty($msg)){, ~) n! ^2 V4 k% w# X3 V: ~
  $filename = getmicrotime().'.'.$nameExt;
5 I5 S8 i" N0 g" r0 ]* u  $file_url = urlencode($CONFIG->baseUrl.'data/files/'.$date."/".$filename);
' T5 L$ F" h3 o* s: G) x+ Y  
8 N4 S8 r0 m6 h; d- B0 R! b& q  $filename = $dest.$filename;% d3 v% E) V, Q8 Q  U  y# a0 O
  if(empty($_FILES['Filedata']['error'])){' s& b7 I! p  J6 I0 C5 d! c1 l
   move_uploaded_file($_FILES['Filedata']['tmp_name'],$filename);0 n2 H: `4 z: G( ^$ h# _- {. w
  }; d; N* l' t; q" ?, _( I7 H3 [
  8 w! H* b8 K6 m- Z2 n
  if (file_exists($filename)){
4 @. H3 T$ `0 O4 G3 f3 c7 J! p( k   //$msg = 1;; i/ p7 F! j  o; w, ~/ X
   $msg = $file_url;
5 W# ?; b, g: v   @chmod($filename, 0444);
) X& l$ J6 v' {/ I' k$ H' v0 V% l. d  }else{' P3 x9 Y7 Y$ s. M$ N4 {
   $msg = 0;
0 }  s, Z# J& w# U( f  }; Z* E" M( h4 O' v
}8 T2 d# Z0 {' y4 i8 T+ j: n
$outMsg = "fileUrl=".$msg;
6 {. I3 ?9 Q# T" z; c" p# \ $_SESSION["eoutmsg"] = $outMsg;
+ `; |: t/ w. d4 W  ?2 T+ _ exit;
4 q5 y- T- D5 q3 t% v}else if($operateId == 2){1 g$ @, m- x( o2 H
$outMsg = $_SESSION["eoutmsg"];% U3 `- J0 \) ^+ N: L) t; `
if(!empty($outMsg)){( M3 q* }% \1 H
  session_unregister("eoutmsg");  O) g" H* D7 F, U6 K
  echo '&'.$outMsg;/ M+ ]; i. G; \4 c0 n4 h
  exit;
5 |2 y' m6 A' r6 Z }else{
; f9 A& u6 Z3 ?0 x7 G& M+ T  echo "&fileUrl=0";
8 J* w, E  ]: {. L# U  exit;
4 n& M, l7 b' d: l }
3 j( D. m+ v4 z# u% p}
6 O  O: x  M6 Z: e6 G" ?
/ g. M! e( @. W; j# p% ]( [function getmicrotime(){
3 L. B" J( M. H    list($usec, $sec) = explode(" ",microtime());
5 V3 `) e# Z+ [    return ((float)$usec + (float)$sec);
9 t- v4 i3 Q4 ?( H}
5 x; z: L, n% T, v( f! v  X' i9 p$ J9 n7 y6 u/ o- b
?>% ^# @  x* r. w/ K" B; E
回复

使用道具 举报

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

本版积分规则

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