作为我国应用最广、用户数量最多的内容管理系统之一,它频繁出现安全漏洞。每当漏洞被揭露,其影响范围广泛,轻微的可能遭受广告植入或弹窗骚扰,严重的甚至会导致服务器沦为攻击工具,重要数据可能遭受损失。那么,如何提升其安全性呢?
让我们先探究一下原因,为何PHP程序频繁出现漏洞。这实际上是由PHP程序自身的特性所决定的。PHP的可复用性不高,使得程序结构变得复杂且混乱,充斥着大量冗余代码。这种情况不仅容易引发漏洞,还使得漏洞的修复工作变得困难;PHP程序易于上手且多数开源,使得众多人能够直接阅读其代码,寻找漏洞;因此,漏洞被发现、修复后,又不断有新的漏洞被发现,形成了一个循环。目前广泛采用的PHP系统倾向于将缓存以文件形式存储,这导致必须赋予文件写入权限,这无疑暴露了PHP系统的弱点。在针对PHP系统的攻击手段中,除了已较少出现的“注入”攻击之外,绝大多数攻击都是利用系统中的某个漏洞,向可写文件中植入恶意代码,进而获取系统shell权限。
网站安全始终依赖于服务器配置、文件权限以及网站程序三者之间的协同作用,今日重点探讨如何通过优化网站程序来增强其安全性。"确保可执行文件不被篡改,禁止对可写文件进行访问"是网站权限控制的核心准则,而在确保"可写文件不被访问"这一环节,网站程序有着诸多改进空间。例如,我们可以从以下几个途径加强防护措施。
1、改名根目录下的data目录,或者移动到网站目录外面
data目录往往是藏污纳垢之所,系统频繁向其写入数据,且该目录下的文件均能通过URL进行访问。因此,若要阻止浏览器访问其中的文件,必须对目录进行重命名,或将其移至网站目录之外。如此一来,即便他人通过漏洞在文件中植入一句木马代码,也无法追踪到木马的具体文件路径,进而无法继续实施攻击。由于程序设计上的缺陷,对data目录进行重命名操作将引发较大变动,具体操作步骤包括:
将公开资料转移至pub目录(亦或其它用户自定义的目录),例如rss文件、js脚本、枚举类型等,此过程涉及对文件夹的移动操作,并需对相关文件的生成路径进行相应调整。
b. 修改引用程序目录
将路径中的""与"data"之间的"slash"替换为"dot",大约在五六十处进行这样的修改。
将".‘/data/"替换为".’/",这一操作大约需要执行五六十次;
在搜索过程中定位到"data/"目录,根据实际需要,对路径进行相应调整,使其转变为如"$."/"的形式(需留意目录和后台管理目录中均存在data文件夹,故无需进行修改)。
更改data目录的名称,同时更新/.inc.php文件中相应的标识符,接着在后台管理系统中的参数设置部分调整模板缓存路径,这样设置就算完成了。未来若需对data目录名称进行变更,亦可依照此流程操作。
2、改名"dede"管理目录,并加固
若成功将后台隐藏得严实,即便他人掌握了你的管理员身份和密码信息,他们也无法成功登录系统。
a.在/dede/.php里,找到如下行:
1//检验用户登录状态
2$ = new ();
3if($->()==-1)
4{
5 (":login.php?=".($));
6}
把上面代码,改为:
1//检验用户登录状态
2$ = new ();
3if($->()==-1)
4{
5 //(":login.php?=".($));
HTTP版本为1.0,状态码显示404,表示未找到资源。
7 exit();
8}
对/dede/login.php文件名进行更名,同时调整/dede/login.htm页面中的表单提交目标地址。
c.修改/dede/的目录名称;
因此,在未登录状态下,他人仅能通过/dede/login.php更名后的链接进行访问,若尝试访问其他页面,系统将显示404错误提示。
当然,做了安全加固后,以后的升级就会有一些麻烦
扫一扫在手机端查看
我们凭借多年的网站建设经验,坚持以“帮助中小企业实现网络营销化”为宗旨,累计为4000多家客户提供品质建站服务,得到了客户的一致好评。如果您有网站建设、网站改版、域名注册、主机空间、手机网站建设、网站备案等方面的需求,请立即点击咨询我们或拨打咨询热线: 13761152229,我们会详细为你一一解答你心中的疑难。


客服1