本文目录一览:
- 1、怎么利用discuz漏洞爆物理路径
- 2、discuz!6.0.0漏洞
- 3、discuz论坛,怎么维护网站安全,怎么判断是否被攻击和挂木马?
- 4、Discuz 3.4漏洞
- 5、【漏洞分析】Discuz!
- 6、Discuz在线时间漏洞
怎么利用discuz漏洞爆物理路径
如何保护discuz X后台地址路径,这是所有站长都非常关系的问题。有安全防范措施的站长都会想尽办法去解决这个问题。对于discuz
X后台地址路径处理方式,我们大概有如下几种做法:
修改默认的discuz X后台地址路径
使用地方插件处理discuz X后台地址路径
想办法将后台路径给隐藏
上述几个方法操作起来很有难度,任何企图修改discuz X后台地址路径都会有巨大的工作量,要对X2的程序非常了解才能办到,修改discuz
X后台地址路径,需要修改许多与之关联的路径,不精通discuz X和php编程,要实现很有难度。
就是将discuz X后台地址路径进行锁定,再加一道安全密码,双重保护加固discuz X后台地址路径。具体操作方法如下:
利用无忧主机php虚拟主机的“文件夹锁定”功能,一分钟就可以将后台路径加密访问,而且还不影响站点正常运行。
无忧php空间如何将文件夹进行保护家加密类?请阅读下面下面两个文章:
DirectAdmin(DA)控制面板文件夹保护加密功能介绍
DirectAdmin(DA)控制面板如何设置文件夹锁定保护加密访问
通过加密dx2后台地址路径的加密后,我们登录管理员后台首先输入一次,加密密码,然后再输入X2的后台管理帐号密码。多了一重保护,增加了一分安全。而且实现简单,容易操作,不需要有技术背景就可以完成。次方法仅适合使用无忧主机建站的站长。这是针对网站量身订制的加强型保护功能,希望一个小小的功能,为你提高大大的网站安全系数。
discuz!6.0.0漏洞
____Discuz6.0__________injection __0day
// 允许程序在 register_globals = off 的环境下工作
$onoff = (function_exists('ini_get')) ? ini_get('register_globals') : get_cfg_var('register_globals');
if ($onoff != 1) {
@extract($_POST, EXTR_SKIP);
@extract($_GET, EXTR_SKIP);
}
$self = $_SERVER['PHP_SELF'];
$dis_func = get_cfg_var("disable_functions");
/*===================== 身份验证 =====================*/
if($admin['check'] == "1") {
if ($_GET['action'] == "logout") {
setcookie ("adminpass", "");
echo "meta http-equiv=\"refresh\" content=\"3;URL=".$self."\"";
echo "span style=\"font-size: 12px; font-family: Verdana\"注销成功......pa href=\"".$self."\"三秒后自动退出或单击这里退出程序界面 /a/span";
exit;
}
if ($_POST['do'] == 'login') {
$thepass=trim($_POST['adminpass']);
if ($admin['pass'] == $thepass) {
setcookie ("adminpass",$thepass,time()+(1*24*3600));
echo "meta http-equiv=\"refresh\" content=\"3;URL=".$self."\"";
echo "span style=\"font-size: 12px; font-family: Verdana\"登陆成功......pa href=\"".$self."\"三秒后自动跳转或单击这里进入程序界面 /a/span";
exit;
}
}
if (isset($_COOKIE['adminpass'])) {
if ($_COOKIE['adminpass'] != $admin['pass']) {
loginpage();
}
} else {
loginpage();
}
}
/*===================== 验证结束 =====================*/
// 判断 magic_quotes_gpc 状态
if (get_magic_quotes_gpc()) {
$_GET = stripslashes_array($_GET);
$_POST = stripslashes_array($_POST);
}
---------------------------------------------------------------------------------------------------------------------
可以跳到其它目录
注册登录后利用
可以进行injection……
只能手工注射
注意:showpath里必须包含用户自己的路径
如果限制的话,还可以向上跳,向上级传文件的时候,不能直接
. (注射语句)
就包含用户路径
... rNumber=1402257EE8F
不然不能进行注射。
文件漏洞代码如下
?
define('__SYSTEM_ROOT', '');
include dirname(__FILE__).'/framework_gb/framework.php';
using('System.Data.Data');
using('System.Data.Plugins.Option');
using('System.Page.Page');
using('System.Smarty.Smarty');
using('System.Functions.Functions');
require_once __SYSTEM_ROOT."global.php";
require_once __SYSTEM_ROOT."vars.php";
$db=new stdClass();
$db=$Data-getDB();
/*
echo 'pre';
print_r($Data);
*/
?
可以直接注射,拿到后台密码。
好象是跨脚本漏洞
discuz论坛,怎么维护网站安全,怎么判断是否被攻击和挂木马?
一般都是网站程序存在漏洞或者服务器存在漏洞而被攻击了
网站挂马是每个网站最头痛的问题,解决办法:1.在程序中很容易找到挂马的代码,直接删除,或则将你没有传服务器的源程序覆盖一次但反反复复被挂就得深入解决掉此问题了。但这不是最好的解决办法。最好的方法还是找专业做安全的来帮你解决掉
听朋友说 SineSafe 不错 你可以去看看。
清马+修补漏洞=彻底解决
所谓的挂马,就是黑客通过各种手段,包括SQL注入,网站敏感文件扫描,服务器漏洞,网站程序0day, 等各种方法获得网站管理员账号,然后登陆网站后台,通过数据库 备份/恢复 或者上传漏洞获得一个webshell。利用获得的webshell修改网站页面的内容,向页面中加入恶意转向代码。也可以直接通过弱口令获得服务器或者网站FTP,然后直接对网站页面直接进行修改。当你访问被加入恶意代码的页面时,你就会自动的访问被转向的地址或者下载木马病毒
清马
1、找挂马的标签,比如有script language="javascript" src="网马地址"/script或iframe frameborder=0
scrolling=auto src=网马地址/iframe,或者是你用360或病杀毒软件拦截了网马网址。SQL数据库被挂马,一般是JS挂马。
2、找到了恶意代码后,接下来就是清马,如果是网页被挂马,可以用手动清,也可以用批量清,网页清马比较简单,这里就不详细讲,现在着重讲一下SQL数据库清马,用这一句语句“update 表名 set 字段名=replace(字段名,'aaa','')”, 解释一下这一句子的意思:把字段名里的内容包含aaa的替换成空,这样子就可以一个表一个表的批量删除网马。
在你的网站程序或数据库没有备份情况下,可以实行以上两步骤进行清马,如果你的网站程序有备份的话,直接覆盖原来的文件即可。
修补漏洞(修补网站漏洞也就是做一下网站安全。)
1、修改网站后台的用户名和密码及后台的默认路径。
2、更改数据库名,如果是ACCESS数据库,那文件的扩展名最好不要用mdb,改成ASP的,文件名也可以多几个特殊符号。
3、接着检查一下网站有没有注入漏洞或跨站漏洞,如果有的话就相当打上防注入或防跨站补丁。
4、检查一下网站的上传文件,常见了有欺骗上传漏洞,就对相应的代码进行过滤。
5、尽可能不要暴露网站的后台地址,以免被社会工程学猜解出管理用户和密码。
6、写入一些防挂马代码,让框架代码等挂马无效。
7、禁用FSO权限也是一种比较绝的方法。
8、修改网站部分文件夹的读写权限。
9、如果你是自己的服务器,那就不仅要对你的网站程序做一下安全了,而且要对你的服务器做一下安全也是很有必要了!
Discuz 3.4漏洞
网上内容
首先在目录里建立test.txt
然后,获取formhash:7b2bf0ce
于是可以构建payload:
然后上传文件,就可以删除这个test.txt了
我们来看下源码,这里主要是spacecp_profile.php的问题
首先,我们从漏洞出发,我们先从删除函数开始:
可以看到,这个要求formtype是file,就会触发unlink
我们发现这次改动的228行有 @unlink(getglobal('setting/attachdir').'./profile/'.$space[$key]); ,也就是这次漏洞所在,我们看看语句成立的条件
也就是上传文件,那么现在就是看看这个 $space[$key] 了,回溯下变量,我们发现,key是可以被payload里的用户资料所操作的,我们看下payload里用的 birthprovince ,
可以看到这个就可以控制 $space[$key] ,而且没有什么限制,而一切的条件就是70行的 if(submitcheck('profilesubmit')) { 所以,我们的payload会有profilesubmit=1
【漏洞分析】Discuz!
之前网上爆的的是Discuz!=3.4的任意文件删除漏洞,为什么这里变成3.3了呢?因为厂商已经把3.4的修复了,不过3.3版本还是存在问题的。
首先,在本地创建一个我们要删除的测试文件
注册一个账号
然后点击保存,用burp抓个包,就可以得到我们的formhash,并在birthprovince中修改成我们要删除的文件路径(../../../test.txt)
然后可以在本地创建一个文件上传的表单
然后点击上传
就完成了删除文件了~
这里漏洞出现在/upload/source/include/spacecp/spacecp_profile.php
这里第182、183行有两个unlink()函数可以删除文件,但是需要formtype=file才可以,我们把这里的打印出来
发现并不是file,因此不能在这里进行删除,继续往下看,
第229行有一个unlink()函数,并且没有任何判断,也就是说只要程序运行到这里,就可以删除文件。看一下条件
这里向上回溯,看一下$space[$key]在哪里。
出现在第23行,发现这个就是用户的个人设置,我们可以选择birthprovince,修改成要删除的文件就好了,然后实现一个上传文件 的表单,就可以删除文件了。
Discuz在线时间漏洞
这个不是手动的漏洞,貌似是DZ设计的问题,根据IP来的,你的时间没有被刷说明你不在漏洞IP段,SO。。。还是不要幻想了。。。望给分,另外,这个漏洞管理员是可以通过数据库修复的,你还是想想如何修复这个漏洞,然后告诉管理员要奖励吧。。。