信协议识别与多元通联关系电子论文范文
发布时间:2015-03-24
摘要:针对飞信协议尚未公开与复杂互联网环境带来的飞信各类应用相关协议识别困难以及单包通联关系缺失等问题,基于SIP协议的基本框架,从文本聊天、文件传输以及音/视频通信三方面解析了飞信常用业务的协议交互过程;提出了端口与正则表达式相结合的飞信协议识别方法和基于会话还原的飞信通联关系提取方法,能够从大量混杂的数据包中快速定位飞信业务报文,获得飞信多种通信行为的通联关系。实验结果证明了本文方法的有效性。
关键字:协议解析;多元通联关系;正则表达式;飞信协议识别 2015年核心期刊
0引言
飞信是中国移动通信集团面向中国移动的手机用户推出的一款即时通信软件。从被动截取分析的角度对飞信软件通信协议进行研究,并提取基于飞信软件通信的通联关系,能够对飞信用户的通信行为进行监控,获得大量的敏感信息。这将对构建社会关系网络、动态寻找和跟踪目标人群提供有力依据,对预防和打击网络团伙犯罪有着重要的意义。
尽管飞信的通信框架比较明确,且通信内容非加密,但是对飞信软件的通联关系进行高效准确地识别和提取还存在诸多难点,如:未知协议导致对飞信各业务相关协议的交互过程不清晰,复杂的互联网环境导致飞信各类应用相关协议识别困难,以服务器中转方式为主的通信过程导致单包提取会缺失大量通联关系。
针对以上困难,本文通过手工分析,解析了基于SIP承载的飞信通信协议的主要过程和报文格式,提出了端口与正则表达式匹配相结合的飞信协议识别方法,能够从复杂的互联网环境下对三种常用通信行为进行识别;设计了针对飞信的会话识别、排序及还原方法,克服了单个数据包携带通联关系存在关系缺失的问题。设计了并实现了飞信的多元通联关系识别与提取系统;能够在局域网关口处通过截取、识别、还原、提取的基本步骤获得飞信多种通信行为的通联关系信息,并以直观的网络形态展现用户通联关系网络。
1相关研究
作为一种新型网络应用,即时通信自诞生就受到研究者们的广泛关注,以AIM,ICQ,MSN等即时通信软件为例,由于大多数使用私有协议,缺乏公开的定义文档,研究人员大多通过逆向分析[1]的方法分析即时通信协议的功能、结构特点[1]。文献[2]从系统安全的角度出发,在此基础上设计改进即时通信系统的架构,克服蠕虫、病毒等攻击弱点[3],为用户提供更全面、高效、安全、稳定的服务;网络分析和监控系统[4]从流量识别的角度出发,用于网络流量测量、异常行为检测和信息安全保护等应用;文献[5]从网络活动的角度出发,通过对即时通信流量的采集分析用户的行为特征以及流量变化规律;文献[6]则针对即时通信用户行为和数据流量的特点做出深入分析;文献[7]从网络拓扑结构的角度分析即时通信中社会关系和社团变化的规律以及信息传播特点等。从信息监控的角度出发,多数从数据包中分析还原协议的报文结构和属性特征,重组还原即时通信的文本聊天内容[7]和语音聊天信息[8],文献[9]在协议分析与会话还原基础上实现了即时通信信息监控系统,文献[10]研究了并行即时通信消息还原技术。
由于新技术的不断融入,即时通信现已成为同时拥有视频、音频和文本等多种沟通方式和渠道的沟通技术,特别是其对视频/音频技术的捆绑,使用户在在线沟通和交流中的社会临场感得到极大提升。随着用户群体的不断扩大,即时通信系统内部的用户之间也形成了结构化的社交网络,但由于即时通信协议的私有性以及在协议识别和数据获取方面的困难,目前即时通信数据中蕴含的社会网络尚不如电子邮件网络那样受到广泛的研究;同时,丰富多样的社交行为和复杂多样的通信方式,使得即时通信应用成为目前社会网络分析的研究热点。
2基于SIP承载的飞信通信协议解析
飞信的通信协议使用SIP(会话初始协议)作为主要框架,在具体细节上按照基于中国移动通信企业标准的综合即时通信接口规范实施。
SIP是由IETF(Interne工程任务组)提出的IP电话信令协议,是一个客户/服务器协议。协议消息分为邀请和响应两类,其目的是建立或者终止会话。邀请是SIP协议的核心机制;响应消息分为中间响应和最终响应两类。
飞信使用的SIP?C(CompactSIP)协议是一个简化和增强的SIP协议,以适应移动终端设备的接入特点,但会话的逻辑过程与SIP及相关协议确立的逻辑过程保持不变。飞信通信的协议主要基于SIP?C/4.0的框架。以下通过对飞信具体通信报文的分析,总结提取了飞信文件传输、文字聊天及音/视频通信的传输全过程。
2.1飞信文件传输过程
飞信文件传输借助SIP进行会话初始协商,建立P2P直连,进行文件内容传输。图1描述的是飞信用户Alice向好友列表中的Bob发送文件的过程,包括请求发送文件、同意接收文件、协商传输细节、实际传输以及传输完毕几个过程。
2.2飞信文本聊天过程
飞信文本聊天与文件传输类似。图2描述的过程是飞信用户Alice点击好友列表中的飞信用户Bob,打开聊天窗口给Bob发送一段文本信息的过程。这个过程包括Alice请求服务器授权、双方加入会话以及实际发送文本信息。