欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

php网站有漏洞该怎么修复 如何修补网站程序代码漏洞

程序员文章站 2022-06-03 10:43:09
phpdisk是目前互联网最大的网盘开源系统,采用PHP语言开发,mysql数据库架构,我们SINE安全在对其网站安全检测以及网站漏洞检测的同时,发现该网盘系统存在严重的sql注入攻击漏洞,危害性较高,可以直接获取网站的管理员账号密码,利用默认后台地址登录,可以直接获取webshell权限。...

phpdisk是目前互联网最大的网盘开源系统,采用php语言开发,mysql数据库架构,我们sine安全在对其网站安全检测以及网站漏洞检测的同时,发现该网盘系统存在严重的sql注入攻击漏洞,危害性较高,可以直接获取网站的管理员账号密码,利用默认后台地址登录,可以直接获取webshell权限。

目前phpdisk最新版本为7.0版本,该网站系统可以用于公司办公,企业内部文件共享,文档存储,比传统的ftp软件更为直观,操作,简单方便,快捷,用户上传文件格式可以后台设置,人性化,满足了很多企业以及个人用户的青睐,使用的人越多,针对于该网站的漏洞挖掘也会越来越多,很容易遭受到攻击者的攻击。关于该网站的sql注入攻击漏洞的详情,我们sine安全来详细的跟大家讲解一下:

sql注入漏洞详情

phpdisk有多个版本,像gbk版本,utf8版本,在代码当中都会相互转换代码的功能,在对代码进行转化的同时多多少少会存在漏洞,该sql注入漏洞产生的原因就在这里,我们对代码进行安全审计后发现编码转换调用的是conver_str函数,大部分的网站对编码的转换都调用这个参数,在进行转化的时候进行了多次转义操作,我们追踪代码发现iconv存在sql宽字节注入漏洞,代码截图如下:

php网站有漏洞该怎么修复 如何修补网站程序代码漏洞

另外的一处sql注入漏洞是在代码文件里,根目录下的ajax.php文件。我们来看下代码:

php网站有漏洞该怎么修复 如何修补网站程序代码漏洞

本身该代码已经使用了全局变量的sql过滤系统,对一些sql注入语句进行了安全过滤与拦截,一般性的sql注入攻击都不会成功,但是经过我们的安全检测与绕过,可以直接将sql注入语句植入到网站当中,并从后端执行数据库的查询操作,使用加密对其进行sql攻击。

php网站有漏洞该怎么修复 如何修补网站程序代码漏洞

通过网站的sql注入漏洞我们可以直接获取网盘的管理员账号密码,获取到的是md5值,针对于md5值我们对其解密,并利用默认的后台地址,登录进去,通过上传文件,我们进一步的对网站进行上传webshell获取更高的管理员权限。

php网站有漏洞该怎么修复 如何修补网站程序代码漏洞

如何防止sql注入攻击呢? 修复网站的漏洞

对网站前端输入过来的值进行安全判断,尤其编码转换这里,确认变量值是否存在,如果存在将不会覆盖,杜绝变量覆盖导致掺入恶意构造的sql注入语句代码在get请求,以及post请求里,过滤非法字符的输入。 '分号过滤 --过滤 %20特殊字符过滤,单引号过滤,%百分号, and过滤,tab键值等的的安全过滤。对加密的参数进行强制转换并拦截特殊的语句,该phpdisk网站系统已经停止更新,如果对代码不是太懂的话,建议找专业的网站安全公司来处理解决网站被sql注入攻击问题,让安全公司帮忙修复网站的漏洞,像sinesafe,绿盟那些专门做网站安全防护的安全服务商来帮忙。还有一点就是,如果实在不知道该怎么修复漏洞,直接将网站的后台地址改掉,改的复杂一些,即使攻击者破解了admin的账号密码,也登录不了后台

相关标签: 网站漏洞