大部分网站都是采用Web动态网页结合后台数据库架设而成的。网页从用户的请求中得到某些参数,然后构成SQL语句请求发给数据库,再将从数据库中得到的结果返回给网页,从而完成网页所执行的功能。
在许多Web网站系统中,由于网站程序中的变量处理不当,或者对用户提交的数据过滤不足,很可能产生一种被为SQL注入(SQL Injection)的漏洞。恶意攻击者可以利用用户可提交或可修改的数据,构造特殊的SQL语句,将SQL语句插入到系统实际执行的SQL语句中,从而任意获取数据库中的某些重要信息,如管理员用户名和密码等;基至可以利用SQL注入漏洞控制整个网站服务器。
简单说来,SQL注入漏洞就是由于用户可构造执行特殊SQL语句的漏洞;所谓的SQL注入攻击就是用户利用SQL注入漏洞非法获取数据库信息或者入侵网站服务器的一种黑客攻击手段。根据网站所使用的Web脚本语言不同,SQL注入攻击可以分为ASP注入、PHP、JSP、ASPX注入等多种方式。ASP注入与PHP及其他语言的注入原理是一样的,但是由于Web语言环境不同,因此实际注入时所使用的语句也不尽相同。
同时,SQL注入攻击并不仅局限在SQL Server数据库中,后台使用Access、MySQL、Oracle、Sybase等数据库的网站等都可能存在注入漏洞,遭受SQL注入攻击。根据目前网络上的具体情况而言,大部分网站主要是采用“ASP+SQL Server (Access)”或者“PHP+MySQL”结构来架设的。
建站咨询
SEO优化咨询
小程序咨询