The invention discloses a detection method, a SQL command injection includes: acquisition request data submitted to the business end; acquisition service end to end database protocol traffic database, and extract into the SQL command section from the database protocol traffic; determine whether can detect the injection in SQL command request data, if detected the SQL command, there is a SQL command injection. This method can not avoid the external command containing SQL command injection conditions in a more effective, more accurate, and no detection method for frequent updates to the SQL command injection, detected by injecting external command in the SQL command, data security database security in the enterprise. The invention also discloses a detection system of SQL command injection, which has the above beneficial effect.
【技术实现步骤摘要】
一种SQL命令注入的检测方法及系统
本申请涉及数据检测
,特别涉及一种SQL命令注入的检测方法及系统。
技术介绍
在当今互联网时代,越来越多的企业将业务迁移到互联网上,而众多的企业业务应用主要是以WEB方式交互实现的,而通过WEB方式进行交互的数据也通过这种方式进入业务系统,最终被保存在企业的后台数据库中,对于以开发WEB应用软件为主的企业,后台数据库中数据的重要性不言而喻。而通过WEB实现交互固然有其好的一面,但同时也存在潜在的风险。其中,一些恶意攻击者意图躲避后台程序开发人员的注意,在通过WEB方式提交的表单、输入域名以及页面请求的命令中插入SQL(StructuredQueryLanguage,中文名为:结构化查询语言)命令的字符串,利用WEB应用程序的漏洞将恶意的SQL命令注入正常的访问命令,来欺骗服务器执行恶意的SQL命令,达到攻击数据库服务器或窃取数据的目的,为企业后台数据库中数据的安全造成了严重的威胁。在现有技术中,主要通过“打疫苗”的方式来防范SQL命令注入,换句话说,就是根据SQL命令注入攻击特点形成特征库,利用该特征库来对所有外部命令进行是否携带有表现为同样特征库的SQL命令检测,这种方法一方面过于依赖特征库的更新,一旦更新不及时就无法防范攻击;另一方面,只要对原SQL命令做出些许变化、变异,形成的特征库就跟原来的不同,即,面对变异出来的新SQL命令难以做到防范,且同时存在误伤的情况,对正常命令进行了拦截。综上,通过现有的方法无法对SQL命令注入做出有效的防范。那么,如何在无法避免外部命令中含有SQL命令注入的情况下,提供一种更有 ...
【技术保护点】
一种SQL命令注入的检测方法,其特征在于,包括:采集提交给业务端的请求数据;采集所述业务端到数据库端的数据库协议流量,并从所述数据库协议流量中提取注入SQL命令段;判断是否能在所述请求数据中检测到所述注入SQL命令段,若检测到所述注入SQL命令段,则存在SQL命令注入。
【技术特征摘要】
1.一种SQL命令注入的检测方法,其特征在于,包括:采集提交给业务端的请求数据;采集所述业务端到数据库端的数据库协议流量,并从所述数据库协议流量中提取注入SQL命令段;判断是否能在所述请求数据中检测到所述注入SQL命令段,若检测到所述注入SQL命令段,则存在SQL命令注入。2.根据权利要求1所述的检测方法,其特征在于,从所述数据库协议流量中提取注入SQL命令段,包括:从所述数据库协议流量中提取SQL命令;对所述SQL命令进行模板化处理,得到SQL模板,并对每两个所述SQL模板进行对比,得到比较结果;根据所述比较结果从所述SQL模板中提取所述注入SQL命令段。3.根据权利要求2所述的检测方法,其特征在于,对所述SQL命令进行模板化处理,得到SQL模板,并对每两个所述SQL模板进行对比,得到比较结果,包括:对第一SQL命令进行所述模板化处理,得到SQL基线模板;对除所述第一SQL外的其余所述SQL命令进行所述模板化处理,得到新SQL模板;对所述SQL基线模板与所述新SQL模板均以最小单位进行拆分,分别得到第一集合和第二集合;对所述第一集合中的最小单位与所述第二集合中的最小单位执行匹配操作,得到匹配比例;对所述匹配比例与阈值进行对比,得到比较结果。4.根据权利要求3所述的检测方法,其特征在于,对所述匹配比例与阈值进行对比,得到比较结果,包括:判断所述匹配比例是否超过阈值;若所述匹配比例超过所述阈值,则对所述新SQL模板附加疑似SQL注入风险的标记。5.根据权利要求4所述的检测方法,其特征在于,根据所述比较结果从所述SQL模板中提取所述注入SQL命令段,包括:从被附加所述标记的所述新SQL模板中提取所述注入SQL命令段。6.一种SQL命令注入的检测系统...
【专利技术属性】
技术研发人员:陆明友,
申请(专利权)人:深信服科技股份有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。