天天看点

如何防止网站被SQL注入攻击?

移动互联网的发展势头已经远远超过PC互联网,手机移动端上网,以及持有量远超 PC电脑,

随着移动大数据、区块链的技术在不断的完善,成熟,日常生活中经常会 听到某某网站被攻击,

网站被黑的新闻报道,再比如一个团购网站被入侵,导致用 户的信息隐私被泄露,多少万的会员

数据被盗走,这无意是给网站带来了严重的影 响与经济损失。     像之前的高考网站被黑,高考完的学生们去查高考分数的这种急迫心情,就这么被 攻击者给破坏,

导致高考成绩不能正常查询,带来了更多心里上的担心与考生的信 息可能面临着被泄露,紧接带

来的就是一系列的经济诈骗的发生,上面发生的种种 情况,都跟我们今天要说的网站安全防护,

关于如何更好的防止SQL注入攻击?     网站被黑的情况,经过我们SINE安全公司多年来的安全维护经验来总结,一般都是 由于网站存在

漏洞,大多数是跟网站SQL注入漏洞有关,mysql数据库,oracle数据 库,sql数据库,都会遭到

sql的注入攻击,进而导致网站的数据库信息被脱裤,这 种攻击手段一般会在访问日志以及网站内

部的流量统计里发现问题,SQL注入攻击 的技术在近几年一直在升级变化,攻击特征也比较另类,

甚至伪装成正常的sql语 句来执行攻击者的恶意参数。

  网站的访问,用户打开网站以及登录,各项的网站交互功能使用过程当中,Linux 服务器端应该对

前端网站用户的访问与GET POST,COOKIES提交的参数进行安全过滤 ,把正常的sql语句执行到

数据库。而攻击者是利用sql语句执行的便利条件,掺杂 进恶意的sql注入语句执行到数据库中,

比如查询网站管理员的账号密码,修改网 站会员的提现银行卡,修改网站的支付接口,支付账号

,通过数据库篡改注单,修 改投注记录、修改会员密码或者会员的认证资料,银行卡等攻击症状。

总的来说攻 击者把正常的sql语句转变成恶意的sql注入语句,执行到数据库里并进行读写查询 。     那么该如何更好的防止网站被sql注入呢?

  首先我们应该对网站程序代码进行详细的安全检测,与网站漏洞检测,在网站的前 端进行多种方式

的提交与注入检测,对代码里中与用户交互并与数据库直接传输打 交道的代码进行严查,看看是否

可以掺杂非法的sql注入代码进去。 对GET、POST、COOKIES的提交进行过滤,过滤特殊符号,

对一些&*%¥#@/等等的符 号,以及转义符号进行严格的过滤与拦截。对前端的网站进行PHP安

全函数的变量 过滤,网站web端的JS过滤检测是否含有SQL注入的非法参数,比如一些sql注入

代 码,and 1=1 1=2 select union等查询的语句过滤。

字符串的安全过滤,对and以及 delete,updata,char,master,chr.exec,mid,declare,or,count

等等的字符串在服 务器端进行严格拦截,当用户输入过来的值以及数据包中含有以上的字符串,进

行 拦截并记录到日志里,以防拦截正常的用户交互功能使用。

    网站前端也可以使用WAF防火墙,使用CDN进行防护sql注入,国内可以使用百度CDN 来进行防止

sql注入攻击。

继续阅读