CN102968578A - 一种防注入方法及系统 - Google Patents
一种防注入方法及系统 Download PDFInfo
- Publication number
- CN102968578A CN102968578A CN2012104241879A CN201210424187A CN102968578A CN 102968578 A CN102968578 A CN 102968578A CN 2012104241879 A CN2012104241879 A CN 2012104241879A CN 201210424187 A CN201210424187 A CN 201210424187A CN 102968578 A CN102968578 A CN 102968578A
- Authority
- CN
- China
- Prior art keywords
- packet
- data packet
- address
- module
- complete
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种防注入方法及系统,所述方法包括:接收数据包,其中,每个数据包合对应每个网络连接,将所述接收的数据包中相同网络连接的数据包组合成一个完整的数据包并进行存储,判断所述完整的数据包是否符合预设注入规则,如果是,则发生注入,如果否,则没有发生注入,所述方法应用于系统中,实现在纯内核态的环境下,不必使用上下文切换,就可以实现对SQL防注入进行了判断,提高了系统的性能。
Description
技术领域
本发明涉及软件技术领域,特别是一种防注入方法及系统。
背景技术
目前对于结构化查询语言(SQL)防注入的方法中,用户通常使用的为设置反向代理,所述设置反向代理的方法就是通过反向代理技术,对网站的请求进行截取,然后再请求达到网站之前进行处理,这样降低了网站受到攻击的可能性,并且减轻了网站本身的负载,更有甚者,使用内核模块专用在内核态抓包,然后再传到用户态进行包的组装,最后用反向代理的机制,进行包的处理,然后再从用户态回到内核态,对包所对应的连接进行处理,这样的话,就需要在用户态和内核态之间频繁切换,不可避免的会带来较多的上下文切换,因此,会带来系统的性能的极大损耗。
发明内容
本发明所要解决的问题是:提供一种防注入方法及系统,解决了现有技术中在用户态和内核态之间频繁切换,就会带来较多的上下文切换,从而给系统性能带来下降的问题。
一种防注入方法,所述方法应用于内核态环境下,包括:
接收数据包,其中,每个数据包对应每个网络连接;
将所述接收的数据包中相同网络连接的数据包组合成一个完整的数据包并进行存储;
判断所述完整的数据包是否符合预设的注入规则,如果是,则发生了注入,如果否,则没有发生注入。
优选地,在所述将所述每个网络连接对应的每个数据包集合中的各个数据包组合成一个完整的数据包并进行存储之后,判断所述完整的数据包是否符合预设的注入规则之前还包括:
对所述完整数据包进行处理,得到所述完整数据包的参数,其中,所述参数包括:源IP地址、源端口地址、目的IP地址及目的端口地址;
利用所述完整数据包的参数创建哈希列表;
通过查找所述哈希列表,得到所述完整数据包的数据信息。
优选地,所述对所述完整数据包进行处理的过程包括:
将所述完整数据包通过hook函数处理。
优选地,还包括:
当发生攻击时,向所述源IP地址发送一个阻断页面,并向所述目的IP地址发送攻击响应数据。
一种防注入系统,所述系统包括:接收模块、组合模块和判断模块;
所述接收模块用于,接收数据包,其中,每个数据包对应每个网络连接;
所述组合模块用于,将所述接收的数据包中相同网络连接的数据包组合成一个完整的数据包并进行存储;
所述判断模块用于,判断所述完整的数据包是否符合预设的注入规则,如果是,则发生了注入,如果否,则没有发生注入。
优选地,还包括:处理模块;
所述处理模块用于,对所述完整数据包进行处理,得到所述完整数据包的参数,其中,所述参数包括:源IP地址、源端口地址、目的IP地址及目的端口地址。
优选地,还包括:创建模块和查询模块;
所述创建模块用于,利用所述完整数据包的参数创建哈希列表;
所述查询模块用于,通过查找所述哈希列表,得到所述完整数据包的数据信息。
从以上技术方案可以看出,本发明提供了一种防注入方法及系统,所述方法包括:接收数据包,其中,每个数据包合对应每个网络连接,将所述接收的数据包中相同网络连接的数据包组合成一个完整的数据包并进行存储,判断所述完整的数据包是否符合预设注入规则,如果是,则发生注入,如果否,则没有发生注入,所述方法实现在纯内核态的环境下,不必使用上下文切换,就可以实现对SQL防注入进行了判断,提高了系统的性能。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例一公开的一种防注入方法流程示意图;
图2为本发明实施例二公开的一种防注入方法流程示意图;
图3为本发明实施例五公开的一种防注入系统结构示意图;
图4为本发明实施例六公开的一种防注入系统结构示意图。
具体实施方式
下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。
本发明实施例一公开了一种防注入方法,参见图1所示,所述方法应用于内核态环境下,步骤包括:
步骤S101:接收数据包,其中,每个数据包对应每个网络连接;
步骤S102:将所述接收的数据包中相同网络连接的数据包组合成一个完整的数据包并进行存储;
步骤S103:判断所述完整的数据包是否符合预设的注入规则,如果是,执行步骤S104,如果否,执行步骤S105;
步骤S104:则发生了注入;
步骤S105:则没有发生注入。
其中,所述预设的注入规则可以为用户在浏览器里输入http://www.baidu.com?select*from a where c=d,这个问号后面的东西就是SQL注入了,我们会根据此注入规则去做验证。
本实施例公开了一种防注入方法,所述方法包括:接收数据包,其中,每个数据包合对应每个网络连接,将所述接收的数据包中相同网络连接的数据包组合成一个完整的数据包并进行存储,判断所述完整的数据包是否符合预设注入规则,如果是,则发生注入,如果否,则没有发生注入,所述方法实现在纯内核态的环境下,不必使用上下文切换,就可以实现对SQL防注入进行了判断,提高了系统的性能。
本发明实施例二公开了一种防注入方法,参见图2所示,所述方法包括:
步骤S201:接收数据包,其中,每个数据包对应每个网络连接;
步骤S202:将所述接收的数据包中相同网络连接的数据包组合成一个完整的数据包并进行存储;
步骤S203:对所述完整数据包进行处理,得到所述完整数据包的参数;
其中,对所述完整数据包的处理使用了hook函数,得到所述完整数据包的四个参数值:源IP、源端口地址、目的IP及目的端口地址;
步骤S204:利用所述完整数据包的参数创建哈希列表;
其中,利用所述完整数据包的四个参数值:源IP、源端口地址、目的IP及目的端口地址,按照TCP/IP的四元组来规划一个基于开放式地址的哈希列表;
步骤S205:通过查找所述哈希列表,得到所述完整数据包的数据信息;
步骤S206:判断所述完整的数据包是否符合预设的注入规则,如果是,执行步骤S207,如果否,执行步骤S208;
步骤S207:则发生了注入;
步骤S208:则没有发生注入;
步骤S209:判断所述注入的数据包是否为攻击数据包,如果是,执行步骤S210,如果否,执行步骤S211;
步骤S210:向所述源IP地址发送一个阻断页面,并向所述目的IP地址发送攻击响应数据;
步骤S211:结束。
本实施例公开了一种防注入方法,所述方法在实施例一的基础上,判断所述注入数据包是否为攻击数据包,如果是,进行了相应的处理,即向所述源IP地址发送一个阻断页面,并向所述目的IP地址发送攻击响应数据,要求阻断连接,减免了数据信息外泄的可能,另外,按照TCP/IP的四元组规划了一个基于开放式地址的哈希列表,其中,TCP协议是工作在七层协议的传输层,是面向连接、基于字节流的协议,对效率和传输的准确性均有很好的支持,而且创建哈希表可以方便并快捷的得到所述数据信息。
本发明实施例三公开了一种列车定位系统,参见图3所示,所述系统包括:接收模块101、组合模块102和判断模块103;
所述接收模块101用于,接收数据包,其中,每个数据包对应每个网络连接;
所述组合模块102用于,将所述接收的数据包中相同网络连接的数据包组合成一个完整的数据包并进行存储;
所述判断模块103用于,判断所述完整的数据包是否符合预设的注入规则,如果是,则发生了注入,如果否,则没有发生注入。
其中,所述预设的注入规则可以为用户在浏览器里输入http://www.baidu.com?select*from a where c=d,这个问号后面的东西就是SQL注入了,我们会根据此注入规则去做验证。
本实施例公开了一种防注入系统,所述系统包括:接收模块、组合模块和判断模块,所述接收模块用于,接收数据包,其中,每个数据包对应每个网络连接,所述组合模块用于,将所述接收的数据包中相同网络连接的数据包组合成一个完整的数据包并进行存储,所述判断模块用于,判断所述完整的数据包是否符合预设的注入规则,如果是,则发生了注入,如果否,则没有发生注入,所述系统应用在纯内核态的环境下,不必在内核态和用户态之间频繁切换,因此,提高了系统的性能。
本发明实施例四公开了一种列车定位系统,参见图4所示,所述处理模块104、创建模块105和查询模块106;
所述处理模块104用于,对所述完整数据包进行处理,得到所述完整数据包的参数,其中,所述参数包括:源IP地址、源端口地址、目的IP地址及目的端口地址;
其中,所述处理模块,对所述完整数据包使用了hook函数进行处理,得到所述完整数据包的四个参数值:源IP、源端口地址、目的IP及目的端口地址;
所述创建模块105用于,利用所述完整数据包的参数创建哈希列表;
其中,所述创建模块,利用所述完整数据包的四个参数值:源IP、源端口地址、目的IP及目的端口地址,按照TCP/IP的四元组来规划一个基于开放式地址的哈希列表;
所述查询模块106用于,通过查找所述哈希列表,得到所述完整数据包的数据信息。
本实施例在实施例三的基础上,增加了处理模块、创建模块和查询模块, 所述处理模块对所述完整数据包使用hook函数处理,得到所述完整数据包的四个参数值,所述创建模块利用所述四个参数值创建了哈希列表,所述查询模块可以利用所述哈希列表查找到所述完整数据包的数据信息,通过创建哈希列表,可以方便快捷的得到需要查找的数据包的数据信息。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽范围。
Claims (7)
1.一种防注入方法,其特征在于,所述方法应用于内核态环境下,包括:
接收数据包,其中,每个数据包对应每个网络连接;
将所述接收的数据包中相同网络连接的数据包组合成一个完整的数据包并进行存储;
判断所述完整的数据包是否符合预设的注入规则,如果是,则发生了注入,如果否,则没有发生注入。
2.根据权利要求1所述的方法,其特征在于,在所述将所述每个网络连接对应的每个数据包集合中的各个数据包组合成一个完整的数据包并进行存储之后,判断所述完整的数据包是否符合预设的注入规则之前还包括:
对所述完整数据包进行处理,得到所述完整数据包的参数,其中,所述参数包括:源IP地址、源端口地址、目的IP地址及目的端口地址;
利用所述完整数据包的参数创建哈希列表;
通过查找所述哈希列表,得到所述完整数据包的数据信息。
3.根据权利要求2所述的方法,其特征在于,所述对所述完整数据包进行处理的过程包括:
将所述完整数据包通过hook函数处理。
4.根据权利要求2所述的方法,其特征在于,还包括:
判断所述注入数据包是否为攻击数据包,如果是,向所述源IP地址发送一个阻断页面,并向所述目的IP地址发送攻击响应数据,如果否,结束。
5.一种防注入系统,其特征在于,所述系统包括:接收模块、组合模块和判断模块;
所述接收模块用于,接收数据包,其中,每个数据包对应每个网络连接;
所述组合模块用于,将所述接收的数据包中相同网络连接的数据包组合成一个完整的数据包并进行存储;
所述判断模块用于,判断所述完整的数据包是否符合预设的注入规则,如果是,则发生了注入,如果否,则没有发生注入。
6.根据权利要求5所述的系统,其特征在于,还包括:处理模块;
所述处理模块用于,对所述完整数据包进行处理,得到所述完整数据包的参数,其中,所述参数包括:源IP地址、源端口地址、目的IP地址及目的端口地址。
7.根据权利要求6所述的系统,其特征在于,还包括:创建模块和查询模块;
所述创建模块用于,利用所述完整数据包的参数创建哈希列表;
所述查询模块用于,通过查找所述哈希列表,得到所述完整数据包的数据信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2012104241879A CN102968578A (zh) | 2012-10-30 | 2012-10-30 | 一种防注入方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2012104241879A CN102968578A (zh) | 2012-10-30 | 2012-10-30 | 一种防注入方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102968578A true CN102968578A (zh) | 2013-03-13 |
Family
ID=47798715
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2012104241879A Pending CN102968578A (zh) | 2012-10-30 | 2012-10-30 | 一种防注入方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102968578A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106202082A (zh) * | 2015-04-30 | 2016-12-07 | 阿里巴巴集团控股有限公司 | 组装基础数据缓存的方法及装置 |
CN108063781A (zh) * | 2016-11-07 | 2018-05-22 | 北京京东尚科信息技术有限公司 | 浏览器中弹出定制信息的装置和方法 |
CN114640704A (zh) * | 2022-05-18 | 2022-06-17 | 山东云天安全技术有限公司 | 通讯数据获取方法、系统、计算机设备及可读存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1581768A (zh) * | 2003-08-04 | 2005-02-16 | 联想(北京)有限公司 | 一种入侵检测方法 |
CN101217493A (zh) * | 2008-01-08 | 2008-07-09 | 北京大学 | 一种tcp数据包的传输方法 |
CN101388763A (zh) * | 2007-09-12 | 2009-03-18 | 北京启明星辰信息技术有限公司 | 一种支持多种数据库类型的sql注入攻击检测系统 |
US8051486B2 (en) * | 2007-05-24 | 2011-11-01 | Oracle International Corporation | Indicating SQL injection attack vulnerability with a stored value |
-
2012
- 2012-10-30 CN CN2012104241879A patent/CN102968578A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1581768A (zh) * | 2003-08-04 | 2005-02-16 | 联想(北京)有限公司 | 一种入侵检测方法 |
US8051486B2 (en) * | 2007-05-24 | 2011-11-01 | Oracle International Corporation | Indicating SQL injection attack vulnerability with a stored value |
CN101388763A (zh) * | 2007-09-12 | 2009-03-18 | 北京启明星辰信息技术有限公司 | 一种支持多种数据库类型的sql注入攻击检测系统 |
CN101217493A (zh) * | 2008-01-08 | 2008-07-09 | 北京大学 | 一种tcp数据包的传输方法 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106202082A (zh) * | 2015-04-30 | 2016-12-07 | 阿里巴巴集团控股有限公司 | 组装基础数据缓存的方法及装置 |
CN106202082B (zh) * | 2015-04-30 | 2020-01-14 | 菜鸟智能物流控股有限公司 | 组装基础数据缓存的方法及装置 |
CN108063781A (zh) * | 2016-11-07 | 2018-05-22 | 北京京东尚科信息技术有限公司 | 浏览器中弹出定制信息的装置和方法 |
CN108063781B (zh) * | 2016-11-07 | 2021-01-26 | 北京京东尚科信息技术有限公司 | 浏览器中弹出定制信息的装置和方法 |
CN114640704A (zh) * | 2022-05-18 | 2022-06-17 | 山东云天安全技术有限公司 | 通讯数据获取方法、系统、计算机设备及可读存储介质 |
CN114640704B (zh) * | 2022-05-18 | 2022-08-19 | 山东云天安全技术有限公司 | 通讯数据获取方法、系统、计算机设备及可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11003639B2 (en) | Database data migration method, apparatus, terminal, system, and storage medium | |
US8908564B2 (en) | Method for Media Access Control address learning and learning rate suppression | |
EP3079313B1 (en) | Data splitting method and splitter | |
CN102223365B (zh) | 基于ssl vpn网关集群的用户接入方法及其装置 | |
CN104170353B (zh) | Tcp链路配置方法、装置及设备 | |
CN101217493B (zh) | 一种tcp数据包的传输方法 | |
US9742616B2 (en) | Device for indicating packet processing hints | |
WO2007040936A3 (en) | Providing and receiving content for computer networks using a gateway and server | |
CN104281493A (zh) | 一种提升应用交付通讯平台多进程程序性能的方法 | |
EP3352431A1 (en) | Network load balance processing system, method, and apparatus | |
WO2006128147A3 (en) | Systems and methods for a fault tolerant voice-over-internet protocol (voip) architecture | |
CA2645274A1 (en) | Peer to peer gateway | |
WO2008121965A3 (en) | Methods and systems for performing server-based mobile chat | |
US20140331306A1 (en) | Anti-Virus Method and Apparatus and Firewall Device | |
CN102968578A (zh) | 一种防注入方法及系统 | |
CN103297384A (zh) | 协议转换的通信方法及系统 | |
WO2008063481A3 (en) | Network audio directory server and method | |
CN103475657A (zh) | 防syn泛洪攻击的处理方法和装置 | |
CN102761608B (zh) | Udp会话复用的方法和负载均衡设备 | |
CN102843362A (zh) | 一种使用tcam进行arp防御的方法 | |
TW200719625A (en) | Network device with routing function and policy route setting method thereof | |
CN103929365A (zh) | 一种适用于udp服务的负载均衡系统及方法 | |
CN103595618A (zh) | 一种用于保持即时通信会话连续性的方法、服务器及系统 | |
CN102694727A (zh) | 实现网络数据包转发加速的方法及装置 | |
CN106411771A (zh) | 一种数据转发方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20130313 |