一种网络数据安全交换方法及系统与流程

文档序号:11253938阅读:432来源:国知局
一种网络数据安全交换方法及系统与流程

本发明涉及数据交换技术领域,具体涉及一种网络数据安全交换的方法及系统。



背景技术:

随着社会信息化的迅猛发展,网络安全也逐渐成为新时代的机遇和挑战。随着物联网的发展和万物互联的推进,本来处于局域网内部的各种网元设备现在开始逐步“裸露”在互联网中,由此产生的信息泄露、安全隐患层出不穷。如何做到让物联网能够有效的为大家服务,同时又能做到不泄露信息、确保内部安全呢?人们想了很多方案,包括使用代理、防火墙等手段。但还是有局限性,因为一旦代理和防火墙被黑客攻击或者控制,内部网络依然还是裸露在黑客的眼前。为了解决这个问题,我们发明了一种方法,使用本方法可以有效地解决数据交换的问题,并且具有极高的安全防护能力,避免被黑客攻击而泄露信息。

现有技术,如图1所示,客户端client需要跟服务器server进行通信,采用:直接连接、代理、防火墙。

直接互联方式,显而易见,没有任何防护措施,毫无安全性可言。

代理方式,在代理服务器上通过代理软件进行转换,实现数据交换。这种方案比直接互联安全性高,隐藏了真正服务器的信息,通过加密方式的话,安全性更好。但是这种方案也有缺陷,因为代理服务器是一台主机,黑客一旦攻击了代理服务器,就能控制客户端和服务器之间的数据交换,进行数据窃密。

防火墙与代理服务器类似,可以通过nat转换,实现对服务器的信息隐藏,也可以通过dmz区实现隔离,达到安全数据交换的目的。同样,因为防火墙也只是单一主机,而且是通过“黑名单”规则实现防护,一旦防火墙本身被黑客控制,也能够窃取客户端和服务器之间的数据。



技术实现要素:

针对现有技术的问题,本发明提出一种网络数据安全交换的方法及系统,将传统的单一主机改为采用双主机,将传统的数据双向流动,改为单向流动,由此对数据交换的过程进行至多五层的防护措施,大大提高了交换的安全性。

作为本发明的第一方面,提供一种网络数据交换方法,包括以下步骤:

s1,判断数据发送端是否合法,若不合法则拒绝服务,否则对数据进行tcp/udp净负荷剥离并进行数据安全审查;

采用“白名单”规则对数据发送端的合法性进行判断,首先判断源ip和源mac是否与预设一致,若一致则判断源ip是否在授权范围内,若是则继续判断源端口/目标端口是否在授权范围内,若是则进行剥离tcp/udp净负荷,并对净负荷的合法性进行安全审查,若安全审查结果为合法数据,则跳转至步骤s2对通过安全审查的数据进行分组加密并传输;

上述过程中的三次判断以及安全审查过程中任一过程失败则断开连接并丢弃数据包,同时记录访问日志。

s2,对通过数据安全审查的数据进行加密并传输;

对通过安全审查的数据进行分组编号并加密,然后对加密数据进行私有协议封装,添加私有报文头,并通过单向的数据通道进行数据传输并记录访问日志。

s3,对数据进行解密并重新组装发送给数据接收端。

对接收到的数据依次进行以下操作:剥离私有封装,解密净负荷数据,按分组编号对净负荷数据进行重组,然后对解密重组后的数据再次进行安全审查,判断数据是否合法;若为合法数据则提取目标数据接收端ip和端口,通过“白名单”规则,判断是否允许向数据接收端发送数据,若允许,则将数据发往目标服务器并记录访问日志;此过程中的两个判断过程任一过程失败则丢弃数据包,同时记录访问日志。

本发明另一方面提供一种网络数据安全交换系统,包括客户端,外端代理,内端代理和服务器端;所述客户端和服务器端通过外端代理和内端代理进行数据交换;

所述外端代理和内端代理均包括有:

身份验证单元,用于利用“白名单”规则验证客户端或者服务器端是否合法,包括验证客户端或者服务器端ip地址是否在授权许可范围内,以及源端口和目标端口是否在授权许可范围内;

数据处理单元,用于剥离客户端或服务器端发送的数据中包含的tcp/udp净负荷,并通过病毒扫描、敏感关键字过滤、应用特征识别或应用特征控制的方法对tcp/udp净负荷进行安全审查;

加密单元,用于对通过安全审查的数据进行进行分组编号并加密,以及对加密后的数据进行私有报文协议封装;

解密单元,用于剥离私有报文协议头部,并对加密的数据内容进行解密并重新组装。

进一步的,所述外端代理和内端代理还分别包括第一通信集合、第二通信集合和第三通信集合,每个通信集合由一个或多个通信接口组成,每个通信集合中的接口数量相等;

所述外端代理的第一通信集合用来与客户端进行数据通信;所述内端代理其中第一通信集合用来与服务器端进行数据通信;

所述外端代理第二通信集合与内端代理的第三通信集合中的通信接口通过单纤单向光纤两两连通,构成一条或多条外端代理到内端代理的单向数据传输通道;所述外端代理第三通信集合与内端代理的第二通信集合中的通信接口通过单纤单向光纤两两连通,构成一条或多条内端代理到外端代理的单向数据传输通道。

作为优选,所述外端代理到内端代理的一条或多条单向数据传输通道与内端代理到外端代理的一条或多条单向数据传输通道一一对应,构成一组或多组传输通道对。

本发明由于采用以上技术方案,具有显著的技术效果:通过“双主机”和“单向数据流”方案,其安全性显然更高。首先,在“外端代理”上利用白名单规则有对客户端的甄别,只有授权范围的客户端可以访问“外端代理”。这样就大大降低了“外端代理”被威胁的可能性。假设被授权的客户端被黑客控制了,成功连接到“外端代理”,这时候第二层防护将生效:其发往“外端代理”的数据如果非法,比如:数据中没有携带专有的应用特征码、数据缺少专有的数据校验码、数据中含有非法敏感数据或者威胁代码等,将会被拒绝服务。假设黑客通过被控制的客户端又成功的攻击了“外端代理”,并进入“外端代理”系统内部。此时,第三道防护将被开启:若要想连接真实的内部服务器,其必须通过“外端代理”至“内端代理”的单向光纤通道发送数据,因为我们采用了私有数据封装和加密算法,以及私有数据包发送接口,如果这三样任何一样不能满足,将不能将数据正确的发送给真实的服务器。假设第三道防护也被攻击,第四道防护将会开启,“内端代理”不会允许内部服务器向外部发送数据,即便黑客成功给真实服务器发送了获取数据的请求,即黑客成功的进行了伪装,并使用正确的加密方式和数据分组将数据发往内端,内端代理接收到相应数据,也将该数据正确的发往了服务端,服务器响应的数据包到达“内端代理”的时候,第五道防护开启:内端代理不允许服务器向外端代理发送数据(自动断开服务),黑客的窃密将无法完成。通过以上这些手段,实现了数据安全交换的同时,也对数据进行了安全防护。

附图说明

图1为现有技术中采用直接连接、代理、防火墙进行数据交换的方法示意图;

图2为本发明中数据安全交换方案示意图;

图3为本发明中外端代理处理客户端数据流程图;

图4为本发明中内端代理接收外端代理的数据包的数据处理流程图;

图5为本发明中内端代理处理服务器端数据流程图;

图6为本发明中外端代理接收内端代理的数据包的数据处理流程图

具体实施方式

下面结合附图及实施例对本发明作进一步说明。

如图2所示,本发明提供一种网络数据安全交换的方法及系统中,通过“双主机”和“数据单向流动”来保障数据的安全交换,

首先,客户端client只与“外端代理”agent-out进行连接,服务器server只与“内端代理”agent-in进行连接;

其次,“外端代理”和“内端代理”是两台独立的硬件设备,彼此之间连接是通过单向的光纤通道进行连接,在单向的光纤通道中,数据只能单向传输。

第三,“外端代理”向“内端代理”传输数据过程:“外端代理”和“内端代理”分别包括接口数量相等的第一通信集合、第二通信集合和第三通信集合,图2假设每个通信集合仅由一个通信接口组成,在out1接口上,“外端代理”采用“白名单”规则,会先判断客户端client本身以及数据发送的源端口和目标端口是否合法用户,非授权用户直接拒绝服务。对于合法客户端发送过来的数据,将接收到的tcp/udp的净负荷进行剥离,并对数据进行安全审查,记录访问日志(非法数据将丢弃同时拒绝服务,并记录访问日志)。对于通过数据安全审查的数据,以私有协议将数据进行加密,即根据私有传输协议重新构造tcp/udp净负荷,对数据进行封装,再以专用发包接口通过out2发送给“内端代理”的in3。

具体地,如图3所示,“外端代理”通信口接收到客户端发来的数据包时,首先判断源ip和源mac是否与预设一致,若一致则判断源ip是否在授权范围内,若是则继续判断源端口/目标端口是否在授权范围内,若是则进行剥离tcp/udp净负荷,利用病毒扫描、敏感关键字过滤、应用特征识别和应用特征控制等方法对净负荷的合法性进行审查,若审查结果为合法数据,则对净负荷数据进行分组编号并加密,然后对加密数据添加私有报文头并封装,然后采用专用发包方式,将数据通过单纤单向光纤发往“内端代理”,并记录访问日志。

上述过程中的四次判断过程任一过程失败则“外端代理”拒绝服务,断开连接并丢弃数据包,同时记录访问日志。

“内端代理”的in3接口只能以专用收包接口进行数据包接收,接收到数据之后,将数据剥离并解密重组之后,通过in1发送给真实的服务器server。这样将原有的tcp/udp协议栈传输完全切断,以私有协议、私有接口实现数据单向传输。

具体地,如图4所示,“内端代理”通过单纤单向光纤接收由“外端代理”发送的数据包,首先判断数据包是否是私有封装数据包,若是则剥离私有封装,解密净负荷数据,按分组编号对净负荷数据进行重组,然后对解密重组后的数据再次进行安全审查,判断数据是否合法,审查方法主要包括病毒扫描、敏感关键字过滤、应用特征识别和应用特征控制等方法,若为合法数据则提取目标服务器端ip和端口,“内端代理”通过“白名单”规则,判断是否允许向目标服务器发送数据,若允许,则将数据发往目标服务器并记录访问日志。

上述过程中的三个判断过程任一过程失败则“内端代理”丢弃数据包,同时记录访问日志。

第四,要实现数据双向交换,“内端代理”向“外端代理”传输数据过程:在in1接口上,“内端代理”采用“白名单”规则,会先判断服务端server是否允许向外发送数据,非授权直接拒绝服务。对于授权服务端发送过来的数据,将接收到的tcp/udp的净负荷进行剥离,并对数据进行安全审查(非法数据将丢弃同时拒绝服务,并记录日志)。对于通过数据安全审查的数据,以私有协议将数据进行加密,再以专用发包接口通过in2发送给“外端代理”的out3。

具体地,如图5所示,“内端代理”接收服务器发送的数据时,首先利用“白名单”规则判断服务器ip是否在授权范围内,若是则判断源端口/目标端口是否在授权范围内,若是,则剥离tcp/udp净负荷并进行安全审查,审查方法同样主要包括病毒扫描、敏感关键字过滤、应用特征识别和应用特征控制等方法,若通过安全审查,则再判断系统是否允许服务器端想外发送数据,若是则对净负荷数据进行分组编号并加密,添加私有报文头,然后采用专用发包方法,通过单纤单向光纤发往外端代理,并记录访问日志。

上述过程中的四个判断过程任一过程失败则“内端代理”拒绝服务,断开与服务器端的连接并丢弃数据,同时记录访问日志。

“外端代理”的out3接口只能以专用收包接口进行数据包接收,接收到数据之后,进行协议解密,然后再将数据剥离出来重新组装之后,通过out1发送给真实的客户端client。

具体地,如图6所示,“外端代理”通过单纤单向光纤接收由“内端代理”发送的数据包,首先判断数据包是否是私有封装数据包,剥离私有封装,解密净负荷数据,按分组编号对净负荷数据进行重组,然后对解密重组后的数据再次进行安全审查,判断数据是否合法,审查方法主要包括病毒扫描、敏感关键字过滤、应用特征识别和应用特征控制等方法,若为合法数据则提取目标客户端ip和端口,“内端代理”通过“白名单”规则,判断是否允许向目标客户端发送数据,若允许,则将数据发往目标客户端并记录访问日志。

上述过程中的三个判断过程任一过程失败则“外端代理”丢弃数据包,同时记录访问日志。

这样将原有的tcp/udp协议栈传输完全切断,以私有协议、私有接口实现数据单向传输。

当“外端代理”和“内端代理”的每个通信集合扩展为多个接口时,各接口之间构成的通信回路与上述过程相似,这样就实现了负载均衡和传输的可靠性,在其中一条通信回路损坏的情况下,“外端代理”或内端“内端代理”自动选择空闲通信回路进行数据传输。

通过“双主机”和“单向数据流”方案,其安全性显然更高。首先,在“外端代理”上利用白名单规则有对客户端的甄别,除了限制ip之外还限制了访问的源端口和目标端口,此外还有ip+mac绑定,也就是只有固定的某个或某几个硬件客户端才能访问,只有授权范围的客户端可以访问“外端代理”。这样就大大降低了“外端代理”被威胁的可能性。假设被授权的客户端被黑客控制了,成功连接到“外端代理”,这时候第二层防护将生效:其发往“外端代理”的数据如果非法,比如:数据中没有携带专有的应用特征码、数据缺少专有的数据校验码、数据中含有非法敏感数据或者威胁代码等,将会被拒绝服务。假设黑客通过被控制的客户端又成功的攻击了“外端代理”,并进入“外端代理”系统内部。此时,第三道防护将被开启:若要想连接真实的内部服务器,其必须通过“外端代理”至“内端代理”的单向光纤通道发送数据,因为我们采用了私有数据封装和加密算法,以及私有数据包发送接口,如果这三样任何一样不能满足,将不能将数据正确的发送给真实的服务器。假设第三道防护也被攻击,第四道防护将会开启,“内端代理”不会允许内部服务器向外部发送数据,即便黑客成功给真实服务器发送了获取数据的请求,即黑客成功的进行了伪装,并使用正确的加密方式和数据分组将数据发往内端,内端代理接收到相应数据,也将该数据正确的发往了服务端,服务器响应的数据包到达“内端代理”的时候,第五道防护开启:内端代理不允许服务器向外端代理发送数据(自动断开服务),黑客的窃密将无法完成。通过以上这些手段,实现了数据安全交换的同时,也对数据进行了安全防护。

说明书中未阐述的部分均为现有技术或公知常识。本实施例仅用于说明该发明,而不用于限制本发明的范围,本领域技术人员对于本发明所做的等价置换等修改均认为是落入该发明权利要求书所保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1