CN109905352B - 一种基于加密协议审计数据的方法、装置和存储介质 - Google Patents

一种基于加密协议审计数据的方法、装置和存储介质 Download PDF

Info

Publication number
CN109905352B
CN109905352B CN201711305729.XA CN201711305729A CN109905352B CN 109905352 B CN109905352 B CN 109905352B CN 201711305729 A CN201711305729 A CN 201711305729A CN 109905352 B CN109905352 B CN 109905352B
Authority
CN
China
Prior art keywords
data
auditing
communication
packet
sending
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.)
Active
Application number
CN201711305729.XA
Other languages
English (en)
Other versions
CN109905352A (zh
Inventor
张磊
周春楠
赵贵阳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yiyang Safety Technology Co ltd
Original Assignee
Yiyang Safety Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Yiyang Safety Technology Co ltd filed Critical Yiyang Safety Technology Co ltd
Priority to CN201711305729.XA priority Critical patent/CN109905352B/zh
Publication of CN109905352A publication Critical patent/CN109905352A/zh
Application granted granted Critical
Publication of CN109905352B publication Critical patent/CN109905352B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

本申请提供了基于加密协议审计数据的方法,包括:接收来自请求通信方的加密数据请求包后将其发送至虚拟网口并创建请求方地址信息与目标通信方地址信息的映射关系1;对请求包中的数据进行解析和审计并将通过审计的请求包发送至通信端,同时创建虚拟网口端口与请求方地址信息的映射关系2;基于关系2调取请求方地址信息并将其替换为请求包中的请求来源信息之后将其发送至目标通信方;接收目标通信方的响应数据包;对数据包中的加密数据进行解析和审计;基于关系1获取目标方地址信息,将响应数据包的来源信息替换为目标方地址信息并将其发送至请求通信方。本申请通过上述手段解决现有技术中存在的使用流程繁复、容易被绕行以及适用性差等问题。

Description

一种基于加密协议审计数据的方法、装置和存储介质
技术领域
本申请涉及网络数据安全审计技术领域,特别地,涉及一种基于加密协议审计数据的方法、装置和存储介质。
背景技术
随着信息技术的不断发展,信息安全问题也日益突出。如何确保信息***的安全已成为全社会共同关注的问题。虽然通过防病毒软件、防火墙、IDS、IPS等技术手段可以减少外来入侵的风险,但是由于责权不明,安全管理制度不健全及缺乏可操作性等都可能引起管理安全的风险。据资料显示,70%以上的信息泄露是由于企业内部员工安全意识薄弱,操作失误或者内外勾结而产生的破坏所造成的,而信息泄露往往会影响到企业的正常运作和持续发展,给企业带来极大的损失。因此如何从***管理上对用户访问进行控制和审计就变得尤为重要。
目前的业务流量分为非加密和加密数据,为了实现业务的全覆盖,扫除安全监控的盲区,从管理上真正实现全流量的监控,对于两种数据都要有审计和控制的能力。对于明文协议的解析,只要能够获取到流量就可以直接按照协议的格式进行解析;然而对于加密协议我们无法直接解析密文,通常采用的方式是构造中间人代理方式,重建业务过程,在代理端对解码后的数据进行审计和控制。
基于加密协议的传统数据审计方式如图1所示。具体处理办法一般包括两个步骤:
1)用户请求转发到代理程序,通常使用的有两种方式:
a)门户方式,门户展示该用户可访问的目标应用,用户需要先访问门户,选择并跳转到目标应用,这意味着代理程序需要额外提供门户的功能,而且对于不同的应用要提供不同的门户,对于https的web代理需要提供web门户,对于ssh加密协议需要提供字符界面门户。
b)插件方式,需要在用户终端安装钩子插件,用户访问目标时由插件劫持请求,并重定向用户的目标到代理程序,这意味着用户需要在终端上安装插件程序,并绕过安全产品的检查。
2)代理程序获得代理目标,通常使用的也有两种方式:
a)代理程序启动不同的代理端口映射不同的目标,代理程序启动时进行加载。如:配置2222=192.168.1.33:22,那么sshProxy在启动时将监听2222端口,并在收到请求时主动连接192.168.1.33的22端口。
b)在访问代理程序时,将目标的信息发送给代理程序,然后由代理程序访问目标。
3)中间人代理。代理程序建立代理过程以后,进行数据的转发,并根据数据内容进行审计,对用户行为进行控制。
然而,这些技术方案虽然在功能上实现了对加密协议的审计和控制能力,但是在用户体验和审计效率以及稳定性、兼容性等方面存在问题,主要包括:
1)在用户请求转发到代理程序过程中:
a)门户方式,需要对不同的应用提供门户功能,开发量大。对于用户来说改变使用方式,体验差。
b)插件方式,用户需要在自己的终端安装插件,这并不能排除用户卸载插件的可能,以及安全产品对插件的拦截,从而造成插件失效,无法控制用户的访问行为,即该方式下仍然存在用户绕行的可能。
2)在代理程序获得代理目标的过程中:
a)对于通过不同端口映射不同目标的方式,代理程序需要提前配置映射关系,有新应用需要接入时,不得不修改配置,重启程序。不但带来管理上的负担,而且随着应用的增多,启动代理端口数量受到限制,代理程序的性能也会成为瓶颈。
b)对于传递目标地址的方式,需要在用户接入端提供发送功能并在代理端接收,开发量大,并且由于上述用户到代理过程的不稳定性,导致该过程也会存在问题。
基于以上问题,本领域需要一种使用更加便捷、对数据的审计更加稳定和全面的审计方法。
发明内容
本申请提供一种基于加密协议审计数据的方法,其包括:
在通信端接收来自请求通信方的加密数据请求包,并将所述加密数据请求包发送至审计端的虚拟网口,同时创建所述请求通信方地址信息与目标通信方的地址信息的映射关系1;
在所述审计端对所述加密数据请求包中的数据进行解析和审计,并将通过审计的加密数据请求包发送至所述通信端,创建虚拟网口端口与所述请求通信方地址信息的映射关系2;
在所述通信端基于所述映射关系2调取所述请求通信方地址信息并将所述加密请求包中的请求来源地址信息替换为所述请求通信方地址信息,之后将所述审计后的加密请求包发送至目标通信方;
在所述通信端接收所述目标通信方的响应数据包,并将所述响应数据包发送至所述审计端;
在所述审计端对所述响应数据包中的加密数据进行解析和审计,将通过审计的所述响应数据包发送至所述通信端;
在所述通信端基于所述映射关系1获取所述目标通信方的地址信息以及所述请求通信方地址信息,将所述响应数据包的来源地址信息替换为所述目标通信方的地址信息后将所述响应数据包发送至所述请求通信方。
本发明的方法还包括在通信端接收来自请求通信方的数据请求包后首先对所述数据请求包的目标地址进行类型判定,如果所述目标地址类型判定为单播地址且不为虚拟网口地址,那么所述数据请求包中的数据进行加密判定,将判定为非加密的数据包直接发送至所述目标地址,将判定为加密的加密数据包发送至所述审计端进行后续审计程序。
在本发明的方法中,在所述审计端通过加密协议代理程序实现对加密数据的解析;通过调用物理端口的接收和发送方法进行所述通信端的数据的接收和发送;通过调用虚拟网口的接收和发送方法进行所述审计端的数据的接收和发送。
在本发明的方法中,所述审计端和所述通信端之间以队列的方式传递数据包的指针;基于哈希函数建立所述映射关系1和映射关系2。
在本发明的方法中,如果所述加密数据请求包或所述响应数据包没有通过审计,则向所述通信请求方发送请求不合法的通知且不进行后续步骤。
本申请公开的一种基于加密协议审计数据的装置,所述装置包括通信端和审计端:
所述通信端包括:
数据接收发送模块,用于请求通信方、目标通信方和所述审计端进行数据的传输,所述数据的传输包含接收数据、发送数据、返回数据;
数据处理模块,用于在所述通信端根据审计模块中的加密协议解析所述数据,并根据请求通信方、目标通信方、审计端虚拟网口的地址信息重构所述数据;
所述审计端包括:
虚拟网口模块,用于在审计端创建虚拟网口、处理所述虚拟网口接收的通信端数据,并且通过所述虚拟网口与所述通信端进行所述数据的传输;
审计模块,用于在所述审计端对经过所述虚拟网口模块传输的来自通信端的数据进行解析和审计,并将审计的结果通过所述虚拟网口模块返回所述通信端。
在本发明的装置中,所述数据处理模块进一步包括:虚拟网口地址获取模块,用于通过所述数据接收发送模块向所述虚拟端口发送数据包、接收返回数据包,解析所述返回数据包获取所述虚拟网口的地址信息;
数据重构模块,用于获取数据请求通信方的地址信息、目标通信方的地址信息、虚拟网口的地址信息并建立映射关系以及替换数据中包含的来源信息;所述建立的映射关系包括所述请求通信方地址信息与目标通信方地址信息的映射关系1和所述虚拟网口端口与所述请求通信方地址信息之间的映射关系2。
在本发明的装置中,所述通信端还包含:数据判定模块,用于记录所述接收发送模块传输的数据的源地址,并对其目标地址进行类型判定,所述数据处理模块根据所述类型判定的结果对所述数据进行处理,并交由所述数据接收发送模块对处理后的数据进行传输。
在本发明的装置中,对于传输数据的所述目标地址类型判定为单播地址且目标地址为虚拟网口地址的数据,将该数据发送给所述虚拟网口地址;
对于传输数据的所述目标地址类型判定为单播地址且目标地址不为虚拟网口地址的数据,对该数据进行加密判定,将判定的非加密数据直接发送至目标地址,将判定的加密数据在所述数据处理模块进行数据重构后发送至所述虚拟网口地址。
在本发明的装置中,所述审计模块通过加密协议代理程序实现对加密数据的解析;
所述数据接收发送模块通过调用物理端口的接收和发送方法进行数据的接收和发送;
所述虚拟网口模块通过调用虚拟端口的接收和发送方法进行数据的接收和发送。
在本发明的装置中,所述审计端和所述通信端之间以队列的方式传递数据包的指针;所述数据处理模块和所述虚拟网口模块分别基于哈希函数建立所述映射关系1和映射关系2。
在本发明的装置中,如果所述审计模块判定所述加密数据请求包或所述响应数据包没有通过审计,则向所述通信请求方发送请求不合法的通知。
本申请还公开了一种在其上记录有用于执行上述方法的程序的存储介质。
与现有技术相比,本申请的方法和装置具有以下优点:
1、可以在局域网的边界处实行本发明(例如设置本发明的装置),而不需要在用户的终端安装插件,也不需要配置复杂的代理策略,用户对审计程序无感知;
2、在本发明的技术方案中,用户终端、审计设备和目标之间为物理串行,防止用户绕行访问。
3、节省***资源,只需要针对不同的协议启动本发明的审计程序,对于同一种代理类型不需要为不同的目标建立单独的代理端口(如图1所示),从而节省了***开销。
4、本发明的技术方案利用已有的内核协议栈上的代理程序,不需要在用户态下自行开发协议栈及该协议栈上的代理程序,从而大大缩短了开发周期,又减少了自己开发TCP/IP协议栈所带来的不稳定性。
附图说明
附图仅用于示出优选实施方式的目的,而并不认为是对本申请的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1是现有技术中基于加密协议审计数据的流程示意图;
图2为本申请基于加密协议审计数据的方法10的实施例的流程图;
图3为本申请基于加密协议审计数据的装置20的实施例的结构图。
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。
首先,对本申请涉及的术语含义解释如下:
MAC(Media Access Control或者Medium Access Control)地址,意指媒体访问控制,或称为物理地址、硬件地址,用来定义网络设备的位置。一个主机会有一个MAC地址,MAC地址是网卡决定的,是固定的。在本发明中SMAC、VMAC和DMAC分别意指请求通信方、虚拟网口和目标通信方的MAC地址。
DPDK是数据平面开发套件(Data Plane Development Kit)是由6WIND、Intel等多家公司开发,主要基于Linux***运行,用于快速数据包处理的函数库与驱动集合,可以极大提高数据处理性能和吞吐量,提高数据平面应用程序的工作效率。
KNI(Kernel Interface)机制是为了让数据包重入内核协议栈,通过创建虚拟设备用于收发报文以达到利用内核本身已实现协议的目的。KNI的实现由两部分组成,内核态的模块和用户态的模块。通过创建KNI接口上下文,在内核态和用户态之间使用队列的方式,传递数据包的指针,从而避免了拷贝,提升代理效率。
在本申请的描述中,需要理解的是,术语“请求”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“请求”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。“多个”的含义是两个或两个以上,除非另有明确具体的限定。术语“包括”、“包含”及类似术语应该被理解为是开放性的术语,即“包括/包含但不限于”。术语“基于”是“至少部分地基于”。术语“一实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”。其他术语的相关定义将在下文描述中给出。
下面结合图2来说明根据本发明一个实施例的、适于解决上述技术问题的基于加密协议审计数据的方法的流程图。如图2所示,本发明实施例的方法10始于步骤S101,在步骤S101中,在通信端接收来自请求通信方的加密数据请求包,并将所述加密数据请求包发送至审计端的虚拟网口,同时创建所述请求通信方地址信息与目标通信方的地址信息的映射关系1;具体可以包括:通信端的物理网口接收到请求通信方发送的加密数据请求包,同时记录加密数据请求包的相关信息,例如来源信息SMAC、SIP和Sport,目标通信方的信息DMAC、DIP和Dport等,根据这些信息创建映射关系例如基于哈希函数的映射关系Hash1,其中SIP和Sport为key而DMAC、DIP和Dport为Hash值,并将加密数据请求包发送至审计端。
在根据本发明的实施例中,通过调用物理端口的接收和发送方法例如rte_eth_rx_burst和rte_eth_tx_burst进行通信端的数据的接收和发送。
在根据本发明的实施例中,通过调用虚拟网口的接收和发送方法例如rte_kni_rx_burst和rte_kni_tx_burst进行审计端的数据的接收和发送。
在根据本发明的实施例中,本发明还可以包括在通信端接收来自请求通信方的数据请求包后首先对所述数据请求包的目标地址进行类型判定,如果所述目标地址类型判定为单播地址且不为虚拟网口地址,那么所述数据请求包中的数据进行加密判定,将判定为非加密的数据包直接发送至所述目标地址,将判定为加密的加密数据包发送至所述审计端进行后续审计程序;具体可以包括:首先对数据请求包的DMAC地址进行识别,如果DMAC地址与审计端虚拟网口的VMAC地址相同,则将数据请求包发送至审计端虚拟网口,如果不相同则对数据请求包进行判定,如果数据请求包是加密数据请求包则发送至审计端虚拟网口,如果数据请求包不是加密数据则发送至目标通信方。
在根据本发明的实施例中,可以通过DPDK的KNI启动虚拟网口。
在步骤S101之后,执行步骤S103:在所述审计端对所述加密数据请求包中的数据进行解析和审计,并将通过审计的加密数据请求包发送至所述通信端,创建虚拟网口端口与所述请求通信方地址信息的映射关系2。具体可以包括:审计端通过虚拟网口接收通信端发送的加密数据请求包,之后对请求包进行解析和审计,并将通过审计的加密数据请求包返回通信端,同时创建映射关系例如基于哈希函数的映射关系Hash2,其中虚拟网口端口Vport为key而SMAC、SIP和Sport为Hash值。
在根据本发明的实施例中,如果请求包未能通过审计,则拦截这次数据请求;可选地,向请求通信方返回请求不合法的通知。
在本发明的实施例中,如果请求包包括多项数据请求,其中部分请求未能通过审计,则重构请求包删除未能通过审计的请求内容,之后将重构后的请求包返回通信端继续后续步骤,或拦截全部数据请求;相应地,可以向请求通信方返回部分请求不合法或者请求不合法的通知。
在本发明的实施例中,审计可以通过如下方式实现:将加密协议推送到所使用的操作***的内核协议栈,通过LibSSH、Nginx等三方程序实现协议的解析还原,从而达到审计加密协议的目的。
在步骤S103之后,执行步骤S105:在所述通信端基于所述映射关系2调取所述请求通信方地址信息并将所述加密请求包中的请求来源地址信息替换为所述请求通信方地址信息,之后将所述审计后的加密请求包发送至目标通信方。具体可以包括:基于所述Hash2获取SMAC、SIP和Sport,之后将通过审计的加密请求包的请求来源信息替换为SMAC、SIP和Sport,之后将加密请求包发送至目标通信方,从而使得目标通信方在接收加密数据请求包时将其来源判定为请求通信方。
在步骤S105之后,执行步骤S107:在所述通信端接收所述目标通信方的响应数据包,并将所述响应数据包发送至所述审计端。具体可以包括:目标通信方接收加密数据请求包后根据请求生成相应的响应数据包,并将响应数据包返回至通信端,之后通信端将响应数据包发送至审计端进行后续审计步骤。
在步骤S107之后,执行步骤S109:在所述审计端对所述响应数据包中的加密数据进行解析和审计,将通过审计的所述响应数据包发送至所述通信端。具体可以包括,审计端接收响应数据包,解析后对其内容进行审计,如果通过响应数据包通过审计,则将其返回通信端。
在根据本发明的实施例中,如果响应数据包未能通过审计,则拦截这次数据响应;可选地,向请求通信方返回请求不合法的通知。
在本发明的实施例中,如果响应数据包包括多项数据请求的响应数据,其中部分请求的响应数据未能通过审计,则重构响应数据包删除未能通过审计的响应内容,之后将重构后的响应数据包返回通信端继续后续步骤,或拦截全部响应数据;相应地,可以向请求通信方返回部分请求不合法或者请求不合法的通知。
在步骤S109之后,执行步骤S111:在所述通信端基于所述映射关系1获取所述目标通信方的地址信息以及所述请求通信方地址信息,将所述响应数据包的来源地址信息替换为所述目标通信方的地址信息后将所述响应数据包发送至所述请求通信方。具体可以包括,通信端接收到响应数据包,之后基于所述Hash1获取DMAC、DIP、Dport、SIP和Sport数据,之后重构所述响应数据包将其来源信息替换为DMAC、DIP和Dport,之后根据SIP和Sport将所述响应数据包发送至所述请求通信方。
在本发明的实施例中,所述审计端和所述通信端之间可以以队列的方式传递数据包的指针。
与上述的方法10相对应,本发明还提供了一种实施例的、适于解决上述技术问题的基于加密协议审计数据的装置20。参见图3,该装置20包括:通信端201和审计端202,所述通信端包括数据接收发送模块2011和数据处理模块2012;所述审计端包括虚拟网口模块2021和审计模块2022;其中所述数据接收发送模块2011用于请求通信方、目标通信方和所述审计端202进行数据的传输,所述数据的传输包含接收数据、发送数据、返回数据;所述数据处理模块2012用于在所述通信端201根据审计模块2022中的加密协议解析所述数据,并根据请求通信方、目标通信方、审计端虚拟网口的地址信息重构所述数据;所述虚拟网口模块2021用于在审计端202创建虚拟网口、处理所述虚拟网口接收的通信端201的数据,并且通过所述虚拟网口与所述通信端201进行所述数据的传输;所述审计模块2022用于在所述审计端202对经过所述虚拟网口模块2021传输的来自通信端201的数据进行解析和审计,并将审计的结果通过所述虚拟网口模块2021返回所述通信端201。具体描述如下:
对应于上文中的步骤101,通信端202的数据接收发送模块2011接收来自请求通信方的加密数据请求包,并将所述加密数据请求包发送至所述审计端的虚拟网口,数据处理模块2012中的数据重构模块创建所述请求通信方地址信息与目标通信方地址信息的映射关系1;具体可以包括:数据接收发送模块2011通过物理网口接收到请求通信方发送的加密数据请求包,数据处理模块2012中的数据重构模块获取加密数据请求包的来源信息SMAC、SIP和Sport,目标通信方的地址信息DMAC、DIP和Dport等,并根据这些信息创建基于哈希函数的映射关系Hash1,之后数据接收发送模块2011将加密数据请求包发送至审计端202。
在根据本发明的实施例中,数据接收发送模块2011通过调用物理端口的接收和发送方法例如rte_eth_rx_burst和rte_eth_tx_burst进行通信端201的数据的接收和发送。
在根据本发明的实施例中,虚拟网口模块2021通过调用虚拟网口的接收和发送方法例如rte_kni_rx_burst和rte_kni_tx_burst进行审计端202的数据的接收和发送。
在根据本发明的实施例中,本发明装置的通信端201还可以包含数据判定模块2013,以处理不确定请求的数据是否为加密数据的情况,如果数据判定模块2013将所述目标地址类型判定为单播地址且不为虚拟网口地址,那么数据判定模块2013对所述数据请求包中的数据进行加密判定,将判定为非加密的数据包由数据接收发送模块2011直接发送至所述目标地址,将判定为加密的加密数据包发送至所述审计端进行后续审计程序;具体可以是:首先通信端201的数据判定模块2013对数据请求包的DMAC地址进行识别,如果DMAC地址与审计端虚拟网口的VMAC地址相同,则数据接收发送模块2011将数据请求包发送至审计端虚拟网口,如果不相同且为单播地址则数据判定模块2013继续对数据请求包进行判定,如果数据请求包是加密数据请求包则数据接收发送模块2011将其发送至审计端虚拟网口,如果审计模块2022判定数据请求包不是加密数据则数据接收发送模块2011将其发送至目标通信方。
在根据本发明的实施例中,虚拟网口模块2021可以通过DPDK的KNI启动虚拟网口。
之后对应于上文中的步骤103,审计模块2022对所述加密数据请求包中的数据进行解析和审计,之后虚拟网口模块2021将通过审计的加密数据请求包发送至所述通信端,同时创建映射关系2。具体可以包括:虚拟网口模块2021接收数据接收发送模块2011发送的加密数据请求包,审计模块2022对请求包进行解析和审计,之后虚拟网口模块2021将通过审计的加密数据请求包返回通信端201,同时数据重构模块创建映射关系例如基于哈希函数的映射关系Hash2,其中虚拟网口端口Vport为key而SMAC、SIP和Sport为Hash值。
在根据本发明的实施例中,如果请求包未能通过审计,则审计模块2022拦截这次数据请求;可选地,审计模块2022创建请求不合法的通知,虚拟网口模块2021将该通知发送至数据接收发送模块2011,随后数据接收发送模块2011将该通知发送给请求通信方。
在本发明的实施例中,如果请求包包括多项数据请求,其中部分请求未能通过审计,则审计模块2022重构请求包删除未能通过审计的请求内容,之后将重构后的请求包发送至数据接收发送模块2011,随后虚拟网口模块2021将重构后的请求包返回数据接收发送模块2011继续后续步骤,或审计模块2022拦截全部数据请求;相应地,可以审计模块2022创建请求不合法或者请求不合法的通知,虚拟网口模块2021将该通知发送至数据接收发送模块2011,随后数据接收发送模块2011将该通知发送给请求通信方。
在本发明的实施例中,审计模块2022可以通过如下方式实现审计:将加密协议推送到所使用的操作***的内核协议栈,通过LibSSH、Nginx等三方程序实现协议的解析还原,从而达到审计加密协议的目的。
之后对应于上文中的步骤105,数据重构模块基于所述Hash2获取SMAC、SIP和Sport并将所述加密请求包中的请求来源信息替换为SMAC、SIP和Sport,之后数据接收发送模块2011将所述加密请求包发送至所述目标通信方。具体可以包括:数据接收发送模块2011接收通过审计的加密请求包,数据重构模块将其请求来源信息替换为SMAC、SIP和Sport,之后数据接收发送模块2011将加密请求包发送至目标通信方,从而使得目标通信方在接收加密数据请求包时将其来源判定为请求通信方。
之后对应于上文中的步骤S107,数据接收发送模块2011接收所述目标通信方的响应数据包,并将所述响应数据包发送至虚拟网口模块2021。具体可以包括:目标通信方接收加密数据请求包后根据请求生成相应的响应数据包,并将响应数据包返回至通信端,数据接收发送模块2011接收响应数据包后将其发送至虚拟网口模块2021,之后由审计模块2022进行后续审计步骤。
之后对应于上文中的步骤S109,审计模块2022对所述响应数据包中的加密数据进行解析和审计,之后通过审计的所述响应数据包由虚拟网口模块2021发送至所述通信端。具体可以包括,虚拟网口模块2021接收响应数据包,审计模块2022解析响应数据包后对其内容进行审计,如果通过响应数据包通过审计,则虚拟网口模块2021将其返回通信端。
在根据本发明的实施例中,如果响应数据包未能通过审计,则审计模块2022拦截这次数据响应;可选地,审计模块2022创建请求不合法的通知,虚拟网口模块2021将该通知发送至数据接收发送模块2011,随后数据接收发送模块2011将该通知发送给请求通信方。
在本发明的实施例中,如果响应数据包包括多项数据请求的响应数据,其中部分请求的响应数据未能通过审计,则审计模块2022重构响应数据包删除未能通过审计的响应内容,随后虚拟网口模块2021将重构后的请求包返回数据接收发送模块2011继续后续步骤,或审计模块2022拦截全部数据请求;相应地,可以审计模块2022创建请求不合法或者请求不合法的通知,虚拟网口模块2021将该通知发送至数据接收发送模块2011,随后数据接收发送模块2011将该通知发送给请求通信方。
之后对应于上文中的步骤S111,数据重构模块基于所述Hash1获取DMAC、DIP、Dport、SIP和Sport并将所述响应数据包的来源信息替换为DMAC、DIP和Dport,之后数据接收发送模块2011将所述响应数据包发送至所述请求通信方。具体可以包括,数据接收发送模块2011接收到响应数据包,之后数据重构模块基于所述Hash1获取DMAC、DIP、Dport、SIP和Sport数据并重构所述响应数据包将其来源信息替换为DMAC、DIP和Dport,最后数据接收发送模块2011根据SIP和Sport将所述响应数据包发送至所述请求通信方。
在本发明的实施例中,所述审计端虚拟网口模块2021和所述通信端数据接收发送模块2011之间可以以队列的方式传递数据包的指针。
需要说明的是,上述装置实施例属于优选实施例,所涉及的单元和模块并不一定是本申请所必须的。
对于前述的各方法实施例,为了描述简单,故将其都表述为一系列的动作组合,但是本领域的技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为根据本申请,某些步骤可以采用其他顺序或同时执行;其次,本领域技术人员也应该知悉,上述方法实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
本申请还公开了一种在其上记录有用于执行上述方法的程序的存储介质。所述存储介质包括配置为以计算机(以计算机为例)可读的形式存储或传送信息的任何机制。例如,存储介质包括只读存储器(ROM)、随机存取存储器(RAM)、磁盘存储介质、光存储介质、闪速存储介质、电、光、声或其他形式的传播信号(例如,载波、红外信号、数字信号等)等。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于本申请的装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例部分的说明即可。以上所描述的装置及装置实施例仅仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,既可以位于一个地方或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上对本申请所提供的一种基于加密协议审计数据的方法、装置和存储介质,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (13)

1.一种基于加密协议审计数据的方法,其特征在于,包括:
在通信端接收来自请求通信方的加密数据请求包,并将所述加密数据请求包发送至审计端的虚拟网口,同时创建所述请求通信方地址信息与目标通信方的地址信息的映射关系1;
在所述审计端对所述加密数据请求包中的数据进行解析和审计,并将通过审计的加密数据请求包发送至所述通信端,创建虚拟网口端口与所述请求通信方地址信息的映射关系2;
在所述通信端基于所述映射关系2调取所述请求通信方地址信息并将所述加密数据请求包中的请求来源地址信息替换为所述请求通信方地址信息,之后将所述审计后的加密数据请求包发送至目标通信方;
在所述通信端接收所述目标通信方的响应数据包,并将所述响应数据包发送至所述审计端;
在所述审计端对所述响应数据包中的加密数据进行解析和审计,将通过审计的所述响应数据包发送至所述通信端;
在所述通信端基于所述映射关系1获取所述目标通信方的地址信息以及所述请求通信方地址信息,将所述响应数据包的来源地址信息替换为所述目标通信方的地址信息后将所述响应数据包发送至所述请求通信方。
2.根据权利要求1所述的方法,其特征在于,还包括在通信端接收来自请求通信方的数据请求包后首先对所述数据请求包的目标地址进行类型判定,如果所述目标地址类型判定为单播地址且不为虚拟网口地址,那么所述数据请求包中的数据进行加密判定,将判定为非加密的数据包直接发送至所述目标地址,将判定为加密的加密数据包发送至所述审计端进行后续审计程序。
3.根据权利要求1或2所述的方法,其特征在于:
在所述审计端通过加密协议代理程序实现对加密数据的解析;
通过调用物理端口的接收和发送方法进行所述通信端的数据的接收和发送;
通过调用虚拟网口的接收和发送方法进行所述审计端的数据的接收和发送。
4.根据权利要求3所述的方法,其特征在于,所述审计端和所述通信端之间以队列的方式传递数据包的指针;基于哈希函数建立所述映射关系1和映射关系2。
5.根据权利要求1或2所述的方法,其特征在于,如果所述加密数据请求包或所述响应数据包没有通过审计,则向所述请求通信方发送请求不合法的通知且不进行后续步骤。
6.一种基于加密协议审计数据的装置,其特征在于,所述装置包括通信端和审计端:
在通信端接收来自请求通信方的加密数据请求包,并将所述加密数据请求包发送至审计端的虚拟网口,同时创建所述请求通信方地址信息与目标通信方的地址信息的映射关系1;
在所述审计端对所述加密数据请求包中的数据进行解析和审计,并将通过审计的加密数据请求包发送至所述通信端,创建虚拟网口端口与所述请求通信方地址信息的映射关系2;
在所述通信端基于所述映射关系2调取所述请求通信方地址信息并将所述加密数据请求包中的请求来源地址信息替换为所述请求通信方地址信息,之后将所述审计后的加密数据请求包发送至目标通信方;
在所述通信端接收所述目标通信方的响应数据包,并将所述响应数据包发送至所述审计端;
在所述审计端对所述响应数据包中的加密数据进行解析和审计,将通过审计的所述响应数据包发送至所述通信端;
在所述通信端基于所述映射关系1获取所述目标通信方的地址信息以及所述请求通信方地址信息,将所述响应数据包的来源地址信息替换为所述目标通信方的地址信息后将所述响应数据包发送至所述请求通信方;
所述通信端包括:
数据接收发送模块,用于请求通信方、目标通信方和所述审计端进行数据的传输,所述数据的传输包含接收数据、发送数据、返回数据;
数据处理模块,用于在所述通信端根据审计模块中的加密协议解析所述数据,并根据请求通信方、目标通信方、审计端虚拟网口的地址信息重构所述数据;
所述审计端包括:
虚拟网口模块,用于在审计端创建虚拟网口、处理所述虚拟网口接收的通信端数据,并且通过所述虚拟网口与所述通信端进行所述数据的传输;
审计模块,用于在所述审计端对经过所述虚拟网口模块传输的来自通信端的数据进行解析和审计,并将审计的结果通过所述虚拟网口模块返回所述通信端。
7.根据权利要求6所述的装置,其特征在于,所述数据处理模块进一步包括:
虚拟网口地址获取模块,用于通过所述数据接收发送模块向所述虚拟网口发送数据包、接收返回数据包,解析所述返回数据包获取所述虚拟网口的地址信息;
数据重构模块,用于获取数据请求通信方的地址信息、目标通信方的地址信息、虚拟网口的地址信息并建立映射关系以及替换数据中包含的来源信息;所述建立的映射关系包括所述请求通信方地址信息与目标通信方地址信息的映射关系1和所述虚拟网口端口与所述请求通信方地址信息之间的映射关系2。
8.根据权利要求7所述的装置,其特征在于,所述通信端还包含:
数据判定模块,用于记录所述接收发送模块传输的数据的源地址,并对其目标地址进行类型判定,所述数据处理模块根据所述类型判定的结果对所述数据进行处理,并交由所述数据接收发送模块对处理后的数据进行传输。
9.根据权利要求8所述的装置,其特征在于:
对于传输数据的所述目标地址类型判定为单播地址且目标地址为虚拟网口地址的数据,将该数据发送给所述虚拟网口地址;
对于传输数据的所述目标地址类型判定为单播地址且目标地址不为虚拟网口地址的数据,对该数据进行加密判定,将判定的非加密数据直接发送至目标地址,将判定的加密数据在所述数据处理模块进行数据重构后发送至所述虚拟网口地址。
10.根据权利要求6-9中任一项所述的装置,其特征在于:
所述审计模块通过加密协议代理程序实现对加密数据的解析;
所述数据接收发送模块通过调用物理端口的接收和发送方法进行数据的接收和发送;
所述虚拟网口模块通过调用虚拟网口的接收和发送方法进行数据的接收和发送。
11.根据权利要求6-9中任一项所述的装置,其特征在于,所述审计端和所述通信端之间以队列的方式传递数据包的指针;
所述数据处理模块和所述虚拟网口模块分别基于哈希函数建立所述映射关系1和映射关系2。
12.根据权利要求6-9中任一项所述的装置,其特征在于,如果所述审计模块判定所述加密数据请求包或所述响应数据包没有通过审计,则向所述请求通信方发送请求不合法的通知。
13.一种存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行所述权利要求1至5任一项中所述的方法。
CN201711305729.XA 2017-12-11 2017-12-11 一种基于加密协议审计数据的方法、装置和存储介质 Active CN109905352B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711305729.XA CN109905352B (zh) 2017-12-11 2017-12-11 一种基于加密协议审计数据的方法、装置和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711305729.XA CN109905352B (zh) 2017-12-11 2017-12-11 一种基于加密协议审计数据的方法、装置和存储介质

Publications (2)

Publication Number Publication Date
CN109905352A CN109905352A (zh) 2019-06-18
CN109905352B true CN109905352B (zh) 2022-02-22

Family

ID=66941950

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711305729.XA Active CN109905352B (zh) 2017-12-11 2017-12-11 一种基于加密协议审计数据的方法、装置和存储介质

Country Status (1)

Country Link
CN (1) CN109905352B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110932890B (zh) * 2019-11-20 2022-09-09 厦门网宿有限公司 一种数据传输方法、服务器及计算机可读存储介质
CN113612790B (zh) * 2021-08-11 2023-07-11 上海观安信息技术股份有限公司 基于设备身份预认证的数据安全传输方法及装置
CN114006955B (zh) * 2021-10-28 2023-09-05 深信服科技股份有限公司 一种数据处理方法、装置、设备及可读存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103927489A (zh) * 2014-04-22 2014-07-16 陈幼雷 一种数据可信存储的***及其方法
US9083753B1 (en) * 2003-09-24 2015-07-14 Infoexpress, Inc. Secure network access control
CN105656896A (zh) * 2016-01-06 2016-06-08 甄世存 一种ip地址默认端口转移加密和端口管道服务方法及装置
CN105743868A (zh) * 2014-12-11 2016-07-06 中国科学院声学研究所 一种支持加密和非加密协议的数据采集***与方法
CN106453610A (zh) * 2016-11-09 2017-02-22 深圳市任子行科技开发有限公司 面向运营商骨干网的https数据流审计方法和***
CN106572121A (zh) * 2016-11-15 2017-04-19 任子行网络技术股份有限公司 一种vpn数据的审计方法和装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9083753B1 (en) * 2003-09-24 2015-07-14 Infoexpress, Inc. Secure network access control
CN103927489A (zh) * 2014-04-22 2014-07-16 陈幼雷 一种数据可信存储的***及其方法
CN105743868A (zh) * 2014-12-11 2016-07-06 中国科学院声学研究所 一种支持加密和非加密协议的数据采集***与方法
CN105656896A (zh) * 2016-01-06 2016-06-08 甄世存 一种ip地址默认端口转移加密和端口管道服务方法及装置
CN106453610A (zh) * 2016-11-09 2017-02-22 深圳市任子行科技开发有限公司 面向运营商骨干网的https数据流审计方法和***
CN106572121A (zh) * 2016-11-15 2017-04-19 任子行网络技术股份有限公司 一种vpn数据的审计方法和装置

Also Published As

Publication number Publication date
CN109905352A (zh) 2019-06-18

Similar Documents

Publication Publication Date Title
US10454953B1 (en) System and method for separated packet processing and static analysis
US9838356B2 (en) Encrypted peer-to-peer detection
US11165869B2 (en) Method and apparatus for dynamic destination address control in a computer network
US10666688B2 (en) Systems and methods for providing network security using a secure digital device
US10326730B2 (en) Verification of server name in a proxy device for connection requests made using domain names
US11503073B2 (en) Live state transition using deception systems
KR102580898B1 (ko) Dns 메시지를 사용하여 컴퓨터 포렌식 데이터를 선택적으로 수집하는 시스템 및 방법
US20210144120A1 (en) Service resource scheduling method and apparatus
CA2672908A1 (en) Device, system and method for use of micro-policies in intrusion detection/prevention
EP3070633B1 (en) Network interface devices with remote storage control
CN109905352B (zh) 一种基于加密协议审计数据的方法、装置和存储介质
US11496440B2 (en) Systems, methods, and media for intelligent split-tunneling
US10291598B1 (en) Transmitting and storing different types of encrypted information using TCP urgent mechanism
US8272041B2 (en) Firewall control via process interrogation
US10785147B2 (en) Device and method for controlling route of traffic flow
CN116708041B (zh) 伪装代理方法、装置、设备及介质
US20160112488A1 (en) Providing Information of Data Streams
GB2606137A (en) Controlling command execution in a computer network
CN114285646B (zh) 一种对基于smb协议的数据防泄漏的方法及装置
US8995271B2 (en) Communications flow analysis
TWI732708B (zh) 基於多接取邊緣運算的網路安全系統和網路安全方法
JP2018022944A (ja) 通信システム、および、通信方法
KR101124634B1 (ko) 임베디드 운영 체제에 기반한 네트워크 통합 관리 게이트웨이
CN117879996A (zh) 一种基于ipsec vpn的数据传输方法及装置
CN117834246A (zh) 流量身份标识方法、装置、零信任控制中心和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant