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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:51:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
<?php
) m% N' y" `& \0 @/**
* j& Y* z& _' B% u9 M$ l * uploadFlash.php: W$ H4 ]  l1 V) W8 r7 K- S* E' A3 s
* Flash文件上传.
3 c6 ~- f2 U3 l) Z) C */
; i* W3 u5 L" Q$ H! hrequire_once('../global.inc.php');, v; k9 J. C' F( S% y3 Y8 W; U
3 ]2 s6 v* P; Y, ~  n. z4 c9 v
//operateId=1 上传,operateId=2 获取地址.
8 V) d) l% V  p$ J: B" X$operateId = intval($_REQUEST['operateId']);. e/ `- V# G7 d3 R# v( Y% m
if(empty($operateId)) exit;; ~1 K! d/ t* N" |( a
+ A( i& A1 I  ?
if($operateId == 1){! Y( L: \4 N* W: d8 ~+ [
$date = date("Ymd");2 Y8 H5 Q( O/ D* q$ D
$dest = $CONFIG->basePath."data/files/".$date."/";
0 X0 F! i( Y1 O8 _ $COMMON->createDir($dest);0 t3 @. k- r# z
//if (!is_dir($dest)) mkdir($dest, 0777);
& ~" d1 u0 ^) U+ w 0 [2 `; S* I4 T2 \7 ~
$nameExt = strtolower($COMMON->getFileExtName($_FILES['Filedata']['name']));0 D9 I& u2 f9 O& n4 u4 U& T+ V# L
5 W' k1 C" n4 M  C5 z6 Z
$allowedType = array('jpg', 'gif', 'bmp', 'png', 'jpeg');+ {" {  f  e) M

- `1 ?' q; }# D1 c. o9 @ if(!in_array($nameExt, $allowedType)){! j1 c  M7 W: [1 `
  $msg = 0;
+ z2 A, m& x/ w* W  N }
0 {) k( o  K- e& _+ H if(empty($msg)){
+ Q$ P1 u: O& C4 f  $filename = getmicrotime().'.'.$nameExt;
  b; ^' u# L+ M1 f  $file_url = urlencode($CONFIG->baseUrl.'data/files/'.$date."/".$filename);3 J8 H6 l+ D5 D  m: R5 m
  ! H+ p3 H- g& P, {) D) K/ W9 ^
  $filename = $dest.$filename;0 @$ \8 `. R' |) j" ^( u# t
  if(empty($_FILES['Filedata']['error'])){
& z0 c% M( @- M" z( O* U7 t   move_uploaded_file($_FILES['Filedata']['tmp_name'],$filename);7 K2 T  E1 a4 ^9 t; d
  }+ g! x, N7 A# x' }% A- z
  / x, Y( i# X- P/ O2 ]2 d
  if (file_exists($filename)){
$ u- f. u% V% L  K. O, v3 V   //$msg = 1;/ x: A" V4 \+ r: ~
   $msg = $file_url;+ L+ h( O! g+ I6 R- r" E; I6 @
   @chmod($filename, 0444);+ R( X0 _6 {& s
  }else{
, P0 G" h, Q: g   $msg = 0;. w3 d) T9 D4 T  P, c
  }
$ q( ~( ~8 Y8 f2 y( e }# S! C6 N) ?) C) j
$outMsg = "fileUrl=".$msg;
9 Q; g+ D  o  K0 J! A% g $_SESSION["eoutmsg"] = $outMsg;
9 V( R9 I5 K! V! h) F, K' L exit;
6 q8 I( e# y0 F) @3 i, Y}else if($operateId == 2){
" Z1 ~2 `: [. Z% D1 Z $outMsg = $_SESSION["eoutmsg"];
% o9 [% n/ R) f3 U: U* P% i- h if(!empty($outMsg)){
2 L+ o( v* `* I5 W+ |; |! s  p  session_unregister("eoutmsg");$ ^: ^& w+ V: {! b9 x5 v+ d3 [$ D
  echo '&'.$outMsg;+ K& D6 w7 B2 l0 R- |/ D6 e7 w. i
  exit;, Z# q7 J* p$ H: `: t, `
}else{: {/ S& C8 X9 Y! N
  echo "&fileUrl=0";6 T# w" c7 w/ k' h" k% O
  exit;
; I/ \. V2 n# U0 V' j }
9 t+ Y9 K" O- R: ]}
4 l; J! G2 p  x  T: U5 G7 h" o, ]' h4 k% f' d* c
function getmicrotime(){
# }. M- m( A- X8 @/ ]    list($usec, $sec) = explode(" ",microtime());
: z2 U- r" w5 p/ H- H  q  l" X. w    return ((float)$usec + (float)$sec);
' `5 c$ z' Q; f( Y" [+ b4 {}
5 I+ E* m! M& b
9 k( @  j4 ~4 }- X* o  ?. o?>
* L8 g$ ]# }( k1 j
回复

使用道具 举报

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

本版积分规则

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