主页(http://www.kuwanit.com):CFMMQ:一种共享内存多队列协同取证方法
关键词: 协同取证;共享内容取证;多队列协同取证;代理取证;协同取证控制协议
Agent主要发挥监控和通信的职能,监控功能主要是针对本地安全取证系统的,通信功能主要指针对其他代理的。代理之间采用点对点通信,以互为客户/服务器模式构建通信网络,数据交换采用统一的协议,从而有助于采用统一的协同控制安全策略。
1 框架设计
摘 要: 为了使网络取证系统能够协同多个安全取证系统有效取证,提出了一种共享内存多队列的协同取证方法。该方法采用了共享内存通信方式,借助信号机制,设计了基于多个队列进行数据交换算法,解决网络协同取证大数据量通信问题,基于入侵检测报文格式协议(IDMEF)设计了协同取证网络报文协议。通过实现取证系统,验证了协议设计的有效性。
各个安全取证系统只能通过本机的代理与其他系统通信协同取证。也就是说,当安全取证系统与主机内其他安全取证系统协同通信时,必须借助Agent交换数据,同时安全取证系统和其他主机的协同取证安全取证系统通信也通过Agent。因此,本地安全取证系统和Agent采用主机内进程间通信策略,Agent之间采用主机间网络通信策略。由于安全取证系统的复杂性,取证系统的数据交换可能瞬时出现大量数据造成瓶颈,为此CFMMQ框架在算法设计上进行了特别考虑。
(1.中原工学院,河南 郑州450007;2.郑州市网络安全评估重点实验室,河南 郑州450007)
网络取证通过抓取、记录和分析网络事件,以发现安全攻击或其他的问题事件的来源。为获取可以证明网络犯罪的有效证据,需要对网络犯罪在各种安全防御系统中遗留的各种信息进行收集和分析,而这些信息是多源的,有多种形式。因而需要一种能够有效协同多种防御系统之间通信以及协同控制的方法,从而能够更准确收集网络犯罪的有效证据,追踪犯罪分子。当前,关于网络取证已有很多研究成果,如BHONDELE A提出了一种用于取证分析恶意的网络数据包网络取证框架[1]。JOY D等提出了面向用户的取证分析方案,目的是设计一个健壮灵活协议格式以收集底层网络数据[2]。张电等对网络取证多源取证协同关联技术进行研究[3]。张有东等重点研究了证据的关联分析技术[4]。相关文献对网络取证中如何保持网络会话的完整性进行了研究[5]。纵观以往的研究成果,相关研究对协同关联分析技术研究相对较多,而网络系统间如何实现高效协同取证研究甚少,如近年来STONEY 等提出一种可以收集特定证据协同控制方法,并指出了协同中心在协同取证中的重要性[6]。
共享内存多队列协同取证方法(Coordinated-Forensic Method based on shared Memory multi Queue,CFMMQ)的基本结构如图1所示,主要包括一个取证协同控制中心(Forensic Center,FC)、运行于各个主机的唯一代理(Agent)及在该框架下运行的各种安全取证系统(如:IDS Sensor、Disaster Recovery、IDS Center、Forensic Network、Firewall、Security Audit等)。其中:Agent在各主机中有且只有一个,各个Agent之间可以相互通信;FC通过本地代理,实时监控各安全取证系统状态,为安全取证系统协同时提供必要信息,同时具有维持各个主机之间报文交换协议定义文件的一致性等功能。
由框架设计可知,Agent与本地安全取证系统之间的通信是主机内进程间的通信,一个Agent可以与多个本地安全取证系统进行数据交换。在技术上,主机内部进程间通信可以选择匿名管道、有名管道、消息队列、套接字通信、共享内存等,这里选择共享内存通信方式,该方式通信效率最高,这一点对大数据量通信特别重要。另外,共享内存方式和其他通信方式相比更不容易被攻击者发现和利用[7]。在共享内存通信的基础上,设计基于多队列缓存的取证方法。
(责任编辑:ioter)2 数据通信设计
2.1 数据结构
图1 网络协同控制系统
王文奇1,2,刘安战1,郭基凤1
在实际网络取证过程中,由于各网络防御系统侧重点不同,网络系统采用的通信方式和通信协议也是不同的,一方面数据量较大时由于通信方式不同可能会引起阻塞;另一方面由于没有统一的协议格式,各系统间通信语义理解也是困难的。基于以上分析,为了使网络取证系统能够协同多个安全取证系统有效取证,本文设计和实现了一种基于代理的协同取证方法。
0 引言
发表评论愿您的每句评论,都能给大家的生活添色彩,带来共鸣,带来思索,带来快乐。