网站被攻击 如何修复网站漏洞来防止攻击?



      客户网站前端时间被攻击,网站被劫持到了赌博网站上去,通过朋友介绍找到我们SINESAFE

做网站的安全防护,我们随即对客户网站进行了全面的渗透测试,包括了
网站的漏洞检测与代码

安全测试,针对于发现的漏洞进行了修复,包括网站安全部
署等等方面,下面我们将这一次的安

全应急处理过程分享给有需要的客户。

 
 
首先客户网站采用的架构是PHP语言开发,mysql数据库,使用的是linux centos系统作为网站的

运行环境,代码使用的是开源的某CMS系统,我们首先打包压缩了一
份网站源代码到我们本地

的电脑,人工对其代码进行全面的渗透测试与检测,首先
我们会从网站的安装文件入手,我们查

看到使用的是install.php作为网站安装的
文件,一般这里会存在网站漏洞,例如:没有对其做安

全验证,导致可以任意的安
装网站,覆盖配置文件,甚至可能会出现表单里不做安全过滤,导

致写入webshell
一句话木马代码到config.php文件里。

 
经过我们SINE安全技术的人工代码安全审计,发现客户网站存在任意重装网站漏洞,漏洞文件

:install.php,查看到使用的变量值为DEL_INSTALLER=1的时候才会删
除安装文件,我们看到

默认值=0.也就是说不会删除安装文件,我们可以访问该代
码,直接执行重装操作。
 
 
继续检查代码是否还存在其他的漏洞,在检查到配置文件config.php代码中,有调用到cookies方

面的赋值,继续追踪分析发现存在越权漏洞,管理员登录网站后,
会保存cookies,但是这个coo

kies的构建很简单,是使用了emhash的方式,对传入
的key值进行了MD5加密操作,最终cookies

的构成是由账号名以及HASH值拼接构成
的,那我们就可以伪造cookies,直接越权操作其他管理

员账号,甚至可以以普通
用户的权限,去操作网站管理员的权限。
 
 
我们SINE安全工程师对后台代码进行安全审计的时候发现,存在上传漏洞,可以上传php文件,

后台有个设置上传后缀名的功能,但是默认网站对添加PHP的后缀名做
了过滤,会将PHP稀释掉

,以及不允许,那么我们在实际的渗透测试中如何绕过呢
?看到后台有数据库备份恢复的功能,

那么我就可以将数据库里的后缀名改为php
,再直接恢复到网站中去,直接上传PHP脚本后门也

叫webshell到网站里去。

 

 
至此客户网站的所有渗透测试以及漏洞检测已完毕,共发现3处漏洞,1个是install.php安装重置

漏洞,1个是越权漏洞,1个是文件上传漏洞,针对以上3个漏
洞,我们SINE安全对其做了漏洞修

复,对install的变量值进行了判断,当网站安
装后,自动删除install.php文件,对越权做了用户的

所属权限判断,如果不是当
前用户的cookies直接返回错误状态,对后台的数据库备份功能做限

制,只能备份
,不能恢复,恢复操作使用phpmyadmin来进行网站的数据恢复,如果您对网站的

全不是太懂的话,建议找专业的网站安全公司来处理解决,做好网站安全,才能保障用户的

每一次访问。
 
分享: