网站存在漏洞被篡改了会员数据该如何检测和修复

某一客户的网站,以及APP系统数据被篡改,金额被提现,致使损失惨重,漏洞无从下手,通过朋友介绍找到咱们SINE安全公司,咱们随即对客户的网站服务器状况进行大致了解.建议客户作渗透测试服务.模拟攻击者的手法对网站存在的数据篡改漏洞进行检测与挖掘,就此渗透测试服务的过程进行记录与分享.php

首先客户网站和APP的开发语言都是使用的PHP架构开发,后端使用的thinkphp开源系统,对会员进行管理以及资料的统计,包括充值,提现,下单功能.服务器使用是linux系统.共有3个接口,分别是WEB前端,接口,后台,都采用的是action的方法来调用,并初始化数据.咱们看下代码前端

不一样入口传入过来的值,并进一步的操做都不同,咱们SINE安全技术在get,post,cookies的请求方式中,发现一个规律,在查看代码中发现都是使用的get()的方式来对传入过来的值进行安全效验与拦截.对一些特殊符号包括<> 都进行了安全转义,不会直接输入到后端中去.基本上的一些漏洞,XSS,SQL注入漏洞是不会很容易的找到.咱们继续对代码进行分析与渗透测试,对漏洞屡次的测试,终于找到一处存在SQL注入漏洞的代码,存在于网站的会员头像上传功能.linux

咱们抓取上传的数据包,并进行修改,将恶意的SQL注入代码写入到数据包中,将头像的图片内容进行修改提交过去,发现服务器返回错误,缘由是对图片的内容进行了解析操做,并将上传的路径地址写入到了数据库,而这个写入数据库的图片路径地址,并无作详细的变量安全过滤,致使SQL注入的发生,因而可知,攻击者能够查询数据库里的管理员帐号密码,并登录到系统后台进行提权.平台的后台目录地址很容易遭到破解,后台名字写的居然是houtai2019,很容易让攻击者猜解到,使用SQL注入漏洞获取到的管理员帐号密码.登录后台,上传webshell,查到数据库的帐户密码,进行链接,修改数据库.程序员

在对后台的渗透测试发现,后台也存在一样的任意文件上传漏洞,upload值并无对文件的格式,作安全效验与过滤,致使能够构造恶意的图片代码,将save格式改成php,提交POST数据包过去,直接在网站的目录下生成.php文件.对此咱们SINE安全将渗透测试过程当中发现的漏洞都进行了修复.web

可能有些人会问了,那该如何修复渗透测试中发现的网站漏洞?thinkphp

首先对SQL注入漏洞,咱们SINE安全建议你们对图片的路径地址写入到数据库这里,进行安全过滤,对于一些特殊字符,SQL注入攻击代码像select,等数据库查询的字符进行限制,有程序员的话,能够对路径进行预编译,动态生成文件名,对ID等值只容许输入数字等的安所有署,若是对程序代码不是太懂的话,也能够找专业的网站安全公司来解决,国内像SINESAFE,启明星辰,绿盟都是比较专业的,剩下的就是任意文件上传功能的漏洞修复,修复办法是对上传的文件名,以及文件格式作白名单限制,只容许上传jpg.png,gif,等图片文件,对上传的目录作安全设置,不容许PHP等脚本文件的执行,至此客户网站数据被篡改的缘由找到,通过渗透测试才发现漏洞的根源,不模拟攻击者的手段.是永远不会找到问题的缘由的.也但愿借此分享,能帮助到更多遇到网站被攻击状况的客户.shell

相关文章
相关标签/搜索